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

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

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

Post by Ultrabyte »

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









Attachments
ViewColor_v53.lua
ver 53 (29.03.26)
- Конфигуратор цветов
- Добавить / Удалить новые схемы
- Export / Import Scheme
(254.32 KiB) Downloaded 14 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 30 Mar, 2026 11:23, edited 82 times in total.
Ultrabyte
Posts: 200
Joined: Sun 26 Mar, 2023 17:59
Has thanked: 18 times
Been thanked: 18 times

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

Post by Ultrabyte »

Latest post of the previous page:

В первопост выложил v51 (23.10.25) -
В второпост выложил v0.42 (без конфигуратора) - с
Last edited by Ultrabyte on Fri 02 Jan, 2026 19:40, edited 16 times in total.
Ultrabyte
Posts: 200
Joined: Sun 26 Mar, 2023 17:59
Has thanked: 18 times
Been thanked: 18 times

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

Post by Ultrabyte »

В второпост выложил небольшое обновление v0.43 с
Last edited by Ultrabyte on Thu 29 Jan, 2026 09:52, edited 4 times in total.
Ultrabyte
Posts: 200
Joined: Sun 26 Mar, 2023 17:59
Has thanked: 18 times
Been thanked: 18 times

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

Post by Ultrabyte »

v52 (beta) - конфигуратор цветов (не полная, не хватает конфигуратор "комментарий", поэтому статус "бета").
Много пошерстил в коде, поэтому могут быть подводные камни, нужно проверить на разных системах. Возможно полезно "Reset/Restart", чтобы вернуть в дефолт.
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, настройка цветов дело достаточно редкое, раз уж идёт борьба за каждый байт, то может стоит вынести конфигуратор в отдельный скрипт?
Ultrabyte
Posts: 200
Joined: Sun 26 Mar, 2023 17:59
Has thanked: 18 times
Been thanked: 18 times

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

Post by Ultrabyte »

Taciturn, я думал об этом, но засомневался в реализации: между двумя lua - полная изоляция переменных, при нажатии user'ом клавиш не получится демонстрировать изменения цветов на главном экране просмотрщика.

P.S. обновил первопост, добавил "вызов редактора в reserved (edit Comments)", это как временная затычка "хоть что-то".

P.P.S. кто-то попробовал менять цвета под себя? удобно-наглядно?
Shmuel
Posts: 7230
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 48 times
Been thanked: 631 times

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

Post by Shmuel »

Ultrabyte wrote: Sun 25 Jan, 2026 11:20 между двумя lua - полная изоляция переменных
Это легко обходится, причём есть несколько способов для этого.
Способ 1 - использовать модули.
Способ 2 - использовать глобальные переменные, например таблицу _G.Ultrabyte_ViewColor.
Способ 3 - делать dofile на требуемом файле, который возвращает таблицу с данными.
Способ 4 - через базу данных (mf.msave / mf.mload).
dmitrik
Posts: 151
Joined: Mon 30 Nov, 2009 21:58
Has thanked: 11 times
Been thanked: 4 times

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

Post by dmitrik »

На форуме поменялся url rss-фида и я не знал об обновлениях после версии 0.41. Вопрос о версии 0.51: комментарии, объясняющие основные настройки, убраны тоже из соображений уменьшения размера файла?
Last edited by dmitrik on Wed 28 Jan, 2026 22:55, edited 1 time in total.
Ultrabyte
Posts: 200
Joined: Sun 26 Mar, 2023 17:59
Has thanked: 18 times
Been thanked: 18 times

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

Post by Ultrabyte »

dmitrik wrote: Wed 28 Jan, 2026 22:54 Вопрос о версии 0.51: комментарии, объясняющие основные настройки, убраны тоже из соображений уменьшения размера файла?
Перезалил новый v51 с возвращенными комментами внутри lua (+ исправил мелкие баги).
Ну и заодно перезалил новый v0.43 (исправил мелкие баги) и v52 (теперь не бета, есть диалоговые окна "комменты" и Export/Import схемы)
dmitrik wrote: Wed 28 Jan, 2026 22:54 На форуме поменялся url rss-фида и я не знал об обновлениях после версии 0.41.
Да, я тоже полгода назад заметил, что ветка переехала в другой раздел (при этом ссылка url осталась прежней).
dmitrik
Posts: 151
Joined: Mon 30 Nov, 2009 21:58
Has thanked: 11 times
Been thanked: 4 times

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

