1c.js (64571B)
1 /* 2 Language: 1C:Enterprise 3 Author: Stanislav Belov <stbelov@gmail.com> 4 Description: built-in language 1C:Enterprise (v7, v8) 5 Category: enterprise 6 */ 7 8 function _1c(hljs) { 9 10 // общий паттерн для определения идентификаторов 11 var UNDERSCORE_IDENT_RE = '[A-Za-zА-Яа-яёЁ_][A-Za-zА-Яа-яёЁ_0-9]+'; 12 13 // v7 уникальные ключевые слова, отсутствующие в v8 ==> keyword 14 var v7_keywords = 15 'далее '; 16 17 // v8 ключевые слова ==> keyword 18 var v8_keywords = 19 'возврат вызватьисключение выполнить для если и из или иначе иначеесли исключение каждого конецесли ' + 20 'конецпопытки конеццикла не новый перейти перем по пока попытка прервать продолжить тогда цикл экспорт '; 21 22 // keyword : ключевые слова 23 var KEYWORD = v7_keywords + v8_keywords; 24 25 // v7 уникальные директивы, отсутствующие в v8 ==> meta-keyword 26 var v7_meta_keywords = 27 'загрузитьизфайла '; 28 29 // v8 ключевые слова в инструкциях препроцессора, директивах компиляции, аннотациях ==> meta-keyword 30 var v8_meta_keywords = 31 'вебклиент вместо внешнеесоединение клиент конецобласти мобильноеприложениеклиент мобильноеприложениесервер ' + 32 'наклиенте наклиентенасервере наклиентенасерверебезконтекста насервере насерверебезконтекста область перед ' + 33 'после сервер толстыйклиентобычноеприложение толстыйклиентуправляемоеприложение тонкийклиент '; 34 35 // meta-keyword : ключевые слова в инструкциях препроцессора, директивах компиляции, аннотациях 36 var METAKEYWORD = v7_meta_keywords + v8_meta_keywords; 37 38 // v7 системные константы ==> built_in 39 var v7_system_constants = 40 'разделительстраниц разделительстрок символтабуляции '; 41 42 // v7 уникальные методы глобального контекста, отсутствующие в v8 ==> built_in 43 var v7_global_context_methods = 44 'ansitooem oemtoansi ввестивидсубконто ввестиперечисление ввестипериод ввестиплансчетов выбранныйплансчетов ' + 45 'датагод датамесяц датачисло заголовоксистемы значениевстроку значениеизстроки каталогиб каталогпользователя ' + 46 'кодсимв конгода конецпериодаби конецрассчитанногопериодаби конецстандартногоинтервала конквартала конмесяца ' + 47 'коннедели лог лог10 максимальноеколичествосубконто названиеинтерфейса названиенабораправ назначитьвид ' + 48 'назначитьсчет найтиссылки началопериодаби началостандартногоинтервала начгода начквартала начмесяца ' + 49 'начнедели номерднягода номерднянедели номернеделигода обработкаожидания основнойжурналрасчетов ' + 50 'основнойплансчетов основнойязык очиститьокносообщений периодстр получитьвремята получитьдатута ' + 51 'получитьдокументта получитьзначенияотбора получитьпозициюта получитьпустоезначение получитьта ' + 52 'префиксавтонумерации пропись пустоезначение разм разобратьпозициюдокумента рассчитатьрегистрына ' + 53 'рассчитатьрегистрыпо симв создатьобъект статусвозврата стрколичествострок сформироватьпозициюдокумента ' + 54 'счетпокоду текущеевремя типзначения типзначениястр установитьтана установитьтапо фиксшаблон шаблон '; 55 56 // v8 методы глобального контекста ==> built_in 57 var v8_global_context_methods = 58 'acos asin atan base64значение base64строка cos exp log log10 pow sin sqrt tan xmlзначение xmlстрока ' + 59 'xmlтип xmlтипзнч активноеокно безопасныйрежим безопасныйрежимразделенияданных булево ввестидату ввестизначение ' + 60 'ввестистроку ввестичисло возможностьчтенияxml вопрос восстановитьзначение врег выгрузитьжурналрегистрации ' + 61 'выполнитьобработкуоповещения выполнитьпроверкуправдоступа вычислить год данныеформывзначение дата день деньгода ' + 62 'деньнедели добавитьмесяц заблокироватьданныедляредактирования заблокироватьработупользователя завершитьработусистемы ' + 63 'загрузитьвнешнююкомпоненту закрытьсправку записатьjson записатьxml записатьдатуjson записьжурналарегистрации ' + 64 'заполнитьзначениясвойств запроситьразрешениепользователя запуститьприложение запуститьсистему зафиксироватьтранзакцию ' + 65 'значениевданныеформы значениевстрокувнутр значениевфайл значениезаполнено значениеизстрокивнутр значениеизфайла ' + 66 'изxmlтипа импортмоделиxdto имякомпьютера имяпользователя инициализироватьпредопределенныеданные информацияобошибке ' + 67 'каталогбиблиотекимобильногоустройства каталогвременныхфайлов каталогдокументов каталогпрограммы кодироватьстроку ' + 68 'кодлокализацииинформационнойбазы кодсимвола командасистемы конецгода конецдня конецквартала конецмесяца конецминуты ' + 69 'конецнедели конецчаса конфигурациябазыданныхизмененадинамически конфигурацияизменена копироватьданныеформы ' + 70 'копироватьфайл краткоепредставлениеошибки лев макс местноевремя месяц мин минута монопольныйрежим найти ' + 71 'найтинедопустимыесимволыxml найтиокнопонавигационнойссылке найтипомеченныенаудаление найтипоссылкам найтифайлы ' + 72 'началогода началодня началоквартала началомесяца началоминуты началонедели началочаса начатьзапросразрешенияпользователя ' + 73 'начатьзапускприложения начатькопированиефайла начатьперемещениефайла начатьподключениевнешнейкомпоненты ' + 74 'начатьподключениерасширенияработыскриптографией начатьподключениерасширенияработысфайлами начатьпоискфайлов ' + 75 'начатьполучениекаталогавременныхфайлов начатьполучениекаталогадокументов начатьполучениерабочегокаталогаданныхпользователя ' + 76 'начатьполучениефайлов начатьпомещениефайла начатьпомещениефайлов начатьсозданиедвоичныхданныхизфайла начатьсозданиекаталога ' + 77 'начатьтранзакцию начатьудалениефайлов начатьустановкувнешнейкомпоненты начатьустановкурасширенияработыскриптографией ' + 78 'начатьустановкурасширенияработысфайлами неделягода необходимостьзавершениясоединения номерсеансаинформационнойбазы ' + 79 'номерсоединенияинформационнойбазы нрег нстр обновитьинтерфейс обновитьнумерациюобъектов обновитьповторноиспользуемыезначения ' + 80 'обработкапрерыванияпользователя объединитьфайлы окр описаниеошибки оповестить оповеститьобизменении ' + 81 'отключитьобработчикзапросанастроекклиенталицензирования отключитьобработчикожидания отключитьобработчикоповещения ' + 82 'открытьзначение открытьиндекссправки открытьсодержаниесправки открытьсправку открытьформу открытьформумодально ' + 83 'отменитьтранзакцию очиститьжурналрегистрации очиститьнастройкипользователя очиститьсообщения параметрыдоступа ' + 84 'перейтипонавигационнойссылке переместитьфайл подключитьвнешнююкомпоненту ' + 85 'подключитьобработчикзапросанастроекклиенталицензирования подключитьобработчикожидания подключитьобработчикоповещения ' + 86 'подключитьрасширениеработыскриптографией подключитьрасширениеработысфайлами подробноепредставлениеошибки ' + 87 'показатьвводдаты показатьвводзначения показатьвводстроки показатьвводчисла показатьвопрос показатьзначение ' + 88 'показатьинформациюобошибке показатьнакарте показатьоповещениепользователя показатьпредупреждение полноеимяпользователя ' + 89 'получитьcomобъект получитьxmlтип получитьадреспоместоположению получитьблокировкусеансов получитьвремязавершенияспящегосеанса ' + 90 'получитьвремязасыпанияпассивногосеанса получитьвремяожиданияблокировкиданных получитьданныевыбора ' + 91 'получитьдополнительныйпараметрклиенталицензирования получитьдопустимыекодылокализации получитьдопустимыечасовыепояса ' + 92 'получитьзаголовокклиентскогоприложения получитьзаголовоксистемы получитьзначенияотборажурналарегистрации ' + 93 'получитьидентификаторконфигурации получитьизвременногохранилища получитьимявременногофайла ' + 94 'получитьимяклиенталицензирования получитьинформациюэкрановклиента получитьиспользованиежурналарегистрации ' + 95 'получитьиспользованиесобытияжурналарегистрации получитькраткийзаголовокприложения получитьмакетоформления ' + 96 'получитьмаскувсефайлы получитьмаскувсефайлыклиента получитьмаскувсефайлысервера получитьместоположениепоадресу ' + 97 'получитьминимальнуюдлинупаролейпользователей получитьнавигационнуюссылку получитьнавигационнуюссылкуинформационнойбазы ' + 98 'получитьобновлениеконфигурациибазыданных получитьобновлениепредопределенныхданныхинформационнойбазы получитьобщиймакет ' + 99 'получитьобщуюформу получитьокна получитьоперативнуюотметкувремени получитьотключениебезопасногорежима ' + 100 'получитьпараметрыфункциональныхопцийинтерфейса получитьполноеимяпредопределенногозначения ' + 101 'получитьпредставлениянавигационныхссылок получитьпроверкусложностипаролейпользователей получитьразделительпути ' + 102 'получитьразделительпутиклиента получитьразделительпутисервера получитьсеансыинформационнойбазы ' + 103 'получитьскоростьклиентскогосоединения получитьсоединенияинформационнойбазы получитьсообщенияпользователю ' + 104 'получитьсоответствиеобъектаиформы получитьсоставстандартногоинтерфейсаodata получитьструктурухранениябазыданных ' + 105 'получитьтекущийсеансинформационнойбазы получитьфайл получитьфайлы получитьформу получитьфункциональнуюопцию ' + 106 'получитьфункциональнуюопциюинтерфейса получитьчасовойпоясинформационнойбазы пользователиос поместитьвовременноехранилище ' + 107 'поместитьфайл поместитьфайлы прав праводоступа предопределенноезначение представлениекодалокализации представлениепериода ' + 108 'представлениеправа представлениеприложения представлениесобытияжурналарегистрации представлениечасовогопояса предупреждение ' + 109 'прекратитьработусистемы привилегированныйрежим продолжитьвызов прочитатьjson прочитатьxml прочитатьдатуjson пустаястрока ' + 110 'рабочийкаталогданныхпользователя разблокироватьданныедляредактирования разделитьфайл разорватьсоединениесвнешнимисточникомданных ' + 111 'раскодироватьстроку рольдоступна секунда сигнал символ скопироватьжурналрегистрации смещениелетнеговремени ' + 112 'смещениестандартноговремени соединитьбуферыдвоичныхданных создатькаталог создатьфабрикуxdto сокрл сокрлп сокрп сообщить ' + 113 'состояние сохранитьзначение сохранитьнастройкипользователя сред стрдлина стрзаканчиваетсяна стрзаменить стрнайти стрначинаетсяс ' + 114 'строка строкасоединенияинформационнойбазы стрполучитьстроку стрразделить стрсоединить стрсравнить стрчисловхождений '+ 115 'стрчислострок стршаблон текущаядата текущаядатасеанса текущаяуниверсальнаядата текущаяуниверсальнаядатавмиллисекундах ' + 116 'текущийвариантинтерфейсаклиентскогоприложения текущийвариантосновногошрифтаклиентскогоприложения текущийкодлокализации ' + 117 'текущийрежимзапуска текущийязык текущийязыксистемы тип типзнч транзакцияактивна трег удалитьданныеинформационнойбазы ' + 118 'удалитьизвременногохранилища удалитьобъекты удалитьфайлы универсальноевремя установитьбезопасныйрежим ' + 119 'установитьбезопасныйрежимразделенияданных установитьблокировкусеансов установитьвнешнююкомпоненту ' + 120 'установитьвремязавершенияспящегосеанса установитьвремязасыпанияпассивногосеанса установитьвремяожиданияблокировкиданных ' + 121 'установитьзаголовокклиентскогоприложения установитьзаголовоксистемы установитьиспользованиежурналарегистрации ' + 122 'установитьиспользованиесобытияжурналарегистрации установитькраткийзаголовокприложения ' + 123 'установитьминимальнуюдлинупаролейпользователей установитьмонопольныйрежим установитьнастройкиклиенталицензирования ' + 124 'установитьобновлениепредопределенныхданныхинформационнойбазы установитьотключениебезопасногорежима ' + 125 'установитьпараметрыфункциональныхопцийинтерфейса установитьпривилегированныйрежим ' + 126 'установитьпроверкусложностипаролейпользователей установитьрасширениеработыскриптографией ' + 127 'установитьрасширениеработысфайлами установитьсоединениесвнешнимисточникомданных установитьсоответствиеобъектаиформы ' + 128 'установитьсоставстандартногоинтерфейсаodata установитьчасовойпоясинформационнойбазы установитьчасовойпояссеанса ' + 129 'формат цел час часовойпояс часовойпояссеанса число числопрописью этоадресвременногохранилища '; 130 131 // v8 свойства глобального контекста ==> built_in 132 var v8_global_context_property = 133 'wsссылки библиотекакартинок библиотекамакетовоформлениякомпоновкиданных библиотекастилей бизнеспроцессы ' + 134 'внешниеисточникиданных внешниеобработки внешниеотчеты встроенныепокупки главныйинтерфейс главныйстиль ' + 135 'документы доставляемыеуведомления журналыдокументов задачи информацияобинтернетсоединении использованиерабочейдаты ' + 136 'историяработыпользователя константы критерииотбора метаданные обработки отображениерекламы отправкадоставляемыхуведомлений ' + 137 'отчеты панельзадачос параметрзапуска параметрысеанса перечисления планывидоврасчета планывидовхарактеристик ' + 138 'планыобмена планысчетов полнотекстовыйпоиск пользователиинформационнойбазы последовательности проверкавстроенныхпокупок ' + 139 'рабочаядата расширенияконфигурации регистрыбухгалтерии регистрынакопления регистрырасчета регистрысведений ' + 140 'регламентныезадания сериализаторxdto справочники средствагеопозиционирования средствакриптографии средствамультимедиа ' + 141 'средстваотображениярекламы средствапочты средствателефонии фабрикаxdto файловыепотоки фоновыезадания хранилищанастроек ' + 142 'хранилищевариантовотчетов хранилищенастроекданныхформ хранилищеобщихнастроек хранилищепользовательскихнастроекдинамическихсписков ' + 143 'хранилищепользовательскихнастроекотчетов хранилищесистемныхнастроек '; 144 145 // built_in : встроенные или библиотечные объекты (константы, классы, функции) 146 var BUILTIN = 147 v7_system_constants + 148 v7_global_context_methods + v8_global_context_methods + 149 v8_global_context_property; 150 151 // v8 системные наборы значений ==> class 152 var v8_system_sets_of_values = 153 'webцвета windowsцвета windowsшрифты библиотекакартинок рамкистиля символы цветастиля шрифтыстиля '; 154 155 // v8 системные перечисления - интерфейсные ==> class 156 var v8_system_enums_interface = 157 'автоматическоесохранениеданныхформывнастройках автонумерациявформе автораздвижениесерий ' + 158 'анимациядиаграммы вариантвыравниванияэлементовизаголовков вариантуправлениявысотойтаблицы ' + 159 'вертикальнаяпрокруткаформы вертикальноеположение вертикальноеположениеэлемента видгруппыформы ' + 160 'виддекорацииформы виддополненияэлементаформы видизмененияданных видкнопкиформы видпереключателя ' + 161 'видподписейкдиаграмме видполяформы видфлажка влияниеразмеранапузырекдиаграммы горизонтальноеположение ' + 162 'горизонтальноеположениеэлемента группировкаколонок группировкаподчиненныхэлементовформы ' + 163 'группыиэлементы действиеперетаскивания дополнительныйрежимотображения допустимыедействияперетаскивания ' + 164 'интервалмеждуэлементамиформы использованиевывода использованиеполосыпрокрутки ' + 165 'используемоезначениеточкибиржевойдиаграммы историявыборапривводе источникзначенийоситочекдиаграммы ' + 166 'источникзначенияразмерапузырькадиаграммы категориягруппыкоманд максимумсерий начальноеотображениедерева ' + 167 'начальноеотображениесписка обновлениетекстаредактирования ориентациядендрограммы ориентациядиаграммы ' + 168 'ориентацияметокдиаграммы ориентацияметоксводнойдиаграммы ориентацияэлементаформы отображениевдиаграмме ' + 169 'отображениевлегендедиаграммы отображениегруппыкнопок отображениезаголовкашкалыдиаграммы ' + 170 'отображениезначенийсводнойдиаграммы отображениезначенияизмерительнойдиаграммы ' + 171 'отображениеинтерваладиаграммыганта отображениекнопки отображениекнопкивыбора отображениеобсужденийформы ' + 172 'отображениеобычнойгруппы отображениеотрицательныхзначенийпузырьковойдиаграммы отображениепанелипоиска ' + 173 'отображениеподсказки отображениепредупрежденияприредактировании отображениеразметкиполосырегулирования ' + 174 'отображениестраницформы отображениетаблицы отображениетекстазначениядиаграммыганта ' + 175 'отображениеуправленияобычнойгруппы отображениефигурыкнопки палитрацветовдиаграммы поведениеобычнойгруппы ' + 176 'поддержкамасштабадендрограммы поддержкамасштабадиаграммыганта поддержкамасштабасводнойдиаграммы ' + 177 'поисквтаблицепривводе положениезаголовкаэлементаформы положениекартинкикнопкиформы ' + 178 'положениекартинкиэлементаграфическойсхемы положениекоманднойпанелиформы положениекоманднойпанелиэлементаформы ' + 179 'положениеопорнойточкиотрисовки положениеподписейкдиаграмме положениеподписейшкалызначенийизмерительнойдиаграммы ' + 180 'положениесостоянияпросмотра положениестрокипоиска положениетекстасоединительнойлинии положениеуправленияпоиском ' + 181 'положениешкалывремени порядокотображенияточекгоризонтальнойгистограммы порядоксерийвлегендедиаграммы ' + 182 'размеркартинки расположениезаголовкашкалыдиаграммы растягиваниеповертикалидиаграммыганта ' + 183 'режимавтоотображениясостояния режимвводастроктаблицы режимвыборанезаполненного режимвыделениядаты ' + 184 'режимвыделениястрокитаблицы режимвыделениятаблицы режимизмененияразмера режимизменениясвязанногозначения ' + 185 'режимиспользованиядиалогапечати режимиспользованияпараметракоманды режиммасштабированияпросмотра ' + 186 'режимосновногоокнаклиентскогоприложения режимоткрытияокнаформы режимотображениявыделения ' + 187 'режимотображениягеографическойсхемы режимотображениязначенийсерии режимотрисовкисеткиграфическойсхемы ' + 188 'режимполупрозрачностидиаграммы режимпробеловдиаграммы режимразмещениянастранице режимредактированияколонки ' + 189 'режимсглаживаниядиаграммы режимсглаживанияиндикатора режимсписказадач сквозноевыравнивание ' + 190 'сохранениеданныхформывнастройках способзаполнениятекстазаголовкашкалыдиаграммы ' + 191 'способопределенияограничивающегозначениядиаграммы стандартнаягруппакоманд стандартноеоформление ' + 192 'статусоповещенияпользователя стильстрелки типаппроксимациилиниитрендадиаграммы типдиаграммы ' + 193 'типединицышкалывремени типимпортасерийслоягеографическойсхемы типлиниигеографическойсхемы типлиниидиаграммы ' + 194 'типмаркерагеографическойсхемы типмаркерадиаграммы типобластиоформления ' + 195 'типорганизацииисточникаданныхгеографическойсхемы типотображениясериислоягеографическойсхемы ' + 196 'типотображенияточечногообъектагеографическойсхемы типотображенияшкалыэлементалегендыгеографическойсхемы ' + 197 'типпоискаобъектовгеографическойсхемы типпроекциигеографическойсхемы типразмещенияизмерений ' + 198 'типразмещенияреквизитовизмерений типрамкиэлементауправления типсводнойдиаграммы ' + 199 'типсвязидиаграммыганта типсоединениязначенийпосериямдиаграммы типсоединенияточекдиаграммы ' + 200 'типсоединительнойлинии типстороныэлементаграфическойсхемы типформыотчета типшкалырадарнойдиаграммы ' + 201 'факторлиниитрендадиаграммы фигуракнопки фигурыграфическойсхемы фиксациявтаблице форматдняшкалывремени ' + 202 'форматкартинки ширинаподчиненныхэлементовформы '; 203 204 // v8 системные перечисления - свойства прикладных объектов ==> class 205 var v8_system_enums_objects_properties = 206 'виддвижениябухгалтерии виддвижениянакопления видпериодарегистрарасчета видсчета видточкимаршрутабизнеспроцесса ' + 207 'использованиеагрегатарегистранакопления использованиегруппиэлементов использованиережимапроведения ' + 208 'использованиесреза периодичностьагрегатарегистранакопления режимавтовремя режимзаписидокумента режимпроведениядокумента '; 209 210 // v8 системные перечисления - планы обмена ==> class 211 var v8_system_enums_exchange_plans = 212 'авторегистрацияизменений допустимыйномерсообщения отправкаэлементаданных получениеэлементаданных '; 213 214 // v8 системные перечисления - табличный документ ==> class 215 var v8_system_enums_tabular_document = 216 'использованиерасшифровкитабличногодокумента ориентациястраницы положениеитоговколоноксводнойтаблицы ' + 217 'положениеитоговстроксводнойтаблицы положениетекстаотносительнокартинки расположениезаголовкагруппировкитабличногодокумента ' + 218 'способчтениязначенийтабличногодокумента типдвустороннейпечати типзаполненияобластитабличногодокумента ' + 219 'типкурсоровтабличногодокумента типлиниирисункатабличногодокумента типлинииячейкитабличногодокумента ' + 220 'типнаправленияпереходатабличногодокумента типотображениявыделениятабличногодокумента типотображениялинийсводнойтаблицы ' + 221 'типразмещениятекстатабличногодокумента типрисункатабличногодокумента типсмещениятабличногодокумента ' + 222 'типузоратабличногодокумента типфайлатабличногодокумента точностьпечати чередованиерасположениястраниц '; 223 224 // v8 системные перечисления - планировщик ==> class 225 var v8_system_enums_sheduler = 226 'отображениевремениэлементовпланировщика '; 227 228 // v8 системные перечисления - форматированный документ ==> class 229 var v8_system_enums_formatted_document = 230 'типфайлаформатированногодокумента '; 231 232 // v8 системные перечисления - запрос ==> class 233 var v8_system_enums_query = 234 'обходрезультатазапроса типзаписизапроса '; 235 236 // v8 системные перечисления - построитель отчета ==> class 237 var v8_system_enums_report_builder = 238 'видзаполнениярасшифровкипостроителяотчета типдобавленияпредставлений типизмеренияпостроителяотчета типразмещенияитогов '; 239 240 // v8 системные перечисления - работа с файлами ==> class 241 var v8_system_enums_files = 242 'доступкфайлу режимдиалогавыборафайла режимоткрытияфайла '; 243 244 // v8 системные перечисления - построитель запроса ==> class 245 var v8_system_enums_query_builder = 246 'типизмеренияпостроителязапроса '; 247 248 // v8 системные перечисления - анализ данных ==> class 249 var v8_system_enums_data_analysis = 250 'видданныханализа методкластеризации типединицыинтервалавременианализаданных типзаполнениятаблицырезультатаанализаданных ' + 251 'типиспользованиячисловыхзначенийанализаданных типисточникаданныхпоискаассоциаций типколонкианализаданныхдереворешений ' + 252 'типколонкианализаданныхкластеризация типколонкианализаданныхобщаястатистика типколонкианализаданныхпоискассоциаций ' + 253 'типколонкианализаданныхпоискпоследовательностей типколонкимоделипрогноза типмерырасстоянияанализаданных ' + 254 'типотсеченияправилассоциации типполяанализаданных типстандартизациианализаданных типупорядочиванияправилассоциациианализаданных ' + 255 'типупорядочиванияшаблоновпоследовательностейанализаданных типупрощениядереварешений '; 256 257 // v8 системные перечисления - xml, json, xs, dom, xdto, web-сервисы ==> class 258 var v8_system_enums_xml_json_xs_dom_xdto_ws = 259 'wsнаправлениепараметра вариантxpathxs вариантзаписидатыjson вариантпростоготипаxs видгруппымоделиxs видфасетаxdto ' + 260 'действиепостроителяdom завершенностьпростоготипаxs завершенностьсоставноготипаxs завершенностьсхемыxs запрещенныеподстановкиxs ' + 261 'исключениягруппподстановкиxs категорияиспользованияатрибутаxs категорияограниченияидентичностиxs категорияограниченияпространствименxs ' + 262 'методнаследованияxs модельсодержимогоxs назначениетипаxml недопустимыеподстановкиxs обработкапробельныхсимволовxs обработкасодержимогоxs ' + 263 'ограничениезначенияxs параметрыотбораузловdom переносстрокjson позициявдокументеdom пробельныесимволыxml типатрибутаxml типзначенияjson ' + 264 'типканоническогоxml типкомпонентыxs типпроверкиxml типрезультатаdomxpath типузлаdom типузлаxml формаxml формапредставленияxs ' + 265 'форматдатыjson экранированиесимволовjson '; 266 267 // v8 системные перечисления - система компоновки данных ==> class 268 var v8_system_enums_data_composition_system = 269 'видсравнениякомпоновкиданных действиеобработкирасшифровкикомпоновкиданных направлениесортировкикомпоновкиданных ' + 270 'расположениевложенныхэлементоврезультатакомпоновкиданных расположениеитоговкомпоновкиданных расположениегруппировкикомпоновкиданных ' + 271 'расположениеполейгруппировкикомпоновкиданных расположениеполякомпоновкиданных расположениереквизитовкомпоновкиданных ' + 272 'расположениересурсовкомпоновкиданных типбухгалтерскогоостаткакомпоновкиданных типвыводатекстакомпоновкиданных ' + 273 'типгруппировкикомпоновкиданных типгруппыэлементовотборакомпоновкиданных типдополненияпериодакомпоновкиданных ' + 274 'типзаголовкаполейкомпоновкиданных типмакетагруппировкикомпоновкиданных типмакетаобластикомпоновкиданных типостаткакомпоновкиданных ' + 275 'типпериодакомпоновкиданных типразмещениятекстакомпоновкиданных типсвязинаборовданныхкомпоновкиданных типэлементарезультатакомпоновкиданных ' + 276 'расположениелегендыдиаграммыкомпоновкиданных типпримененияотборакомпоновкиданных режимотображенияэлементанастройкикомпоновкиданных ' + 277 'режимотображениянастроеккомпоновкиданных состояниеэлементанастройкикомпоновкиданных способвосстановлениянастроеккомпоновкиданных ' + 278 'режимкомпоновкирезультата использованиепараметракомпоновкиданных автопозицияресурсовкомпоновкиданных '+ 279 'вариантиспользованиягруппировкикомпоновкиданных расположениересурсоввдиаграммекомпоновкиданных фиксациякомпоновкиданных ' + 280 'использованиеусловногооформлениякомпоновкиданных '; 281 282 // v8 системные перечисления - почта ==> class 283 var v8_system_enums_email = 284 'важностьинтернетпочтовогосообщения обработкатекстаинтернетпочтовогосообщения способкодированияинтернетпочтовоговложения ' + 285 'способкодированиянеasciiсимволовинтернетпочтовогосообщения типтекстапочтовогосообщения протоколинтернетпочты ' + 286 'статусразборапочтовогосообщения '; 287 288 // v8 системные перечисления - журнал регистрации ==> class 289 var v8_system_enums_logbook = 290 'режимтранзакциизаписижурналарегистрации статустранзакциизаписижурналарегистрации уровеньжурналарегистрации '; 291 292 // v8 системные перечисления - криптография ==> class 293 var v8_system_enums_cryptography = 294 'расположениехранилищасертификатовкриптографии режимвключениясертификатовкриптографии режимпроверкисертификатакриптографии ' + 295 'типхранилищасертификатовкриптографии '; 296 297 // v8 системные перечисления - ZIP ==> class 298 var v8_system_enums_zip = 299 'кодировкаименфайловвzipфайле методсжатияzip методшифрованияzip режимвосстановленияпутейфайловzip режимобработкиподкаталоговzip ' + 300 'режимсохраненияпутейzip уровеньсжатияzip '; 301 302 // v8 системные перечисления - 303 // Блокировка данных, Фоновые задания, Автоматизированное тестирование, 304 // Доставляемые уведомления, Встроенные покупки, Интернет, Работа с двоичными данными ==> class 305 var v8_system_enums_other = 306 'звуковоеоповещение направлениепереходакстроке позициявпотоке порядокбайтов режимблокировкиданных режимуправленияблокировкойданных ' + 307 'сервисвстроенныхпокупок состояниефоновогозадания типподписчикадоставляемыхуведомлений уровеньиспользованиязащищенногосоединенияftp '; 308 309 // v8 системные перечисления - схема запроса ==> class 310 var v8_system_enums_request_schema = 311 'направлениепорядкасхемызапроса типдополненияпериодамисхемызапроса типконтрольнойточкисхемызапроса типобъединениясхемызапроса ' + 312 'типпараметрадоступнойтаблицысхемызапроса типсоединениясхемызапроса '; 313 314 // v8 системные перечисления - свойства объектов метаданных ==> class 315 var v8_system_enums_properties_of_metadata_objects = 316 'httpметод автоиспользованиеобщегореквизита автопрефиксномеразадачи вариантвстроенногоязыка видиерархии видрегистранакопления ' + 317 'видтаблицывнешнегоисточникаданных записьдвиженийприпроведении заполнениепоследовательностей индексирование ' + 318 'использованиебазыпланавидоврасчета использованиебыстроговыбора использованиеобщегореквизита использованиеподчинения ' + 319 'использованиеполнотекстовогопоиска использованиеразделяемыхданныхобщегореквизита использованиереквизита ' + 320 'назначениеиспользованияприложения назначениерасширенияконфигурации направлениепередачи обновлениепредопределенныхданных ' + 321 'оперативноепроведение основноепредставлениевидарасчета основноепредставлениевидахарактеристики основноепредставлениезадачи ' + 322 'основноепредставлениепланаобмена основноепредставлениесправочника основноепредставлениесчета перемещениеграницыприпроведении ' + 323 'периодичностьномерабизнеспроцесса периодичностьномерадокумента периодичностьрегистрарасчета периодичностьрегистрасведений ' + 324 'повторноеиспользованиевозвращаемыхзначений полнотекстовыйпоискпривводепостроке принадлежностьобъекта проведение ' + 325 'разделениеаутентификацииобщегореквизита разделениеданныхобщегореквизита разделениерасширенийконфигурацииобщегореквизита '+ 326 'режимавтонумерацииобъектов режимзаписирегистра режимиспользованиямодальности ' + 327 'режимиспользованиясинхронныхвызововрасширенийплатформыивнешнихкомпонент режимповторногоиспользованиясеансов ' + 328 'режимполученияданныхвыборапривводепостроке режимсовместимости режимсовместимостиинтерфейса ' + 329 'режимуправленияблокировкойданныхпоумолчанию сериикодовпланавидовхарактеристик сериикодовпланасчетов ' + 330 'сериикодовсправочника созданиепривводе способвыбора способпоискастрокипривводепостроке способредактирования ' + 331 'типданныхтаблицывнешнегоисточникаданных типкодапланавидоврасчета типкодасправочника типмакета типномерабизнеспроцесса ' + 332 'типномерадокумента типномеразадачи типформы удалениедвижений '; 333 334 // v8 системные перечисления - разные ==> class 335 var v8_system_enums_differents = 336 'важностьпроблемыприменениярасширенияконфигурации вариантинтерфейсаклиентскогоприложения вариантмасштабаформклиентскогоприложения ' + 337 'вариантосновногошрифтаклиентскогоприложения вариантстандартногопериода вариантстандартнойдатыначала видграницы видкартинки ' + 338 'видотображенияполнотекстовогопоиска видрамки видсравнения видцвета видчисловогозначения видшрифта допустимаядлина допустимыйзнак ' + 339 'использованиеbyteordermark использованиеметаданныхполнотекстовогопоиска источникрасширенийконфигурации клавиша кодвозвратадиалога ' + 340 'кодировкаxbase кодировкатекста направлениепоиска направлениесортировки обновлениепредопределенныхданных обновлениеприизмененииданных ' + 341 'отображениепанелиразделов проверказаполнения режимдиалогавопрос режимзапускаклиентскогоприложения режимокругления режимоткрытияформприложения ' + 342 'режимполнотекстовогопоиска скоростьклиентскогосоединения состояниевнешнегоисточникаданных состояниеобновленияконфигурациибазыданных ' + 343 'способвыборасертификатаwindows способкодированиястроки статуссообщения типвнешнейкомпоненты типплатформы типповеденияклавишиenter ' + 344 'типэлементаинформацииовыполненииобновленияконфигурациибазыданных уровеньизоляциитранзакций хешфункция частидаты'; 345 346 // class: встроенные наборы значений, системные перечисления (содержат дочерние значения, обращения к которым через разыменование) 347 var CLASS = 348 v8_system_sets_of_values + 349 v8_system_enums_interface + 350 v8_system_enums_objects_properties + 351 v8_system_enums_exchange_plans + 352 v8_system_enums_tabular_document + 353 v8_system_enums_sheduler + 354 v8_system_enums_formatted_document + 355 v8_system_enums_query + 356 v8_system_enums_report_builder + 357 v8_system_enums_files + 358 v8_system_enums_query_builder + 359 v8_system_enums_data_analysis + 360 v8_system_enums_xml_json_xs_dom_xdto_ws + 361 v8_system_enums_data_composition_system + 362 v8_system_enums_email + 363 v8_system_enums_logbook + 364 v8_system_enums_cryptography + 365 v8_system_enums_zip + 366 v8_system_enums_other + 367 v8_system_enums_request_schema + 368 v8_system_enums_properties_of_metadata_objects + 369 v8_system_enums_differents; 370 371 // v8 общие объекты (у объектов есть конструктор, экземпляры создаются методом НОВЫЙ) ==> type 372 var v8_shared_object = 373 'comобъект ftpсоединение httpзапрос httpсервисответ httpсоединение wsопределения wsпрокси xbase анализданных аннотацияxs ' + 374 'блокировкаданных буфердвоичныхданных включениеxs выражениекомпоновкиданных генераторслучайныхчисел географическаясхема ' + 375 'географическиекоординаты графическаясхема группамоделиxs данныерасшифровкикомпоновкиданных двоичныеданные дендрограмма ' + 376 'диаграмма диаграммаганта диалогвыборафайла диалогвыборацвета диалогвыборашрифта диалограсписаниярегламентногозадания ' + 377 'диалогредактированиястандартногопериода диапазон документdom документhtml документацияxs доставляемоеуведомление ' + 378 'записьdom записьfastinfoset записьhtml записьjson записьxml записьzipфайла записьданных записьтекста записьузловdom ' + 379 'запрос защищенноесоединениеopenssl значенияполейрасшифровкикомпоновкиданных извлечениетекста импортxs интернетпочта ' + 380 'интернетпочтовоесообщение интернетпочтовыйпрофиль интернетпрокси интернетсоединение информациядляприложенияxs ' + 381 'использованиеатрибутаxs использованиесобытияжурналарегистрации источникдоступныхнастроеккомпоновкиданных ' + 382 'итераторузловdom картинка квалификаторыдаты квалификаторыдвоичныхданных квалификаторыстроки квалификаторычисла ' + 383 'компоновщикмакетакомпоновкиданных компоновщикнастроеккомпоновкиданных конструктормакетаоформлениякомпоновкиданных ' + 384 'конструкторнастроеккомпоновкиданных конструкторформатнойстроки линия макеткомпоновкиданных макетобластикомпоновкиданных ' + 385 'макетоформлениякомпоновкиданных маскаxs менеджеркриптографии наборсхемxml настройкикомпоновкиданных настройкисериализацииjson ' + 386 'обработкакартинок обработкарасшифровкикомпоновкиданных обходдереваdom объявлениеатрибутаxs объявлениенотацииxs ' + 387 'объявлениеэлементаxs описаниеиспользованиясобытиядоступжурналарегистрации ' + 388 'описаниеиспользованиясобытияотказвдоступежурналарегистрации описаниеобработкирасшифровкикомпоновкиданных ' + 389 'описаниепередаваемогофайла описаниетипов определениегруппыатрибутовxs определениегруппымоделиxs ' + 390 'определениеограниченияидентичностиxs определениепростоготипаxs определениесоставноготипаxs определениетипадокументаdom ' + 391 'определенияxpathxs отборкомпоновкиданных пакетотображаемыхдокументов параметрвыбора параметркомпоновкиданных ' + 392 'параметрызаписиjson параметрызаписиxml параметрычтенияxml переопределениеxs планировщик полеанализаданных ' + 393 'полекомпоновкиданных построительdom построительзапроса построительотчета построительотчетаанализаданных ' + 394 'построительсхемxml поток потоквпамяти почта почтовоесообщение преобразованиеxsl преобразованиекканоническомуxml ' + 395 'процессорвыводарезультатакомпоновкиданныхвколлекциюзначений процессорвыводарезультатакомпоновкиданныхвтабличныйдокумент ' + 396 'процессоркомпоновкиданных разыменовательпространствименdom рамка расписаниерегламентногозадания расширенноеимяxml ' + 397 'результатчтенияданных своднаядиаграмма связьпараметравыбора связьпотипу связьпотипукомпоновкиданных сериализаторxdto ' + 398 'сертификатклиентаwindows сертификатклиентафайл сертификаткриптографии сертификатыудостоверяющихцентровwindows ' + 399 'сертификатыудостоверяющихцентровфайл сжатиеданных системнаяинформация сообщениепользователю сочетаниеклавиш ' + 400 'сравнениезначений стандартнаядатаначала стандартныйпериод схемаxml схемакомпоновкиданных табличныйдокумент ' + 401 'текстовыйдокумент тестируемоеприложение типданныхxml уникальныйидентификатор фабрикаxdto файл файловыйпоток ' + 402 'фасетдлиныxs фасетколичестваразрядовдробнойчастиxs фасетмаксимальноговключающегозначенияxs ' + 403 'фасетмаксимальногоисключающегозначенияxs фасетмаксимальнойдлиныxs фасетминимальноговключающегозначенияxs ' + 404 'фасетминимальногоисключающегозначенияxs фасетминимальнойдлиныxs фасетобразцаxs фасетобщегоколичестваразрядовxs ' + 405 'фасетперечисленияxs фасетпробельныхсимволовxs фильтрузловdom форматированнаястрока форматированныйдокумент ' + 406 'фрагментxs хешированиеданных хранилищезначения цвет чтениеfastinfoset чтениеhtml чтениеjson чтениеxml чтениеzipфайла ' + 407 'чтениеданных чтениетекста чтениеузловdom шрифт элементрезультатакомпоновкиданных '; 408 409 // v8 универсальные коллекции значений ==> type 410 var v8_universal_collection = 411 'comsafearray деревозначений массив соответствие списокзначений структура таблицазначений фиксированнаяструктура ' + 412 'фиксированноесоответствие фиксированныймассив '; 413 414 // type : встроенные типы 415 var TYPE = 416 v8_shared_object + 417 v8_universal_collection; 418 419 // literal : примитивные типы 420 var LITERAL = 'null истина ложь неопределено'; 421 422 // number : числа 423 var NUMBERS = hljs.inherit(hljs.NUMBER_MODE); 424 425 // string : строки 426 var STRINGS = { 427 className: 'string', 428 begin: '"|\\|', end: '"|$', 429 contains: [{begin: '""'}] 430 }; 431 432 // number : даты 433 var DATE = { 434 begin: "'", end: "'", excludeBegin: true, excludeEnd: true, 435 contains: [ 436 { 437 className: 'number', 438 begin: '\\d{4}([\\.\\\\/:-]?\\d{2}){0,5}' 439 } 440 ] 441 }; 442 443 // comment : комментарии 444 var COMMENTS = hljs.inherit(hljs.C_LINE_COMMENT_MODE); 445 446 // meta : инструкции препроцессора, директивы компиляции 447 var META = { 448 className: 'meta', 449 450 begin: '#|&', end: '$', 451 keywords: { 452 $pattern: UNDERSCORE_IDENT_RE, 453 'meta-keyword': KEYWORD + METAKEYWORD 454 }, 455 contains: [ 456 COMMENTS 457 ] 458 }; 459 460 // symbol : метка goto 461 var SYMBOL = { 462 className: 'symbol', 463 begin: '~', end: ';|:', excludeEnd: true 464 }; 465 466 // function : объявление процедур и функций 467 var FUNCTION = { 468 className: 'function', 469 variants: [ 470 {begin: 'процедура|функция', end: '\\)', keywords: 'процедура функция'}, 471 {begin: 'конецпроцедуры|конецфункции', keywords: 'конецпроцедуры конецфункции'} 472 ], 473 contains: [ 474 { 475 begin: '\\(', end: '\\)', endsParent : true, 476 contains: [ 477 { 478 className: 'params', 479 begin: UNDERSCORE_IDENT_RE, end: ',', excludeEnd: true, endsWithParent: true, 480 keywords: { 481 $pattern: UNDERSCORE_IDENT_RE, 482 keyword: 'знач', 483 literal: LITERAL 484 }, 485 contains: [ 486 NUMBERS, 487 STRINGS, 488 DATE 489 ] 490 }, 491 COMMENTS 492 ] 493 }, 494 hljs.inherit(hljs.TITLE_MODE, {begin: UNDERSCORE_IDENT_RE}) 495 ] 496 }; 497 498 return { 499 name: '1C:Enterprise', 500 case_insensitive: true, 501 keywords: { 502 $pattern: UNDERSCORE_IDENT_RE, 503 keyword: KEYWORD, 504 built_in: BUILTIN, 505 class: CLASS, 506 type: TYPE, 507 literal: LITERAL 508 }, 509 contains: [ 510 META, 511 FUNCTION, 512 COMMENTS, 513 SYMBOL, 514 NUMBERS, 515 STRINGS, 516 DATE 517 ] 518 } 519 } 520 521 module.exports = _1c;