Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Программы » Total Commander (часть 13)
Двухпанельный файловый менеджер

Модерирует : gyra, Maz

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112

Открыть новую тему     Написать ответ в эту тему

Maz



Дед Мазай
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Предыдущие темы: ч.1 ч.2 ч.3 ч.4 ч.5 ч.6 ч.7 ч.8 ч.9 ч.10 ч.11 ч.12


Текущая финальная версия       Предыдущие версии    
11.56 (19.08.2025)
32 bit64 bit32+64    

Новые функции TC (перевод)      
11.5x: 11.55 (25.06.25) - 32 bit64 bit32+64    
11.0x: 11.03 (21.02.24) - 32 bit64 bit32+64    
10.5x: 10.52 (26.10.22) - 32 bit64 bit32+64    
10.0x: 10.00 (10.06.21) - 32 bit64 bit32+64    
Новейшая история изменений       Коллекции предыдущих версий    
11.56, англ. оригинал;    
11.56, русский перевод      
Польский сайт TC
Totalcmd Wiki  

 
Официальный сайт TC | Официальный форум TC | TotalcmdWiki | Русский сайт TC | Русский форум TC
О проблемах с wincmd.ru/totalcmd.net Подробности
 
Вопросы по плагинам и аддонам
Вопросы по лечению пациентатолько в Варезнике
Готовые сборки Total Commander (и все вопросы по ним)
 
Онлайновая русская справка (для TC 9.51, 14.11.2020) | CHM (зеркало), HLP (зеркало) | Авторы
Total Commander Knowledge Base 3.0 (русскоязычная база знаний)
Справочные таблицы: Все ключи (?) | Команды и параметры | Клавиатурные назначения

Всего записей: 39775 | Зарегистр. 26-02-2002 | Отправлено: 22:07 20-11-2024 | Исправлено: insorg, 19:22 11-12-2025
CaptainFlint



Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Crownethers

Цитата:
Вы попробовали вышеприведенный пример (на разных версиях ТС) или это теоретические рассуждения (скорее всего, теоретически верные, но речь в данном случае о практических проблемах в последних версиях ТС)?

Я не имею возможности проверить, как именно был создан приведённый INI-файл. Поэтому я попробовал у себя (впрочем, в этом не было необходимости, так как я неоднократно работал с этими строками сам и читал описание этого механизма от самого Гислера). У меня новые записи сохранились в точности так, как я описал: если wincmd.ini сохранён в кодировке ANSI, то значение параметра сохраняется в виде "BOM-сигнатура UTF-8" + "строка в кодировке UTF-8".
 
Конкретный пример: замена греческой буквы "бета" на букву "s с седилем" (к сожалению, на ру-борде не поддерживается юникод, чтобы вписать тут сами буквы). При просмотре INI-файла в кодировке ANSI записи выглядят так:

Код:
test_search=п»їОІ
test_replace=п»їЕџ

Здесь первые три символа "п»ї" — EF BB BF, BOM-сигнатура, а последующие два символа — представление соответствующей буквы в UTF-8 кодировке при просмотре её в режиме ANSI. Если переключить просмотрщик в режим UTF-8, то сигнатура спрячется, так как это по сути юникодный невидимый символ, а двухбуквенные последовательности отобразятся в виде тех самых букв, которые я задал для поиска-замены.
 
Если удалить этот блок, пересохранить INI в формате UTF-16LE, а потом снова сохранить такой же шаблон ИГП, то секция уже будет выглядеть просто как

Код:
test_search=B
test_replace=S

(где буквами B и S я условно обозначил вышеназванные юникодные символы) без всяких добавок, в чём легко убедиться, открыв его в шестнадцатеричном режиме и проверив конкретные коды (B2 03 и 5F 01, что в кодировке UTF-16LE соответствует кодам 03B2 и 015F, кодирующими указанные символы).
 
Разумеется, если взять ANSI-INI с такими цепочками и начать его перекодировать туда-сюда, то имеющиеся там UTF-8 последовательности могут поломаться. Всё-таки это довольно нестандартный хак и он требует аккуратного обращения с текстом, тщательного контроля над тем, из какой и в какую кодировку выполняется конвертация, и корректно ли она выполняется. Плюс, не каждый текстовый редактор осилит сохранение BOM-сигнатуры в неположенном месте. Хоть, строго говоря, это обычный юникодный символ, слишком уж прижилось его использование исключительно в начале файла в качестве маркера кодировки, и какие-то редакторы могут его просто удалять.
 
