Total7zip

Обсуждение только плагинов и утилит для Total Commander.

Модераторы: Avada, CaptainFlint, Nik, d-view, Моторокер

Аватара пользователя
CaptainFlint
Сообщения: 6239
Зарегистрирован: Вт дек 14, 2004 22:34
Контактная информация:

Сообщение CaptainFlint »

Total7zip писал(а):Коротко - Unicode всегда 2 байта на букву, а UTF8 только для символов, которые не помещаются в один байт.
Хоть здесь это и оффтоп, всё же уточню, чтобы другие не путались. Unicode — это стандарт, а разные кодировки — это UTF и UCS. Двухбайтовая кодировка — это UCS-2, и сейчас она недействительна, т.к. символов в юникоде больше, чем 65536, т.е. двух байтов для них уже недостаточно. Сейчас используется схожая с ней кодировка UTF-16, которая кодирует большую часть символов двумя байтами, но есть и символы, занимающие по четыре байта. Ну и UTF-8 — она не только для символов, не помещающихся в один байт, а для всего диапазона Unicode, символы в ней занимают от 1 до 4 байтов.

У Гислера в документации под "Unicode" в большей части случаев подразумевается UTF-16.
Почему же, ё-моё, ты нигде не пишешь "ё"?
XXXLer
Сообщения: 48
Зарегистрирован: Вс дек 19, 2010 15:48

Сообщение XXXLer »

Flasher писал(а):Total7zip Мои дальнейшие действия?
брать оригинальный lng, открывать его как UTF-16 c Unix-переносом строки и править заново.

и, да, если файл в UTF-16 открыть в режиме UTF-8 и сохранить как ANSI, то будут и кракозяблики и "пробел" каждым нечетным символом
Аватара пользователя
MVV
Сообщения: 4815
Зарегистрирован: Чт окт 15, 2009 10:58
Откуда: Ростов-Дон

Сообщение MVV »

Можно обычным виндовским блокнотом открыть файл. Но ему реально не нравятся однобайтные переносы строк. Тогда в хекс-редакторе позаменять байты 0A на 0D 0A, а потом открывать в блокноте и сохранять куда угодно.

А вообще, наверное, уже в дистрибутиве плагина текстовые файлы должны быть с виндовскими разрывами строк, т.к. плагин все-таки для виндовской программы. Тогда ни у кого проблем не возникнет.
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

XXXLer писал(а):брать оригинальный lng, открывать его как UTF-16 c Unix-переносом строки и править заново.
Что значит "открывать как UTF-16"? Редактор автоматом по логике должен декодировать такие вещи. Разве нет?
XXXLer писал(а):и, да, если файл в UTF-16 открыть в режиме UTF-8 и сохранить как ANSI, то будут и кракозяблики и "пробел" каждым нечетным символом
Опять же, что значит "открыть как UTF-8"? Я не сохранял в ANSI, я сразу написал во что я сохранил.
MVV писал(а):Можно обычным виндовским блокнотом открыть файл. Но ему реально не нравятся однобайтные переносы строк.
Ну да, он выдаёт одну строчку.
MVV писал(а):А вообще, наверное, уже в дистрибутиве плагина текстовые файлы должны быть с виндовскими разрывами строк, т.к. плагин все-таки для виндовской программы. Тогда ни у кого проблем не возникнет.
Не понял к чему это сказано, если уже возникло?
XXXLer
Сообщения: 48
Зарегистрирован: Вс дек 19, 2010 15:48

Сообщение XXXLer »

Что значит "открывать как UTF-16"? Редактор автоматом по логике должен декодировать такие вещи. Разве нет?
обычно да, но как правило эта опция отключаема, и к слову, лично у меня Akelpad на автомате и выбирает UTF-16:
Изображение
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

XXXLer
В Параметрах у меня стоит:
Распознавание кодировки: Кириллица (ANSI, KOI8-R, UTF-8)
Кодировка по умолчанию: UTF-8.
XXXLer
Сообщения: 48
Зарегистрирован: Вс дек 19, 2010 15:48

Сообщение XXXLer »

