rouge 2.0.5 → 2.0.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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