Post by dmitrik »

51-я, F11 -> ViewColor v51, Scheme:code -> System:

Code: Select all

╔══════════════════════════════════════════════════════════════ LuaMacro ═══════════════════════════════════════════════════════════════╗
║ F:\Archive\Far\Profile\Macros\scripts\View.Color.lua:4842: attempt to index global 't0' (a nil value)                                 ║
║ stack traceback:                                                                                                                      ║
║    F:\Archive\Far\Profile\Macros\scripts\View.Color.lua: in function 'DialogConfig'                                                   ║
║    F:\Archive\Far\Profile\Macros\scripts\View.Color.lua:5166: in function <F:\Archive\Far\Profile\Macros\scripts\View.Color.lua:5152> ║
╟───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╢
║                                                                { OK }                                                                 ║
╚═══════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════╝
Ultrabyte
Posts: 200
Joined: Sun 26 Mar, 2023 17:59
Has thanked: 18 times
Been thanked: 18 times

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

Post by Ultrabyte »

dmitrik wrote: Fri 20 Feb, 2026 22:2351-я
Перезалил (мой косяк, вставил код из 52, не проверив). Спасибо :)
Ultrabyte
Posts: 200
Joined: Sun 26 Mar, 2023 17:59
Has thanked: 18 times
Been thanked: 18 times

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

Post by Ultrabyte »

В первопост выложены v52 и v53.



Улучшения v52 (21.03.26):
  • В конфигураторе System (через F11) теперь доступна Palette в 16-цветной консоли (не RGB), для изменения палитры цветов - найти в начале ViewColor.lua таблицу ColorTableRGB и изменить числа R,G,B. Консольные Palette не работают на WinXP, завезли только от WinVista или Server2008 и выше
  • +5% ускорения за счёт пропусков повторяющихся символов/пробелов.
  • +5% ускорения в "Комментирования" BlockComment() (переработаны: инициализация, цикл, прыжок).
  • Исправлены мелкие косяки, например, в функции Spisok(): раннее иногда символ * не закрашивался.
  • В режиме Coder (схема -code-) знак _ имеет такой же цвет как буквы.
  • Дополнил условия в ColorBackGround(), например, не закрашивать Far< или Far>.
  • Исправил критическую ошибку со скобкой: если Far« имел код 171 (не 60), то раскраска скобок сходила с ума, могла закрасить весь экран.
  • Поддержка Far:
    1) v3900 (без конфигуратора, настройки задаются в начале ViewColor.lua)
    2) v4242 (с конфигуратором, для настройки нажать F11)
  • Рефакторинг и сжатия кода с целью высвободить место для комментариев к каждой настройке в начале ViewColor.lua
Улучшения v53:
  • тоже самое, что v52 (точнее, улучшено-доработано было в v53, и копипастил всё в v52)
  • если в старой версии были созданы дополнительные пользовательские схемы, то строго рекомендуется преждевременно EXPORT и записать в файл (на всякий случай сделать дубль файла). И затем открыть редактор и дополнить . После этого обновить новую версию ViewColor (v53) и IMPORT.
  • доработаны диалоговые окна "настройки цветов", теперь в каждом диалоге присутствует кнопка "Enable", чтобы быстро локализовать "чей этот цвет?"
User avatar
HaRT
Moderator
Posts: 11443
Joined: Tue 30 Aug, 2005 17:21
Has thanked: 269 times
Been thanked: 415 times

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

Post by HaRT »

Ultrabyte wrote: Sun 29 Mar, 2026 19:19 К сожалению не в силах в одиночку проверять все подводные камни. Поэтому жду отклика от пользователей.
В таких случаях можно привлекать на помощь автоматизированные тесты. Например, заготовить разнообразные файлы с представительной раскраской, открывать их, делать снимки окна (с цветами) и сравнивать с каноническими — всё это автоматически. Для подобных вещей есть специализированные инструменты, вроде бы некоторые из них даже бесплатные (но тут не ручаюсь).
Фар есть инструмент, а не нянька. © 2009 DrKnS
Post Reply

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