Добавлено: Вт июн 16, 2020 21:06
Loopback
Теперь порядок. Сворачиваемся.
Теперь порядок. Сворачиваемся.
Форум поддержки пользователей Total Commander
https://forum.wincmd.ru/
Вот это "разрешена" нельзя заменить на "установлена"? А то ты даже параметр такой не предусмотрел.Loopback писал(а):если нет юникодных имен, и в загружаемом файле нет юникодных символов - разрешена запись в ANSI
Не подтверждаю. Вставляю в поле юникод, потом удаляю, UTF-8 обратно на ANSI не меняется.Loopback писал(а):при удалении символа снова появляется возможность сохранить в ANSI
Исходник открыт - всё можно. А я вообще не вижу какого-то смысла сейчас хранить в ANSI.Flasher писал(а):Вот это "разрешена" нельзя заменить на "установлена"?
А где написано, что должно меняться? Появляется "возможность", т.е. можно снова переключиться на ANSI. Возврат делать лень.Flasher писал(а): Вставляю в поле юникод, потом удаляю, UTF-8 обратно на ANSI не меняется
Получается концептуальный отход от ТС-шного подхода. Это плохо. Пользователь сознательно по Ctrl+Z создавал ion в ANSI, а прога без обоснования принудительно перекодировала его в UTF-8. Да и параметр MCE_MULTI_ONLY в таком случае становится просто бессмысленным...Loopback писал(а):Возврат делать лень.
Я уже говорил, что сторонняя утилита не обязана полностью повторять поведение ТС. И каких-либо доводов в пользу необходимости сохранения в ANSI, кроме "концептуального отхода от традиционного подхода" не услышал. Но спорить уже устал. Добавил флаг для предпочтения ANSI и возврат. Поведение теперь повторяет все варианты ТС, кроме сохранения всегда в ANSI, которое бессмысленно совсем, т.к. на юникодных файлах даже в ТС не работает.Flasher писал(а):Получается концептуальный отход от ТС-шного подхода. Это плохо. Пользователь сознательно по Ctrl+Z создавал ion в ANSI, а прога без обоснования принудительно перекодировала его в UTF-8.
Да он во всех случаях бессмысленный, его вообще не нужно было делать.Flasher писал(а):MCE_MULTI_ONLY в таком случае становится просто бессмысленным
А где я пишу о полном повторении?Loopback писал(а):Я уже говорил, что сторонняя утилита не обязана полностью повторять поведение ТС.
Я уже писал о соответствии. Комменты читает ТС (подсказки, колонки). Комменты читаются другими скриптами (через FSO, например, я UTF-8 не прочту, приходится через ADO, который может отсутствовать на WinPE). Что ТС быстрее выводит в подсказки — ANSI или UTF-8? У тебя есть ответ? А поиск по [=tc.Комментарий] он с какой кодировкой быстрее производит? Не всё утыкается только в твой скрипт.Loopback писал(а):И каких-либо доводов в пользу необходимости сохранения в ANSI
Спасибо. Что-то инклудов понадбавилось. Аж 13 штук помимо 4 вложенных. Aux вырос с 57 до 76 Кб.Loopback писал(а):Добавил флаг для предпочтения ANSI и возврат.
При наличии TCFS2 — конечно.Loopback писал(а):Да он во всех случаях бессмысленный
Ок. Спорить больше не собираюсь.Flasher писал(а):Я уже писал о соответствии.
Во всех последних версиях новых не добавлялось, в чём легко убедиться, сравнив исходник.Flasher писал(а):Что-то инклудов понадбавилось.
А, ну да, по умолчанию WideCharToMultiByte считает, что конвертация àéÿ -> aey - это норма. Исправил, по той же ссылке.Flasher писал(а):àéÿüĄ — эти символы не читает как Юникод и коцает при сохранении.
Откуда тогда такая разница в 19.2 Кб?Loopback писал(а):Во всех последних версиях новых не добавлялось, в чём легко убедиться, сравнив исходник.
Ага, сейчас порядок.Loopback писал(а):Исправил, по той же ссылке.
Не знаю, если ты Autoit не обновлял в последнее время (новая версия библиотеки функций могла растолстеть), то нет объективных причин такого изменения. У меня размер a3x выходит около 76-77кб, что со старым кодом, что с новым. Да это и по размеру экзешника видно, он почти не меняется.Flasher писал(а):Откуда тогда такая разница в 19.2 Кб?
Было бы с чего обновлять. С последнего релиза уже больше 2-х лет прошло.Loopback писал(а):если ты Autoit не обновлял в последнее время
Мда. А я то думал, что конвертер (я уже и старый пробовал) тащит только нужное...Loopback писал(а):новая версия библиотеки функций могла растолстеть
А как называется-то хоть? Не этот ли? Там ссылки мёртвые. Может, у тебя в закромах завалялся?Loopback писал(а):Где-то на оффсайте Autoit выкладывали скрипт
Актуальные беты есть. Так или иначе, исправлений библиотек там много.Flasher писал(а):Было бы с чего обновлять.
Аналогично.Flasher писал(а):Как же прежний вариант в 58 Кб ужался, не понимаю...
Да, кажется этот. У меня не остался. Но я бы все равно от него многого не ожидал, последняя версия от 2010 года, с тех пор было много изменений.Flasher писал(а):Не этот ли?
А, так они появились только в прошлом месяце в той же линейке 3.3.15. И там совсем незначительные изменения у Array.au3 и ArrayDisplayInternals.au3. Остальные инклюды, считай, те же.Loopback писал(а):Актуальные беты есть. Так или иначе, исправлений библиотек там много.
Там снизу она отдельно выложена. Эта у меня была, забыл про неё. Спасибо, что напомнил. )Loopback писал(а):в комплекте родного редактора Scite есть утилита AU3Stripper
У меня сработала, только с 3-мя ошибками в логах. Вот код. В итоге a3x ужался в 23 Кб.Loopback писал(а):Попробовал, сходу не заработала


Код: Выделить всё
$sLine = StringReplace($sLine, "\", "\\")Обойтись без нее нельзя: в многострочных комментариях используется символ переноса строки \n, а для ввода собственно слеша он должен экранироваться вторым. Однако это необходимо только для многострочных комментариев, а применялось и для однострочных.yozhik писал(а):Но ведь зачем то эта строка понадобилась? Может глянете? Может можно и без неё обойтись? Чтобы обратные слэши в комментах не удваивались при каждом сохранении.