AkelPad Forum Index AkelPad
Support forum
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Пакетное изменение кодировки файлов
Goto page Previous  1, 2, 3  Next
 
Post new topic   Reply to topic    AkelPad Forum Index -> Discussion (Russian)
View previous topic :: View next topic  
Author Message
Fr0sT



Joined: 24 Jul 2007
Posts: 876

PostPosted: Thu Feb 07, 2013 1:42 pm    Post subject: Reply with quote

"Не открывать программу" и "Не показывать ГУЙ" вообще-то слегка разные вещи.
Back to top
View user's profile Send private message
VladSh



Joined: 29 Nov 2006
Posts: 2595
Location: Киев, Русь

PostPosted: Thu Feb 07, 2013 3:59 pm    Post subject: Reply with quote

Fr0sT
Что-то от этого сразу становится невозможным?
Back to top
View user's profile Send private message Visit poster's website
FeyFre



Joined: 07 Aug 2007
Posts: 2031
Location: Vinnitsa, Ukraine

PostPosted: Thu Feb 07, 2013 4:19 pm    Post subject: Reply with quote

VladSh, указанные функции(OpenFile, SaveFile, ReadFile) не выполяются плагином, а именно АР, плагин только заполняет соответсвующую структуру и дергает функцию. обертки вокруг посылки сообщения главному окну АР(либо иногда окну редактирования). Главного окна нету - нету и оберток. Выносить функции и кода АР в код плагина - такой себе не малый кусок работы, и видимо Инструктор считает его тяжелее, чем оберунть весь АР в библиотеку(что он успешно сделал, но в силу особенностей АР реузльтат не особо юзабелен).
Back to top
View user's profile Send private message AIM Address Yahoo Messenger MSN Messenger
VladSh



Joined: 29 Nov 2006
Posts: 2595
Location: Киев, Русь

PostPosted: Thu Feb 07, 2013 4:27 pm    Post subject: Reply with quote

FeyFre
А зачем именно "в библиотеку" (dll), можно ж и из exe вызывать (я в инете видел инфу)? Имею ввиду, что без окна-то (без посылки окну, а просто вызов, как функции из системных dll дёргаются) можно сделать?
К примеру, дёргаем же разные консольные проги, у них ведь нет окна? Она что-то сделала и выплюнула результат в файл или поток.
Back to top
View user's profile Send private message Visit poster's website
FeyFre



Joined: 07 Aug 2007
Posts: 2031
Location: Vinnitsa, Ukraine

PostPosted: Thu Feb 07, 2013 9:20 pm    Post subject: Reply with quote

Quote:
Она что-то сделала и выплюнула результат в файл или поток.
Велосипед под названием iconv решили переизобрести?
Back to top
View user's profile Send private message AIM Address Yahoo Messenger MSN Messenger
VladSh



Joined: 29 Nov 2006
Posts: 2595
Location: Киев, Русь

PostPosted: Thu Feb 07, 2013 9:23 pm    Post subject: Reply with quote

FeyFre
Это только пример. Я о принципе спрашивал: возможно ли сделать так, чтобы работать с AkelPad'ом с помощью командной строки как с полноценной консольной прогой, где не предполагается UI? Думаю, возможно.
Back to top
View user's profile Send private message Visit poster's website
FeyFre



Joined: 07 Aug 2007
Posts: 2031
Location: Vinnitsa, Ukraine

PostPosted: Thu Feb 07, 2013 10:16 pm    Post subject: Reply with quote

VladSh, сделать.... ну возможно, но это нужно сделать. Сделать и протестировать, косяки выловить... гемора столько, что ну его на... я в собственном софте через пол года столько косяков нахожу, что офигеваю как оно работало вообще.
Back to top
View user's profile Send private message AIM Address Yahoo Messenger MSN Messenger
Fr0sT



Joined: 24 Jul 2007
Posts: 876

PostPosted: Fri Feb 08, 2013 7:07 am    Post subject: Reply with quote

Учитывая, что в Акеле всё взаимодействие построено на оконных сообщениях... очень вряд ли.

А можешь объяснить сакральный смысл этого реквеста? И что не устраивает в вызове
Code:
AkelPad /Show(0) /OpenFile(...) /SaveFile(...) /quit

?
Back to top
View user's profile Send private message
VladSh



Joined: 29 Nov 2006
Posts: 2595
Location: Киев, Русь

PostPosted: Fri Feb 08, 2013 10:16 am    Post subject: Reply with quote

