Подсветка синтаксиса 1C (в том числе языка запросов) в Notepad++

25.04.20

Разработка - Инструментарий разработчика

Конфигуратор 1С как редактор кода не всегда удовлетворяет потребностям программиста в управлении кода. Я зачастую с завистью вспоминаю другие среды разработки программ, и нередко копировал куски 1С кода в стороннюю программу для каких-либо манипуляций - например, Notepad++. К сожалению, в нём нет встроенной поддержки синтаксиса кода 1С, из-за чего пришлось определять свой. Вот об этом я и расскажу.

Скачать файл

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование По подписке [?] Купить один файл
Стиль 1С и Язык запросов
.zip 4,63Kb
529
529 Скачать (1 SM) Купить за 1 850 руб.

А определить свой синтаксис кода в Notepad++ поначалу оказалось не так легко - казалось бы в интуитивно-понятных местах этого сделать было нельзя (Опции-->Настройки-->Синтаксис/Табуляция, ни Опции-->Определение стилей оказалось несколько иным).

Но это можно открыть в главном толбаре, кнопкой Пользовательское определение языка

 Кнопка в меню

Немного помучившись, вбил основные элементы языка в определение стиля и сохранил в файл Экспортир... style-1C.xml, который можете скачать, если лень вручную определять, нажав кнопку Импортир... и выбрав скачанный файл настроек.

 

Но, к сожалению, забыл погуглить на сей счет - такие стили уже были выложены до меня, ссылки на них приведены в комментариях. Однако, некоторые стили 1С меня не устраивают, и шаблончик я всё же оставил на свой вкус.

P.S. Чем хорош Notepad++ по сравнению с конфигуратором 1С:

