Форматирование (выравнивание) кода 1С 8. Навигация по тексту модуля.

11.12.10

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

Форматирование (выравнивание) кода 1С 8. Навигация по тексту модуля.

1. Выравнивает выделенный текст по знакам "="
2. Выравнивает выделенный текст по инструкции " КАК " (в тексте запроса).
3. Поиск (фильтр при наборе) по тексту модуля.

Скачать файл

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

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

 

Программа висит в памяти и по нажатию комбинации клавиш ALT-F12 вы равнивает выделенный блок текста.

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

 

Для работы необходим установленный .Net FrameWork 2.0 или выше.

Для работы необходимо зарегистрировать svcsvc.dll  (Набрать в командной строке "regsvr32 svcsvc.dll") (svcsvc.dll прилагается).

 

В разработке:

1. Быстрый поиск объектов в дереве метаданных.


Принимаются заявки на разработку нового функционала !

P.S. Просьба по возможности не применять вне окна кода 1С. Возможны непредвиденные последствия . Surprised

См. также

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

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

12000 руб.

02.09.2020    172249    964    403    

925

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

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

8400 руб.

20.08.2024    14795    108    46    

108

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

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

22200 руб.

06.10.2023    17387    43    15    

75

Инструментарий разработчика Программист Платформа 1С v8.3 1C:Бухгалтерия Платные (руб)

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

9360 руб.

17.05.2024    27421    96    48    

139

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

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

15000 руб.

10.11.2023    11983    45    33    

67

SALE! %

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

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

4800 3840 руб.

14.01.2013    191424    1153    0    

920

Инструментарий разработчика Программист 8.3.14 Россия Платные (руб)

Расширение для конфигурации “Конвертация данных 3”. Добавляет подсветку синтаксиса, детальную контекстную подсказку, глобальный поиск по коду.

20000 руб.

07.10.2021    18128    7    32    

42

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

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

3600 руб.

27.12.2024    1176    2    0    

5
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. Spartan 366 08.12.10 17:26 Сейчас в теме
Знак "равно" в первой строке блока размещает на один символ дальше, чем в остальных. А так - плюс, мне пригодится!
Все, догнал... Если перед первой строкой есть табуляция, то нужно выделять прям с самого начала строки вместе с ней - тогда нормально.
2. IDija 155 08.12.10 21:50 Сейчас в теме
"Плюс" конечно.Вот еще бы циклы и условия выравнивать... ;)
3. antonrost 656 08.12.10 21:54 Сейчас в теме
IDija пишет:

"Плюс" конечно.Вот еще бы циклы и условия выравнивать...


Вроде их 1С сама выравнивает...
4. break 33 09.12.10 12:33 Сейчас в теме
Здорово. Еще бы и "структуру" вырвнивала бы:
ПараметрыЗаполнения = Новый Структура;
ПараметрыЗаполнения.Вставить("Дата",_______Дата);
ПараметрыЗаполнения.Вставить("Деталь",_____Деталь);
ПараметрыЗаполнения.Вставить("Количество",_Количество);
ПараметрыЗаполнения.Вставить("Автор",______глТекущийПользователь);

В работающем коде конечно место _ стоят пробелы.
5. Amali 09.12.10 14:49 Сейчас в теме
IDija пишет:
"Плюс" конечно.Вот еще бы циклы и условия выравнивать


А чем не нравиться Alt+Shift+F ?
Slypower; IDija; +2 Ответить
6. Sergey K 65 09.12.10 15:16 Сейчас в теме
+
Добавить форматирование в запросы
поле________КАК
ваолоыпрлва_КАК
алвыодао____КАК
лываж_______КАК
7. YAN 1374 09.12.10 17:46 Сейчас в теме
При нажатии какой-то "левой" комбинации вышло сообщение об ошибке и программа успешно закрылась!
8. antonrost 656 09.12.10 17:47 Сейчас в теме
Появился новый функционал. Качаем, критикуем. :|
9. antonrost 656 09.12.10 17:49 Сейчас в теме
YAN пишет:

При нажатии какой-то "левой" комбинации вышло сообщение об ошибке и программа успешно закрылась!


Это - оооочень бета версия. То, что закрылась именно успешно, уже прогресс !!! :)

Это уже обновленная закрылась ?
10. Spartan 366 09.12.10 18:00 Сейчас в теме
(9) Из 4-х попыток выравнивания кода запроса - 4 раза вылетела по ошибке, трижды сообщила, что "Не удалось создать компонент ActiveX", один - "Программа выполнила недопустиую операцию..."
11. antonrost 656 09.12.10 18:02 Сейчас в теме
Spartan пишет:

(9) Из 4-х попыток выравнивания кода запроса - 4 раза вылетела по ошибке, трижды сообщила, что "Не удалось создать компонент ActiveX", один - "Программа выполнила недопустиую операцию..."


