gifts2017

Визуальный редактор цветовых схем подсветки синтаксиса 1С + импорт схем Visual Studio

Опубликовал Ramz # (ram3) в раздел Программирование - Работа с интерфейсом

Данная обработка призвана облегчить настройку рабочего места программиста 1С, а именно улучшить визуальное восприятие кода, уменьшить утомляемость, и, как следствие, увеличить общую производительность труда!

Обработка позволяет редактировать цветовые схемы (темы, стили) конфигуратора 1С, с возможностью видеть результат в реальном времени. По сути это визуальный редактор цветовых схем!
Кроме этого есть возможность импортировать схемы Microsoft Visual Studio, коих в интернете можно найти огромное количество и на любой вкус. 

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

Импорт цветовых схем Visual Studio:

Поддерживаются файлы схем для Microsoft Visual Studio 2010-2013 (*.vssettings). Скачать можно, например, с сайта: http://studiostyl.es/

 Работает в 1С 8.3 в режиме Управляемых форм и Такси

Тестировалось на платформе: 8.3.7.1790

UPD:

01.04.2016: Добавлена возможность выбора файла настроек. При открытии файл теперь ищется поочередно в папках \1Cv8, \1Cv82, \1Cv81 - на случай, если используется файл с предыдущих установок. Исправлены ошибки.

 

С вопросами и пожеланиями прошу в комментарии.

Всем спасибо за внимание и успехов!

Скачать файлы

Наименование Файл Версия Размер
РедакторЦветовыхСхем 37
.epf 43,99Kb
01.04.16
37
.epf 1.0 43,99Kb Скачать

См. также

Подписаться Добавить вознаграждение

Комментарии

1. Илья Л (StrikerL) 29.01.16 22:03
Добрый вечер! Выдает ошибку:
{Форма.Форма.Форма(273)}: Ошибка при вызове конструктора (ЧтениеТекста)
Файл = Новый ЧтениеТекста(ПутькФайлу);
по причине:
Файл не обнаружен 'C:\Users\***\AppData\Roaming\1C\1Cv8\1Cv8.pfl'
2. Ramz # (ram3) 30.01.16 13:13
(1) StrikerL,
День добрый! Какая версия платформы и Windows? Не пробовали проверить, где находится файл 1Cv8.pfl?
3. Евгений Мартыненков (JohnyDeath) 30.01.16 14:55
Нет желания по мотивам данной обработки допилить скрипт для снегопата: https://snegopat.ru/scripts/wiki?name=Editor_colors.js ?
nSpirit2; siddy; the1; nixel; +4 Ответить 1
4. Илья Л (StrikerL) 30.01.16 17:12
(2) ram3,
Версия платформы пробовал: 8.3.7.1805 и 8.3.7.1873.
Как и написано в ошибке, в указанной директории отсутствует файл 1Cv8.pfl
Операционная система Win 8.
Используется файловый вариант базы 1С.
5. kokorishvili@bk.ru (kokorishvili) 30.01.16 21:10
(4) StrikerL, Путь к файлу поменяй, у меня на 8 он тут лежит: C:\Users\1\AppData\Roaming\1C\1Cv81
6. Илья Л (StrikerL) 31.01.16 10:18
(5) kokorishvili@bk.ru,
Спасибо за подсказку.
Проблема была в следующем. Поиск шел в папке 1Cv8, а файл лежит в 1Cv82. Исправил ошибку, все остальное работает.
Хорошая разработка, автору респект.
7. Ramz # (ram3) 01.02.16 11:03
(4) StrikerL, странно, считал что 8.3 хранит здесь /1Cv8, 8.1 - здесь /1Cv81, 8.2 - соответственно здесь /1Cv82. Подумаю как унифицировать...
8. Ramz # (ram3) 01.02.16 11:07
(3) JohnyDeath, пока нет, к слову, я даже никогда не пользовался снегопадом. Но в принципе, не могу ничего исключать:-)
9. Никита Грызлов (nixel) 02.02.16 00:16
(7) ram3, 1Cv8.pfl лежит в старейшей папке платформы. Если сначала поставили 8.3, то будет в папке 1cv8, если до этого стояла 8.2 и не чистили кэш - то в 1cv82.
Как вариант, перебирать эти три возможных пути до нахождения нужного файла.
twin; JohnyDeath; ram3; +3 Ответить
10. Яков Коган (Yashazz) 28.02.16 15:30
Если не секрет, каков принцип работы? Что-то декомпилится и курочится? Лезет внутрь какой-то библиотеки?
11. борян петров (TODD22) 28.02.16 15:36
(10) Yashazz, Настройки в файле хранятся. Редактируется файл скорее всего.
12. Ramz # (ram3) 29.02.16 09:48
(10) Yashazz, (11) TODD22, Все верно, настройки хранятся в \AppData текущего пользователя ОС, а именно в файле 1cv8.pfl. В файле подменяются значения, отвечающие за цветовую схему. Файл в общем-то временный, поэтому если его удалить или повредить, при следующем запуске конфигуратора будет создан новый.
13. o2005 (o2005) 02.03.16 08:13
Не совсем понятен смысл менять цветовые схемы как перчатки. Обычно настраивается под себя в течении 5 минут.
14. Ramz # (ram3) 02.03.16 10:52
(13) o2005, как это делается через конфигуратор, думаю всем известно. Там нет возможности видеть результат в реальном времени, и уж тем более загружать готовые схемы Visual Studio. А вообще, если не интересно, не тратьте время...
15. azat Токторов (a3a) 03.03.16 08:00
Автор, подскажи пожалуйста, какой шрифт на скринах? Ооочень понравился
16. Ramz # (ram3) 03.03.16 10:53
(15) a3a, Consolas - на мой взгляд, лучший из доступных в Windows шрифт для кода. Надо кстати внести в описание
17. azat Токторов (a3a) 03.03.16 11:06
18. azat Токторов (a3a) 03.03.16 11:17
Выдает ошибку (8.3.7.1860) :


