[Autoit] Редактор комментариев descript.ion
Select messages from
# through # FAQ
[/[Print]\]
Goto page 1, 2, 3, 4, 5, 6, 7, 8, 9  Next  :| |:
Total Commander -> Автоматизация Total Commander

#1: [Autoit] Редактор комментариев descript.ion Author: Loopback PostPosted: Wed Mar 20, 2019 13:22
    —
Скрипт для визуальной мультиправки комментариев. Практически полностью повторяет внешний вид стандартного диалога правки комментариев.

Предыдущие версии скрипта выкладывались в этой теме, но там решалась частная задача, и сейчас из результатов поиска понять что эта тема релевантна - не так просто.

По сравнению с предыдущей версией:

+Чтение/запись комментариев в юникоде, поддержка юникодных имен файлов
+Возможность преобразования между кодировками
+При открытии нескольких файлов можно переключаться между режимом мультиправки и отдельно выбранными файлами

Скрипт пока наверняка сыроват, пользуйтесь с осторожностью. Обратите внимание, что входные параметры теперь принимают юникодный список файлов: %WF "%P"

Скачать


Last edited by Loopback on Wed Mar 20, 2019 20:16; edited 1 time in total

#2:  Author: LonerDLocation: Донецк PostPosted: Thu Mar 21, 2019 17:12
    —
Спасибо за обновление.
У меня с флагом MCE_MULTI_ONLY при попытке добавлении комментария к одиночному файлу никакой диалог не вызывается.
Если можно - просьба выкладывать и в виде простого au3-файла (когда скриптов много, удобней не компилировать каждый, а запускать в качестве скриптов).

#3:  Author: AvadaLocation: Россия, Саратов PostPosted: Thu Mar 21, 2019 17:57
    —
LonerD
Тогда уж лучше выкладывать пару AU3 и EXE.

Loopback
Спасибо!

#4:  Author: Loopback PostPosted: Thu Mar 21, 2019 20:21
    —
LonerD
Хорошо, флаг гляну. Я просто его в последнее время не использовал.

Сам скрипт выложу, просто он всё ещё не совсем готов, много завязок на другие UDF, надо почистить немного.

Второй момент - он будет работать только под бета-версией Autoit. Сейчас, учитывая что будущее бета-версии Autoit с функционалом хэш-таблиц туманно, я уже не так уверен, что стоило сильно на него завязываться. Но было трудно удержаться, уж больно удобная штука.

#5:  Author: yozhik PostPosted: Tue Mar 17, 2020 03:42
    —
Loopback wrote:
Хорошо, флаг гляну.

Гляньте, пожалуйста. Не работает.

Ещё момент. Если выделено несколько файлов и ни у одного из них нет комментария, то кнопка Neighbour неактивна. Но при этом окошко Neighbour всё равно вызывается по Ctrl+W! Вот бы поправить это, чтобы не вызывалось при неактивной кнопке. А то непоследовательно получается.

#6:  Author: Loopback PostPosted: Tue Jun 09, 2020 13:02
    —
Обновил утилиту, скачать последние версии можно будет с этой страницы.



По поводу флага MCE_MULTI_ONLY - проблем не нашел. Если что, параметры команды должны быть такие:

Code:
%WF "%P" MCE_MULTI_ONLY

#7:  Author: yozhik PostPosted: Tue Jun 09, 2020 21:48
    —
Loopback
Спасибо! У меня всё замечательно работает, в том числе и флаг.

На русской странице утилиты ссылка на последнюю версию, а на английской старая ссылка на предыдущую версию.

Пару дней назад искал эту тему поиском, но так и не нашёл, пока носом меня не ткнули. А дело то было в ключевых словах! Оказывается на этой странице ни в одном посте утилита не названа своим старым именем. Оставлю их здесь в посте, чтоб другим легче было искать.
Ключевые слова: tc_multi_comment_edit; multi_comment_edit; TCMultiCommentEditor; MultiCommentEdit; Multi Comment Edit.

#8:  Author: FlasherLocation: Москва PostPosted: Thu Jun 11, 2020 14:42
    —
Loopback
1. Системный масштаб не учтён — возникают лишние поля по краям.
2. В UTF-8 descript.ion сохраняется с лишней пустой строкой сверху.
3. Скорость появления окон оставляет желать лучшего. Для системной Ctrl+Z вместо MCE_MULTI_ONLY пришлось делать 2 команды:
em_MultiComment:
Code:
%COMMANDER_PATH%\Utils\TCFS2\TCFS2.exe /ef if(msg(1074,1004+msg(1074,1000))<2,tcm(2700),tem(em_MultiComment2))
em_MultiComment2 — вызов проги.

