ViewColor — Монструозная раскраска некоторых синтаксисов в консоли поверх просмотрщика

Здесь выкладываются готовые к использованию макросы и скрипты.
Ultrabyte
Posts: 213
Joined: Sun 26 Mar, 2023 17:59
Has thanked: 19 times
Been thanked: 20 times

ViewColor — Монструозная раскраска некоторых синтаксисов в консоли поверх просмотрщика

Post by Ultrabyte »

ViewColor с конфигуратором (клавиша F11)










Attachments
ViewColor_v55.lua
ver 55 (11.05.26) - beta
- Add RealTime3-noBlink (not work in ConEmu with Far-RGB)
(255.99 KiB) Downloaded 3 times
ViewColor_v54.lua
ver 54 (29.04.26)
- ускорения 5% (меньше Lua-сборки-мусора)
- ScrollFast (клавиша Up/Down)
- Standby после 1мин экономит батареи ноута
(256 KiB) Downloaded 11 times
ViewColor_v53.lua
ver 53 (29.03.26)
- Конфигуратор цветов
- Добавить / Удалить новые схемы
- Export / Import Scheme
(254.32 KiB) Downloaded 16 times
ViewColor_v52.lua
ver 52 (22.03.26)
- ускорения 5% за счёт пропусков повторяющихся знаков
- баг-фикс со скобками, не портит экран
- Palette для 16-цветного консоля (от WinVista/7 и выше)
- поддержка v3900 (без конфига) или v4242 (с конфигом)
(250.35 KiB) Downloaded 6 times
ViewColor_v51.lua
ver 51 (20.02.26)
- конфигуратор (без цветов, только системные)
- ускорения +10% (убрана string конвертация)
(254.87 KiB) Downloaded 14 times
Last edited by Ultrabyte on Mon 11 May, 2026 01:41, edited 102 times in total.
Ultrabyte
Posts: 213
Joined: Sun 26 Mar, 2023 17:59
Has thanked: 19 times
Been thanked: 20 times

ViewColor — Монструозная раскраска некоторых синтаксисов в консоли поверх просмотрщика

Post by Ultrabyte »

Latest post of the previous page:

Словил дежавю, где я описывал проблему с шириной экрана (zg уже исправил), теперь и у себя обнаружил проблему с ViewColor с шириной экрана. Вкратце, если уменьшить ширину окно-консоля, то ViewColor начинает галлюцини́ровать с раскраской (хоть и не зависала, но зрелище не приятное).

Итак, в первопост выложил предварительную версию v0.41 (перед масштабными изменениями в будущем):
  • Исправил глюк, когда ширина экран консоля меньше, чем ширина HEX-просмотрщика.
  • Расширил коды цифр в UTF8 (какие-то азиатские + узкие/тонкие) и расширил знаки/препинания в UTF8 (их больше, чем в OEM/ANSI)
  • В UTF16 теперь не закрашивает бессмысленные символы "??????????????" (актуально для ConHost с "DOS-шрифтами")
  • Исправил раскраски списка, раньше не раскрашивала, например, "0B14:", но раскрашивала "0CB8:".
В целом, полагаю, что это стабильная версия (у меня за полгода не вылетала). И вроде тут никто не жаловался. На всякий случай пишите если что...