Ошибка инициализации модуля: Форма.Форма.Форма
по причине:
{Форма.Форма.Форма(199,7)}: Процедура или функция с указанным именем не определена (СтрНайти)
Если <<?>>СтрНайти(ТекстФайла, "ModuleColorCategory") = 0 Тогда
{Форма.Форма.Форма(201,13)}: Процедура или функция с указанным именем не определена (СтрНайти)
Позиция = <<?>>СтрНайти(ТекстФайла, "{", , , 3);
{Форма.Форма.Форма(235,20)}: Процедура или функция с указанным именем не определена (СтрНайти)
ПозицияКлюча = <<?>>СтрНайти(ТекстФайла, """"+Ключ+"""");
{Форма.Форма.Форма(238,25)}: Процедура или функция с указанным именем не определена (СтрНайти)
НачальнаяПозиция = <<?>>СтрНайти(ТекстФайла, "{", , ПозицияКлюча, 1);
{Форма.Форма.Форма(239,24)}: Процедура или функция с указанным именем не определена (СтрНайти)
КонечнаяПозиция = <<?>>СтрНайти(ТекстФайла, "}", , НачальнаяПозиция, 3);
{Форма.Форма.Форма(245,26)}: Процедура или функция с указанным именем не определена (СтрНайти)
ПозицияКлючаБлока = <<?>>СтрНайти(ТекстФайла, "ModuleColorCategory");
{Форма.Форма.Форма(246,25)}: Процедура или функция с указанным именем не определена (СтрНайти)
НачальнаяПозиция = <<?>>СтрНайти(ТекстФайла, "{", , ПозицияКлючаБлока, 1);
{Форма.Форма.Форма(279,7)}: Процедура или функция с указанным именем не определена (СтрНайти)
Если <<?>>СтрНайти(ТекстФайла, "ModuleColorCategory") = 0 Тогда
{Форма.Форма.Форма(290,19)}: Процедура или функция с указанным именем не определена (СтрНайти)
ПозицияКлюча = <<?>>СтрНайти(ТекстФайла, """"+Ключ+"""");
{Форма.Форма.Форма(291,23)}: Процедура или функция с указанным именем не определена (СтрНайти)
НачальнаяПозиция = <<?>>СтрНайти(ТекстФайла, "{", , ПозицияКлюча, 3)+1;
{Форма.Форма.Форма(292,22)}: Процедура или функция с указанным именем не определена (СтрНайти)
КонечнаяПозиция = <<?>>СтрНайти(ТекстФайла, "}", , НачальнаяПозиция, 1);
{Форма.Форма.Форма(217,13)}: Процедура или функция с указанным именем не определена (СтрРазделить)
Массив = <<?>>СтрРазделить(СтрПолучитьСтроку(ТекстМакета, НомерСтроки), "#", Ложь);
{Форма.Форма.Форма(229,13)}: Процедура или функция с указанным именем не определена (СтрРазделить)
Массив = <<?>>СтрРазделить(СтрПолучитьСтроку(ТекстМакета, НомерСтроки), "#", Ложь);
{Форма.Форма.Форма(285,12)}: Процедура или функция с указанным именем не определена (СтрРазделить)
Массив = <<?>>СтрРазделить(СтрПолучитьСтроку(ТекстМакета, НомерСтроки), "#", Ложь);
{Форма.Форма.Форма(326,12)}: Процедура или функция с указанным именем не определена (СтрРазделить)
Массив = <<?>>СтрРазделить(СтрПолучитьСтроку(ТекстМакета, НомерСтроки), "#", Ложь);
{Форма.Форма.Форма(473,12)}: Процедура или функция с указанным именем не определена (СтрРазделить)
Массив = <<?>>СтрРазделить(СтрПолучитьСтроку(ТекстМакета, НомерСтроки), "#", Ложь);


---------

СтрНайти Заменю на Найти, а вот СтрРазделить, есть ли аналог, на который можно заменить?
19. Ramz # (ram3) 03.03.16 13:39
(18) a3a, СтрНайти и СтрРазделить добавлены в платформу в версии 8.3.6.1977, так что на 8.3.7 должно все работать. Видимо дело в режиме совместимости.

Можно самому написать подобную функцию, в общем ничего сложного:

Возвращаемое значение:

Тип: Массив.
Массив со строками, которые получились в результате разделения исходной строки.
Описание:

Разделяет строку на части по указанным символам-разделителям.
frkbvfnjh; +1 Ответить
20. Twin (twin) 31.03.16 20:43
Очень полезная обработка.

У меня Платформа 8.3, но она продолжает использовать PFL по пути в папке в 8.2 Т.е. при запуске, она неправильно определяет путь как V8 и выдает ошибку.

Еще в функции ПрочитатьДействующиеНастройки у меня не находит по ключу CurrentToken, потому что его нет в pfl файле. В итоге ПозицияКлюча = 0 и происходит ошибка на этой строке
НачальнаяПозиция = СтрНайти( ТекстФайла, "{", , ПозицияКлюча, 3) + 1;

И по кнопке применить у меня только сбрасывается конфигуратор в стандартные цвета, изменения не применяются, видимо где-то неправильно правит Pfl, хотя при открытии текущую тему считывает правильно.
21. Ramz # (ram3) 01.04.16 17:36
(20) twin,
У меня Платформа 8.3, но она продолжает использовать PFL по пути в папке в 8.2 Т.е. при запуске, она неправильно определяет путь как V8 и выдает ошибку.
- исправил, информация в описании.
Еще в функции ПрочитатьДействующиеНастройки у меня не находит по ключу CurrentToken, потому что его нет в pfl файле. В итоге ПозицияКлюча = 0 и происходит ошибка на этой строке
НачальнаяПозиция = СтрНайти( ТекстФайла, "{", , ПозицияКлюча, 3) + 1;
- исправил.
И по кнопке применить у меня только сбрасывается конфигуратор в стандартные цвета, изменения не применяются, видимо где-то неправильно правит Pfl, хотя при открытии текущую тему считывает правильно.
- а можно файлик?
22. Twin (twin) 06.04.16 09:40
(21) ram3, сейчас почему-то уже все работает. Звезды не сходились наверное.

Очень годная работа, а можно еще оставить пожелание по обычным формам и по поддержке версий платформы в которых еще нет СтрНайти 8.3.5, а то контрагентов хватает и на обычных формах и на более ранних платформах.
23. Ramz # (ram3) 06.04.16 09:47
(22) twin, под обычные формы не вижу смысла переделывать, из конфигуратора 8.3 всегда можно запустить управляемые. Да и не модно уже:)
24. Twin (twin) 06.04.16 09:55
(23) ram3, ну тогда бы цены просто не было. Ну ладно тогда.
Для написания сообщения необходимо авторизоваться
Прикрепить файл
Дополнительные параметры ответа