rouge 2.0.5 → 2.0.6

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 9e86ab14104619c2550743be376277431a1d348a
4
- data.tar.gz: dd494f5310e3f05ea124ba5009c1ee93835591b9
3
+ metadata.gz: 2f1f405b49dcc56dd2d919c21abea6d7585897d5
4
+ data.tar.gz: ce71ccd69a02ce176750e6aa420e1f161e5b2b0c
5
5
  SHA512:
6
- metadata.gz: 199f707e796ee258424385a3e04347fee7f3ac56062d1bd1d0498eb0cef816a6d9944bd93cadb7cc390da3ca8191be3a8da407c0e2372e4cc209867a9a76ac6b
7
- data.tar.gz: b48cc7207849973dc09b789c6d0379d3a0ab5d4f364c5d8ca0b7db2f53879f1865b8574b22d1dd9bdb32e39f09ff52aa261db44e29a062d1862b7f68aa687ff4
6
+ metadata.gz: e7e99a7b930bdb47b7cee04576f298a6a0381e41820fb70562d0376706f1da978dfd5c3416e0b4f3068fc71bfce2a376bcf48d0d9eed78a7b28ac7ce3b7c15e6
7
+ data.tar.gz: efe32d1995ea498fb419e86e5ccd8f117b047c06050de26ee2086417cbbe9ef3de92f60c9ca571d533fa510e3073791a4ebbe8fa6966974219ab90dfb4fa88f7
@@ -76,3 +76,4 @@ load load_dir.join('rouge/themes/monokai.rb')
76
76
  load load_dir.join('rouge/themes/molokai.rb')
77
77
  load load_dir.join('rouge/themes/monokai_sublime.rb')
78
78
  load load_dir.join('rouge/themes/gruvbox.rb')
79
+ load load_dir.join('rouge/themes/tulip.rb')
@@ -242,7 +242,7 @@ module Rouge
242
242
 
243
243
  if opts[:lexer]
244
244
  @lexer_class = Lexer.find(opts[:lexer]) \
245
- or error! "unkown lexer #{opts[:lexer].inspect}"
245
+ or error! "unknown lexer #{opts[:lexer].inspect}"
246
246
  else
247
247
  @lexer_name = opts[:lexer]
248
248
  @mimetype = opts[:mimetype]
@@ -0,0 +1,7 @@
1
+ #Область ПрограммныйИнтерфейс
2
+
3
+ Процедура ПриветМир() Экспорт
4
+ Сообщить("Привет мир");
5
+ КонецПроцедуры
6
+
7
+ #КонецОбласти
@@ -0,0 +1,17 @@
1
+ var HelloWorld = React.createClass({
2
+ render: function() {
3
+ return (
4
+ <p>
5
+ Hello, <input type="text" placeholder="Your name here" />!
6
+ It is {this.props.date.toTimeString()}
7
+ </p>
8
+ );
9
+ }
10
+ });
11
+
12
+ setInterval(function() {
13
+ ReactDOM.render(
14
+ <HelloWorld date={new Date()} />,
15
+ document.getElementById('example')
16
+ );
17
+ }, 500);
@@ -0,0 +1,22 @@
1
+ <?xml version="1.0"?>
2
+ <s:ComboBox xmlns:fx="http://ns.adobe.com/mxml/2009"
3
+ xmlns:s="library://ns.adobe.com/flex/spark"
4
+ xmlns:mx="library://ns.adobe.com/flex/mx">
5
+
6
+ <fx:Script>
7
+ <![CDATA[
8
+ [Bindable]
9
+ private var buttonLabel:String = "Click me!";
10
+ private var clicks:int = 0;
11
+
12
+ function button_clicked():void {
13
+ clicks++;
14
+ buttonLabel = clicks.toString();
15
+ }
16
+ ]]>
17
+ </fx:Script>
18
+
19
+ <s:Button id="button"
20
+ label="{buttonLabel}"
21
+ click="{button_clicked()}" />
22
+ </s:ComboBox>
@@ -0,0 +1,9 @@
1
+ "this is a string"
2
+ 'these are unescaped: \n \\ \t'
3
+ `these are not unescaped: \n ' " \t`
4
+
5
+ http_requests_total{environment=~"staging|testing|development", method!="GET"}
6
+
7
+ http_requests_total offset 5m
8
+
9
+ sum(http_requests_total{method="GET"}[10m] offset 5m)
@@ -0,0 +1,26 @@
1
+ @prefix xsd: <http://www.w3.org/2001/XMLSchema#>
2
+ @prefix dcat: <http://www.w3.org/ns/dcat#> .
3
+ @prefix dcterms: <http://purl.org/dc/terms/> .
4
+ @prefix foaf: <http://xmlns.com/foaf/0.1/> .
5
+ @base <http://base.of.relative.iris> .
6
+
7
+ PREFIX test: <http://example.org>
8
+ PrEfIx insensitive: <http://insensitive.example.org>
9
+
10
+ GRAPH <https://trig.testing.graph> {
11
+ <https://example.org/resource/dataset> a dcat:Dataset ;
12
+
13
+ #-----Mandatory-----#
14
+
15
+ dcterms:title 'Test title'@cs, "Test title"@en ;
16
+ dcterms:description """Multiline
17
+ string"""@cs, '''Another
18
+ multiline string '''@en ;
19
+
20
+ #-----Recommended-----#
21
+ dcat:contactPoint [ a foaf:Person ] ;
22
+ test:list ( <http://ex.org> 1 1.1 +1 -1 1.2E+4 "Test" "\"Quote\"" ) ;
23
+ test:datatype "2016-07-20"^^xsd:date ;
24
+ test:text """next multiline""";
25
+ .
26
+ }
@@ -0,0 +1,8 @@
1
+ class Demo.HelloWorld : GLib.Object
2
+ {
3
+ public static int main (String[] args)
4
+ {
5
+ stdout.printf("Hello World\n");
6
+ return 0;
7
+ }
8
+ }
@@ -0,0 +1,23 @@
1
+ entity toggle_demo is
2
+ port (
3
+ clk_in : in std_logic; -- System Clock
4
+ data_q : out std_logic -- Toggling Port
5
+ );
6
+ end entity toggle_demo;
7
+
8
+ architecture RTL of toggle_demo is
9
+ signal data : std_logic := '0';
10
+ begin
11
+
12
+ data_q <= data;
13
+
14
+ data_proc : process (clk_in)
15
+ begin
16
+
17
+ if (rising_edge(clk_in)) then
18
+ data <= not data;
19
+ end if;
20
+
21
+ end process;
22
+
23
+ end architecture RTL;
@@ -146,9 +146,9 @@ module Rouge
146
146
  end