Как-то была мысль в следующей версии внедрить встроенный диалог "Настройки цветов", но как представлю сколько это возни и концентрации :(
Поэтому, заранее спрошу здесь, кто заинтересован в "диалоге Настройки" ? Кто-то перенастраивал базовые цветовые схемы?
(Просто я по-обычаю настроил 1 раз в кодах LUA и забыл)

И как лучше/предпочтительнее сохранять юзерские-цветовые схемы? в отдельных файлах .SAV или по старинке через mf.msave() (фаровский реестр наверное "нерезиновый") ?
Last edited by Ultrabyte on Fri 30 May, 2025 06:05, edited 5 times in total.
User avatar
HaRT
Moderator
Posts: 11458
Joined: Tue 30 Aug, 2005 17:21
Has thanked: 270 times
Been thanked: 417 times

ViewColor — Монструозная раскраска некоторых синтаксисов в консоли поверх просмотрщика

Post by HaRT »

Ultrabyte wrote: Fri 30 May, 2025 01:19 в отдельных файлах .SAV
Не вижу большого смысла городить какие-то новые файлы, когда настройки Фара (вместе с плагинами) можно экспортировать-импортировать. Но уж если и городить, то явно не с таким тыщу-раз-использованным расширением, а с каким-то уникальным, наподобие .Far3ViewColor.
Фар есть инструмент, а не нянька. © 2009 DrKnS
Shmuel
Posts: 7244
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 48 times
Been thanked: 636 times

ViewColor — Монструозная раскраска некоторых синтаксисов в консоли поверх просмотрщика

Post by Shmuel »

Ultrabyte wrote: Fri 30 May, 2025 01:19 фаровский реестр наверное "нерезиновый") ?
Резиновый, можно не беспокоиться.
Ultrabyte
Posts: 213
Joined: Sun 26 Mar, 2023 17:59
Has thanked: 19 times
Been thanked: 20 times

ViewColor — Монструозная раскраска некоторых синтаксисов в консоли поверх просмотрщика

Post by Ultrabyte »

Досрочно выложил эту же версию v41, но с сегодняшней датой. (скачали всего 7, поэтому не стал оформлять новую версию).

Из предыдущего:
  • Исправил глюк, когда ширина экран консоля меньше, чем ширина HEX-просмотрщика.
  • Расширил коды цифр в UTF8 (какие-то азиатские/узкие/тонкие) и расширил знаки/препинания в UTF8 (их больше, чем в OEM/ANSI)
  • В UTF16 теперь не закрашивает бессмысленные символы "??????????????" (актуально для ConHost с "DOS-шрифтами")
  • Исправил раскраски списка, раньше не раскрашивала, например, "0B14:", но раскрашивала "0CB8:".

Вычеркнул то, что замедляло до 10%. Осознанное решение, т.к. редко попадаются документы с UTF8 Шрифтов и Знаков, при этом постоянно LUA замедляется (10%). В этом не было смысла, вернул обратно старый код, это полезнее для медленных процов (Atom).
Last edited by Ultrabyte on Sun 01 Jun, 2025 01:33, edited 6 times in total.
Ultrabyte
Posts: 213
Joined: Sun 26 Mar, 2023 17:59
Has thanked: 19 times
Been thanked: 20 times

ViewColor — Монструозная раскраска некоторых синтаксисов в консоли поверх просмотрщика

Post by Ultrabyte »

Выложил первопост v41 (снова в ту-же версию) с текущей датой.
Last edited by Ultrabyte on Wed 04 Jun, 2025 09:54, edited 10 times in total.
User avatar
Wave
Posts: 1900
Joined: Thu 04 Aug, 2005 18:47
Has thanked: 16 times
Been thanked: 29 times

ViewColor — Монструозная раскраска некоторых синтаксисов в консоли поверх просмотрщика

Post by Wave »

Для статистики: мне хранилище не нужно.
Пользуюсь ФАРом больше 20 лет © собирательный.
dmitrik
Posts: 152
Joined: Mon 30 Nov, 2009 21:58
Has thanked: 11 times
Been thanked: 4 times

ViewColor — Монструозная раскраска некоторых синтаксисов в консоли поверх просмотрщика

Post by dmitrik »

Мне тоже не нужно. Когда-то отключил, поскольку было подозрение, что эта функциональность вызывала падения. Она или не она я так и не выяснил, падений давно уже нет, но с тех пор в любом случае так и не включил его обратно и не чувствую необходимости.

Более того, я и автоопределитель не использую (local AutoScanRun = false и local NameColorDefault = "code"). Для моих юзкейсов хватает за глаза в 99% случаев.
Last edited by dmitrik on Wed 04 Jun, 2025 14:44, edited 1 time in total.
Ultrabyte
Posts: 213
Joined: Sun 26 Mar, 2023 17:59
Has thanked: 19 times
Been thanked: 20 times

ViewColor — Монструозная раскраска некоторых синтаксисов в консоли поверх просмотрщика

Post by Ultrabyte »