В Параметрах у меня стоит:
Распознавание кодировки: Кириллица (ANSI, KOI8-R, UTF-8 )
Кодировка по умолчанию: UTF-8.
по идее это не влияет на UTF-16, попробуйте удалить "HKEY_CURRENT_USER\Software\Akelsoft\AkelPad\Recent" - там хранится выбранная пользователем кодировка для открывавшихся файлов
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

XXXLer писал(а):по идее это не влияет на UTF-16
Так файл уже переведён в UTF-8. Имеет ли сейчас смысл эта процедура? Я же не жаловался на отображение UTF-16 LE.
Аватара пользователя
MVV
Сообщения: 4815
Зарегистрирован: Чт окт 15, 2009 10:58
Откуда: Ростов-Дон

Сообщение MVV »

Flasher писал(а):Так файл уже переведён в UTF-8. Имеет ли сейчас смысл эта процедура?
Но ведь можно поэкспериментировать с файлом из дистрибутива. :)
Flasher писал(а):
MVV писал(а):А вообще, наверное, уже в дистрибутиве плагина текстовые файлы должны быть с виндовскими разрывами строк, т.к. плагин все-таки для виндовской программы. Тогда ни у кого проблем не возникнет.
Не понял к чему это сказано, если уже возникло?
Это пожелание на будущее. :roll:
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

MVV писал(а):Но ведь можно поэкспериментировать с файлом из дистрибутива.
Как именно экспериментировать? Перевести в нужную кодировку?
Хм. Помогло. :)
MVV писал(а):Это пожелание на будущее.
Автору что ли? :)

Total7zip, предлагаю всё-таки самому проверить как отображается lng в обычном блокноте. Даже без перекодировки текст разбивается на 13 строк.
XXXLer
Сообщения: 48
Зарегистрирован: Вс дек 19, 2010 15:48

Сообщение XXXLer »

есть проблема с NSIS - если в одной папке несколько файлов с идентичным именем, в любом случаем извлекается 1й файл
Аватара пользователя
Total7zip
Сообщения: 287
Зарегистрирован: Сб ноя 27, 2010 03:22

Сообщение Total7zip »

а можно пример - возможно это баг в тотал коммандере.

работает он примерно так - просит открыть архив, потом просит информацию о первом файле, потом о следующем и т.п.
и так строит дерево файлов и папок.
потом закрывает архив.

дальше вы ходите по готовому дереву, и когда наконец выбираете файл,
тотал коммандер опять росит плагин открыть архив, опять начинает перебирать файлы и когда доходит до нужного файла просит его извлечь. возможно что он проверяет не по номеру (индексу) файла, а просто по совпадению имен.

нужен пример
XXXLer
Сообщения: 48
Зарегистрирован: Вс дек 19, 2010 15:48

Сообщение XXXLer »

пример -> http://rghost.ru/4234972
Аватара пользователя
MVV
Сообщения: 4815
Зарегистрирован: Чт окт 15, 2009 10:58
Откуда: Ростов-Дон

Сообщение MVV »

XXXLer, давай рассуждать логически.
Если в папке есть три файла с именем 1.txt (к примеру), ты хочешь извлечь второй, выделяешь его и копируешь. Тотал говорит плагину, что ты хочешь извлечь файл 1.txt. Откуда плагин узнает, который из этих трех ты хочешь извлечь?
Не рассчитан интерфейс WCX-плагинов на то, что в одной папке может быть несколько файлов с одинаковыми именами, и ничего с этим не поделаешь. Тотал сообщает плагину лишь имена файлов, но никак не их индексы в панели.

В таких редких случаях открывай архив в интерфейсе 7-Zip и перетягивай нужные файлы в панель тотала - благо, работают они на одном "движке". :wink:
XXXLer
Сообщения: 48
Зарегистрирован: Вс дек 19, 2010 15:48

Сообщение XXXLer »

XXXLer, давай рассуждать логически.
Если в папке есть три файла с именем 1.txt (к примеру), ты хочешь извлечь второй, выделяешь его и копируешь. Тотал говорит плагину, что ты хочешь извлечь файл 1.txt. Откуда плагин узнает, который из этих трех ты хочешь извлечь?
в принципе достаточно добавить сквозную нумерацию дубликатов (как в том-же inno unpack)
Ответить