147
147
  end
148
148
 
149
- rule /\-[0-9][0-9]*\.[0-9]+([eE][0-9]+)?[fd]?/, Num::Float
149
+ rule /\-?[0-9][0-9]*\.[0-9]+([eE][0-9]+)?[fd]?/, Num::Float
150
150
  rule /0x[0-9a-fA-F]+/, Num::Hex
151
- rule /\-[0-9]+/, Num::Integer
151
+ rule /\-?[0-9]+/, Num::Integer
152
152
  rule /"(\\\\|\\"|[^"])*"/, Str::Double
153
153
  rule /'(\\\\|\\'|[^'])*'/, Str::Single
154
154
  end
@@ -1,35 +1,35 @@
1
1
  module Rouge
2
2
  module Lexers
3
3
  load_lexer 'xml.rb'
4
-
4
+
5
5
  class BIML < XML
6
6
  title "BIML"
7
7
  desc "BIML, Business Intelligence Markup Language"
8
8
  tag 'biml'
9
9
  filenames '*.biml'
10
-
10
+
11
11
  def self.analyze_text(text)
12
12
  return 1 if text =~ /<\s*Biml\b/
13
13
  end
14
-
14
+
15
15
  prepend :root do
16
- rule %r(<#@\s*)m, Name::Tag, :directive_tag
17
-
16
+ rule %r(<#\@\s*)m, Name::Tag, :directive_tag
17
+
18
18
  rule %r(<#[=]?\s*)m, Name::Tag, :directive_as_csharp
19
19
  end
20
-
20
+
21
21
  prepend :attr do
22
22
  #TODO: how to deal with embedded <# tags inside a attribute string
23
23
  #rule %r("<#[=]?\s*)m, Name::Tag, :directive_as_csharp
24
24
  end
25
-
25
+
26
26
  state :directive_as_csharp do
27
- rule /\s*#>\s*/m, Name::Tag, :pop!
27
+ rule /\s*#>\s*/m, Name::Tag, :pop!
28
28
  rule %r(.*?(?=\s*#>\s*))m do
29
29
  delegate CSharp
30
30
  end
31
31
  end
32
-
32
+
33
33
  state :directive_tag do
34
34
  rule /\s+/m, Text
35
35
  rule /[\w.:-]+\s*=/m, Name::Attribute, :attr
@@ -0,0 +1,81 @@
1
+ # -*- coding: utf-8 -*- #
2
+
3
+ module Rouge
4
+ module Lexers
5
+ class Bsl < RegexLexer
6
+ title "1C (BSL)"
7
+ desc "The 1C:Enterprise programming language"
8
+ tag 'bsl'
9
+ filenames '*.bsl', '*.os'
10
+
11
+ KEYWORDS = /(?<=[^\wа-яё]|^)(?:
12
+ КонецПроцедуры | EndProcedure | КонецФункции | EndFunction
13
+ | Прервать | Break | Продолжить | Continue
14
+ | Возврат | Return | Если | If
15
+ | Иначе | Else | ИначеЕсли | ElsIf
16
+ | Тогда | Then | КонецЕсли | EndIf
17
+ | Попытка | Try | Исключение | Except
18
+ | КонецПопытки | EndTry | Raise | ВызватьИсключение
19
+ | Пока | While | Для | For
20
+ | Каждого | Each | Из | In
21
+ | По | To | Цикл | Do
22
+ | КонецЦикла | EndDo | НЕ | NOT
23
+ | И | AND | ИЛИ | OR
24
+ | Новый | New | Процедура | Procedure
25
+ | Функция | Function | Перем | Var
26
+ | Экспорт | Export | Знач | Val
27
+ )(?=[^\wа-яё]|$)/ix
28
+
29
+ BUILTINS = /(?<=[^\wа-яё]|^)(?:
30
+ СтрДлина|StrLen|СокрЛ|TrimL|СокрП|TrimR|СокрЛП|TrimAll|Лев|Left|Прав|Right|Сред|Mid|СтрНайти|StrFind|ВРег|Upper|НРег|Lower|ТРег|Title|Символ|Char|КодСимвола|CharCode|ПустаяСтрока|IsBlankString|СтрЗаменить|StrReplace|СтрЧислоСтрок|StrLineCount|СтрПолучитьСтроку|StrGetLine|СтрЧислоВхождений|StrOccurrenceCount|СтрСравнить|StrCompare|СтрНачинаетсяС|StrStartWith|СтрЗаканчиваетсяНа|StrEndsWith|СтрРазделить|StrSplit|СтрСоединить|StrConcat
31
+ | Цел|Int|Окр|Round|ACos|ACos|ASin|ASin|ATan|ATan|Cos|Cos|Exp|Exp|Log|Log|Log10|Log10|Pow|Pow|Sin|Sin|Sqrt|Sqrt|Tan|Tan
32
+ | Год|Year|Месяц|Month|День|Day|Час|Hour|Минута|Minute|Секунда|Second|НачалоГода|BegOfYear|НачалоДня|BegOfDay|НачалоКвартала|BegOfQuarter|НачалоМесяца|BegOfMonth|НачалоМинуты|BegOfMinute|НачалоНедели|BegOfWeek|НачалоЧаса|BegOfHour|КонецГода|EndOfYear|КонецДня|EndOfDay|КонецКвартала|EndOfQuarter|КонецМесяца|EndOfMonth|КонецМинуты|EndOfMinute|КонецНедели|EndOfWeek|КонецЧаса|EndOfHour|НеделяГода|WeekOfYear|ДеньГода|DayOfYear|ДеньНедели|WeekDay|ТекущаяДата|CurrentDate|ДобавитьМесяц|AddMonth
33
+ | Тип|Type|ТипЗнч|TypeOf
34
+ | Булево|Boolean|Число|Number|Строка|String|Дата|Date
35
+ | ПоказатьВопрос|ShowQueryBox|Вопрос|DoQueryBox|ПоказатьПредупреждение|ShowMessageBox|Предупреждение|DoMessageBox|Сообщить|Message|ОчиститьСообщения|ClearMessages|ОповеститьОбИзменении|NotifyChanged|Состояние|Status|Сигнал|Beep|ПоказатьЗначение|ShowValue|ОткрытьЗначение|OpenValue|Оповестить|Notify|ОбработкаПрерыванияПользователя|UserInterruptProcessing|ОткрытьСодержаниеСправки|OpenHelpContent|ОткрытьИндексСправки|OpenHelpIndex|ОткрытьСправку|OpenHelp|ПоказатьИнформациюОбОшибке|ShowErrorInfo|КраткоеПредставлениеОшибки|BriefErrorDescription|ПодробноеПредставлениеОшибки|DetailErrorDescription|ПолучитьФорму|GetForm|ЗакрытьСправку|CloseHelp|ПоказатьОповещениеПользователя|ShowUserNotification|ОткрытьФорму|OpenForm|ОткрытьФормуМодально|OpenFormModal|АктивноеОкно|ActiveWindow|ВыполнитьОбработкуОповещения|ExecuteNotifyProcessing
36
+ | ПоказатьВводЗначения|ShowInputValue|ВвестиЗначение|InputValue|ПоказатьВводЧисла|ShowInputNumber|ВвестиЧисло|InputNumber|ПоказатьВводСтроки|ShowInputString|ВвестиСтроку|InputString|ПоказатьВводДаты|ShowInputDate|ВвестиДату|InputDate
37
+ | Формат|Format|ЧислоПрописью|NumberInWords|НСтр|NStr|ПредставлениеПериода|PeriodPresentation|СтрШаблон|StrTemplate
38
+ | ПолучитьОбщийМакет|GetCommonTemplate|ПолучитьОбщуюФорму|GetCommonForm|ПредопределенноеЗначение|PredefinedValue|ПолучитьПолноеИмяПредопределенногоЗначения|GetPredefinedValueFullName
39
+ | ПолучитьЗаголовокСистемы|GetCaption|ПолучитьСкоростьКлиентскогоСоединения|GetClientConnectionSpeed|ПодключитьОбработчикОжидания|AttachIdleHandler|УстановитьЗаголовокСистемы|SetCaption|ОтключитьОбработчикОжидания|DetachIdleHandler|ИмяКомпьютера|ComputerName|ЗавершитьРаботуСистемы|Exit|ИмяПользователя|UserName|ПрекратитьРаботуСистемы|Terminate|ПолноеИмяПользователя|UserFullName|ЗаблокироватьРаботуПользователя|LockApplication|КаталогПрограммы|BinDir|КаталогВременныхФайлов|TempFilesDir|ПравоДоступа|AccessRight|РольДоступна|IsInRole|ТекущийЯзык|CurrentLanguage|ТекущийКодЛокализации|CurrentLocaleCode|СтрокаСоединенияИнформационнойБазы|InfoBaseConnectionString|ПодключитьОбработчикОповещения|AttachNotificationHandler|ОтключитьОбработчикОповещения|DetachNotificationHandler|ПолучитьСообщенияПользователю|GetUserMessages|ПараметрыДоступа|AccessParameters|ПредставлениеПриложения|ApplicationPresentation|ТекущийЯзыкСистемы|CurrentSystemLanguage|ЗапуститьСистему|RunSystem|ТекущийРежимЗапуска|CurrentRunMode|УстановитьЧасовойПоясСеанса|SetSessionTimeZone|ЧасовойПоясСеанса|SessionTimeZone|ТекущаяДатаСеанса|CurrentSessionDate|УстановитьКраткийЗаголовокПриложения|SetShortApplicationCaption|ПолучитьКраткийЗаголовокПриложения|GetShortApplicationCaption|ПредставлениеПрава|RightPresentation|ВыполнитьПроверкуПравДоступа|VerifyAccessRights|РабочийКаталогДанныхПользователя|UserDataWorkDir|КаталогДокументов|DocumentsDir|ПолучитьИнформациюЭкрановКлиента|GetClientDisplaysInformation|ТекущийВариантОсновногоШрифтаКлиентскогоПриложения|ClientApplicationBaseFontCurrentVariant|ТекущийВариантИнтерфейсаКлиентскогоПриложения|ClientApplicationInterfaceCurrentVariant|УстановитьЗаголовокКлиентскогоПриложения|SetClientApplicationCaption|ПолучитьЗаголовокКлиентскогоПриложения|GetClientApplicationCaption|НачатьПолучениеКаталогаВременныхФайлов|BeginGettingTempFilesDir|НачатьПолучениеКаталогаДокументов|BeginGettingDocumentsDir|НачатьПолучениеРабочегоКаталогаДанныхПользователя|BeginGettingUserDataWorkDir|ПодключитьОбработчикЗапросаНастроекКлиентаЛицензирования|AttachLicensingClientParametersRequestHandler|ОтключитьОбработчикЗапросаНастроекКлиентаЛицензирования|DetachLicensingClientParametersRequestHandler
40
+ | ЗначениеВСтрокуВнутр|ValueToStringInternal|ЗначениеИзСтрокиВнутр|ValueFromStringInternal|ЗначениеВФайл|ValueToFile|ЗначениеИзФайла|ValueFromFile
41
+ | КомандаСистемы|System|ЗапуститьПриложение|RunApp|ПолучитьCOMОбъект|GetCOMObject|ПользователиОС|OSUsers|НачатьЗапускПриложения|BeginRunningApplication
42
+ | ПодключитьВнешнююКомпоненту|AttachAddIn|НачатьУстановкуВнешнейКомпоненты|BeginInstallAddIn|УстановитьВнешнююКомпоненту|InstallAddIn|НачатьПодключениеВнешнейКомпоненты|BeginAttachingAddIn
43
+ | КопироватьФайл|FileCopy|ПереместитьФайл|MoveFile|УдалитьФайлы|DeleteFiles|НайтиФайлы|FindFiles|СоздатьКаталог|CreateDirectory|ПолучитьИмяВременногоФайла|GetTempFileName|РазделитьФайл|SplitFile|ОбъединитьФайлы|MergeFiles|ПолучитьФайл|GetFile|НачатьПомещениеФайла|BeginPutFile|ПоместитьФайл|PutFile|ЭтоАдресВременногоХранилища|IsTempStorageURL|УдалитьИзВременногоХранилища|DeleteFromTempStorage|ПолучитьИзВременногоХранилища|GetFromTempStorage|ПоместитьВоВременноеХранилище|PutToTempStorage|ПодключитьРасширениеРаботыСФайлами|AttachFileSystemExtension|НачатьУстановкуРасширенияРаботыСФайлами|BeginInstallFileSystemExtension|УстановитьРасширениеРаботыСФайлами|InstallFileSystemExtension|ПолучитьФайлы|GetFiles|ПоместитьФайлы|PutFiles|ЗапроситьРазрешениеПользователя|RequestUserPermission|ПолучитьМаскуВсеФайлы|GetAllFilesMask|ПолучитьМаскуВсеФайлыКлиента|GetClientAllFilesMask|ПолучитьМаскуВсеФайлыСервера|GetServerAllFilesMask|ПолучитьРазделительПути|GetPathSeparator|ПолучитьРазделительПутиКлиента|GetClientPathSeparator|ПолучитьРазделительПутиСервера|GetServerPathSeparator|НачатьПодключениеРасширенияРаботыСФайлами|BeginAttachingFileSystemExtension|НачатьЗапросРазрешенияПользователя|BeginRequestingUserPermission|НачатьПоискФайлов|BeginFindingFiles|НачатьСозданиеКаталога|BeginCreatingDirectory|НачатьКопированиеФайла|BeginCopyingFile|НачатьПеремещениеФайла|BeginMovingFile|НачатьУдалениеФайлов|BeginDeletingFiles|НачатьПолучениеФайлов|BeginGettingFiles|НачатьПомещениеФайлов|BeginPuttingFiles
44
+ | НачатьТранзакцию|BeginTransaction|ЗафиксироватьТранзакцию|CommitTransaction|ОтменитьТранзакцию|RollbackTransaction|УстановитьМонопольныйРежим|SetExclusiveMode|МонопольныйРежим|ExclusiveMode|ПолучитьОперативнуюОтметкуВремени|GetRealTimeTimestamp|ПолучитьСоединенияИнформационнойБазы|GetInfoBaseConnections|НомерСоединенияИнформационнойБазы|InfoBaseConnectionNumber|КонфигурацияИзменена|ConfigurationChanged|КонфигурацияБазыДанныхИзмененаДинамически|DataBaseConfigurationChangedDynamically|УстановитьВремяОжиданияБлокировкиДанных|SetLockWaitTime|ОбновитьНумерациюОбъектов|RefreshObjectsNumbering|ПолучитьВремяОжиданияБлокировкиДанных|GetLockWaitTime|КодЛокализацииИнформационнойБазы|InfoBaseLocaleCode|УстановитьМинимальнуюДлинуПаролейПользователей|SetUserPasswordMinLength|ПолучитьМинимальнуюДлинуПаролейПользователей|GetUserPasswordMinLength|ИнициализироватьПредопределенныеДанные|InitializePredefinedData|УдалитьДанныеИнформационнойБазы|EraseInfoBaseData|УстановитьПроверкуСложностиПаролейПользователей|SetUserPasswordStrengthCheck|ПолучитьПроверкуСложностиПаролейПользователей|GetUserPasswordStrengthCheck|ПолучитьСтруктуруХраненияБазыДанных|GetDBStorageStructureInfo|УстановитьПривилегированныйРежим|SetPrivilegedMode|ПривилегированныйРежим|PrivilegedMode|ТранзакцияАктивна|TransactionActive|НеобходимостьЗавершенияСоединения|ConnectionStopRequest|НомерСеансаИнформационнойБазы|InfoBaseSessionNumber|ПолучитьСеансыИнформационнойБазы|GetInfoBaseSessions|ЗаблокироватьДанныеДляРедактирования|LockDataForEdit|УстановитьСоединениеСВнешнимИсточникомДанных|ConnectExternalDataSource|РазблокироватьДанныеДляРедактирования|UnlockDataForEdit|РазорватьСоединениеСВнешнимИсточникомДанных|DisconnectExternalDataSource|ПолучитьБлокировкуСеансов|GetSessionsLock|УстановитьБлокировкуСеансов|SetSessionsLock|ОбновитьПовторноИспользуемыеЗначения|RefreshReusableValues|УстановитьБезопасныйРежим|SetSafeMode|БезопасныйРежим|SafeMode|ПолучитьДанныеВыбора|GetChoiceData|УстановитьЧасовойПоясИнформационнойБазы|SetInfoBaseTimeZone|ПолучитьЧасовойПоясИнформационнойБазы|GetInfoBaseTimeZone|ПолучитьОбновлениеКонфигурацииБазыДанных|GetDataBaseConfigurationUpdate|УстановитьБезопасныйРежимРазделенияДанных|SetDataSeparationSafeMode|БезопасныйРежимРазделенияДанных|DataSeparationSafeMode|УстановитьВремяЗасыпанияПассивногоСеанса|SetPassiveSessionHibernateTime|ПолучитьВремяЗасыпанияПассивногоСеанса|GetPassiveSessionHibernateTime|УстановитьВремяЗавершенияСпящегоСеанса|SetHibernateSessionTerminateTime|ПолучитьВремяЗавершенияСпящегоСеанса|GetHibernateSessionTerminateTime|ПолучитьТекущийСеансИнформационнойБазы|GetCurrentInfoBaseSession|ПолучитьИдентификаторКонфигурации|GetConfigurationID|УстановитьНастройкиКлиентаЛицензирования|SetLicensingClientParameters|ПолучитьИмяКлиентаЛицензирования|GetLicensingClientName|ПолучитьДополнительныйПараметрКлиентаЛицензирования|GetLicensingClientAdditionalParameter
45
+ | НайтиПомеченныеНаУдаление|FindMarkedForDeletion|НайтиПоСсылкам|FindByRef|УдалитьОбъекты|DeleteObjects|УстановитьОбновлениеПредопределенныхДанныхИнформационнойБазы|SetInfoBasePredefinedDataUpdate|ПолучитьОбновлениеПредопределенныхДанныхИнформационнойБазы|GetInfoBasePredefinedData
46
+ | XMLСтрока|XMLString|XMLЗначение|XMLValue|XMLТип|XMLType|XMLТипЗнч|XMLTypeOf|ИзXMLТипа|FromXMLType|ВозможностьЧтенияXML|CanReadXML|ПолучитьXMLТип|GetXMLType|ПрочитатьXML|ReadXML|ЗаписатьXML|WriteXML|НайтиНедопустимыеСимволыXML|FindDisallowedXMLCharacters|ИмпортМоделиXDTO|ImportXDTOModel|СоздатьФабрикуXDTO|CreateXDTOFactory
47
+ | ЗаписатьJSON|WriteJSON|ПрочитатьJSON|ReadJSON|ПрочитатьДатуJSON|ReadJSONDate|ЗаписатьДатуJSON|WriteJSONDate
48
+ | ЗаписьЖурналаРегистрации|WriteLogEvent|ПолучитьИспользованиеЖурналаРегистрации|GetEventLogUsing|УстановитьИспользованиеЖурналаРегистрации|SetEventLogUsing|ПредставлениеСобытияЖурналаРегистрации|EventLogEventPresentation|ВыгрузитьЖурналРегистрации|UnloadEventLog|ПолучитьЗначенияОтбораЖурналаРегистрации|GetEventLogFilterValues|УстановитьИспользованиеСобытияЖурналаРегистрации|SetEventLogEventUse|ПолучитьИспользованиеСобытияЖурналаРегистрации|GetEventLogEventUse|СкопироватьЖурналРегистрации|CopyEventLog|ОчиститьЖурналРегистрации|ClearEventLog
49
+ | ЗначениеВДанныеФормы|ValueToFormData|ДанныеФормыВЗначение|FormDataToValue|КопироватьДанныеФормы|CopyFormData|УстановитьСоответствиеОбъектаИФормы|SetObjectAndFormConformity|ПолучитьСоответствиеОбъектаИФормы|GetObjectAndFormConformity
50
+ | ПолучитьФункциональнуюОпцию|GetFunctionalOption|ПолучитьФункциональнуюОпциюИнтерфейса|GetInterfaceFunctionalOption|УстановитьПараметрыФункциональныхОпцийИнтерфейса|SetInterfaceFunctionalOptionParameters|ПолучитьПараметрыФункциональныхОпцийИнтерфейса|GetInterfaceFunctionalOptionParameters|ОбновитьИнтерфейс|RefreshInterface
51
+ | УстановитьРасширениеРаботыСКриптографией|InstallCryptoExtension|НачатьУстановкуРасширенияРаботыСКриптографией|BeginInstallCryptoExtension|ПодключитьРасширениеРаботыСКриптографией|AttachCryptoExtension|НачатьПодключениеРасширенияРаботыСКриптографией|BeginAttachingCryptoExtension
52
+ | УстановитьСоставСтандартногоИнтерфейсаOData|SetStandardODataInterfaceContent|ПолучитьСоставСтандартногоИнтерфейсаOData|GetStandardODataInterfaceContent
53
+ | Мин|Min|Макс|Max|ОписаниеОшибки|ErrorDescription|Вычислить|Eval|ИнформацияОбОшибке|ErrorInfo|Base64Значение|Base64Value|Base64Строка|Base64String|ЗаполнитьЗначенияСвойств|FillPropertyValues|ЗначениеЗаполнено|ValueIsFilled|ПолучитьПредставленияНавигационныхСсылок|GetURLsPresentations|НайтиОкноПоНавигационнойСсылке|FindWindowByURL|ПолучитьОкна|GetWindows|ПерейтиПоНавигационнойСсылке|GotoURL|ПолучитьНавигационнуюСсылку|GetURL|ПолучитьДопустимыеКодыЛокализации|GetAvailableLocaleCodes|ПолучитьНавигационнуюСсылкуИнформационнойБазы|GetInfoBaseURL|ПредставлениеКодаЛокализации|LocaleCodePresentation|ПолучитьДопустимыеЧасовыеПояса|GetAvailableTimeZones|ПредставлениеЧасовогоПояса|TimeZonePresentation|ТекущаяУниверсальнаяДата|CurrentUniversalDate|ТекущаяУниверсальнаяДатаВМиллисекундах|CurrentUniversalDateInMilliseconds|МестноеВремя|ToLocalTime|УниверсальноеВремя|ToUniversalTime|ЧасовойПояс|TimeZone|СмещениеЛетнегоВремени|DaylightTimeOffset|СмещениеСтандартногоВремени|StandardTimeOffset|КодироватьСтроку|EncodeString|РаскодироватьСтроку|DecodeString|Найти|Find
54
+ | ПередНачаломРаботыСистемы|BeforeStart|ПриНачалеРаботыСистемы|OnStart|ПередЗавершениемРаботыСистемы|BeforeExit|ПриЗавершенииРаботыСистемы|OnExit|ОбработкаВнешнегоСобытия|ExternEventProcessing|УстановкаПараметровСеанса|SessionParametersSetting|ПриИзмененииПараметровЭкрана|OnChangeDisplaySettings
55
+ | WSСсылки|WSReferences|БиблиотекаКартинок|PictureLib|БиблиотекаМакетовОформленияКомпоновкиДанных|DataCompositionAppearanceTemplateLib|БиблиотекаСтилей|StyleLib|БизнесПроцессы|BusinessProcesses|ВнешниеИсточникиДанных|ExternalDataSources|ВнешниеОбработки|ExternalDataProcessors|ВнешниеОтчеты|ExternalReports|Документы|Documents|ДоставляемыеУведомления|DeliverableNotifications|ЖурналыДокументов|DocumentJournals|Задачи|Tasks|ИспользованиеРабочейДаты|WorkingDateUse|ИсторияРаботыПользователя|UserWorkHistory|Константы|Constants|КритерииОтбора|FilterCriteria|Метаданные|Metadata|Обработки|DataProcessors|ОтправкаДоставляемыхУведомлений|DeliverableNotificationSend|Отчеты|Reports|ПараметрыСеанса|SessionParameters|Перечисления|Enums|ПланыВидовРасчета|ChartsOfCalculationTypes|ПланыВидовХарактеристик|ChartsOfCharacteristicTypes|ПланыОбмена|ExchangePlans|ПланыСчетов|ChartsOfAccounts|ПолнотекстовыйПоиск|FullTextSearch|ПользователиИнформационнойБазы|InfoBaseUsers|Последовательности|Sequences|РасширенияКонфигурации|ConfigurationExtensions|РегистрыБухгалтерии|AccountingRegisters|РегистрыНакопления|AccumulationRegisters|РегистрыРасчета|CalculationRegisters|РегистрыСведений|InformationRegisters|РегламентныеЗадания|ScheduledJobs|СериализаторXDTO|XDTOSerializer|Справочники|Catalogs|СредстваГеопозиционирования|LocationTools|СредстваКриптографии|CryptoToolsManager|СредстваМультимедиа|MultimediaTools|СредстваПочты|MailTools|СредстваТелефонии|TelephonyTools|ФабрикаXDTO|XDTOFactory|ФоновыеЗадания|BackgroundJobs|ХранилищаНастроек
56
+ | ГлавныйИнтерфейс|MainInterface|ГлавныйСтиль|MainStyle|ПараметрЗапуска|LaunchParameter|РабочаяДата|WorkingDate|SettingsStorages|ХранилищеВариантовОтчетов|ReportsVariantsStorage|ХранилищеНастроекДанныхФорм|FormDataSettingsStorage|ХранилищеОбщихНастроек|CommonSettingsStorage|ХранилищеПользовательскихНастроекДинамическихСписков|DynamicListsUserSettingsStorage|ХранилищеПользовательскихНастроекОтчетов|ReportsUserSettingsStorage|ХранилищеСистемныхНастроек|SystemSettingsStorage
57
+ | Если|If|ИначеЕсли|ElsIf|Иначе|Else|КонецЕсли|EndIf|Тогда|Then
58
+ | Неопределено|Undefined|Истина|True|Ложь|False|NULL
59
+ )\s*(?=\()/ix
60
+
61
+ state :root do
62
+ rule /\n/, Text
63
+ rule /[^\S\n]+/, Text
64
+ rule /\/\/.*$/, Comment::Single
65
+ rule /[\[\]:(),;]/, Punctuation
66
+ rule /(?<=[^\wа-яё]|^)\&.*$/, Keyword::Declaration
67
+ rule /[-+\/=<>*%=<>.?&]/, Operator
68
+ rule /(?<=[^\wа-яё]|^)\#.*$/, Keyword::Declaration
69
+ rule KEYWORDS, Keyword
70
+ rule BUILTINS, Name::Builtin
71
+ rule /[\wа-яё_][\wа-яё0-9_]*/i, Name::Variable
72
+
73
+ #literals
74
+ rule /\b((\h{8}-(\h{4}-){3}\h{12})|\d+\.?\d*)\b/, Literal::Number
75
+ rule /\'.*\'/, Literal::Date
76
+ rule /".*?("|$)/, Literal::String::Single
77
+ rule /(?<=[^\wа-яё]|^)\|((?!\"\").)*?(\"|$)/, Literal::String
78
+ end
79
+ end
80
+ end
81
+ end
@@ -8,7 +8,7 @@ module Rouge
8
8
  tag 'common_lisp'
9
9
  aliases 'cl', 'common-lisp', 'elisp', 'emacs-lisp'
10
10
 
11
- filenames '*.cl', '*.lisp', '*.el' # used for Elisp too
11
+ filenames '*.cl', '*.lisp', '*.asd', '*.el' # used for Elisp too
12
12
  mimetypes 'text/x-common-lisp'
13
13
 
14
14
  # 638 functions
@@ -153,7 +153,7 @@ module Rouge
153
153
  declaim defclass defconstant defgeneric define-compiler-macro
154
154
  define-condition define-method-combination define-modify-macro
155
155
  define-setf-expander define-symbol-macro defmacro defmethod
156
- defpackage defparameter defsetf defstruct deftype defun defvar
156
+ defpackage defparameter defsetf defstruct defsystem deftype defun defvar
157
157
  destructuring-bind do do* do-all-symbols do-external-symbols
158
158
  dolist do-symbols dotimes ecase etypecase formatter
159
159
  handler-bind handler-case ignore-errors incf in-package
@@ -16,7 +16,7 @@ module Rouge
16
16
 
17
17
  name = /[A-Z][_A-Z0-9]*/i
18
18
  kind_param = /(\d+|#{name})/
19
- exponent = /[ED][+-]\d+/
19
+ exponent = /[ED][+-]?\d+/i
20
20
 
21
21
  def self.keywords
22
22
  # Fortran allows to omit whitespace between certain keywords...
@@ -24,11 +24,17 @@ module Rouge
24
24
  # TODO: rhino, spidermonkey, etc
25
25
  end
26
26
 
27
+ state :multiline_comment do
28
+ rule %r([*]/), Comment::Multiline, :pop!
29
+ rule %r([^*/]+), Comment::Multiline
30
+ rule %r([*/]), Comment::Multiline
31
+ end
32
+
27
33
  state :comments_and_whitespace do
28
34
  rule /\s+/, Text
29
35
  rule /<!--/, Comment # really...?
30
36
  rule %r(//.*?$), Comment::Single
31
- rule %r(/\*.*?\*/)m, Comment::Multiline
37
+ rule %r(/[*]), Comment::Multiline, :multiline_comment
32
38
  end
33
39
 
34
40
  state :expr_start do
@@ -124,7 +130,11 @@ module Rouge
124
130
  )
125
131
  end
126
132
 
127
- id = /[$a-zA-Z_][a-zA-Z0-9_]*/
133
+ def self.id_regex
134
+ /[$a-z_][a-z0-9_]*/io
135
+ end
136
+
137
+ id = self.id_regex
128
138
 
129
139
  state :root do
130
140
  rule /\A\s*#!.*?\n/m, Comment::Preproc, :statement
@@ -173,8 +183,8 @@ module Rouge
173
183
  rule /[0-9][0-9]*\.[0-9]+([eE][0-9]+)?[fd]?/, Num::Float
174
184
  rule /0x[0-9a-fA-F]+/, Num::Hex
175
185
  rule /[0-9]+/, Num::Integer
176
- rule /"(\\\\|\\"|[^"])*"/, Str::Double
177
- rule /'(\\\\|\\'|[^'])*'/, Str::Single
186
+ rule /"(\\[\\"]|[^"])*"/, Str::Double
187
+ rule /'(\\[\\']|[^'])*'/, Str::Single
178
188
  rule /:/, Punctuation
179
189
  end
180
190
 
@@ -254,54 +264,19 @@ module Rouge
254
264
  return 0.8 if text =~ /\A\s*{/m && text.lexes_cleanly?(self)
255
265
  end
256
266
 
257
- string = /"(\\.|[^"])*"/
258
-
259
267
  state :root do
260
- mixin :whitespace
268
+ rule /\s+/m, Text::Whitespace
269
+ rule /"/, Str::Double, :string
261
270
  rule /(?:true|false|null)\b/, Keyword::Constant
262
- rule /{/, Punctuation, :object_key_initial
263
- rule /\[/, Punctuation, :array
271
+ rule /[{},:\[\]]/, Punctuation
264
272
  rule /-?(?:0|[1-9]\d*)\.\d+(?:e[+-]\d+)?/i, Num::Float
265
273
  rule /-?(?:0|[1-9]\d*)(?:e[+-]\d+)?/i, Num::Integer
266
- mixin :has_string
267
- end
268
-
269
- state :whitespace do
270
- rule /\s+/m, Text::Whitespace
271
- end
272
-
273
- state :has_string do
274
- rule string, Str::Double
275
- end
276
-
277
- # in object_key_initial it's allowed to immediately close the object again
278
- state :object_key_initial do
279
- mixin :whitespace
280
- rule string do
281
- token Name::Tag
282
- goto :object_key
283
- end
284
- rule /}/, Punctuation, :pop!
285
- end
286
-
287
- # in object_key at least one more name/value pair is required
288
- state :object_key do
289
- mixin :whitespace
290
- rule string, Name::Tag
291
- rule /:/, Punctuation, :object_val
292
- rule /}/, Error, :pop!
293
274
  end
294
275
 
295
- state :object_val do
296
- rule /,/, Punctuation, :pop!
297
- rule(/}/) { token Punctuation; pop!(2) }
298
- mixin :root
299
- end
300
-
301
- state :array do
302
- rule /\]/, Punctuation, :pop!
303
- rule /,/, Punctuation
304
- mixin :root
276
+ state :string do
277
+ rule /[^\\"]+/, Str::Double
278
+ rule /\\./, Str::Escape
279
+ rule /"/, Str::Double, :pop!
305
280
  end
306
281
  end
307
282
 
@@ -310,27 +285,9 @@ module Rouge
310
285
  tag 'json-doc'
311
286
 
312
287
  prepend :root do
313
- mixin :comments
314
- rule /(\.\.\.)/, Comment::Single
315
- end
316
-
317
- prepend :object_key_initial do
318
- mixin :comments
319
- rule /(\.\.\.)/, Comment::Single
320
- end
321
-
322
- prepend :object_key do
323
- mixin :comments
324
- rule /(\.\.\.)/ do
325
- token Comment::Single
326
- goto :object_key_initial
327
- end
328
- end
329
-
330
- state :comments do
331
288
  rule %r(//.*?$), Comment::Single
289
+ rule /(\.\.\.)/, Comment::Single
332
290
  end
333
291
  end
334
-
335
292
  end
336
293
  end