Wave, dmitrik, спасибо за отклик (и приятно, что тема жива).
Shmuel wrote: Wed 13 Nov, 2024 01:38 Обратите внимание на младщие 4 бита в BackgroundColor и ForegroundColor - это как раз 0x1B



Отлегло, решил задачу по RGB, которую не давала покоя год. Применил собственную функцию преобразования: через FarAPI пишем RGB-цвет в консоль и через WinAPI считываем обратно этот цвет из консоля.
Теперь вопросы "преобразования RGB->4bit" (и тем более Color255) не моя головная боль, перекладываю эту боль на API Far/Win. :twisted:
Отныне ViewColor безошибочно определяет "что на экране" - Normal-текст или выделенный блок.

Однако, как и прежде, осторожная рекомендация: используйте стандартные цвета из 4-bit (16 цветная таблица) в настройках FAR->Options->Colors->Viewer, во избежания мерцания из-за различии тонких оттенков RGB с 4-bit, например, Сочно-Коралловый превратится в строго-Фиолетовый или Блекло-Салатовый в строго Зеленый.

ViewColor будет раскрашивать только строгие табличные цвета (вероятно по тем оттенкам-цветам, что указаны в свойствах ярлыка к FAR' у, например в Windows10 стандартный "blue"-цвет в консоле стал слишком ярким, в отличии от Windows XP. Настраивайте лучше там, в ярлыке).

В остальных разделах настройки FAR'а (кроме "Viewer") - можно настраивать RGB на свое усмотрение.
Last edited by Ultrabyte on Sat 06 Sep, 2025 01:31, edited 41 times in total.
User avatar
Taciturn
Posts: 645
Joined: Thu 26 May, 2005 17:14
Location: Санкт-Петербург
Has thanked: 101 times
Been thanked: 36 times
Contact:

ViewColor — Монструозная раскраска некоторых синтаксисов в консоли поверх просмотрщика

Post by Taciturn »

Far Manager v3.0 build 6446 x64 + ViewColor.lua 0.41 + W7-64/W11-64 со всеми апдейтами. Никаких настроек. Открываем ViewColor.lua и всё залито зелёным, никаких комментариев не видно. Так и задумано? 0.40 работает нормально.
User avatar
SUSim
Posts: 1735
Joined: Thu 18 Feb, 2010 17:32
Has thanked: 15 times
Been thanked: 45 times

ViewColor — Монструозная раскраска некоторых синтаксисов в консоли поверх просмотрщика

Post by SUSim »

А как должно было бы выглядеть?

ЗЫ. Мне нравятся данный макрос!!!
SimSU ··· ·· -- ··· ··-
Ultrabyte
Posts: 213
Joined: Sun 26 Mar, 2023 17:59
Has thanked: 19 times
Been thanked: 20 times

ViewColor — Монструозная раскраска некоторых синтаксисов в консоли поверх просмотрщика

Post by Ultrabyte »

Taciturn wrote: Fri 05 Sep, 2025 14:35 Открываем ViewColor.lua и всё залито зелёным, никаких комментариев не видно.
комментарии - тоже "по дефолту" голубым. Фон также голубой, не зеленый :).

Установил FAR из вашей ссылки, работает всё нормально - синий экран.

Как вариант, еще проверить в свойствах far.exe (или ярлыка far.exe). Синий и голубой - ничего не перепутано?
02.png
Last edited by Ultrabyte on Mon 08 Sep, 2025 15:46, edited 9 times in total.
User avatar
Taciturn
Posts: 645
Joined: Thu 26 May, 2005 17:14
Location: Санкт-Петербург
Has thanked: 101 times
Been thanked: 36 times
Contact:

ViewColor — Монструозная раскраска некоторых синтаксисов в консоли поверх просмотрщика

Post by Taciturn »

Тестировал я всё на голых виртуалках, где никакого Far'а и никаких ярлыков до теста не было. Но что-то сейчас у меня там перестало повторяться.
На основном компьютере стабильно повторяется, но лучше я на 0.38 останусь, чем буду разбираться.
Ultrabyte
Posts: 213
Joined: Sun 26 Mar, 2023 17:59
Has thanked: 19 times
Been thanked: 20 times

ViewColor — Монструозная раскраска некоторых синтаксисов в консоли поверх просмотрщика

