rubybuntu-gedit 11.09.30 → 11.10.18
Sign up to get free protection for your applications and to get access to all the features.
- data/README.rdoc +4 -0
- data/bin/rubybuntu-gedit +20 -16
- data/bin/rubybuntu-gedit~ +148 -0
- data/data/language-specs/ruby.lang +55 -49
- data/data/language-specs/ruby.lang-extras/brackets.rb +15 -3
- data/data/language-specs/ruby.lang-extras/brackets.rb~ +72 -0
- data/data/language-specs/ruby.lang~ +1449 -0
- data/data/styles/rubybuntu1.xml +0 -7
- data/data/styles/rubybuntu2.xml +120 -0
- data/rubybuntu-gedit.gemspec +1 -1
- metadata +10 -5
data/README.rdoc
CHANGED
@@ -18,6 +18,10 @@ Either checkout the sub-repositories (in the data directory) and install each on
|
|
18
18
|
|
19
19
|
gem install rubybuntu-gedit
|
20
20
|
rubybuntu-gedit install
|
21
|
+
|
22
|
+
For gedit 3, replace the last line with:
|
23
|
+
|
24
|
+
rubybuntu-gedit install -3
|
21
25
|
|
22
26
|
Want to tweak parts of the source to your needs? Try this one in the project dir:
|
23
27
|
|
data/bin/rubybuntu-gedit
CHANGED
@@ -25,9 +25,11 @@ if ARGV.shift != 'install'
|
|
25
25
|
end
|
26
26
|
|
27
27
|
@sudo = false # auto sudo
|
28
|
+
@gedit = 3
|
28
29
|
|
29
|
-
if ARGV.empty?
|
30
|
+
if ARGV.reject{|e| e[0] == '-' }.empty?
|
30
31
|
@todo = [:specs, :mime, :styles, :snippets]
|
32
|
+
ARGV.clear
|
31
33
|
else
|
32
34
|
@todo = []
|
33
35
|
while arg = ARGV.shift
|
@@ -42,6 +44,8 @@ else
|
|
42
44
|
@todo << :styles
|
43
45
|
when /snippets/
|
44
46
|
@todo << :snippets
|
47
|
+
when "-3"
|
48
|
+
@gedit = 3
|
45
49
|
end
|
46
50
|
end
|
47
51
|
end
|
@@ -67,19 +71,19 @@ end
|
|
67
71
|
# language specs
|
68
72
|
def specs
|
69
73
|
puts Paint["\nLet's start with copying the language specs\n", :underline]
|
70
|
-
print "Q] Do you want to install the languages specs as sudo [/usr/share/gtksourceview
|
71
|
-
" or in your home directory [~/.local/share/gtksourceview
|
74
|
+
print "Q] Do you want to install the languages specs as sudo [/usr/share/gtksourceview-#@gedit.0/language-specs]\n" \
|
75
|
+
" or in your home directory [~/.local/share/gtksourceview-#@gedit.0/language-specs]? [Sh] "
|
72
76
|
if @sudo || gets.chop =~ /^s?$/i
|
73
|
-
action "sudo cp #@data/language-specs/*.lang /usr/share/gtksourceview
|
77
|
+
action "sudo cp #@data/language-specs/*.lang /usr/share/gtksourceview-#@gedit.0/language-specs"
|
74
78
|
else
|
75
|
-
action "mkdir -p ~/.local/share/gtksourceview
|
76
|
-
" cp #@data/language-specs/*.lang ~/.local/share/gtksourceview
|
79
|
+
action "mkdir -p ~/.local/share/gtksourceview-#@gedit.0/language-specs\n" \
|
80
|
+
" cp #@data/language-specs/*.lang ~/.local/share/gtksourceview-#@gedit.0/language-specs"
|
77
81
|
end
|
78
82
|
|
79
|
-
check_existence '/usr/share/gtksourceview
|
80
|
-
check_existence '/usr/share/gtksourceview
|
81
|
-
check_existence '~/.local/share/gtksourceview
|
82
|
-
check_existence '~/.local/share/gtksourceview
|
83
|
+
check_existence '/usr/share/gtksourceview-#@gedit.0/language-specs/rhtml.lang', true
|
84
|
+
check_existence '/usr/share/gtksourceview-#@gedit.0/language-specs/ruby_on_rails.lang', true
|
85
|
+
check_existence '~/.local/share/gtksourceview-#@gedit.0/language-specs/rhtml.lang', false
|
86
|
+
check_existence '~/.local/share/gtksourceview-#@gedit.0/language-specs/ruby_on_rails.lang', false
|
83
87
|
end
|
84
88
|
|
85
89
|
# # #
|
@@ -87,7 +91,7 @@ end
|
|
87
91
|
def mime
|
88
92
|
puts Paint["\nNow the mime types should be updated\n", :underline]
|
89
93
|
print "Q] Do you want to install the mime types as sudo [/usr/share/mime/packages]\n" \
|
90
|
-
" or in your home directory [~/.local/share/gtksourceview
|
94
|
+
" or in your home directory [~/.local/share/gtksourceview-#@gedit.0/language-specs]? [Sh] "
|
91
95
|
if @sudo || gets.chop =~ /^s?$/i
|
92
96
|
action "sudo cp #@data/mime/*.xml /usr/share/mime/packages\n" \
|
93
97
|
" sudo update-mime-database /usr/share/mime"
|
@@ -105,13 +109,13 @@ end
|
|
105
109
|
# styles
|
106
110
|
def styles
|
107
111
|
puts Paint["\nNow, some styles get copied that use the new language specs :)\n", :underline]
|
108
|
-
print "Q] Do you want to install the styles as sudo [/usr/share/gtksourceview
|
109
|
-
" or in your home directory [~/.local/share/gtksourceview
|
112
|
+
print "Q] Do you want to install the styles as sudo [/usr/share/gtksourceview-#@gedit.0/styles]\n" \
|
113
|
+
" or in your home directory [~/.local/share/gtksourceview-#@gedit.0/styles]? [Sh] "
|
110
114
|
if @sudo || gets.chop =~ /^s?$/i
|
111
|
-
action "sudo cp #@data/styles/*.xml /usr/share/gtksourceview
|
115
|
+
action "sudo cp #@data/styles/*.xml /usr/share/gtksourceview-#@gedit.0/styles"
|
112
116
|
else
|
113
|
-
action "mkdir -p ~/.local/share/gtksourceview
|
114
|
-
" cp #@data/styles/*.xml ~/.local/share/gtksourceview
|
117
|
+
action "mkdir -p ~/.local/share/gtksourceview-#@gedit.0/styles\n" \
|
118
|
+
" cp #@data/styles/*.xml ~/.local/share/gtksourceview-#@gedit.0/styles"
|
115
119
|
end
|
116
120
|
end
|
117
121
|
|
@@ -0,0 +1,148 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
# The installer was done as fast as possible, so
|
3
|
+
# TODO use dry and maintainable ruby code :D
|
4
|
+
|
5
|
+
# # #
|
6
|
+
# enable colors if possible
|
7
|
+
begin
|
8
|
+
require 'paint'
|
9
|
+
rescue LoadError
|
10
|
+
end
|
11
|
+
|
12
|
+
unless defined? Paint
|
13
|
+
module Paint
|
14
|
+
def self.[](*args)
|
15
|
+
args[0]
|
16
|
+
end
|
17
|
+
end
|
18
|
+
end
|
19
|
+
|
20
|
+
# # #
|
21
|
+
# parse command line stuff
|
22
|
+
if ARGV.shift != 'install'
|
23
|
+
warn 'Currently, only "rubybuntu-gedit install" is supported. Quitting...'
|
24
|
+
exit
|
25
|
+
end
|
26
|
+
|
27
|
+
@sudo = false # auto sudo
|
28
|
+
@gedit = 3
|
29
|
+
|
30
|
+
if ARGV.reject{|e| e[0] == '-' }.empty?
|
31
|
+
@todo = [:specs, :mime, :styles, :snippets]
|
32
|
+
else
|
33
|
+
@todo = []
|
34
|
+
while arg = ARGV.shift
|
35
|
+
case arg
|
36
|
+
when "--sudo"
|
37
|
+
@sudo = true
|
38
|
+
when /specs/
|
39
|
+
@todo << :specs
|
40
|
+
when /mime/
|
41
|
+
@todo << :mime
|
42
|
+
when /styles/
|
43
|
+
@todo << :styles
|
44
|
+
when /snippets/
|
45
|
+
@todo << :snippets
|
46
|
+
when "-3"
|
47
|
+
@gedit = 3
|
48
|
+
end
|
49
|
+
end
|
50
|
+
end
|
51
|
+
|
52
|
+
# # #
|
53
|
+
# helper methods
|
54
|
+
def action(what)
|
55
|
+
if what && !what.empty?
|
56
|
+
puts Paint["x] #{what}", :yellow]
|
57
|
+
system what
|
58
|
+
end
|
59
|
+
end
|
60
|
+
|
61
|
+
def check_existence(what, sudo = true)
|
62
|
+
if File.exists?(what)
|
63
|
+
print "Q] The installer found an outdated file at \"#{what}\"\n" \
|
64
|
+
" It's recommended to remove it. Do you want to remove it? [Yn] "
|
65
|
+
action("sudo rm -f #{what}") if gets.chop =~ /^y?$/i
|
66
|
+
end
|
67
|
+
end
|
68
|
+
|
69
|
+
# # #
|
70
|
+
# language specs
|
71
|
+
def specs
|
72
|
+
puts Paint["\nLet's start with copying the language specs\n", :underline]
|
73
|
+
print "Q] Do you want to install the languages specs as sudo [/usr/share/gtksourceview-#@gedit.0/language-specs]\n" \
|
74
|
+
" or in your home directory [~/.local/share/gtksourceview-#@gedit.0/language-specs]? [Sh] "
|
75
|
+
if @sudo || gets.chop =~ /^s?$/i
|
76
|
+
action "sudo cp #@data/language-specs/*.lang /usr/share/gtksourceview-#@gedit.0/language-specs"
|
77
|
+
else
|
78
|
+
action "mkdir -p ~/.local/share/gtksourceview-#@gedit.0/language-specs\n" \
|
79
|
+
" cp #@data/language-specs/*.lang ~/.local/share/gtksourceview-#@gedit.0/language-specs"
|
80
|
+
end
|
81
|
+
|
82
|
+
check_existence '/usr/share/gtksourceview-#@gedit.0/language-specs/rhtml.lang', true
|
83
|
+
check_existence '/usr/share/gtksourceview-#@gedit.0/language-specs/ruby_on_rails.lang', true
|
84
|
+
check_existence '~/.local/share/gtksourceview-#@gedit.0/language-specs/rhtml.lang', false
|
85
|
+
check_existence '~/.local/share/gtksourceview-#@gedit.0/language-specs/ruby_on_rails.lang', false
|
86
|
+
end
|
87
|
+
|
88
|
+
# # #
|
89
|
+
# mime
|
90
|
+
def mime
|
91
|
+
puts Paint["\nNow the mime types should be updated\n", :underline]
|
92
|
+
print "Q] Do you want to install the mime types as sudo [/usr/share/mime/packages]\n" \
|
93
|
+
" or in your home directory [~/.local/share/gtksourceview-#@gedit.0/language-specs]? [Sh] "
|
94
|
+
if @sudo || gets.chop =~ /^s?$/i
|
95
|
+
action "sudo cp #@data/mime/*.xml /usr/share/mime/packages\n" \
|
96
|
+
" sudo update-mime-database /usr/share/mime"
|
97
|
+
else
|
98
|
+
action "mkdir -p ~/.local/share/mime/packages\n" \
|
99
|
+
" cp #@data/mime/*.xml ~/.local/share/mime/packages" \
|
100
|
+
" update-mime-database ~/.local/share/mime"
|
101
|
+
end
|
102
|
+
|
103
|
+
check_existence '/usr/share/mime/rails.xml', true
|
104
|
+
check_existence '~/.local/share/mime/rails.xml', false
|
105
|
+
end
|
106
|
+
|
107
|
+
# # #
|
108
|
+
# styles
|
109
|
+
def styles
|
110
|
+
puts Paint["\nNow, some styles get copied that use the new language specs :)\n", :underline]
|
111
|
+
print "Q] Do you want to install the styles as sudo [/usr/share/gtksourceview-#@gedit.0/styles]\n" \
|
112
|
+
" or in your home directory [~/.local/share/gtksourceview-#@gedit.0/styles]? [Sh] "
|
113
|
+
if @sudo || gets.chop =~ /^s?$/i
|
114
|
+
action "sudo cp #@data/styles/*.xml /usr/share/gtksourceview-#@gedit.0/styles"
|
115
|
+
else
|
116
|
+
action "mkdir -p ~/.local/share/gtksourceview-#@gedit.0/styles\n" \
|
117
|
+
" cp #@data/styles/*.xml ~/.local/share/gtksourceview-#@gedit.0/styles"
|
118
|
+
end
|
119
|
+
end
|
120
|
+
|
121
|
+
# # #
|
122
|
+
# snippets
|
123
|
+
def snippets
|
124
|
+
puts Paint["\nSorry, currently, the snippets cannot installed via this installer\n", :underline]
|
125
|
+
puts "...\n"
|
126
|
+
end
|
127
|
+
|
128
|
+
|
129
|
+
# # #
|
130
|
+
# run
|
131
|
+
@data = File.dirname(__FILE__) + "/../data"
|
132
|
+
|
133
|
+
puts
|
134
|
+
puts Paint["Welcome to the rubybuntu-gedit installer :D", :green]
|
135
|
+
puts 'Before each action I\'ll tell you what I am going to do'
|
136
|
+
puts Paint['Please note: ', :bold] + 'I am pretty untested and might destroy your computer'
|
137
|
+
|
138
|
+
@todo.each{|todo| send todo }
|
139
|
+
|
140
|
+
puts
|
141
|
+
puts Paint["Congratulations! You've updated your gedit stuff! (if everything worked correctly)", :green]
|
142
|
+
puts
|
143
|
+
puts "If not, please install manually and open an issue on github"
|
144
|
+
puts 'Don\'t forget to change your gedit style to "RubyBuntu One" to really use the new features.'
|
145
|
+
puts
|
146
|
+
puts " J-_-L"
|
147
|
+
puts
|
148
|
+
|
@@ -117,40 +117,14 @@
|
|
117
117
|
<define-regex id="alnum">[^&><!?"'`@$%/()=\\{\[\]}*+~#|;,:.\-\^\s]</define-regex>
|
118
118
|
<define-regex id="no_method_prefix">(?<![\w\.\:])</define-regex>
|
119
119
|
<define-regex id="no_method_suffix">(?!(\%{alnum}|[?!]))</define-regex>
|
120
|
+
<define-regex id="keywords" extended="true"><!-- TODO also change at array+hash stuff -->
|
121
|
+
BEGIN | END | alias | begin | break | case | class | do | else | elsif |
|
122
|
+
end | ensure | for | if | in | module | next | redo | rescue | retry |
|
123
|
+
return | super | then | undef | unless | until | when | while | yield
|
124
|
+
</define-regex>
|
120
125
|
|
121
126
|
<context id="keywords" style-ref="keyword">
|
122
|
-
<
|
123
|
-
<suffix>\%{no_method_suffix}</suffix>
|
124
|
-
<!-- only put here if not already used at another place -->
|
125
|
-
<keyword>BEGIN</keyword>
|
126
|
-
<keyword>END</keyword>
|
127
|
-
<keyword>alias</keyword>
|
128
|
-
<keyword>begin</keyword>
|
129
|
-
<keyword>break</keyword>
|
130
|
-
<keyword>case</keyword>
|
131
|
-
<keyword>class</keyword>
|
132
|
-
<keyword>do</keyword>
|
133
|
-
<keyword>else</keyword>
|
134
|
-
<keyword>elsif</keyword>
|
135
|
-
<keyword>end</keyword>
|
136
|
-
<keyword>ensure</keyword>
|
137
|
-
<keyword>for</keyword>
|
138
|
-
<keyword>if</keyword>
|
139
|
-
<keyword>in</keyword>
|
140
|
-
<keyword>module</keyword>
|
141
|
-
<keyword>next</keyword>
|
142
|
-
<keyword>redo</keyword>
|
143
|
-
<keyword>rescue</keyword>
|
144
|
-
<keyword>retry</keyword>
|
145
|
-
<keyword>return</keyword>
|
146
|
-
<keyword>super</keyword>
|
147
|
-
<keyword>then</keyword>
|
148
|
-
<keyword>undef</keyword>
|
149
|
-
<keyword>unless</keyword>
|
150
|
-
<keyword>until</keyword>
|
151
|
-
<keyword>when</keyword>
|
152
|
-
<keyword>while</keyword>
|
153
|
-
<keyword>yield</keyword>
|
127
|
+
<match>\%{no_method_prefix}\%{keywords}\%{no_method_suffix}</match>
|
154
128
|
</context>
|
155
129
|
|
156
130
|
<context id="important-methods" style-ref="important-method">
|
@@ -960,7 +934,7 @@
|
|
960
934
|
<context where="end" sub-pattern="0" style-ref="string-delimiter"/>
|
961
935
|
</include>
|
962
936
|
</context>
|
963
|
-
|
937
|
+
|
964
938
|
<context id="heredoc-backtick-quoted-string" style-ref="system">
|
965
939
|
<start>\%{start-heredoc}(`(\w+)`)</start>
|
966
940
|
<end>^\%{4@start}$</end>
|
@@ -973,7 +947,7 @@
|
|
973
947
|
<context where="end" sub-pattern="0" style-ref="system-delimiter"/>
|
974
948
|
</include>
|
975
949
|
</context>
|
976
|
-
|
950
|
+
|
977
951
|
<context id="heredoc-single-quoted-indented-string" style-ref="string">
|
978
952
|
<start>\%{start-heredoc}(-'(\w+)')</start>
|
979
953
|
<end>^\s*\%{4@start}$</end>
|
@@ -997,7 +971,7 @@
|
|
997
971
|
<context where="end" sub-pattern="0" style-ref="string-delimiter"/>
|
998
972
|
</include>
|
999
973
|
</context>
|
1000
|
-
|
974
|
+
|
1001
975
|
<context id="heredoc-backtick-quoted-indented-string" style-ref="system">
|
1002
976
|
<start>\%{start-heredoc}(-`(\w+)`)</start>
|
1003
977
|
<end>^\s*\%{4@start}$</end>
|
@@ -1009,7 +983,7 @@
|
|
1009
983
|
<context where="end" sub-pattern="0" style-ref="system-delimiter"/>
|
1010
984
|
</include>
|
1011
985
|
</context>
|
1012
|
-
|
986
|
+
|
1013
987
|
<define-regex id="regex-options">([mixo]*[neus]?[mixo]*)</define-regex>
|
1014
988
|
|
1015
989
|
<context id="regex" style-ref="regex">
|
@@ -1146,7 +1120,7 @@
|
|
1146
1120
|
<context where="end" sub-pattern="0" style-ref="symbol-delimiter"/>
|
1147
1121
|
</include>
|
1148
1122
|
</context>
|
1149
|
-
|
1123
|
+
|
1150
1124
|
<!-- %s{Hello world} -->
|
1151
1125
|
<context id="single-quoted-symbol-curly" style-ref="symbol">
|
1152
1126
|
<start>%s\{</start>
|
@@ -1189,7 +1163,7 @@
|
|
1189
1163
|
<context where="end" sub-pattern="0" style-ref="symbol-delimiter"/>
|
1190
1164
|
</include>
|
1191
1165
|
</context>
|
1192
|
-
|
1166
|
+
|
1193
1167
|
<!-- %s-Hello world- %s+Hello world+ %s*Hello world* and so on... -->
|
1194
1168
|
<context id="single-quoted-symbol-generic" style-ref="symbol">
|
1195
1169
|
<start>%s([[:print:]])(?<![[:alnum:]])</start>
|
@@ -1253,7 +1227,15 @@
|
|
1253
1227
|
<start extended="true">
|
1254
1228
|
(?: (?<= \%{alnum}[!?] )
|
1255
1229
|
| (?<= \%{alnum} | [})\]] )
|
1256
|
-
)
|
1230
|
+
)
|
1231
|
+
|
1232
|
+
(?<! \%{no_method_prefix}
|
1233
|
+
BEGIN | END | alias | begin | break | case | class | do | else | elsif |
|
1234
|
+
end | ensure | for | if | in | module | next | redo | rescue | retry |
|
1235
|
+
return | super | then | undef | unless | until | when | while | yield
|
1236
|
+
)
|
1237
|
+
|
1238
|
+
\s* (\[)
|
1257
1239
|
</start>
|
1258
1240
|
<end>\]</end>
|
1259
1241
|
<include>
|
@@ -1262,11 +1244,19 @@
|
|
1262
1244
|
<context ref="ruby:*"/>
|
1263
1245
|
</include>
|
1264
1246
|
</context>
|
1265
|
-
<context id="curly-brackets"><!--(?<= [)\w\]] ) -->
|
1247
|
+
<context id="curly-brackets"><!--(?<= [)\w\]] ) --><!-- TODO why does keyword ref not work? -->
|
1266
1248
|
<start extended="true">
|
1267
1249
|
(?: (?<= -> | \%{alnum}[!?] )
|
1268
|
-
| (?<= \%{alnum} | [)\]]
|
1269
|
-
)
|
1250
|
+
| (?<= \%{alnum} | [)\]] )
|
1251
|
+
)
|
1252
|
+
|
1253
|
+
(?<! \%{no_method_prefix}
|
1254
|
+
BEGIN | END | alias | begin | break | case | class | do | else | elsif |
|
1255
|
+
end | ensure | for | if | in | module | next | redo | rescue | retry |
|
1256
|
+
return | super | then | undef | unless | until | when | while | yield
|
1257
|
+
)
|
1258
|
+
|
1259
|
+
\s* (\{)
|
1270
1260
|
</start>
|
1271
1261
|
<end>\}</end>
|
1272
1262
|
<include>
|
@@ -1278,10 +1268,16 @@
|
|
1278
1268
|
</include>
|
1279
1269
|
</context>
|
1280
1270
|
|
1281
|
-
<context id="hash"
|
1271
|
+
<context id="hash">
|
1282
1272
|
<start extended="true">
|
1283
|
-
(?<
|
1284
|
-
|
1273
|
+
(?: (?<= \%{no_method_prefix}
|
1274
|
+
BEGIN | END | alias | begin | break | case | class | do | else | elsif |
|
1275
|
+
end | ensure | for | if | in | module | next | redo | rescue | retry |
|
1276
|
+
return | super | then | undef | unless | until | when | while | yield
|
1277
|
+
)
|
1278
|
+
| (?<! -> | \%{alnum}[!?] )
|
1279
|
+
(?<! \%{alnum} | [)\]] )
|
1280
|
+
)
|
1285
1281
|
(\{)
|
1286
1282
|
</start>
|
1287
1283
|
<end>\}</end>
|
@@ -1294,8 +1290,14 @@
|
|
1294
1290
|
|
1295
1291
|
<context id="array">
|
1296
1292
|
<start extended="true">
|
1297
|
-
(?<
|
1298
|
-
|
1293
|
+
(?: (?<= \%{no_method_prefix}
|
1294
|
+
BEGIN | END | alias | begin | break | case | class | do | else | elsif |
|
1295
|
+
end | ensure | for | if | in | module | next | redo | rescue | retry |
|
1296
|
+
return | super | then | undef | unless | until | when | while | yield
|
1297
|
+
)
|
1298
|
+
| (?<! \%{alnum}[!?] )
|
1299
|
+
(?<! \%{alnum} | [})\]] )
|
1300
|
+
)
|
1299
1301
|
(\[)
|
1300
1302
|
</start>
|
1301
1303
|
<end>\]</end>
|
@@ -1310,8 +1312,12 @@
|
|
1310
1312
|
<match>(=>|,)</match>
|
1311
1313
|
</context>
|
1312
1314
|
|
1315
|
+
<context id="lambdas" style-ref="syntax-char">
|
1316
|
+
<match>-></match>
|
1317
|
+
</context>
|
1318
|
+
|
1313
1319
|
<context id="data" style-ref="string">
|
1314
|
-
<start>^__END__
|
1320
|
+
<start>^__END__$</start>
|
1315
1321
|
<include>
|
1316
1322
|
<context where="start" sub-pattern="0" style-ref="string-delimiter"/>
|
1317
1323
|
</include>
|
@@ -1429,6 +1435,7 @@
|
|
1429
1435
|
<context ref="errors"/>
|
1430
1436
|
|
1431
1437
|
<context ref="collection-chars"/>
|
1438
|
+
<context ref="lambdas"/>
|
1432
1439
|
<context ref="operators"/>
|
1433
1440
|
<context ref="syntax-chars"/>
|
1434
1441
|
|
@@ -1440,4 +1447,3 @@
|
|
1440
1447
|
</context>
|
1441
1448
|
</definitions>
|
1442
1449
|
</language>
|
1443
|
-
|
@@ -1,12 +1,20 @@
|
|
1
1
|
# hashs
|
2
2
|
{}
|
3
3
|
{}
|
4
|
-
{}
|
4
|
+
{ hey{} }
|
5
5
|
a={}
|
6
6
|
a= {}
|
7
7
|
a ?{} :{}
|
8
8
|
!{}
|
9
9
|
|
10
|
+
{{} => {}}
|
11
|
+
|
12
|
+
1 if {{} => {}}
|
13
|
+
1 rescue{}
|
14
|
+
|
15
|
+
1 if[]
|
16
|
+
1 rescue []
|
17
|
+
|
10
18
|
# arrays
|
11
19
|
[]
|
12
20
|
[]
|
@@ -55,6 +63,10 @@ a () []
|
|
55
63
|
a[]{}
|
56
64
|
a [] {}
|
57
65
|
a[b]{}
|
58
|
-
a [b] {}
|
66
|
+
a [b] {{}}
|
59
67
|
a{}[]
|
60
|
-
a {} []
|
68
|
+
a {} [[]]
|
69
|
+
|
70
|
+
->{}
|
71
|
+
a -> () {}
|
72
|
+
|