Fr0sT wrote:
А можешь объяснить сакральный смысл этого реквеста?
1. Не зависеть от таких вещей, запущена программа или нет, от количества вкладок и т.п., т.е. чисто работа с переданным(и) файлами.
2. Иметь возможность использовать некоторые функции AkelPad'а для работы с файлами (здесь бы был полезен вызов некоторых скриптов по обработке файлов).
Вопрос: а зачем здесь вообще AkelPad, и можно просто внешним скриптом открывать файл с помощью fso и обрабатывать файл как хочешь, имеет место быть, ответ пока сакрален даже для меня Mr. Green
Back to top
View user's profile Send private message Visit poster's website
FeyFre



Joined: 07 Aug 2007
Posts: 2031
Location: Vinnitsa, Ukraine

PostPosted: Fri Feb 08, 2013 11:01 am    Post subject: Reply with quote

Quote:
открывать файл с помощью fso и обрабатывать файл как хочешь,
тут один но очень большой проблем - fso с кодировок не умеет.
Back to top
View user's profile Send private message AIM Address Yahoo Messenger MSN Messenger
Fr0sT



Joined: 24 Jul 2007
Posts: 876

PostPosted: Fri Feb 08, 2013 1:12 pm    Post subject: Reply with quote

VladSh
Отдельная "batch" копия Акеля в режиме SDI с нужным набором скриптов (что, кстати, и так потребуется - иначе все кодируемые файлы будут пихаться в recently used, что явно не понравится юзеру). Запускать из батча по call /wait, с параметром /Show(0). Чего еще-то желать?
Back to top
View user's profile Send private message
VladSh



Joined: 29 Nov 2006
Posts: 2595
Location: Киев, Русь

PostPosted: Fri Feb 08, 2013 2:22 pm    Post subject: Reply with quote

Fr0sT wrote:
все кодируемые файлы будут пихаться в recently used
Это пример того, что всё жёстко завязано на UI.
Есть правила "разработки ПО", как например "данные должны быть отделены от кода", "логика не должна смешиваться с ядром", "функционал, который мог бы выполняться в отдельности от интерфейса, должен быть выделен"... «И так далее, и так далее» © В данном случае, если бы был выполнен последний пункт, то мы бы здесь не разговаривали на эту тему. И это не только к Акелу относится, все косячат.
Back to top
View user's profile Send private message Visit poster's website
Fr0sT



Joined: 24 Jul 2007
Posts: 876

PostPosted: Tue Feb 19, 2013 6:19 am    Post subject: Reply with quote

VladSh, правила ради правил - тупиковый путь, который ведет к безумию вроде SomeObjectFactoryFactoryFactory и hello world на паттернах весом в 10 КБайт кода.
Единственный осуществимый реквест, который можно отсюда выделить, кмк, - это режим /batch в опциях комстроки, который бы отключал использование некоторых не нужных в пакетном режиме фич.

P.S. Кроме того, также есть правило целесообразности, трудозатрат и востребованности. Изолировать ядро в отдельный модуль и мучиться с взаимодействием только ради того, чтобы 1% юзеров смог раз в месяц что-то там перегнать в пакетном режиме - ну, это просто глупо.
Back to top
View user's profile Send private message
VladSh



Joined: 29 Nov 2006
Posts: 2595
Location: Киев, Русь

PostPosted: Tue Feb 19, 2013 11:57 am    Post subject: Reply with quote

Fr0sT wrote:
Единственный осуществимый реквест, который можно отсюда выделить, кмк, - это режим /batch в опциях комстроки, который бы отключал использование некоторых не нужных в пакетном режиме фич.
Хотя бы так.
Тогда у каждого плага должен быть этот параметр (1 или 0), а при вызове комстроки при необходимости указывать, что "запускать с плагами, у которых параметр ... = 1". Или наоборот сделать при вызове комстроки по умолчанию именно этот параметр.
Back to top
View user's profile Send private message Visit poster's website
FeyFre



Joined: 07 Aug 2007
Posts: 2031
Location: Vinnitsa, Ukraine

PostPosted: Tue Feb 19, 2013 12:52 pm    Post subject: Reply with quote

При наличии ключа /batch(или какой там договорено), при запуске плагинов кормить им в параметр dwSupport флаг типа PDS_BATCH, и функция будет знать что ей нечего делать. Только по факту, такой флаг пойдет исключительно функциям с поддержкой автозагрузки. Либо наоборот, функции плагов на PDS_GETSUPPORT будут отвечать PDS_NOBATCH (мол мне в пакетном режиме делать нечего).
Back to top
View user's profile Send private message AIM Address Yahoo Messenger MSN Messenger
Display posts from previous:   
Post new topic   Reply to topic    AkelPad Forum Index -> Discussion (Russian) All times are GMT
Goto page Previous  1, 2, 3  Next
Page 2 of 3

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


SourceForge.net Logo Powered by phpBB © 2001, 2005 phpBB Group