Не удалось создать компонент ActiveX - в описании сказано: "Зарегистрировать svcsvc.dll"
12. Spartan 366 09.12.10 20:19 Сейчас в теме
(11) Значит плохо читал - извиняй... :D Я все больше как-то по первой версии ориентировался...
13. RustIG 1836 10.12.10 10:43 Сейчас в теме
Идея здоровская! Плюс!
Часть функционала можно реализовать на платформе 1С: [делюсь опытом :)]
http://infostart.ru/public/79256/.
14. Spartan 366 10.12.10 10:43 Сейчас в теме
(0) Ты знаешь, зарегил я библиотеку, тока видно это действительно пока очень уж бета... При форматировании блока с равенствами из 4 попыток, отформатировала только один раз нормально и то со сдвигом первой строки на лишний пробел. В других случаях, прога делала вообще непонятно что: то удаляла блок вообще, то вытягивала его в одну строку с удалением знаков равенства. Если не трудно, положи первую версию вторым файлом - она как-то постабильнее будет.
15. ixijixi 1980 10.12.10 10:52 Сейчас в теме
Вроде работает =) Спасибо, +! Выравнивание различных структур языка не помешало бы.
16. alex_4x 87 10.12.10 11:01 Сейчас в теме
Ждем более стабильную версию.
А идея очень нужная, полезная и т-д....

Вот бы еще автор подключил бы туда работу с регулярными выражениями - поиск, замену...

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

И с регулярными выражениями, можно еще много всяких фичь добавлять.
17. antonrost 656 10.12.10 11:06 Сейчас в теме
alex_4x пишет:

Ждем более стабильную версию.

А идея очень нужная, полезная и т-д....



Вот бы еще автор подключил бы туда работу с регулярными выражениями - поиск, замену...



И пополняемый список правил, на основе этих же самых регулярных выражений,

тогда сама разработка утилиты была бы отдельно, а правила - отдельно,

и было бы удобней в том плане что стабильную версию самой обработки мог бы автор делать, сосредоточившись только на этом,

а правила выравнивания - все совместно и лучшие (или каждому кажущиеся полезные) включать к себе в файл настроек.



И с регулярными выражениями, можно еще много всяких фичь добавлять.
Показать

Приведи парочку примеров - попробую прикрутить.
18. antonrost 656 10.12.10 11:08 Сейчас в теме
Spartan пишет:

(0) Ты знаешь, зарегил я библиотеку, тока видно это действительно пока очень уж бета... При форматировании блока с равенствами из 4 попыток, отформатировала только один раз нормально и то со сдвигом первой строки на лишний пробел. В других случаях, прога делала вообще непонятно что: то удаляла блок вообще, то вытягивала его в одну строку с удалением знаков равенства. Если не трудно, положи первую версию вторым файлом - она как-то постабильнее будет.

Можт быть проблема в паузе между сендкеями на медленных машинах. Сей прикручу настройку пауз - может быть поможет.
19. Spartan 366 10.12.10 11:16 Сейчас в теме
(18) Вряд ли, у меня с машиной все в порядке... Ну давай попробуем.
20. alex_4x 87 10.12.10 11:35 Сейчас в теме
antonrost пишет:
Приведи парочку примеров - попробую прикрутить.


REGEXP Википедия ;-)

Regexp в 1С

Здесь же, на Инфостарте про regexp

Ты саму тулзу, на C# пишешь ?
Тогда просто подключи библиотеку и будет тебе счастье. Пример в интернете полно.
using System.Text.RegularExpressions;

Простенький пример на C# с сайта c-sharpcorner
21. antonrost 656 10.12.10 11:37 Сейчас в теме
alex_4x пишет:
REGEXP Википедия smile;-)

Regexp в 1С

Здесь же, на Инфостарте про regexp

Ты саму тулзу, на C# пишешь ? Тогда просто подключи библиотеку и будет тебе счастье. Пример в интернете полно. using System.Text.RegularExpressions;

Простенький пример на C# с сайта c-sharpcorner
alex_4x пишет:



Я имел ввиду примеры применения для 1С. Не КАК делать, а ЧТО делать.
22. alex_4x 87 10.12.10 11:52 Сейчас в теме
Вот здесь Автор использует регулярные выражения для выделения лексем языка.
Конечная цель у него отличная от твоей, но принцип выделения лексем - одинаков.

например ты собираешь все лексемы содержащие Переменная = Значение;
Выравнивать по Началу первой лексемы, знака "=", Значение.

Для Т по З Цикл
Блаблабла
КонецЦикла
Тоже лексема - выравнивать

ну и так далее.
24. antonrost 656 10.12.10 11:57 Сейчас в теме
alex_4x пишет:
Вот здесь Автор использует регулярные выражения для выделения лексем языка. Конечная цель у него отличная от твоей, но принцип выделения лексем - одинаков.

например ты собираешь все лексемы содержащие Переменная = Значение; Выравнивать по Началу первой лексемы, знака "=", Значение.

Для Т по З Цикл Блаблабла КонецЦикла Тоже лексема - выравнивать


