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

11.12.10

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

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

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

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

Наименование Файл Версия Размер
Format_1C.zip
.zip 215,72Kb
146
.zip 215,72Kb 146 Скачать

 

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

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

 

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

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

 

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

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


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

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

См. также

SALE! 20%

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

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

Набор инструментов программиста и специалиста 1С для всех конфигураций на управляемых формах. В состав входят инструменты: Консоль запросов, Консоль СКД, Консоль кода, Редактор объекта, Анализ прав доступа, Метаданные, Поиск ссылок, Сравнение объектов, Все функции, Подписки на события и др. Редактор запросов и кода с раскраской и контекстной подсказкой. Доработанный конструктор запросов тонкого клиента. Продукт хорошо оптимизирован и обладает самым широким функционалом среди всех инструментов, представленных на рынке.

13000 10400 руб.

02.09.2020    122180    670    389    

714

SALE! 25%

Infostart PrintWizard

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

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

18000 15300 руб.

06.10.2023    7298    21    6    

39

SALE! 20%

Infostart УДиФ: Управление данными и формами

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

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

10000 8000 руб.

10.11.2023    3545    11    1    

34

SALE! 30%

PowerTools

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

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

3600 2520 руб.

14.01.2013    177760    1073    0    

849

Многопоточность. Универсальный «Менеджер потоков» 2.1

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

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

5000 руб.

07.02.2018    99349    239    97    

296

[ЕХТ] Фреймворк для Расширений 1С

Инструментарий разработчика Платформа 1С v8.3 Управляемые формы Платные (руб)

"Фреймворк для Расширений 1С" это универсальное и многофункциональное решение, упрощающее разработку и поддержку создаваемых Расширений. Поставляется в виде комплекта из нескольких Расширений с открытым исходным кодом. Работает в любых Конфигурациях в режиме Управляемого приложения с режимом совместимости 8.3.12 и выше без необходимости внесения изменений в Конфигурацию.

3000 руб.

27.08.2019    18118    6    8    

40

1С HTML Шаблоны / HTML Templates

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

Быстрая и удобная обработка для работы с шаблонами HTML. Позволяет легко и быстро формировать код HTML.

2040 руб.

27.12.2017    28111    3    10    

15

Выполнение произвольного кода или запроса с параметрами через Web-сервис (замена COM-подключений)

Инструментарий разработчика Обмен между базами 1C Платформа 1С v8.3 Платные (руб)

В процессе работы в 1С часто возникает потребность получить данные из другой базы.  Обычно это делается через COM-соединение, и время выполнения запроса при этом оставляет желать лучшего. В данной публикации представлено универсальное решение, позволяющее практически моментально выполнить произвольный код или запрос с параметрами в другой информационной базе через Web-сервис.

2400 руб.

24.09.2019    23605    15    15    

32
Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. Spartan 365 08.12.10 17:26 Сейчас в теме
Знак "равно" в первой строке блока размещает на один символ дальше, чем в остальных. А так - плюс, мне пригодится!
Все, догнал... Если перед первой строкой есть табуляция, то нужно выделять прям с самого начала строки вместе с ней - тогда нормально.
2. IDija 154 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 1373 09.12.10 17:46 Сейчас в теме
При нажатии какой-то "левой" комбинации вышло сообщение об ошибке и программа успешно закрылась!
8. antonrost 656 09.12.10 17:47 Сейчас в теме
Появился новый функционал. Качаем, критикуем. :|
9. antonrost 656 09.12.10 17:49 Сейчас в теме
YAN пишет:

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


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

Это уже обновленная закрылась ?
10. Spartan 365 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 365 09.12.10 20:19 Сейчас в теме
(11) Значит плохо читал - извиняй... :D Я все больше как-то по первой версии ориентировался...
13. RustIG 1351 10.12.10 10:43 Сейчас в теме
Идея здоровская! Плюс!
Часть функционала можно реализовать на платформе 1С: [делюсь опытом :)]
http://infostart.ru/public/79256/.
14. Spartan 365 10.12.10 10:43 Сейчас в теме
(0) Ты знаешь, зарегил я библиотеку, тока видно это действительно пока очень уж бета... При форматировании блока с равенствами из 4 попыток, отформатировала только один раз нормально и то со сдвигом первой строки на лишний пробел. В других случаях, прога делала вообще непонятно что: то удаляла блок вообще, то вытягивала его в одну строку с удалением знаков равенства. Если не трудно, положи первую версию вторым файлом - она как-то постабильнее будет.
15. ixijixi 1775 10.12.10 10:52 Сейчас в теме
Вроде работает =) Спасибо, +! Выравнивание различных структур языка не помешало бы.
16. alex_4x 85 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 365 10.12.10 11:16 Сейчас в теме
(18) Вряд ли, у меня с машиной все в порядке... Ну давай попробуем.
20. alex_4x 85 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 85 10.12.10 11:52 Сейчас в теме
Вот здесь Автор использует регулярные выражения для выделения лексем языка.
Конечная цель у него отличная от твоей, но принцип выделения лексем - одинаков.

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

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

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

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

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


Опять ответ не на тот вопрос, который я задавал.
Я прошу не примеры использования регулярных выражения, а возможные примеры использования моей обработки для облегчения жизни программистов, т.е. прошу конкретизировать пожелания.
25. artbear 1448 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 1152 16.12.10 12:49 Сейчас в теме
Небольшая демка на тему.
Скачать, запустить, посмотреть фильм.
Прикрепленные файлы:
formatV82.exe
29. antonrost 656 16.12.10 12:58 Сейчас в теме
orefkov пишет:
Небольшая демка на тему.
.

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

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

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


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

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

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