P. S. Всё вышеописанное проверял на версиях 11.51 и 11.55. Но этому механизму примерно столько же лет, сколько юникодной версии Тотала.

----------
Почему же, ё-моё, ты нигде не пишешь "ё"?

Всего записей: 5667 | Зарегистр. 11-11-2002 | Отправлено: 01:41 19-05-2025 | Исправлено: CaptainFlint, 01:42 19-05-2025
Crownethers

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
CaptainFlint

Цитата:
Я не имею возможности проверить, как именно был создан приведённый INI-файл. Поэтому я попробовал у себя (впрочем, в этом не было необходимости, так как я неоднократно работал с этими строками сам и читал описание этого механизма от самого Гислера). У меня новые записи сохранились в точности так, как я описал: если wincmd.ini сохранён в кодировке ANSI, то значение параметра сохраняется в виде "BOM-сигнатура UTF-8" + "строка в кодировке UTF-8".  

Я писал, что строки сохраняются, но после этого шаблоны не работают при их загрузке
В общем, если перейдете от теории к практике, то сможете убедиться в этом. Пример я привел (то есть не любые шаблоны - например, шаблоны с умляутами добавляются с bom и с ними проблем нет), на который бумы и безбумы никак не влияют.
 
Остальное, написанное вами, являясь общими местами, по сути не относящимися к озвученной проблеме, оставляю без коментариев.
 
Выше привел решение проблемы без перекодировки в unicode (что меня не очень устраивает). Желающие вправе предложить свои варианты решения, если таковые в принципе возможны.
 
И да, шаблоны взяты из ini 9-й версии ТС (бэкапы старых осей храню; старых не по версии, а по времени установки, в конкретном случае ось одна и та же, но с интервалом установки в 6 лет)
 
ПС Для невнимательных напомню, что сидя на 9х версии TC не испытывал проблем с подобными шаблонами. Проблема возникла после перехода на 11 версию TC.
ППС Существуют хекс редакторы (с текстовыми файлами они работают столь же успешно, как и с бинарными). Гарантирующие абсолютную чистоту экспериментов с бумами и прочей всячиной и без таковой.

Всего записей: 13 | Зарегистр. 10-01-2024 | Отправлено: 06:12 19-05-2025 | Исправлено: Crownethers, 06:18 19-05-2025
destiny_child



Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Crownethers (пост)
Цитата:
Пример я привел  

А можете его описать словами? Вот, мол, надо взять такое и сякое и перевести в такое и сякое.
Чтобы мы могли сами СОЗДАТЬ этот шаблон, а не тупо брать и копировать что-то там в вашем файле находящееся.
Вполне вероятно что у вас уже результат всяких наслоенных ошибок ручных обработок "ушёл" в этот файл.

Всего записей: 5138 | Зарегистр. 01-04-2006 | Отправлено: 12:22 19-05-2025
CaptainFlint



Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Crownethers

Цитата:
Я писал, что строки сохраняются, но после этого шаблоны не работают при их загрузке

У меня работают. Только что загрузил тот шаблон, что я создал, — всё корректно отобразилось.

----------
Почему же, ё-моё, ты нигде не пишешь "ё"?

Всего записей: 5667 | Зарегистр. 11-11-2002 | Отправлено: 14:50 19-05-2025
Crownethers

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
CaptainFlint

Цитата:
У меня работают. Только что загрузил тот шаблон, что я создал, — всё корректно отобразилось.

