Загрузка, редактирование и установка цветовых схем (раскраски кода) в Конфигуратор и EDT

0. CyberCerber 571 14.05.20 11:51 Сейчас в теме
В современных IDE и текстовых редакторах есть удобная работа с цветовыми схемами: их можно загружать из файлов, выбирать из списка и сразу устанавливать в оболочку. К сожалению, в Конфигураторе и EDT цвета кода можно настроить только вручную. Этой разработкой хочу исправить эту проблему.

Перейти к публикации

Лучшие комментарии
29. CyberCerber 571 10.06.20 17:17 Сейчас в теме
Выложил новую версию обработки, изменения описаны в отдельном разделе статьи.
Также сделал обработку бесплатной.
NorraSaltolinen; WolfKgn; +2 Ответить
Остальные комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. Snitkovski 87 14.05.20 18:28 Сейчас в теме
Константин = кр-р-расавчик!
LIKE однозначно!
и "Маней" проголосую! 8-)
2. user817897 14.05.20 23:45 Сейчас в теме
3. SirStefan 42 15.05.20 03:46 Сейчас в теме
Скачанные темы победительницы конкурса для IDEA за 2019 год не заработали. Оказалось, что программа ищет только в папке "/colors" архива, а в файлах они то в "/themes", то вообще в корне.
Изменение в процедуре ReadIDEAFile строки
	//if ZipItem.Path = "colors\" and ZipItem.Name <> "" then             
	if ZipItem.Path <> "META-INF\" and ZipItem.Name <> "" and ZipItem.Extension = "xml" then
поправило ситуацию.
Из пожеланий:
Неплохо было бы кнопку сохранения текущей схемы (конечно можно сохранить pfl вручную, но не каждый подумает об этом заранее).
В некоторых jar есть различные варианты раскраски (тот же Gradianto из победителей). Хотелось бы обрабатывать не первый файл из архива, а все и выводить как варианты.
TreeDogNight; +1 Ответить
4. CyberCerber 571 15.05.20 11:20 Сейчас в теме
(3) Да, забыл написать, что там файлы jar в другом формате, нужно вручную распаковывать. А, интересное решение, спасибо. Но там еще бывает несколько схем, верно. В общем, т.к. это формат архива редкий, я решил пока не делать для него парсер. Наверное, сделаю в будущих версиях
6. SirStefan 42 15.05.20 11:25 Сейчас в теме
(4), половинчатое решение оказалось. Есть архивы с *.xml без блока color. Похоже нужно все таки перебирать все xml в файле и проверять ещё, есть ли у них блок color.
5. CyberCerber 571 15.05.20 11:22 Сейчас в теме
(3) Когда только открыли обработку, в ней активна текущая тема, можете сохранить ее в файл csi, нажав кнопку снизу. Еще думаю сделать, чтобы эта тема была всегда в списке, а не только при открытии.
7. P_enemy 25 15.05.20 11:36 Сейчас в теме
Хороший инструмент.

Небольшой недочет: в темных темах "точку" плохо видно или совсем не видно, если фон почти черный. "Точка" не отнесена ни к одному классу в макете HTML и по умолчанию черная. Добавил ее в класс "Operators", стало на много лучше.
8. CyberCerber 571 15.05.20 11:37 Сейчас в теме
(7) Ммм, спасибо, вроде, разносил ее. Наверное, в процессе исправлений что-то потерялось. В новой версии сделаю
9. GOshaSaveiko 30 15.05.20 15:36 Сейчас в теме
Работает даже на платформе 8.3.13 в режиме совместимости 8.3.8
При запуске выдает ошибку:
{ВнешняяОбработка.ColorSchemesInstaller.Форма.Form.Форма(225,5)}: Процедура или функция с указанным именем не определена (StrStartsWith)
if <<?>>StrStartsWith(Item.Name, "Des") then (Проверка: Тонкий клиент)

Надо только вручную дорисовать функцию в хвост:
&AtClient
function StrStartsWith(SourceString, Substring)
	strl = StrLen(SourceString);
	return ?(Left(SourceString,strl) = Substring, true, false);
endfunction
10. CyberCerber 571 15.05.20 16:22 Сейчас в теме
(9) Да, из-за этой функции и написал про режим совместимости. Кстати, если написать просто СтрНачинаетсяС, должно и с 8.3.6 заработать, она тогда появилась. Наверное, просто английский аналог забыли добавить или назвали по-другому...
Но я рад, что вы не нарушили стиль :-) Можно даже еще короче: return Left(SourceString, strl) = Substring
А на платформе 8.3.13 не пропала кнопка сортировки по цвету? И отступы в примере кода остались?
13. GOshaSaveiko 30 19.05.20 09:35 Сейчас в теме
(10)
return Left(SourceString, strl) = Substring

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

Кнопка сортировки по цвету отображается без иконки, но, вроде как, работает. Отступы в превьюхе отсутствуют.

Ещё не хватает кнопки "вернуть стандарт". Я купил обработку, попробовал, но мне результат не понравился. В конфигураторе - половина окон белая осталась, например окно объектов конфигурации, сообщений, СКД (я понимаю, что не всё зависит тут от вас). Просто удалил файл pfl, чтобы он пересоздался. Хотя можно было удалить кусок JSON из pfl - но лень разбираться.
14. CyberCerber 571 19.05.20 11:33 Сейчас в теме
(13)
В конфигураторе - половина окон белая осталась, например окно объектов конфигурации, сообщений, СКД

