rouge 4.1.1 → 4.2.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/rouge/demos/codeowners +6 -0
- data/lib/rouge/demos/svelte +29 -0
- data/lib/rouge/lexers/bpf.rb +10 -10
- data/lib/rouge/lexers/codeowners.rb +30 -0
- data/lib/rouge/lexers/dart.rb +1 -1
- data/lib/rouge/lexers/elixir.rb +4 -0
- data/lib/rouge/lexers/groovy.rb +3 -3
- data/lib/rouge/lexers/hcl.rb +3 -2
- data/lib/rouge/lexers/irb.rb +7 -1
- data/lib/rouge/lexers/python.rb +3 -5
- data/lib/rouge/lexers/svelte.rb +91 -0
- data/lib/rouge/lexers/swift.rb +32 -16
- data/lib/rouge/lexers/terraform.rb +0 -8
- data/lib/rouge/lexers/typescript.rb +2 -2
- data/lib/rouge/lexers/wollok.rb +6 -2
- data/lib/rouge/lexers/xojo.rb +5 -5
- data/lib/rouge/lexers/xquery.rb +1 -1
- data/lib/rouge/version.rb +1 -1
- metadata +7 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a3281f8cbea5fa288016ada176d8fd748d2426af2f6a02a49c4f519ae4a385c9
|
4
|
+
data.tar.gz: a0e5aae51677fa27c6c448d3d617b0f4748934ad267dc0be49b705e2fc89f93b
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 3fe33d5d2a60be45a82839227de784d92440a99c77e700d55cba412f1d8a2cb5b516013bd92f7db62f88a25fa6aee8bdd65415cd9c2203c1e4a1538549d7a1a7
|
7
|
+
data.tar.gz: 1b4598ed31db53da50a79e5aeaff8eca539c91dd7102b07a7e1106c4bd050071e689fb21a4d435b2e8d465cb91ae8a9275a91d777509961a6c95739e1ecc8d76
|
@@ -0,0 +1,29 @@
|
|
1
|
+
<!-- This file is made up from several examples on https://svelte.dev/examples and is not expected to function. -->
|
2
|
+
<script lang="ts">
|
3
|
+
import Image from './Image.svelte';
|
4
|
+
|
5
|
+
let src: string = '/tutorial/image.gif';
|
6
|
+
let count: number = 1;
|
7
|
+
$: doubled = count * 2; // the `$:` is special in svelte
|
8
|
+
</script>
|
9
|
+
|
10
|
+
<Image {src} bind:alt="{name.capitalize()} dancing" user={name.toUpperCase(false, 42, {key: 'value'})}
|
11
|
+
tooltip="I'm helping" false text=asdf on:message={handleMessage} />
|
12
|
+
|
13
|
+
{#await loadSrc(src)}
|
14
|
+
loading...
|
15
|
+
{:then data}
|
16
|
+
{#each cats as { name }, i}
|
17
|
+
<li>{name}</li>
|
18
|
+
{/each}
|
19
|
+
|
20
|
+
<!-- Keyed Each Block -->
|
21
|
+
{#each cats as cat (cat.id)}
|
22
|
+
<li>{cat.name}</li>
|
23
|
+
{/each}
|
24
|
+
{:catch err}
|
25
|
+
{@debug err}
|
26
|
+
{#await solveErr(err, {x: 'asdf'}) then reason}{@html reason}{/await}
|
27
|
+
{/await}
|
28
|
+
|
29
|
+
<style>p {font-family: 'Comic Sans MS', cursive;}</style>
|
data/lib/rouge/lexers/bpf.rb
CHANGED
@@ -9,11 +9,11 @@ module Rouge
|
|
9
9
|
tag 'bpf'
|
10
10
|
|
11
11
|
TYPE_KEYWORDS = %w(
|
12
|
-
u8 u16 u32 u64 ll
|
12
|
+
u8 u16 u32 u64 s8 s16 s32 s64 ll
|
13
13
|
).join('|')
|
14
14
|
|
15
15
|
MISC_KEYWORDS = %w(
|
16
|
-
be16 be32 be64 exit lock map
|
16
|
+
be16 be32 be64 le16 le32 le64 bswap16 bswap32 bswap64 exit lock map
|
17
17
|
).join('|')
|
18
18
|
|
19
19
|
state :root do
|
@@ -32,21 +32,21 @@ module Rouge
|
|
32
32
|
rule %r/(call)(\s+)(\d+)/i do
|
33
33
|
groups Keyword, Text::Whitespace, Literal::Number::Integer
|
34
34
|
end
|
35
|
-
rule %r/(call)(\s+)(\w+)(#)(\d+)
|
35
|
+
rule %r/(call)(\s+)(\w+)(?:(#)(\d+))?/i do
|
36
36
|
groups Keyword, Text::Whitespace, Name::Builtin, Punctuation, Literal::Number::Integer
|
37
37
|
end
|
38
38
|
|
39
39
|
# Unconditional jumps
|
40
|
-
rule %r/(
|
41
|
-
groups Keyword, Text::Whitespace, Literal::Number::Integer, Text::Whitespace, Name::Label
|
40
|
+
rule %r/(gotol?)(\s*)([-+]0x\w+)?([-+]\d+)?(\s*)(<?\w+>?)/i do
|
41
|
+
groups Keyword, Text::Whitespace, Literal::Number::Hex, Literal::Number::Integer, Text::Whitespace, Name::Label
|
42
42
|
end
|
43
43
|
|
44
44
|
# Conditional jumps
|
45
|
-
rule %r/(if)(\s+)([rw]\d+)(\s*)([s!=<>]+)(\s*)(0x\h+|[-]?\d+)(\s*)(
|
46
|
-
groups Keyword, Text::Whitespace, Name, Text::Whitespace, Operator, Text::Whitespace, Literal::Number, Text::Whitespace, Keyword, Text::Whitespace, Literal::Number::Integer, Text::Whitespace, Name::Label
|
45
|
+
rule %r/(if)(\s+)([rw]\d+)(\s*)([s!=<>]+)(\s*)(0x\h+|[-]?\d+)(\s*)(gotol?)(\s*)([-+]0x\w+)?([-+]\d+)?(\s*)(<?\w+>?)/i do
|
46
|
+
groups Keyword, Text::Whitespace, Name, Text::Whitespace, Operator, Text::Whitespace, Literal::Number, Text::Whitespace, Keyword, Text::Whitespace, Literal::Number::Hex, Literal::Number::Integer, Text::Whitespace, Name::Label
|
47
47
|
end
|
48
|
-
rule %r/(if)(\s+)([rw]\d+)(\s*)([s!=<>]+)(\s*)([rw]\d+)(\s*)(
|
49
|
-
groups Keyword, Text::Whitespace, Name, Text::Whitespace, Operator, Text::Whitespace, Name, Text::Whitespace, Keyword, Text::Whitespace, Literal::Number::Integer, Text::Whitespace, Name::Label
|
48
|
+
rule %r/(if)(\s+)([rw]\d+)(\s*)([s!=<>]+)(\s*)([rw]\d+)(\s*)(gotol?)(\s*)([-+]0x\w+)?([-+]\d+)?(\s*)(<?\w+>?)/i do
|
49
|
+
groups Keyword, Text::Whitespace, Name, Text::Whitespace, Operator, Text::Whitespace, Name, Text::Whitespace, Keyword, Text::Whitespace, Literal::Number::Hex, Literal::Number::Integer, Text::Whitespace, Name::Label
|
50
50
|
end
|
51
51
|
|
52
52
|
# Dereferences
|
@@ -70,7 +70,7 @@ module Rouge
|
|
70
70
|
rule %r/#{MISC_KEYWORDS}/i, Keyword
|
71
71
|
|
72
72
|
# Literals and global objects (maps) refered by name
|
73
|
-
rule %r/(0x\h+|[-]?\d+)(\s*)(ll)?/i do
|
73
|
+
rule %r/([-]?0x\h+|[-]?\d+)(\s*)(ll)?/i do
|
74
74
|
groups Literal::Number, Text::Whitespace, Keyword::Type
|
75
75
|
end
|
76
76
|
rule %r/(\w+)(\s*)(ll)/i do
|
@@ -0,0 +1,30 @@
|
|
1
|
+
# -*- coding: utf-8 -*- #
|
2
|
+
# frozen_string_literal: true
|
3
|
+
|
4
|
+
module Rouge
|
5
|
+
module Lexers
|
6
|
+
class Codeowners < RegexLexer
|
7
|
+
title 'CODEOWNERS'
|
8
|
+
desc 'Code Owners syntax (https://docs.gitlab.com/ee/user/project/codeowners/reference.html)'
|
9
|
+
tag 'codeowners'
|
10
|
+
filenames 'CODEOWNERS'
|
11
|
+
|
12
|
+
state :root do
|
13
|
+
rule %r/[ \t\r\n]+/, Text::Whitespace
|
14
|
+
rule %r/^\s*#.*$/, Comment::Single
|
15
|
+
|
16
|
+
rule %r(
|
17
|
+
(\^?\[(?!\d+\])[^\]]+\])
|
18
|
+
(\[\d+\])?
|
19
|
+
)x do
|
20
|
+
groups Name::Namespace, Literal::Number
|
21
|
+
end
|
22
|
+
|
23
|
+
rule %r/\S*@\S+/, Name::Function
|
24
|
+
|
25
|
+
rule %r/[\p{Word}\.\/\-\*]+/, Name
|
26
|
+
rule %r/.*\\[\#\s]/, Name
|
27
|
+
end
|
28
|
+
end
|
29
|
+
end
|
30
|
+
end
|
data/lib/rouge/lexers/dart.rb
CHANGED
@@ -18,7 +18,7 @@ module Rouge
|
|
18
18
|
|
19
19
|
declarations = %w(
|
20
20
|
abstract base async dynamic const covariant external extends factory final get implements
|
21
|
-
|
21
|
+
interface late native on operator required sealed set static sync typedef var
|
22
22
|
)
|
23
23
|
|
24
24
|
types = %w(bool Comparable double Dynamic enum Function int List Map Never Null num Object Pattern Record Set String Symbol Type Uri void)
|
data/lib/rouge/lexers/elixir.rb
CHANGED
data/lib/rouge/lexers/groovy.rb
CHANGED
@@ -23,7 +23,7 @@ module Rouge
|
|
23
23
|
|
24
24
|
def self.declarations
|
25
25
|
@declarations ||= Set.new %w(
|
26
|
-
abstract const
|
26
|
+
abstract const extends final implements native private
|
27
27
|
protected public static strictfp super synchronized throws
|
28
28
|
transient volatile
|
29
29
|
)
|
@@ -31,7 +31,7 @@ module Rouge
|
|
31
31
|
|
32
32
|
def self.types
|
33
33
|
@types ||= Set.new %w(
|
34
|
-
def boolean byte char double float int long short void
|
34
|
+
def var boolean byte char double float int long short void
|
35
35
|
)
|
36
36
|
end
|
37
37
|
|
@@ -56,7 +56,7 @@ module Rouge
|
|
56
56
|
rule %r(//.*?$), Comment::Single
|
57
57
|
rule %r(/[*].*?[*]/)m, Comment::Multiline
|
58
58
|
rule %r/@\w[\w.]*/, Name::Decorator
|
59
|
-
rule %r/(class|interface|trait)\b/, Keyword::Declaration, :class
|
59
|
+
rule %r/(class|interface|trait|enum|record)\b/, Keyword::Declaration, :class
|
60
60
|
rule %r/package\b/, Keyword::Namespace, :import
|
61
61
|
rule %r/import\b/, Keyword::Namespace, :import
|
62
62
|
|
data/lib/rouge/lexers/hcl.rb
CHANGED
@@ -56,7 +56,7 @@ module Rouge
|
|
56
56
|
@builtins ||= %w()
|
57
57
|
end
|
58
58
|
|
59
|
-
id = /[$a-z_][a-z0-9_]*/io
|
59
|
+
id = /[$a-z_\-][a-z0-9_\-]*/io
|
60
60
|
|
61
61
|
state :root do
|
62
62
|
mixin :comments_and_whitespace
|
@@ -114,6 +114,7 @@ module Rouge
|
|
114
114
|
state :hash do
|
115
115
|
mixin :comments_and_whitespace
|
116
116
|
|
117
|
+
rule %r/[.,()\\\/*]/, Punctuation
|
117
118
|
rule %r/\=/, Punctuation
|
118
119
|
rule %r/\}/, Punctuation, :pop!
|
119
120
|
|
@@ -123,7 +124,7 @@ module Rouge
|
|
123
124
|
state :array do
|
124
125
|
mixin :comments_and_whitespace
|
125
126
|
|
126
|
-
rule %r
|
127
|
+
rule %r/[.,()\\\/*]/, Punctuation
|
127
128
|
rule %r/\]/, Punctuation, :pop!
|
128
129
|
|
129
130
|
mixin :root
|
data/lib/rouge/lexers/irb.rb
CHANGED
data/lib/rouge/lexers/python.rb
CHANGED
@@ -8,8 +8,8 @@ module Rouge
|
|
8
8
|
desc "The Python programming language (python.org)"
|
9
9
|
tag 'python'
|
10
10
|
aliases 'py'
|
11
|
-
filenames '*.py', '*.pyw', '*.sc', 'SConstruct', 'SConscript',
|
12
|
-
'*.bzl', 'BUCK', 'BUILD', 'BUILD.bazel', 'WORKSPACE'
|
11
|
+
filenames '*.py', '*.pyi', '*.pyw', '*.sc', 'SConstruct', 'SConscript',
|
12
|
+
'*.tac', '*.bzl', 'BUCK', 'BUILD', 'BUILD.bazel', 'WORKSPACE'
|
13
13
|
mimetypes 'text/x-python', 'application/x-python'
|
14
14
|
|
15
15
|
def self.detect?(text)
|
@@ -90,8 +90,6 @@ module Rouge
|
|
90
90
|
|
91
91
|
rule %r/@#{dotted_identifier}/i, Name::Decorator
|
92
92
|
|
93
|
-
rule %r/(>>>|\.\.\.)\B/, Generic::Prompt
|
94
|
-
|
95
93
|
rule %r/(in|is|and|or|not)\b/, Operator::Word
|
96
94
|
rule %r/(<<|>>|\/\/|\*\*)=?/, Operator
|
97
95
|
rule %r/[-~+\/*%=<>&^|@]=?|!=/, Operator
|
@@ -182,7 +180,7 @@ module Rouge
|
|
182
180
|
end
|
183
181
|
|
184
182
|
state :generic_string do
|
185
|
-
rule %r
|
183
|
+
rule %r/^\s*(>>>|\.\.\.)\B/, Generic::Prompt, :doctest
|
186
184
|
rule %r/[^'"\\{]+?/, Str
|
187
185
|
rule %r/{{/, Str
|
188
186
|
|
@@ -0,0 +1,91 @@
|
|
1
|
+
# -*- coding: utf-8 -*- #
|
2
|
+
# frozen_string_literal: true
|
3
|
+
|
4
|
+
module Rouge
|
5
|
+
module Lexers
|
6
|
+
load_lexer 'html.rb'
|
7
|
+
|
8
|
+
class Svelte < HTML
|
9
|
+
desc 'Svelte single-file components (https://svelte.dev/)'
|
10
|
+
tag 'svelte'
|
11
|
+
filenames '*.svelte'
|
12
|
+
mimetypes 'text/x-svelte', 'application/x-svelte'
|
13
|
+
|
14
|
+
def initialize(*)
|
15
|
+
super
|
16
|
+
# todo add support for typescript script blocks
|
17
|
+
@js = Javascript.new(options)
|
18
|
+
end
|
19
|
+
|
20
|
+
# Shorthand syntax for passing attributes - ex, `{src}` instead of `src={src}`
|
21
|
+
prepend :tag do
|
22
|
+
rule %r/(\{)\s*([a-zA-Z0-9_]+)\s*(})/m do
|
23
|
+
groups Str::Interpol, Name::Variable, Str::Interpol
|
24
|
+
pop!
|
25
|
+
end
|
26
|
+
end
|
27
|
+
|
28
|
+
prepend :attr do
|
29
|
+
# Duplicate template_start mixin here with a pop!
|
30
|
+
# Because otherwise we'll never exit the attr state
|
31
|
+
rule %r/\{/ do
|
32
|
+
token Str::Interpol
|
33
|
+
pop!
|
34
|
+
push :template
|
35
|
+
end
|
36
|
+
end
|
37
|
+
|
38
|
+
# handle templates within attribute single/double quotes
|
39
|
+
prepend :dq do
|
40
|
+
mixin :template_start
|
41
|
+
end
|
42
|
+
|
43
|
+
prepend :sq do
|
44
|
+
mixin :template_start
|
45
|
+
end
|
46
|
+
|
47
|
+
prepend :root do
|
48
|
+
# detect curly braces within HTML text (outside of tags/attributes)
|
49
|
+
rule %r/([^<&{]*)(\{)(\s*)/ do
|
50
|
+
groups Text, Str::Interpol, Text
|
51
|
+
push :template
|
52
|
+
end
|
53
|
+
end
|
54
|
+
|
55
|
+
state :template_start do
|
56
|
+
# open template
|
57
|
+
rule %r/\s*\{\s*/, Str::Interpol, :template
|
58
|
+
end
|
59
|
+
|
60
|
+
state :template do
|
61
|
+
# template end
|
62
|
+
rule %r/}/, Str::Interpol, :pop!
|
63
|
+
|
64
|
+
# Allow JS lexer to handle matched curly braces within template
|
65
|
+
rule(/(?<=^|[^\\])\{.*?(?<=^|[^\\])\}/) do
|
66
|
+
delegate @js
|
67
|
+
end
|
68
|
+
|
69
|
+
# keywords
|
70
|
+
rule %r/@(debug|html)\b/, Keyword
|
71
|
+
rule %r/(#await)(.*)(then|catch)(\s+)(\w+)/ do |m|
|
72
|
+
token Keyword, m[1]
|
73
|
+
delegate @js, m[2]
|
74
|
+
token Keyword, m[3]
|
75
|
+
token Text, m[4]
|
76
|
+
delegate @js, m[5]
|
77
|
+
end
|
78
|
+
rule %r/([#\/])(await|each|if|key)\b/, Keyword
|
79
|
+
rule %r/(:else)(\s+)(if)?\b/ do
|
80
|
+
groups Keyword, Text, Keyword
|
81
|
+
end
|
82
|
+
rule %r/:?(catch|then)\b/, Keyword
|
83
|
+
|
84
|
+
# allow JS parser to handle anything that's not a curly brace
|
85
|
+
rule %r/[^{}]+/ do
|
86
|
+
delegate @js
|
87
|
+
end
|
88
|
+
end
|
89
|
+
end
|
90
|
+
end
|
91
|
+
end
|
data/lib/rouge/lexers/swift.rb
CHANGED
@@ -15,28 +15,29 @@ module Rouge
|
|
15
15
|
id = /#{id_head}#{id_rest}*/
|
16
16
|
|
17
17
|
keywords = Set.new %w(
|
18
|
-
await break case continue default do else fallthrough if in for return switch
|
18
|
+
autoreleasepool await break case catch consume continue default defer discard do each else fallthrough guard if in for repeat return switch throw try where while
|
19
19
|
|
20
|
-
as dynamicType is new super self Self Type
|
20
|
+
as dynamicType is new super self Self Type
|
21
21
|
|
22
|
-
associativity async didSet get infix inout isolated mutating none nonmutating operator override postfix precedence prefix set unowned weak willSet
|
23
|
-
|
24
|
-
#available #colorLiteral #column #else #elseif #endif #error #file #fileLiteral #function #if #imageLiteral #line #selector #sourceLocation #warning
|
22
|
+
associativity async didSet get infix inout isolated left mutating none nonmutating operator override postfix precedence precedencegroup prefix rethrows right set throws unowned weak willSet
|
25
23
|
)
|
26
24
|
|
27
25
|
declarations = Set.new %w(
|
28
|
-
actor class deinit enum convenience extension final func import init internal lazy let nonisolated optional private protocol public required static struct subscript typealias var
|
26
|
+
actor any associatedtype borrowing class consuming deinit distributed dynamic enum convenience extension fileprivate final func import indirect init internal lazy let macro nonisolated open optional package private protocol public required some static struct subscript typealias var
|
29
27
|
)
|
30
28
|
|
31
29
|
constants = Set.new %w(
|
32
30
|
true false nil
|
33
31
|
)
|
34
32
|
|
35
|
-
start
|
33
|
+
start do
|
34
|
+
push :bol
|
35
|
+
@re_delim = "" # multi-line regex delimiter
|
36
|
+
end
|
36
37
|
|
37
38
|
# beginning of line
|
38
39
|
state :bol do
|
39
|
-
rule %r
|
40
|
+
rule %r/#(?![#"\/]).*/, Comment::Preproc
|
40
41
|
|
41
42
|
mixin :inline_whitespace
|
42
43
|
|
@@ -69,8 +70,11 @@ module Rouge
|
|
69
70
|
mixin :whitespace
|
70
71
|
|
71
72
|
rule %r/\$(([1-9]\d*)?\d)/, Name::Variable
|
73
|
+
rule %r/\$#{id}/, Name
|
74
|
+
rule %r/~Copyable\b/, Keyword::Type
|
72
75
|
|
73
76
|
rule %r{[()\[\]{}:;,?\\]}, Punctuation
|
77
|
+
rule %r{(#*)/(?!\s).*(?<![\s\\])/\1}, Str::Regex
|
74
78
|
rule %r([-/=+*%<>!&|^.~]+), Operator
|
75
79
|
rule %r/@?"/, Str, :dq
|
76
80
|
rule %r/'(\\.|.)'/, Str::Char
|
@@ -82,6 +86,7 @@ module Rouge
|
|
82
86
|
rule %r{[\d]+(?:_\d+)*}, Num::Integer
|
83
87
|
|
84
88
|
rule %r/@#{id}/, Keyword::Declaration
|
89
|
+
rule %r/##{id}/, Keyword
|
85
90
|
|
86
91
|
rule %r/(private|internal)(\([ ]*)(\w+)([ ]*\))/ do |m|
|
87
92
|
if m[3] == 'set'
|
@@ -99,14 +104,6 @@ module Rouge
|
|
99
104
|
end
|
100
105
|
end
|
101
106
|
|
102
|
-
rule %r/#available\([^)]+\)/, Keyword::Declaration
|
103
|
-
|
104
|
-
rule %r/(#(?:selector|keyPath)\()([^)]+?(?:[(].*?[)])?)(\))/ do
|
105
|
-
groups Keyword::Declaration, Name::Function, Keyword::Declaration
|
106
|
-
end
|
107
|
-
|
108
|
-
rule %r/#(line|file|column|function|dsohandle)/, Keyword::Declaration
|
109
|
-
|
110
107
|
rule %r/(let|var)\b(\s*)(#{id})/ do
|
111
108
|
groups Keyword, Text, Name::Variable
|
112
109
|
end
|
@@ -148,6 +145,12 @@ module Rouge
|
|
148
145
|
rule %r/(`)(#{id})(`)/ do
|
149
146
|
groups Punctuation, Name::Variable, Punctuation
|
150
147
|
end
|
148
|
+
|
149
|
+
rule %r{(#+)/\n} do |m|
|
150
|
+
@re_delim = m[1]
|
151
|
+
token Str::Regex
|
152
|
+
push :re_multi
|
153
|
+
end
|
151
154
|
end
|
152
155
|
|
153
156
|
state :tuple do
|
@@ -181,6 +184,19 @@ module Rouge
|
|
181
184
|
rule %r/[)]/, Punctuation, :pop!
|
182
185
|
mixin :root
|
183
186
|
end
|
187
|
+
|
188
|
+
state :re_multi do
|
189
|
+
rule %r{^\s*/#+} do |m|
|
190
|
+
token Str::Regex
|
191
|
+
if m[0].end_with?("/#{@re_delim}")
|
192
|
+
@re_delim = ""
|
193
|
+
pop!
|
194
|
+
end
|
195
|
+
end
|
196
|
+
|
197
|
+
rule %r/#.*/, Comment::Single
|
198
|
+
rule %r/./m, Str::Regex
|
199
|
+
end
|
184
200
|
end
|
185
201
|
end
|
186
202
|
end
|
@@ -10,12 +10,12 @@ module Rouge
|
|
10
10
|
extend TypescriptCommon
|
11
11
|
|
12
12
|
title "TypeScript"
|
13
|
-
desc "TypeScript, a superset of JavaScript"
|
13
|
+
desc "TypeScript, a superset of JavaScript (https://www.typescriptlang.org/)"
|
14
14
|
|
15
15
|
tag 'typescript'
|
16
16
|
aliases 'ts'
|
17
17
|
|
18
|
-
filenames '*.ts', '*.d.ts'
|
18
|
+
filenames '*.ts', '*.d.ts', '*.cts', '*.mts'
|
19
19
|
|
20
20
|
mimetypes 'text/typescript'
|
21
21
|
end
|
data/lib/rouge/lexers/wollok.rb
CHANGED
@@ -14,8 +14,6 @@ module Rouge
|
|
14
14
|
entity_name = /[a-zA-Z][a-zA-Z0-9]*/
|
15
15
|
variable_naming = /_?#{entity_name}/
|
16
16
|
|
17
|
-
entities = []
|
18
|
-
|
19
17
|
state :whitespaces_and_comments do
|
20
18
|
rule %r/\s+/m, Text::Whitespace
|
21
19
|
rule %r(//.*$), Comment::Single
|
@@ -98,6 +96,12 @@ module Rouge
|
|
98
96
|
rule %r/\(|\)|=/, Text
|
99
97
|
rule %r/,/, Punctuation
|
100
98
|
end
|
99
|
+
|
100
|
+
private
|
101
|
+
|
102
|
+
def entities
|
103
|
+
@entities ||= []
|
104
|
+
end
|
101
105
|
end
|
102
106
|
end
|
103
107
|
end
|
data/lib/rouge/lexers/xojo.rb
CHANGED
@@ -12,20 +12,20 @@ module Rouge
|
|
12
12
|
|
13
13
|
keywords = %w(
|
14
14
|
addhandler aggregates array asc assigns attributes begin break
|
15
|
-
byref byval call case catch class const continue
|
15
|
+
byref byval call case catch class const continue color ctype declare
|
16
16
|
delegate dim do downto each else elseif end enum event exception
|
17
17
|
exit extends false finally for function global goto if
|
18
18
|
implements inherits interface lib loop mod module
|
19
19
|
new next nil object of optional paramarray
|
20
20
|
private property protected public raise raiseevent rect redim
|
21
21
|
removehandler return select shared soft static step sub super
|
22
|
-
then to true try until using
|
22
|
+
then to true try until using var wend while
|
23
23
|
)
|
24
24
|
|
25
25
|
keywords_type = %w(
|
26
|
-
boolean cfstringref cgfloat cstring
|
27
|
-
int32 int64 integer ostype pstring ptr short single
|
28
|
-
|
26
|
+
boolean byte cfstringref cgfloat cstring currency date datetime double int8 int16
|
27
|
+
int32 int64 integer ostype pair pstring ptr short single
|
28
|
+
string structure variant uinteger uint8 uint16 uint32 uint64
|
29
29
|
ushort windowptr wstring
|
30
30
|
)
|
31
31
|
|
data/lib/rouge/lexers/xquery.rb
CHANGED
data/lib/rouge/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rouge
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 4.
|
4
|
+
version: 4.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jeanine Adkisson
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2023-
|
11
|
+
date: 2023-10-25 00:00:00.000000000 Z
|
12
12
|
dependencies: []
|
13
13
|
description: Rouge aims to a be a simple, easy-to-extend drop-in replacement for pygments.
|
14
14
|
email:
|
@@ -49,6 +49,7 @@ files:
|
|
49
49
|
- lib/rouge/demos/clojure
|
50
50
|
- lib/rouge/demos/cmake
|
51
51
|
- lib/rouge/demos/cmhg
|
52
|
+
- lib/rouge/demos/codeowners
|
52
53
|
- lib/rouge/demos/coffeescript
|
53
54
|
- lib/rouge/demos/common_lisp
|
54
55
|
- lib/rouge/demos/conf
|
@@ -210,6 +211,7 @@ files:
|
|
210
211
|
- lib/rouge/demos/stan
|
211
212
|
- lib/rouge/demos/stata
|
212
213
|
- lib/rouge/demos/supercollider
|
214
|
+
- lib/rouge/demos/svelte
|
213
215
|
- lib/rouge/demos/swift
|
214
216
|
- lib/rouge/demos/systemd
|
215
217
|
- lib/rouge/demos/syzlang
|
@@ -290,6 +292,7 @@ files:
|
|
290
292
|
- lib/rouge/lexers/clojure.rb
|
291
293
|
- lib/rouge/lexers/cmake.rb
|
292
294
|
- lib/rouge/lexers/cmhg.rb
|
295
|
+
- lib/rouge/lexers/codeowners.rb
|
293
296
|
- lib/rouge/lexers/coffeescript.rb
|
294
297
|
- lib/rouge/lexers/common_lisp.rb
|
295
298
|
- lib/rouge/lexers/conf.rb
|
@@ -463,6 +466,7 @@ files:
|
|
463
466
|
- lib/rouge/lexers/stan.rb
|
464
467
|
- lib/rouge/lexers/stata.rb
|
465
468
|
- lib/rouge/lexers/supercollider.rb
|
469
|
+
- lib/rouge/lexers/svelte.rb
|
466
470
|
- lib/rouge/lexers/swift.rb
|
467
471
|
- lib/rouge/lexers/systemd.rb
|
468
472
|
- lib/rouge/lexers/syzlang.rb
|
@@ -543,7 +547,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
543
547
|
- !ruby/object:Gem::Version
|
544
548
|
version: '0'
|
545
549
|
requirements: []
|
546
|
-
rubygems_version: 3.4.
|
550
|
+
rubygems_version: 3.4.10
|
547
551
|
signing_key:
|
548
552
|
specification_version: 4
|
549
553
|
summary: A pure-ruby colorizer based on pygments
|