- Возможность создания собственного списка API функций (или скачать его со страницы загрузки).
- Поддержка регулярных выражений Поиска/Замены и их проверка  (//infostart.ru/public/165085/)
- Полная поддержка перетягивания фрагментов текста.
- Динамическое изменение окон просмотра.
- Автоматическое определение состояния файла (уведомление об изменении или удалении файла другой программой — с возможностью перезагрузить файл или удалить его из программы).
- Увеличение и уменьшение (масштабирование).
- Поддержка большого количества языков.
- Листинг программ можно печатать в цвете — так, как вы видите на экране в окне редактирования.
- Заметки о документе.
- Выделение скобок при редактировании текста.
- Запись макроса и его выполнение.

- Возможность просмотра мини-карты текста (Document Map)

UPD 12.11.2012: Добавлена подсветка языка запросов, подкорректированы правила подсветки.

UPD 11.12.2012: незначительная корректировка правил подсветки.

См. также

Инструментарий разработчика Роли и права Запросы СКД Программист Руководитель проекта Платформа 1С v8.3 Управляемые формы Запросы Система компоновки данных Платные (руб)

Инструменты для разработчиков 1С 8.3: Infostart Toolkit. Автоматизация и ускорение разработки на управляемых формах. Легкость работы с 1С.

12000 руб.

02.09.2020    169341    937    403    

905

Инструментарий разработчика Чистка данных Свертка базы Инструменты администратора БД Системный администратор Программист Руководитель проекта Платформа 1С v8.3 Россия Платные (руб)

Инструмент представляет собой обработку для проведения свёртки или обрезки баз данных. Работает на ЛЮБЫХ конфигурациях (УТ, БП, ERP и т.д.). Поддерживаются серверные и файловые базы, управляемые и обычные формы. Может выполнять свертку сразу нескольких баз данных и выполнять их автоматически без непосредственного участия пользователя. Решение в Реестре отечественного ПО

8400 руб.

20.08.2024    12640    99    42    

102

Инструментарий разработчика Программист Платформа 1С v8.3 Конфигурации 1cv8 Платные (руб)

Инструмент для написания и отладки кода в режиме «1С:Предприятие». Представляет собой консоль кода с возможностью пошаговой отладки, просмотра значений переменных любых типов, использования процедур и функций, просмотра стека вызовов, вычисления произвольных выражений на встроенном языке в контексте точки останова, синтаксического контроля и остановки по ошибке. В консоли используется удобный редактор кода с подсветкой, контекстной подсказкой, возможностью вызова конструкторов запроса и форматной строки.

9360 руб.

17.05.2024    26547    90    48    

134

Пакетная печать Печатные формы Инструментарий разработчика Программист Платформа 1С v8.3 Запросы 1С:Зарплата и кадры бюджетного учреждения 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 Платные (руб)

Инструмент, позволяющий абсолютно по-новому взглянуть на процесс разработки печатных форм. Благодаря конструктору можно значительно снизить затраты времени на разработку печатных форм, повысить качество и "прозрачность" разработки, а также навести порядок в многообразии корпоративных печатных форм.

22200 руб.

06.10.2023    16838    41    15    

75

Инструменты администратора БД Инструментарий разработчика Роли и права Программист Платформа 1С v8.3 Конфигурации 1cv8 Россия Платные (руб)

Расширение позволяет без изменения кода конфигурации выполнять проверки при вводе данных, скрывать от пользователя недоступные ему данные, выполнять код в обработчиках. Не изменяет данные конфигурации, легко устанавливается практически на любую конфигурацию на управляемых формах.

15000 руб.

10.11.2023    11402    40    27    

66

SALE! %

Инструментарий разработчика Инструменты администратора БД Системный администратор Программист Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Россия Платные (руб)

Универсальный инструмент программиста для администрирования конфигураций. Сборник наиболее часто используемых обработок под единым интерфейсом.

4800 3840 руб.

14.01.2013    190562    1150    0    

918

Инструментарий разработчика Платформа 1С v8.3 Конфигурации 1cv8 1С:ERP Управление предприятием 2 Платные (руб)

Разработка Конструктор автоматизированных рабочих мест "Конструктор АРМ" реализована в виде расширения и является универсальным инструментом для создания АРМ любой сложности в пользовательском режиме.

3600 руб.

27.12.2024    796    2    0    

4

Инструментарий разработчика Программист Платформа 1С v8.3 Конфигурации 1cv8 Россия Платные (руб)

Восстановление партий или взаиморасчетов, расчет зарплаты, пакетное формирование документов или отчетов - теперь все это стало доступнее. * Есть желание повысить скорость работы медленных алгоритмов! Но... * Нет времени думать о реализации многопоточности? * о запуске и остановке потоков? * о поддержании потоков в рабочем состоянии? * о передаче данных в потоки и как получить ответ из потока? * об организации последовательности? Тогда ЭТО - то что надо!!!

5000 руб.

07.02.2018    103937    244    100    

306
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. OLEG4120 165 27.03.12 10:46 Сейчас в теме
Я делал сам. но так и не зарабатала для UTF-8, только для ASCI. Как у Вас?
Не смог победить настройку для плагина FunctionList, говорит что правила неопределны
2. Поручик 4661 27.03.12 11:41 Сейчас в теме
(0) Долго мучился?
Файл разметки 1С для Notepad++ http://infostart.ru/public/64783/

Подсветка синтаксиса языка запросов 1С в текстовом редакторе Notepad++ http://infostart.ru/public/81978/
support; адуырщдв; RustIG; +3 Ответить
5. CratosX 114 27.03.12 23:23 Сейчас в теме
(2) Поручик, да, забыл погуглить. И не мучился, а наслаждался :)
3. stepman3 7 27.03.12 13:56 Сейчас в теме
это конечно хорошо, но кто знает - можно ли сделать блоки для нотепада
для конструкци типа: процедура-конецпроцедуры, если-иначеесли-конецесли
?
4. Поручик 4661 27.03.12 14:13 Сейчас в теме
(3) Можно. На скрине есть. В силу особенностей Notepad++ нормальная расцветка для кириллических символов возможна только для кодировки ANSI.
Прикрепленные файлы:
Alien_job; CratosX; +2 Ответить
6. Kolunya 6 28.03.12 01:49 Сейчас в теме
ну и зачем так изврасчаться? типа если лень конфигуратор открывать???(((
DarkUser; Stamper; +2 Ответить
7. CratosX 114 28.03.12 08:38 Сейчас в теме
(6) Kolunya, в описании есть раскрываемый список достоинств работы в Notepad++ по сравнению с работой в Конфигураторе.
10. AlX0id 28.03.12 15:57 Сейчас в теме
(7)
раскрываемый список какой-то нераскрываемый, надобно отметить..
11. Stamper 43 28.03.12 16:09 Сейчас в теме
(10) AlX0id, я вообще не сразу понял, что это слово "интерактивно" =)
19. RustIG 1834 03.04.12 10:58 Сейчас в теме
(6), (13) для написания отчетов с вставками алгоритмов. для заказчиков иногда полезно.
irbis_triffle; CratosX; +2 Ответить
8. kuntashov 463 28.03.12 15:12 Сейчас в теме
Тем, кому не хватает возможностей Конфигуратора, стоит познакомиться с возможностями проекта Снегопат (http://snegopat.ru) и существующими для него скриптами (http://infostart.ru/public/104670/)
CratosX; fishca; +2 Ответить
9. Stamper 43 28.03.12 15:45 Сейчас в теме
не хочу показаться занудой, НО ЗАЧЕМ?!?!?! =)
из N++ можно подключиться к сессии для дебага? или можно внести изменения в конфигурацию? или подключиться к хранилищу??
я кроме crtl+C-ctrl+V другой возможности поучаствовать в процессе разработки не вижу
DarkUser; ixijixi; +2 Ответить
12. Yashazz 4801 28.03.12 21:11 Сейчас в теме
Да, баян для не любящих юзать поиск. Ещё сюда настройку для Far'овского плагина Colorer, и джентльменский набор образца 2003 года почти готов.
13. RomanUzmov 40 28.03.12 23:30 Сейчас в теме
Автор, конечно, молодец что поработал, но я немного не понимаю, зачем это нужно? Есть конфигуратор для этого...
14. rus128 2 29.03.12 10:16 Сейчас в теме
"Чем хорош Notepad++ по сравнению с конфигуратором 1С:"
Так чем же? Кроме слова (не ссылки и не кнопки) "Раскрыть" - не вижу в описании ни слова об этом. Версия статьи глюкнула?
Сильно сомневаюсь, что внешний редактор может быть полезнее, чем полнофункциональная IDE - с отладчиком, хранилищем, проверкой синтаксиса и т.д. и т.п. А уж если Снегопат подключить - то Notepad++ вообще отдыхает.
15. sergeyshik 5 29.03.12 11:02 Сейчас в теме
Тоже не нашел никаких плюсов от работы в блокноте++ . У блокнота есть очень большой недостаток: он никак не умеет отлаживать код. В шапке не увидел здравых плюсов для себя. Буду юзать конфигуратор-он как-то роднее и ближе)))
Grohovod; ingram; +2 Ответить
17. daho 8 31.03.12 07:37 Сейчас в теме
(15) sergeyshik, Так то оно так... но иногда, если выносить из конфы модули во внешние файлы, на случай если на гарячую что надо переделать, то notepad, штука весьма полезная.. много времени позволит с экономить.. правда это более актуально для 7.7 в связке с 1С++ (с SciColorer) и gcomp и SVN при желании еще и багтреккер типу Mantis прикрутить.. все просто и со вкусом.. а главное надежно и эффективно... хорошие времена были.. но с наступлением 8-ки это уже в прошлом.. :( молодежь этого уже не знает.. :)
жаль что для в 8-ке нормальной системы версирования нету...
16. quebracho 22 29.03.12 12:45 Сейчас в теме
18. klel 02.04.12 22:04 Сейчас в теме
Отличная штучка осталось только воспользоваться и только
20. matytsin_new 21 30.05.12 07:38 Сейчас в теме
Неверно ставить вопрос - зачем делпть это в Notepad++
Те, кто не видит потребности - не пользуется.
Я вот, иногда, сверяю тексты модулей и запросов.
И Notepad++ очень экономит время. Так что - спасибо.
21. Созинов 07.06.12 20:36 Сейчас в теме
Статья по созданию файла синтаксиса на хабре: http://habrahabr.ru/post/144830/
Там же можно скачать xml файл для 1С. Задумался не нарушаю ли я правила инфостара давая внешние ссылки? пошел читать
23. yuri@da4nic.ru 17.11.12 19:06 Сейчас в теме
(21) EfiopReal, Идея написать xml для подсветки синтаксиса 1с хорошая, но в процессе реализации вылезают огрехи, из статьи как с ними бороться неясно. Во-первых из двух ссылок на хабре одна битая. Во-вторых скачанный xml не импортируется в нп++ последней (6.2) версии хоть выглядит прилично - но чего-то не хватает в нем. Ну да ладно, главное, самому захотелось согласно рецепту статьи сделать свою подсветку и тут я столкнулся с тем, что если указать комментарий // то тогда перестает работать подсветка оператора деления / и наоборот - включаю подсветку оператора - пропадают комменты. А так шутка хорошая и полезная.
24. CratosX 114 18.11.12 15:44 Сейчас в теме
(23) yuri@da4nic.ru,