Да, конечно, это так и останется. Все эти окна не относятся к области кода. Это тема среды, а она в Конфигураторе только одна :-(

Прикрепляю файл с настройками цветовой схемы по умолчанию, если надо. А в pfl не JSON, там собственный 1Совский формат.
Прикрепленные файлы:
Default.csi
GOshaSaveiko; +1 Ответить
11. unichkin 1274 17.05.20 23:33 Сейчас в теме
Добрый день! Решается ли проблема раскраски областей в EDT? Я сколько не морочился с настройкой цвета - области воспринимаются как инструкции препроцессора, а идентификаторы областей - нет. И вот такая печальненькая картинка, в объемных текстах неудобно ориентироваться. Стал подкрашивать фон области, чтобы видеть отличие от метода.
Прикрепленные файлы:
12. CyberCerber 571 18.05.20 11:25 Сейчас в теме
(11) Да, к сожалению, это никак не решить. Почему-то отнесли название области к идентификаторам. Ну, оно-то и понятно, это и есть идентификатор, но в конфигураторе наглядней получается. Может, изменят подход в будущих версиях.
15. nicxxx 238 19.05.20 12:35 Сейчас в теме
Разработка огонь! Вдохнул второе дыхание в конфигуратор :) Я конечно и до этого пользовался своей цветовой схемой, но удобство настройки через данную обработку выше всяких похвал.
16. Synoecium 697 19.05.20 16:11 Сейчас в теме
Класс!
Кривовато работает диалог вывода цвета - приходится переводить фокус на числовые значения, потому что если просто выбирать цвет из списка, то он не применяется в обработке.
17. CyberCerber 571 19.05.20 16:21 Сейчас в теме
(16) Это стандартный диалог выбора цвета. Не работают только цвета стиля, веб-цвета в числовые превращаются
18. Synoecium 697 20.05.20 08:25 Сейчас в теме
(17) цвет стиля тоже можно выудить, насколько я знаю. Вот пример: https://infostart.ru/public/484812/
Сообщения про то, что цвет стиля не поддерживается у меня не видно, может стоит сделать через СообщениеПользователю?
19. CyberCerber 571 20.05.20 11:15 Сейчас в теме
(18) Спасибо за ссылку, посмотрю
Странно, у вас никаких сообщений не видно? А какая платформа?
20. frkbvfnjh 583 01.06.20 09:09 Сейчас в теме
Когда новую версию выложите со всеми правками? А то судя по датам, все замечания в комментах сделаны после последней даты обновления...
21. CyberCerber 571 01.06.20 11:24 Сейчас в теме
(20) Да у меня даже и не было обновления, только пока первоначальная версия. Хочу, конечно, выпустить, но не могу пока найти время из-за дел. Надеюсь, на следующей неделе. А чего не хватает в текущей версии?
22. frkbvfnjh 583 01.06.20 13:00 Сейчас в теме
(21) Ну вот к примеру в (3) сообщении вроде правки делали какие-то, плюс может совместимость с более низкими версиями платформы сделаете, дописав нужные функции.
23. CyberCerber 571 01.06.20 13:14 Сейчас в теме
(22) Вы как раз перечислили те функции, которые пока не ожидаются в следующем обновлении. В (3) рассказано об особых цветовых схемах, котрые составляют 1% от общего числа схем, и разархивировав их, они заработают.
По поводу функций, я не повлияю на саму платформу, только на режим совместимости. На более старой платформе заработает, но будет не так красиво.
Я это к тому, что вы можете скачать и текущую версию, она работает, как мне кажется, вполне хорошо.
А какая у вас версия платформы?
24. frkbvfnjh 583 01.06.20 13:37 Сейчас в теме
(23) Мы до сих пор активно используем 8.3.10 в силу определенных обстоятельств. Но думаю скачаю, т.к. Ваша разработка пока самая адекватная из всех, что встречал. И прикрепите файл Default.csi прям в статью, пока не добавили кнопку сброса темы, я думаю так было бы удобнее читателям.
25. CyberCerber 571 01.06.20 13:43 Сейчас в теме
(24) Т.е. у вас именно сама платформа 8.3.10 и новее нет? Сейчас открыл у себя, работает, только некоторое оформление сбилось.
Сделал пока ответ лучшим, он выделился и вверх поднялся.
26. frkbvfnjh 583 01.06.20 13:57 Сейчас в теме
(25) Все проблемы решаемы, конечно сама платформа новая есть, можно установить, просто хотелось бы иметь самую совершенную версию обработки :)
27. SirStefan 42 01.06.20 17:24 Сейчас в теме
(24), у меня с ходу все заработало на 8.3.9
Только в коде СтрНачинаетсяС заменил русским вариантом и все.
28. CyberCerber 571 01.06.20 17:27 Сейчас в теме
(27) Кстати, там прикол в том, что изначально функцию назвали StrStartWith, потом поняли, что есть грам. ошибка и переименовали в StrStartsWith.
Так что достаточно только одну s убрать.
29. CyberCerber 571 10.06.20 17:17 Сейчас в теме
Выложил новую версию обработки, изменения описаны в отдельном разделе статьи.
Также сделал обработку бесплатной.
NorraSaltolinen; WolfKgn; +2 Ответить
Оставьте свое сообщение
Вопросы с вознаграждением