Выбор кодировки по маске файла

Здесь обсуждается всё, что касается макросов.
buniak_a_h
Posts: 1610
Joined: Sat 20 Apr, 2013 00:17
Location: Питер
Has thanked: 109 times
Been thanked: 141 times
Contact:

Выбор кодировки по маске файла

Post by buniak_a_h »

Хочу поделиться удобным (для меня, во всяком случае) скриптом, выбирающим кодировку в редакторе в зависимости от расширения файла. Причина: автоматическое определение не всегда срабатывает (особенно на коротких файлах); в то же время бывают предопределённые случаи. В предлагаемом скрипте заложено:
1. *.lua,*.fml,*.fmlua,*.lua.*,*.fb2 - всегда 65001
2. *.bat,*.cmd,*.prg,*.ch (программы на Харборе, командные файлы) - всегда 866
Расширять можно и дальше.
Условие выполнения скрипта: для вьюера требуется, чтобы нужная кодировка была видна в меню выбора кодировок. Т.е. это должна быть либо одна из основных (866, 1251), либо Unicode (65001, 1200, 1201), либо помеченная как Favorite, либо должны быть видны ВСЕ кодировки (переключение по CtrlH)
В версии 5 убрана зависимость от таблицы _G.BAX . Исправлены неточности, оптимизирован текст (спасибо John Doe). Соответственно, исправлена ошибка, описанная citRiks.
Модуль прилагается, но скрипт должен работать с практически любой версией этого модуля (если кто уже ставил). В модуль добавлен номер версии - на будущее для контроля совместимости.
modules.7z
Модуль BaxUtils версии 1.1.1
(13.58 KiB) Downloaded 21 times
CodePage.1_1_5.lua.7z
CodePage.lua версии 1.1.5
(3.86 KiB) Downloaded 24 times
Last edited by buniak_a_h on Wed 04 Dec, 2019 06:04, edited 7 times in total.

citRiks
Posts: 482
Joined: Fri 25 Oct, 2019 18:18
Has thanked: 143 times
Been thanked: 41 times

Выбор кодировки по маске файла

Post by citRiks »

Latest post of the previous page:

buniak_a_h,

Задумавшись над тем, почему такой полезной темой не занимались раньше, нашёл 2 макроса. И возможно Вам они тоже будут интересны (если Вы с ними ещё не знакомы).

shmuz 17:21 17-01-2017 и Shmuel Mon 11 Feb 2013 10:46

buniak_a_h
Posts: 1610
Joined: Sat 20 Apr, 2013 00:17
Location: Питер
Has thanked: 109 times
Been thanked: 141 times
Contact:

Выбор кодировки по маске файла

Post by buniak_a_h »

citRiks wrote:
Wed 04 Dec, 2019 19:51
buniak_a_h,

Задумавшись над тем, почему такой полезной темой не занимались раньше, нашёл 2 макроса. И возможно Вам они тоже будут интересны (если Вы с ними ещё не знакомы).

shmuz 17:21 17-01-2017 и Shmuel Mon 11 Feb 2013 10:46
Посмотрел…
Первый макрос - читает BOM и выставляет CP, ему соответствующий. Насколько я понимаю, это делает (теперь?) автоопределение.
Второй - входит в мой скрипт в части собственно установки CP для редактора. кроме этого куска моё ещё предусматривает настройку , а ГЛАВНОЕ (!!!) - для вьюера тоже делает. Просто у вьюера нет SetParam, что сильно усложняет процесс …
У меня ещё и (били? надо бы проверить) "связаны по данным" этот макрос и Find & Go . Во всяком случае так было, пока я не стал "бороться" с глобальной таблицей _G.BAX (сказали, что порочная практика)

Post Reply

Return to “Обсуждение макросов”