Опять ответ не на тот вопрос, который я задавал.
Я прошу не примеры использования регулярных выражения, а возможные примеры использования моей обработки для облегчения жизни программистов, т.е. прошу конкретизировать пожелания.
25. artbear 1566 11.12.10 11:33 Сейчас в теме
Да, странное форматирование :(
Взял одну процедуру, весь ее текст прижал к левому краю, далее Альт+Ф12 и Форматировать блок.
Результат повеселил :( -
1. у комментария // появился/вставился лишний пробел / / :(
2. текст внутри строк выровнялся по знакам равно, т.е все что справа от знака равно, на одной колонке, но левая-то осталась как есть, прижатой влево :(
ИМХО в описании нужно специальным образом указать, что не происходит выравнивания операторов, аналогичного типовому форматированию, т.е. обработку нужно использовать только в дополнении к основному форматирования или для небольших блоков кода.

У нас есть аналогичный проект для разработчиков для AutoHotkey - список процедур/функций через svcsvc, авторские комменты, форматирование, удобное переназначение хоткеев под привычный набор хоткеев и т.п.
Основная проблема - неудобство получения выделенного текста, получаем только через передачу спец.символов в окно 1С для работы через буфер обмена.
http://www.1cpp.ru/forum/YaBB.pl?num=1227553473/0
На данный момент реализовано:
- Вызов списка процедур с фильтрацией наименований методов при наборе текста
- форматирование модуля при помощи code_beautifier.pl
- Автоматическая печать символа "|" после перевода строки, при необходимости - Enter.
- Автоматическая печать символов комментария "//" после перевода строки по Shift+Enter, если текущая.строка также является комментарием.
- удаление строки Ctrl+y
- Закрытие окна сообщение Ctrl+z (не всем нравится)
- символ '<' по Ctrl-,
- символ '>' по Ctrl-.
- символ '|' по Ctrl-\
- переходы по процедурам в стиле OpenConf?
переход в процедуру (как в OpenConf? - ctrl+enter)
возврат на предыдущую позицию (как в OpenConf? - alt+{left})

Вопрос - как смог получить только выделенный текст в окне 1С?
Используешь посылку символов для работы через буфер обмена или другим способом?
Поделишься? очень нужно!
26. antonrost 656 11.12.10 17:42 Сейчас в теме
artbear пишет:
Вопрос - как смог получить только выделенный текст в окне 1С?

Увы, банальный SendKey "Ctrl-Insert", но попыток найти другой способ еще не оставил.
27. MSensey 49 15.12.10 12:28 Сейчас в теме
Плюс за попытку сделать что-то полезное.
Попробовал ... есть проблемы ... буду ждать стабильной версии.
28. orefkov 1153 16.12.10 12:49 Сейчас в теме
Небольшая демка на тему.
Скачать, запустить, посмотреть фильм.
Прикрепленные файлы:
formatV82.exe
29. antonrost 656 16.12.10 12:58 Сейчас в теме
orefkov пишет:
Небольшая демка на тему.
.

С нетерпением жду, когда можно будет этим пользоваться
30. orefkov 1153 16.12.10 13:16 Сейчас в теме
antonrost пишет:
С нетерпением жду, когда можно будет этим пользоваться

Каминг сун, как говорится. И года не пройдет.
32. artbear 1566 16.12.10 15:35 Сейчас в теме
(30) Саш, я как всегда готов быть твоим тестером :)
31. inf0start 16.12.10 14:57 Сейчас в теме
А нельзя ли реализовать дополнительное форматирование, где вместо пробелов используется табуляция, и только концовка перед знаком равно (если нужно) выравнивается пробелами?
33. orefkov 1153 17.12.10 14:26 Сейчас в теме
Вот еще побаловался чуток.
Умный Enter.
Прикрепленные файлы:
v82SmartEnter.exe
Spartan; artbear; +2 Ответить
35. antonrost 656 17.12.10 14:36 Сейчас в теме
(33) Дразнишься? Уже слюнки текут...
34. artbear 1566 17.12.10 14:33 Сейчас в теме
(34) А с нами поделиться :) ?
36. orefkov 1153 17.12.10 14:43 Сейчас в теме
artbear пишет:

(34) А с нами поделиться ?


Так ведь это все пока на коленке собрано, с торчащими во все стороны кусками проводов, и падает при любом чихе.
И работает пока только на 8.2.11.236. Вобщем до деления еще не так близко.
37. artbear 1566 17.12.10 14:54 Сейчас в теме
(36) Может, помощь какая нужна? или тестирование более активное? чтобы чихи быстрее ловить? :)
38. orefkov 1153 17.12.10 15:06 Сейчас в теме
artbear пишет:

(36) Может, помощь какая нужна? или тестирование более активное? чтобы чихи быстрее ловить?

Пока нет. Но тебя я записал в книжечку.
39. orefkov 1153 14.10.11 14:34 Сейчас в теме
40. Dmitrii D 79 11.07.14 12:55 Сейчас в теме
с коментами обработка делает что-то чудесное !
41. FilatovRA 174 06.02.17 12:27 Сейчас в теме
42. RPGrigorev 707 22.04.22 12:50 Сейчас в теме
Добрый день! А можно как-то сделать, чтобы в комментариях //, он не ставил пробел между символами / / и не только в комментариях, но и в переменных
Оставьте свое сообщение