Можете аним. gif  выложить, на котором видно создание шаблона, последующая его загрузка (f2) и предлагаемая замена входящих в него символов в именах файлов?
То есть, шаблон обязательно дб сохранен и только после этого вызван/загружен по F2.
Алгоритм действий таков:
1. Ctrl-M
2. Search for: (строка из примера выше) или сделайте свою: перекодируйте русский алфавит (верхний и нижний регистр) в utf8 и откройте его как win1251 (получите парные кракозябы

которые (пары символов) нужно разделить символом вертикальной черты).
Replace with: а|А|б|Б|в|В|г|Г|д|Д|е|Е|ё|Ё|ж|Ж|з|З|и|И|й|Й|к|К|л|Л|м|М|н|Н|о|О|п|П|р|Р|с|С|т|Т|у|У|ф|Ф|х|Х|ц|Ц|ч|Ч|ш|Ш|щ|Щ|ъ|Ъ|ы|Ы|ь|Ь|э|Э|ю|Ю|я|Я
Галочки: учитывать регистр
3. F2 - Save setting - вводим имя, напр "123" - Ok
4. Закрываем Rename tool.
5. Выбираем файл содержащий в имени символы (пары) из списка замены шаблона 123 и Ctrl-M
6. F2 и вызываем шаблон 123
7. Сравниваем новое предлагаемое имя файла с его оригиналом.
Видео этой группы действий и требуется (при этом файл wincmd.ini должен быть в кодировке ansi (не в unicode !!!)
Кстати, повторить это может любой желающий на 11-й версии ТС.
 
Надеюсь, создание тестового файла с нужными кракозябрами в имени не станет большой проблемой.

Всего записей: 13 | Зарегистр. 10-01-2024 | Отправлено: 21:10 19-05-2025 | Исправлено: Crownethers, 21:14 19-05-2025
CaptainFlint



Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Crownethers
Вот в такой формулировке подтверждаю, спасибо за подробное описание. До этого было непонятно, что UTF-8-строки в wincmd.ini появились не из-за юникодности, а из-за того, что мы сами, собственноручно вколотили туда цепочки символов из UTF-8-текста, который специально был открыт в режиме ANSI.
 
Тут дело в том, что в этом случае с точки зрения Тотала вообще никаких юникодных символов нет. Всё, что мы копируем, является совершенно валидным ANSI-текстом (в нём по определению любому байту соответствует какой-то символ). Поэтому Тоталу нет необходимости применять юникодные трюки, и строки записываются как есть.
 
Погоняв разные версии, я нашёл момент поломки: 9.51rc4. В версии 9.51rc3 шаблон загружается корректно, а в rc4, похоже, было добавлено какое-то автоопределение, которое загружает эту псевдо-UTF8-строку как UTF-8, несмотря на отсутствие в ней BOM-сигнатуры. И обе строки оказываются идентичными последовательностями русских букв. Это однозначно баг, надо репортить Гислеру.

----------
Почему же, ё-моё, ты нигде не пишешь "ё"?

Всего записей: 5667 | Зарегистр. 11-11-2002 | Отправлено: 06:11 20-05-2025
Crownethers

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
CaptainFlint
Если поменять строки поиска и замены местами, то ситуация еще интереснее и она уже не лечится перекодированием строки замены в utf8, как в первом случае. Точнее, если не перекодировать, то все как и в первом случае - замен нет, но при перекодировании замены происходят на символы записанные в ini как есть, то есть, вместо каждого символа появляется 4. И преобразование в исходный русский текст возможно лишь путем двойного (!!!) перекодирования (utf8 -> win1251)*2, то есть строка замены работает, в точности, как она записана в ini (4 символа/байта на кириллический символ), но при этом отображается она при загрузке шаблона раскодированной из utf8, то есть в виде стандартных utf8 кракозябр из кириллицы (скрин выше) - 2 символа/байта на кириллический символ. И решения этой проблемы я не нашел (исключая ini в юникод).
 
Прим. для тех. кто не понял, для чего в принципе нужны подобные шаблоны переименования.
Дело в том, что до сих пор встречаются файлы и даже раздачи в торрентах, в именах которых оригинальные символы представлены в виде различного рода кракозябр вследствие ошибок серверов и/или человека выкладывающего их. И это касается, различных национальных алфавитов (то есть, не основной латиницы), а также других символов (за пределами 8-битных кодировок). Причем, встречаются случаи 2-х и более преобразований, для которых, чтобы привести к изначальному текстовому виду требуется столько же обратных последовательных преобразований с помощью подобных обсуждаемому тут шаблону. Иначе говоря, эти шаблоны выполняют те же функции для имен файлов, что и, например, программа Штирлиц  - для текстов с кракозябрами.

Всего записей: 13 | Зарегистр. 10-01-2024 | Отправлено: 07:49 20-05-2025 | Исправлено: Crownethers, 19:10 20-05-2025
DimONtm



Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
21.05.25 Release Total Commander 11.55 release candidate 3
 
Ссылки на скачивание
 
Список изменений

Всего записей: 5530 | Зарегистр. 07-08-2003 | Отправлено: 17:27 21-05-2025 | Исправлено: DimONtm, 17:29 21-05-2025
Nimbussr



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Запустил оригинальный TC версии 11.55RC2.
А он при запуске сразу выдал окно с информацией о доступности новой версии.
 
Но! Разрешения на доступ в сеть для исполняемого файла totalcmd.exe от Файерволла не было.
У меня simplewall и если изменить путь у разрешённого приложения, то запрос на доступ в сеть повторится, т.к. он будет думать что это другая программа.
 
Как Тотал обходит Файерволл и видит, что есть новая версия?

Всего записей: 2139 | Зарегистр. 31-05-2008 | Отправлено: 15:53 23-05-2025
RetroRocket



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Nimbussr
Цитата:
Как Тотал обходит Файерволл и видит, что есть новая версия?

Вероятно, всё тот же старый способ с DNS-туннелированием, что и в прошлых версиях.
Вот обсуждали -
http://forum.ru-board.com/topic.cgi?forum=5&topic=49894&start=580#10
http://forum.ru-board.com/topic.cgi?forum=2&topic=5493&start=2720#9
и далее там же.
 
Если у вас работает системная виндовая служба DNS, то через неё запрос и проходит.
Для фаервола это запрос от имени системы, а не от имени ТС.

----------
"... Зовёт, зовёт в дорогу далёкий Млечный Путь ..."

Всего записей: 2983 | Зарегистр. 02-01-2018 | Отправлено: 16:59 23-05-2025
codecs



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
Added: When changing file attributes, it's now possible to enter fractions of a second (max 3 digits) in the time field (32/64)

этим новшеством Гислер сломал установку атрибутов плагинами - пришлось откатиться на RC2

Всего записей: 2301 | Зарегистр. 22-07-2003 | Отправлено: 19:56 23-05-2025
jentoso



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
codecs
Примеры планигонов?

Всего записей: 724 | Зарегистр. 25-10-2008 | Отправлено: 22:16 23-05-2025
codecs



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
атрибуты в тотале устанавливает плагин tc - и если он берет поля из exeformat то выдает ошибку. А если выставлять время вручную, то нужно добавлять после секунд еще и эти дебильные микросекунды (а не секунды как написал Гислер и к тому же обязательно а не possible)

Всего записей: 2301 | Зарегистр. 22-07-2003 | Отправлено: 00:18 24-05-2025
Avada



Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
codecs

Цитата:
А если выставлять время вручную, то нужно добавлять после секунд еще и эти дебильные микросекунды (а не секунды как написал Гислер и к тому же обязательно а не possible)

Попрошу пояснить, что там сейчас не так происходит в диалоге для изменения атрибутов без принудительного добавления вручную миллисекунд (да и секунд тоже) при установке времени. У себя на RC3 пока никакой патологии не вижу, как хочу изменить время, так и изменяю. Хоть в обычном поле для времени, хоть с помощью плагина "tc" в секции для плагинов, хоть с передачей ему данных из другого плагина. А про взаимодействие "tc" с ExeFormat желательно бы более подробно, с конкретным содержимым полей, а не общим словами (я этим плагином уже не пользуюсь, а ставить для тестирования непонятно чего неинтересно). И не микросекунды, а миллисекунды ("доли секунд" кое-где в документации именно эту единицу и означают). Кроме того, типовой способ установки атрибутов и даты/времени в TC, существующий с древнейших времён, никакого обязательного участия "tc" не требует (возможное использование плагинов — чисто вспомогательный механизм).

Всего записей: 7841 | Зарегистр. 31-07-2008 | Отправлено: 07:32 24-05-2025 | Исправлено: Avada, 09:27 24-05-2025
codecs



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
по диагонали что ли читаешь? - я же сразу написал, что сломали именно установку атрибутов плагинами, а не встроенный механизм

в RC2 работают оба варианта, а RC3 первый вообще не работает, а второй работает только если добавить миллисекунды
 
оффтоп - и нахрен в RC дебавлять новшества - тем самым RC превращается в бету

Всего записей: 2301 | Зарегистр. 22-07-2003 | Отправлено: 11:16 24-05-2025 | Исправлено: codecs, 11:18 24-05-2025
Avada



Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
codecs
С тем, что на втором скрине, у меня изменение времени прекрасно выполняется в RC3 без всяких миллисекунд. (Да и без секунд тоже, но они там были всегда и к этой новации никакого отношения не имеют.) Хоть полностью вручную с нуля, хоть с правкой подставленного кнопкой >>. По первому скрину для начала хотелось бы понять, как вообще получена эта связка плагинов. (В диалоговом режиме из ExeFormat это поле в диалоге атрибутов не берётся, проверялось и на RC2.) Если же данные нужного поля ExeFormat тупо подставлять в диалоге вручную (или через шаблон, как на скрине), то никакой разницы в поведении между RC2 и RC3 я опять же не вижу, изменение реально выполняется в обоих случаях.

Всего записей: 7841 | Зарегистр. 31-07-2008 | Отправлено: 12:19 24-05-2025 | Исправлено: Avada, 12:50 24-05-2025
codecs



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
 у меня изменение времени прекрасно выполняется в RC3 без всяких миллисекунд

в 32-битном работает, а в 64-битном нет

Цитата:
хотелось бы понять, как вообще получена эта связка плагинов. (В диалоговом режиме из ExeFormat это поле в диалоге атрибутов не берётся, проверялось и на RC2.)

упс - у меня этот шаблон с незапамятных времен и даже не представляю с какой версии тотала перестали отображаться поля этого плагина

Всего записей: 2301 | Зарегистр. 22-07-2003 | Отправлено: 12:52 24-05-2025
Avada



Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
codecs
Да, с изменением времени через плагин "tc" в 64-битной версии возникает ошибка. Предлагается метка даты/времени 01.01.9999 00:00:00. Выполнять такое изменение Тотал отказывается и выдаёт окно ошибки. Соответственно, то же самое наблюдаем и при обработке данных их стороннего плагина. В 32-битном TC всё OK. Это баг, надо репортить без долгих отлагательств.
А когда исчез доступ к полям ExeFormat и был ли он в этом диалоге изначально (или всё просто копировалось, скажем, из набора колонок), это уж предлагаю выяснить самостоятельно, если интересно.

Всего записей: 7841 | Зарегистр. 31-07-2008 | Отправлено: 13:05 24-05-2025 | Исправлено: Avada, 13:14 24-05-2025
Sirius_22



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Доброго времени суток, джентльмены.
 
Старый я стал и запамятовал, а как вывести в текстовый файл содержимое произвольного каталога?
 
Ну то есть перечень файлов и подкаталогов (если ещё и с содержимым этих подкаталогов, так вообще круто было бы).
 
Вроде бы это родная опция/возможность/команда сабжа или это через плагин надо делать?
 
Заранее благодарен.

----------
Вот попробуй как-нибудь на досуге объяснить иностранцу, что по русски "мочишь" и "жжёшь" - это одно и тоже.

Всего записей: 796 | Зарегистр. 01-06-2004 | Отправлено: 17:41 25-05-2025
Jonmey

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Sirius_22

Код:
cm_SaveSelectionToFile=2031;Save file selection to file
cm_SaveSelectionToFileA=2041;Save file selection to file (ANSI)
cm_SaveSelectionToFileW=2042;Save file selection to file (Unicode)
 

http://flint-inc.ru/tcinfo/all_cmd.ru.htm

Всего записей: 1407 | Зарегистр. 17-01-2011 | Отправлено: 18:07 25-05-2025
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112

Компьютерный форум Ru.Board » Компьютеры » Программы » Total Commander (часть 13)


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.Board
© Ru.B0ard 2000-2026

LiteCoin: LgY72v35StJhV2xbt8CpxbQ9gFY6jwZ67r

Рейтинг.ru