Post by Ultrabyte »

Taciturn wrote: Sun 07 Sep, 2025 11:51 Но что-то сейчас у меня там перестало повторяться.
Меня эта ошибка заинтересовала, если это не связанное с настройкой цветов в FARе и в ярлыке.
Предположу, что может быть этот "голубой цвет" был как выделенный блок при поиске - ViewColor (случайно) принял как базовый цвет для всего. Пока не имею представление как повторить этот глюк, может быть через Alt-F7(поиск-файлов) и в нем "посмотреть файл"...
Taciturn wrote: Sun 07 Sep, 2025 11:51 лучше я на 0.38 останусь
Полагаю и 0.38 и 0.40 - беспроблемные?
Какая реакция с F5-"none"?
Last edited by Ultrabyte on Mon 08 Sep, 2025 12:27, edited 4 times in total.
User avatar
Taciturn
Posts: 645
Joined: Thu 26 May, 2005 17:14
Location: Санкт-Петербург
Has thanked: 101 times
Been thanked: 36 times
Contact:

ViewColor — Монструозная раскраска некоторых синтаксисов в консоли поверх просмотрщика

Post by Taciturn »

Ultrabyte wrote: Sun 07 Sep, 2025 19:56 Какая реакция с F5-"none"?
Тоже самое, что отсутствие ViewColor.

Ultrabyte wrote: Sun 07 Sep, 2025 19:56 Полагаю и 0.38 и 0.40 - беспроблемные?
Да. Но я ещё чуть меняю цвета под себя (делаю комментарии ярче), а начиная с 0.40 это стало сложнее, про этом цвет фона у меня не меняется вообще никогда, так что для себя я не вижу смысла трать время на адаптацию цветов, а больше в 0.40 ничего и не заявлено и никаких проблем с 0.38 у меня нет.
Ultrabyte
Posts: 213
Joined: Sun 26 Mar, 2023 17:59
Has thanked: 19 times
Been thanked: 20 times

ViewColor — Монструозная раскраска некоторых синтаксисов в консоли поверх просмотрщика

Post by Ultrabyte »

Taciturn wrote: Sun 07 Sep, 2025 11:51 На основном компьютере стабильно повторяется (голубой фон, вместо стандартного синего)
Разобрался в чем
Спасибо, что натолкнули меня в этом направлении. В первопост выложена v0.42.

Интересно, что за 3 месяца никто не сообщил об этой очевидной ошибке ;)
Taciturn wrote: Mon 08 Sep, 2025 06:59 начиная с 0.40 это стало сложнее, про этом цвет фона у меня не меняется вообще никогда
Да, согласен. С версии 0.40 пошло какое-то извращение с кодом в угоду "всеядности" (для тех у кого "черный FAR"). Для меня это тоже излишне, т.к. у меня стандартный темный синий цвет (по классической палитры винды7, а не винды10, где сверх-яркий синий фон).

С другой стороны, в версии 0.40 и дальнейшее 0.41 - исправлены неприятные мелочные косяки, которых не имело смысла перечислять в changelog, например перепутаны цифры, перепутаны переменных из-за замыливания мозга. facepalm.

На всякий случай, напомню всем: можно как и прежде назначать принудительные цвета,
Last edited by Ultrabyte on Mon 08 Sep, 2025 21:45, edited 3 times in total.
VadimK
Posts: 10
Joined: Thu 03 Jan, 2019 16:47
Has thanked: 13 times

ViewColor — Монструозная раскраска некоторых синтаксисов в консоли поверх просмотрщика

Post by VadimK »

Ultrabyte

Спасибо за ваш полезный макрос! Впечатлён объёмами кода и проделанной работы!

А есть ли возможность приспособить этот макрос для раскрашивания текста в панели Быстрого просмотра (Quick View) ?
Или отдельный макрос, попроще, создать - вряд ли в быстром просмотре народ будет активно скроллить гиговые файлы и жать прочие клавиши. На панель быстрого просмотра редко кто переходит и смотрит дальше первой "страницы"/экрана.

Смотрю по истории разработок у вас проблема возникла с этой панелью. Но хочется надеяться на лучшее. :)
Post Reply

Return to “Полезные макросы и скрипты”