Во-вторых скачанный xml не импортируется в нп++ последней (6.2) версии хоть выглядит прилично - но чего-то не хватает в нем.

Возможно, причина в багах, и возможно их исправили вот этим фиксом:

Notepad++ v6.2.1 fixed bugs:
<...>
3. Fix a crash issue due to the inconsistent userDefineLang.xml.


Кстати, про комментарий - в старых версиях Notepad++ был флаг "символ как слово", при установке которого при указании в качестве двух слешей не затирался одинарный слеш "деления"
yuri@da4nic.ru; +1 Ответить
22. пользователь 08.06.12 14:35
Сообщение было скрыто модератором.
...
25. пользователь 19.11.12 15:26
Сообщение было скрыто модератором.
...
26. LexSeIch 212 05.03.13 12:38 Сейчас в теме
Мир этому дому! А мне реализация идеи понравилась. Иногда под рукой нет 1С или кусок кода хочется сохранить "на память". Тогда эта штука самый то. А если добавить Notepad++ портабельный (на флешке), то вообще класс.
27. нормальный такой 93 25.11.13 10:43 Сейчас в теме
Блин, импортировал - не работает ... пичаль.
версия 6.2.3
28. нормальный такой 93 25.11.13 10:52 Сейчас в теме
упс. наврал))
надо было перезапустить приложение! (а так лень было... много файлов открыто)