#9:  Author: imig73Location: г. Иркутск PostPosted: Thu Jun 11, 2020 17:15
    —
Flasher
Скорость появления окна действительно заставляет подождать, но это только в первый раз в пределах сессии.

#10:  Author: FlasherLocation: Москва PostPosted: Thu Jun 11, 2020 18:31
    —
imig73
При чём тут сессия? Никакой разницы в моментах запуска нет.

#11:  Author: Loopback PostPosted: Thu Jun 11, 2020 23:52
    —
Flasher wrote:
Системный масштаб не учтён — возникают лишние поля по краям.

Учтён, но в прошлогодней версии был сломан. Исправлю.

Flasher wrote:
В UTF-8 descript.ion сохраняется с лишней пустой строкой сверху.

Этот вопрос к Гислеру, зачем он сделал обязательную пустую строку в UTF-8.

Flasher wrote:
Скорость появления окон оставляет желать лучшего.

Ясное дело, что интерпретируемый язык всегда будет работать медленнее нативной реализации - если сравнивать со скоростью появления родного окна тотала. Но вот по конкретной скорости всё субъективно.

Чтобы не быть голословным, измерил скорость загрузки скрипта от момента запуска до момента после появления окна. Виртуалка, в файле 18 записей, скорость загрузки в нескольких запусках 40-55мс. Та же виртуалка, для теста взят каталог 440 файлов, у всех есть комментарии по 20 символов, скорость загрузки 200-205мс.

Много это или мало? Не знаю. Я весьма критично отношусь к скорости запуска программ, но до сих пор в обычном использовании я ни разу не сталкивался задержками, которые могли бы доставить дискомфорт. Если кто-то эти задержки ощущает и кого-то это напрягает - увы, тут я не могу ничем помочь.

#12:  Author: imig73Location: г. Иркутск PostPosted: Thu Jun 11, 2020 23:58
    —
Loopback
Задержки ощущаю в сравнении с нативным окном, но вовсе не напрягают учитывая что скрипт внешний и его функционал полностью перекрывает эти вынужденные подтормаживания при вызове окна.

#13:  Author: FlasherLocation: Москва PostPosted: Fri Jun 12, 2020 00:36
    —
Loopback wrote:
Этот вопрос к Гислеру
При чём тут Гислер, если утилита файл таким создаёт?

Loopback wrote:
Много это или мало?
У меня даже на паре файлов около 6-8 дс. Для меня это ощутимо. Окна в твоих скриптах замены появляются шустрее.
Loopback wrote:
тут я не могу ничем помочь
Я это отчасти за тебя сделал. Мне главное, чтобы системный появлялся быстрее, т. к. в десятки раз чаще требуется.

#14:  Author: Loopback PostPosted: Fri Jun 12, 2020 01:04
    —
Flasher wrote:
При чём тут Гислер, если утилита файл таким создаёт?

При том, что тотал создает точно так же, и если пробел не добавлять - файл не читает.

Flasher wrote:
У меня даже на паре файлов около 6-8 дс. Для меня это ощутимо. Окна в твоих скриптах замены появляются шустрее.

6-8 дс - это сколько?

Скрипты замены не делают ничего сложного перед появлением окна. Тут же приходится прочитать файл и в зависимости от кодировки делать или не делать преобразования, которые занимают время. Да еще и реализация DllStruct в Autoit хоть и весьма удобна, но и довольно нетороплива.

К слову, самый быстрый вариант, при котором вообще нет дополнительных преобразований - если сохранять в UTF-16 LE.

#15:  Author: FlasherLocation: Москва PostPosted: Fri Jun 12, 2020 01:26
    —
Loopback wrote:
При том, что тотал создает точно так же, и если пробел не добавлять - файл не читает.
Пробел? Я не писал про пробел. А без верхнего перевода строки прекрасно читает.

Loopback wrote:
6-8 дс - это сколько?
0.6-0.8 сек. Эта дольная единица изучается с младших классов школы.
Loopback wrote:
и в зависимости от кодировки делать или не делать преобразования
ТС же только с ВОМ пишет, чтение с анализом малюсенького кусочка должно быть мгновенным.
Loopback wrote:
самый быстрый вариант - если сохранять в UTF-16 LE.
Для начала код нужен. Тут вообще раздел по скриптам, утилиты — в Плагинах. Тем более, что с учётом маркера в заголовке исходник сам напрашивается. Rolling Eyes



Total Commander -> Автоматизация Total Commander


output generated using printer-friendly topic mod. All times are GMT + 4 Hours

Goto page 1, 2, 3, 4, 5, 6, 7, 8, 9  Next  :| |:
Page 1 of 9

Powered by phpBB © 2001, 2005 phpBB Group