работает. Сасибо :)

29. v.l. 435 25.08.15 12:50 Сейчас в теме
У меня не работает. Версия npp 6.7.8.2, файлы с модулями из 1С 7.7.
И импортировал и экспортировал, и удалял, и нпп перезапускал, и фотографию свою ему показывал - не работает... все буквы синим, ключевых слов не видит, только комментарии зеленым подсвечивает да знаки препинания красным.
30. CratosX 114 16.11.15 16:52 Сейчас в теме
(29) Vladal, вот только недавно наткнулся на такую проблему у себя. Мне помогло: удаление настроенного синтаксиса, перезапуск, добавление нового, перезапуск. Видимо на каких-то релизах npp падало.
Светлый ум; +1 Ответить
31. Светлый ум 438 21.10.16 11:11 Сейчас в теме
После установки синтаксиса (импортирования) - о переоткрыть Notepad
32. Serg O. 300 10.10.17 23:59 Сейчас в теме
НЕ РАБОТАЕТ !
Прикрепленные файлы:
33. Serg O. 300 11.10.17 00:01 Сейчас в теме
В принципе уже и не надо... КАЧАЙТЕ ВСЕ OneScript !!!
http://oscript.io/
Прикрепленные файлы:
34. mcgoblin 3 10.08.18 11:08 Сейчас в теме
NPP 7.5.8
Не взлетели ваши стили!!! зря потраченые средства
35. vladnet 371 16.04.20 10:18 Сейчас в теме
(34) надо зайти в Синтаксисы - Задать свой синтаксис и нажать кнопку Импортировать там
36. 300_po_vstrechke 2102 11.11.20 17:51 Сейчас в теме
Notepad++ Очень сильно выручил при неимоверном обновлении нетиповой системы. Подключение через удалённый рабочий стол, скорость как через диалап, плюс удалённая машина оооочень медленная. На то, чтобы найти какую то проблему методом сравнить "как было" и "как стало" через сравнить - объединить с cf.- ником (сравнение кстати слетает если ковырнуть конфу) нужно куча времени. А так открыл несколько конфигураций скопировал что нужно сравнить и в notepad + плагин compare и готово.
КДЕ; user1161656; +2 Ответить
37. check2 382 05.04.21 22:22 Сейчас в теме
Приветствую! Подскажите, куда ткнуть, чтобы процедуры и функции начали сворачиваться?
scanner1980; +1 Ответить
Оставьте свое сообщение