redcar 0.3.5 → 0.3.6

Sign up to get free protection for your applications and to get access to all the features.
Files changed (102) hide show
  1. data/CHANGES +28 -0
  2. data/README.md +7 -0
  3. data/ROADMAP.md +11 -1
  4. data/Rakefile +61 -2
  5. data/bin/redcar +2 -1
  6. data/lib/redcar.rb +4 -3
  7. data/lib/redcar/installer.rb +3 -1
  8. data/lib/redcar/runner.rb +1 -1
  9. data/lib/redcar/usage.rb +4 -7
  10. data/lib/redcar_quick_start.rb +39 -5
  11. data/plugins/application/features/step_definitions/tree_steps.rb +6 -0
  12. data/plugins/application/features/support/env.rb +2 -6
  13. data/plugins/application/icons/redcar_icon_beta_dev.png +0 -0
  14. data/plugins/application/lib/application/command/executor.rb +8 -0
  15. data/plugins/application/lib/application/dialog.rb +25 -2
  16. data/plugins/application/lib/application/notebook.rb +4 -0
  17. data/plugins/application/lib/application/window.rb +4 -0
  18. data/plugins/application_swt/lib/application_swt.rb +2 -0
  19. data/plugins/application_swt/lib/application_swt/dialog_adapter.rb +28 -1
  20. data/plugins/application_swt/lib/application_swt/menu.rb +4 -0
  21. data/plugins/application_swt/lib/application_swt/menu/binding_translator.rb +4 -0
  22. data/plugins/application_swt/lib/application_swt/notebook.rb +22 -1
  23. data/plugins/application_swt/lib/application_swt/notebook/tab_drag_and_drop_listener.rb +124 -0
  24. data/plugins/application_swt/lib/application_swt/notebook/tab_transfer.rb +83 -0
  25. data/plugins/application_swt/lib/application_swt/swt_wrapper.rb +14 -0
  26. data/plugins/application_swt/lib/application_swt/tab.rb +28 -6
  27. data/plugins/application_swt/lib/application_swt/window.rb +88 -43
  28. data/plugins/application_swt/spec/application_swt/menu/binding_translator_spec.rb +11 -0
  29. data/plugins/application_swt/spec/spec_helper.rb +1 -1
  30. data/plugins/auto_completer/lib/auto_completer.rb +3 -20
  31. data/plugins/auto_pairer/lib/auto_pairer/document_controller.rb +1 -1
  32. data/plugins/declarations/lib/declarations/parser.rb +2 -2
  33. data/plugins/declarations/spec/spec_helper.rb +1 -0
  34. data/plugins/edit_view/features/step_definitions/notebook_steps.rb +3 -3
  35. data/plugins/edit_view/features/step_definitions/window_steps.rb +24 -9
  36. data/plugins/edit_view/features/support/env.rb +11 -9
  37. data/plugins/edit_view/lib/edit_view.rb +106 -6
  38. data/plugins/edit_view/lib/edit_view/info_speedbar.rb +32 -3
  39. data/plugins/edit_view/lib/edit_view/select_font_dialog.rb +39 -0
  40. data/plugins/edit_view/lib/edit_view/select_theme_dialog.rb +34 -0
  41. data/plugins/edit_view/lib/edit_view/tab_settings.rb +103 -8
  42. data/plugins/edit_view_swt/lib/edit_view_swt.rb +40 -3
  43. data/plugins/edit_view_swt/lib/edit_view_swt/edit_tab.rb +1 -1
  44. data/plugins/execute_current_tab/lib/execute_current_tab.rb +15 -6
  45. data/plugins/project/features/open_directory_tree.feature +10 -0
  46. data/plugins/project/lib/project.rb +10 -8
  47. data/plugins/project/lib/project/dir_mirror.rb +6 -5
  48. data/plugins/project/lib/project/drb_service.rb +16 -0
  49. data/plugins/project/lib/project/manager.rb +31 -5
  50. data/plugins/redcar/redcar.rb +115 -19
  51. data/plugins/tree_view_swt/lib/tree_view_swt.rb +15 -0
  52. data/textmate/Bundles/Cucumber.tmbundle/Preferences/Cucumber_Plain_Text_Feature_Completions.tmPreferences +3 -3
  53. data/textmate/Bundles/Cucumber.tmbundle/Preferences/Symbol_list___Scenario.tmPreferences +1 -1
  54. data/textmate/Bundles/Cucumber.tmbundle/Syntaxes/Cucumber_Plain_Text_Feature.tmLanguage +18 -76
  55. data/textmate/Bundles/Cucumber.tmbundle/Syntaxes/Cucumber_Steps.tmLanguage +1 -1
  56. data/textmate/Bundles/Palm-WebOS-Development.tmbundle/Snippets/Animation_animateStyle.tmSnippet +23 -0
  57. data/textmate/Bundles/Palm-WebOS-Development.tmbundle/Snippets/Event_listen.tmSnippet +16 -0
  58. data/textmate/Bundles/{Cucumber.tmbundle/Snippets/When_Step_Plaintext.tmSnippet → Palm-WebOS-Development.tmbundle/Snippets/Event_stop.tmSnippet} +5 -5
  59. data/textmate/Bundles/{Cucumber.tmbundle/Snippets/Then_Step.tmSnippet → Palm-WebOS-Development.tmbundle/Snippets/Event_stopListening.tmSnippet} +5 -9
  60. data/textmate/Bundles/{Cucumber.tmbundle/Snippets/Cucumber_Multiline_Steps.tmSnippet → Palm-WebOS-Development.tmbundle/Snippets/List_Model.tmSnippet} +10 -7
  61. data/textmate/Bundles/Palm-WebOS-Development.tmbundle/Snippets/Log_addLoggingMethodsToPrototype.tmSnippet +16 -0
  62. data/textmate/Bundles/{Cucumber.tmbundle/Snippets/Then_Step_Plaintext.tmSnippet → Palm-WebOS-Development.tmbundle/Snippets/Log_info.tmSnippet} +5 -5
  63. data/textmate/Bundles/{Cucumber.tmbundle/Snippets/Scenario___heading_only__.tmSnippet → Palm-WebOS-Development.tmbundle/Snippets/Log_logProperties.tmSnippet} +5 -7
  64. data/textmate/Bundles/{Cucumber.tmbundle/Snippets/When_Step.tmSnippet → Palm-WebOS-Development.tmbundle/Snippets/Model.tmSnippet} +7 -9
  65. data/textmate/Bundles/Palm-WebOS-Development.tmbundle/Snippets/__L____.tmSnippet +16 -0
  66. data/textmate/Bundles/Palm-WebOS-Development.tmbundle/Snippets/_insert____.tmSnippet +16 -0
  67. data/textmate/Bundles/Palm-WebOS-Development.tmbundle/Snippets/_update____.tmSnippet +16 -0
  68. data/textmate/Bundles/Palm-WebOS-Development.tmbundle/Snippets/controller_get.tmSnippet +16 -0
  69. data/textmate/Bundles/Palm-WebOS-Development.tmbundle/Snippets/controller_pushScene.tmSnippet +16 -0
  70. data/textmate/Bundles/Palm-WebOS-Development.tmbundle/Snippets/controller_serviceRequest.tmSnippet +21 -0
  71. data/textmate/Bundles/{Cucumber.tmbundle/Snippets/Scenario_Outline.tmSnippet → Palm-WebOS-Development.tmbundle/Snippets/controller_setupWidget.tmSnippet} +5 -9
  72. data/textmate/Bundles/{Cucumber.tmbundle/Snippets/Given_Step.tmSnippet → Palm-WebOS-Development.tmbundle/Snippets/controller_showBanner.tmSnippet} +5 -9
  73. data/textmate/Bundles/Palm-WebOS-Development.tmbundle/Syntaxes/Mojo.tmLanguage +713 -0
  74. data/textmate/Bundles/Palm-WebOS-Development.tmbundle/info.plist +188 -0
  75. data/textmate/Bundles/Smalltalk.tmbundle/Preferences/GNU_Smalltalk.tmPreferences +32 -0
  76. data/textmate/Bundles/{asciidoc.tmbundle/Preferences/Symbol_List___Heading.tmPreferences → Smalltalk.tmbundle/Preferences/GNU___Symbol_List___Method.tmPreferences} +7 -6
  77. data/textmate/Bundles/{Cucumber.tmbundle/Preferences/next_Symbol_list___Scenario.tmPreferences → Smalltalk.tmbundle/Preferences/GNU___Symbol_List___Section.tmPreferences} +7 -4
  78. data/textmate/Bundles/{asciidoc.tmbundle/Snippets/Bold.tmSnippet → Smalltalk.tmbundle/Preferences/MIST_Smalltalk_Format.tmPreferences} +8 -7
  79. data/textmate/Bundles/Smalltalk.tmbundle/Syntaxes/GNU_Smalltalk.tmLanguage +493 -0
  80. data/textmate/Bundles/Smalltalk.tmbundle/Syntaxes/GNU_Smalltalk_2.tmLanguage +807 -0
  81. data/textmate/Bundles/Smalltalk.tmbundle/Syntaxes/MIST_Smalltalk_Format.tmLanguage +645 -0
  82. data/textmate/Bundles/Smalltalk.tmbundle/info.plist +21 -0
  83. data/textmate/Themes/Twilight.tmTheme +4 -0
  84. metadata +2604 -2586
  85. data/textmate/Bundles/Cucumber.tmbundle/Preferences/next_Cucumber_Plain_Text_Feature_Completions.tmPreferences +0 -30
  86. data/textmate/Bundles/Cucumber.tmbundle/Syntaxes/next_Cucumber_Plain_Text_Feature.tmLanguage +0 -221
  87. data/textmate/Bundles/Cucumber.tmbundle/Syntaxes/next_Cucumber_Steps.tmLanguage +0 -424
  88. data/textmate/Bundles/asciidoc.tmbundle/Preferences/Typing_Pairs___Defaults.tmPreferences +0 -54
  89. data/textmate/Bundles/asciidoc.tmbundle/Snippets/Anchor.tmSnippet +0 -16
  90. data/textmate/Bundles/asciidoc.tmbundle/Snippets/Comment_Block.tmSnippet +0 -19
  91. data/textmate/Bundles/asciidoc.tmbundle/Snippets/Example_Block.tmSnippet +0 -19
  92. data/textmate/Bundles/asciidoc.tmbundle/Snippets/Italic.tmSnippet +0 -16
  93. data/textmate/Bundles/asciidoc.tmbundle/Snippets/Listing_Block.tmSnippet +0 -20
  94. data/textmate/Bundles/asciidoc.tmbundle/Snippets/Literal_Block.tmSnippet +0 -19
  95. data/textmate/Bundles/asciidoc.tmbundle/Snippets/Passthrough_Block.tmSnippet +0 -19
  96. data/textmate/Bundles/asciidoc.tmbundle/Snippets/Quote_Block.tmSnippet +0 -19
  97. data/textmate/Bundles/asciidoc.tmbundle/Snippets/Quoted.tmSnippet +0 -16
  98. data/textmate/Bundles/asciidoc.tmbundle/Snippets/Sidebar_Block.tmSnippet +0 -19
  99. data/textmate/Bundles/asciidoc.tmbundle/Snippets/Subscript.tmSnippet +0 -16
  100. data/textmate/Bundles/asciidoc.tmbundle/Snippets/Superscript.tmSnippet +0 -16
  101. data/textmate/Bundles/asciidoc.tmbundle/Syntaxes/AsciiDoc.tmLanguage +0 -428
  102. data/textmate/Bundles/asciidoc.tmbundle/info.plist +0 -91
@@ -0,0 +1,645 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
3
+ <plist version="1.0">
4
+ <dict>
5
+ <key>fileTypes</key>
6
+ <array>
7
+ <string>mist</string>
8
+ </array>
9
+ <key>foldingStartMarker</key>
10
+ <string>/\*\*|\{\s*$</string>
11
+ <key>foldingStopMarker</key>
12
+ <string>\*\*/|^\s*\}</string>
13
+ <key>keyEquivalent</key>
14
+ <string>^~M</string>
15
+ <key>name</key>
16
+ <string>MIST Smalltalk Format</string>
17
+ <key>patterns</key>
18
+ <array>
19
+ <dict>
20
+ <key>captures</key>
21
+ <dict>
22
+ <key>1</key>
23
+ <dict>
24
+ <key>name</key>
25
+ <string>keyword.language.smalltalk</string>
26
+ </dict>
27
+ </dict>
28
+ <key>match</key>
29
+ <string>(?x:
30
+ (define \s+ project)
31
+ )</string>
32
+ <key>name</key>
33
+ <string>meta.smalltalk.classdef</string>
34
+ </dict>
35
+ <dict>
36
+ <key>captures</key>
37
+ <dict>
38
+ <key>1</key>
39
+ <dict>
40
+ <key>name</key>
41
+ <string>keyword.language.smalltalk</string>
42
+ </dict>
43
+ </dict>
44
+ <key>match</key>
45
+ <string>(?x:
46
+ (define \s+ configuration)
47
+ )</string>
48
+ <key>name</key>
49
+ <string>meta.smalltalk.classdef</string>
50
+ </dict>
51
+ <dict>
52
+ <key>captures</key>
53
+ <dict>
54
+ <key>1</key>
55
+ <dict>
56
+ <key>name</key>
57
+ <string>keyword.language.smalltalk</string>
58
+ </dict>
59
+ <key>2</key>
60
+ <dict>
61
+ <key>name</key>
62
+ <string>keyword.language.smalltalk</string>
63
+ </dict>
64
+ <key>3</key>
65
+ <dict>
66
+ <key>name</key>
67
+ <string>keyword.language.smalltalk.noise</string>
68
+ </dict>
69
+ <key>4</key>
70
+ <dict>
71
+ <key>name</key>
72
+ <string>entity.name.type</string>
73
+ </dict>
74
+ <key>5</key>
75
+ <dict>
76
+ <key>name</key>
77
+ <string>keyword.language.smalltalk.noise</string>
78
+ </dict>
79
+ <key>6</key>
80
+ <dict>
81
+ <key>name</key>
82
+ <string>keyword.language.smalltalk</string>
83
+ </dict>
84
+ </dict>
85
+ <key>match</key>
86
+ <string>(?x:
87
+ (define)
88
+ \s+
89
+ (class:|namespace:)
90
+ \s+
91
+ (\#\{)
92
+ ((?:[a-zA-Z_][a-zA-Z0-9_]*)(?:\.[a-zA-Z_][a-zA-Z0-9_]*)*) # Subclass
93
+ (\})
94
+ \s+
95
+ (is:)
96
+ )</string>
97
+ <key>name</key>
98
+ <string>meta.smalltalk.classdef</string>
99
+ </dict>
100
+ <dict>
101
+ <key>captures</key>
102
+ <dict>
103
+ <key>1</key>
104
+ <dict>
105
+ <key>name</key>
106
+ <string>keyword.language.smalltalk</string>
107
+ </dict>
108
+ <key>10</key>
109
+ <dict>
110
+ <key>name</key>
111
+ <string>keyword.language.smalltalk</string>
112
+ </dict>
113
+ <key>2</key>
114
+ <dict>
115
+ <key>name</key>
116
+ <string>keyword.language.smalltalk</string>
117
+ </dict>
118
+ <key>3</key>
119
+ <dict>
120
+ <key>name</key>
121
+ <string>keyword.language.smalltalk.noise</string>
122
+ </dict>
123
+ <key>4</key>
124
+ <dict>
125
+ <key>name</key>
126
+ <string>entity.name.type</string>
127
+ </dict>
128
+ <key>5</key>
129
+ <dict>
130
+ <key>name</key>
131
+ <string>keyword.language.smalltalk.noise</string>
132
+ </dict>
133
+ <key>6</key>
134
+ <dict>
135
+ <key>name</key>
136
+ <string>keyword.language.smalltalk</string>
137
+ </dict>
138
+ <key>7</key>
139
+ <dict>
140
+ <key>name</key>
141
+ <string>keyword.language.smalltalk.noise</string>
142
+ </dict>
143
+ <key>8</key>
144
+ <dict>
145
+ <key>name</key>
146
+ <string>entity.name.type</string>
147
+ </dict>
148
+ <key>9</key>
149
+ <dict>
150
+ <key>name</key>
151
+ <string>keyword.language.smalltalk.noise</string>
152
+ </dict>
153
+ </dict>
154
+ <key>match</key>
155
+ <string>(?x:
156
+ (define)
157
+ \s+
158
+ (class:)
159
+ \s+
160
+ (\#\{)
161
+ ((?:[a-zA-Z_][a-zA-Z0-9_]*)(?:\.[a-zA-Z_][a-zA-Z0-9_]*)*)
162
+ (\})
163
+ \s+
164
+ (superclass:)
165
+ \s+
166
+ (\#\{)
167
+ ((?:[a-zA-Z_][a-zA-Z0-9_]*)(?:\.[a-zA-Z_][a-zA-Z0-9_]*)*)
168
+ (\})
169
+ \s+
170
+ (is:)
171
+ )</string>
172
+ <key>name</key>
173
+ <string>meta.smalltalk.classdef</string>
174
+ </dict>
175
+ <dict>
176
+ <key>begin</key>
177
+ <string>\[ (:def) \|</string>
178
+ <key>captures</key>
179
+ <dict>
180
+ <key>1</key>
181
+ <dict>
182
+ <key>name</key>
183
+ <string>variable.other</string>
184
+ </dict>
185
+ </dict>
186
+ <key>end</key>
187
+ <string>]</string>
188
+ <key>name</key>
189
+ <string>meta.smalltalk.classbody</string>
190
+ <key>patterns</key>
191
+ <array>
192
+ <dict>
193
+ <key>include</key>
194
+ <string>#block</string>
195
+ </dict>
196
+ <dict>
197
+ <key>include</key>
198
+ <string>#methoddef</string>
199
+ </dict>
200
+ <dict>
201
+ <key>include</key>
202
+ <string>#methoddefx</string>
203
+ </dict>
204
+ <dict>
205
+ <key>include</key>
206
+ <string>#classdefkeyword</string>
207
+ </dict>
208
+ <dict>
209
+ <key>include</key>
210
+ <string>#symbol</string>
211
+ </dict>
212
+ <dict>
213
+ <key>include</key>
214
+ <string>#containerComment</string>
215
+ </dict>
216
+ </array>
217
+ </dict>
218
+ <dict>
219
+ <key>match</key>
220
+ <string>\b(super|self|thisContext)\b</string>
221
+ <key>name</key>
222
+ <string>keyword.language.smalltalk</string>
223
+ </dict>
224
+ <dict>
225
+ <key>match</key>
226
+ <string>(\:\=|\^)</string>
227
+ <key>name</key>
228
+ <string>keyword.language.smalltalk</string>
229
+ </dict>
230
+ <dict>
231
+ <key>match</key>
232
+ <string>\b(nil|true|false)\b</string>
233
+ <key>name</key>
234
+ <string>constant.language.smalltalk</string>
235
+ </dict>
236
+ <dict>
237
+ <key>begin</key>
238
+ <string>"</string>
239
+ <key>end</key>
240
+ <string>"</string>
241
+ <key>name</key>
242
+ <string>comment.block.smalltalk</string>
243
+ </dict>
244
+ <dict>
245
+ <key>begin</key>
246
+ <string>'</string>
247
+ <key>end</key>
248
+ <string>'</string>
249
+ <key>name</key>
250
+ <string>string.smalltalk</string>
251
+ <key>patterns</key>
252
+ <array>
253
+ <dict>
254
+ <key>match</key>
255
+ <string>''</string>
256
+ <key>name</key>
257
+ <string>constant.string.escape</string>
258
+ </dict>
259
+ </array>
260
+ </dict>
261
+ </array>
262
+ <key>repository</key>
263
+ <dict>
264
+ <key>block</key>
265
+ <dict>
266
+ <key>begin</key>
267
+ <string>\[</string>
268
+ <key>end</key>
269
+ <string>\]</string>
270
+ <key>name</key>
271
+ <string>meta.block.smalltalk</string>
272
+ <key>patterns</key>
273
+ <array>
274
+ <dict>
275
+ <key>include</key>
276
+ <string>#block</string>
277
+ </dict>
278
+ <dict>
279
+ <key>include</key>
280
+ <string>#deferredblock</string>
281
+ </dict>
282
+ <dict>
283
+ <key>include</key>
284
+ <string>#param</string>
285
+ </dict>
286
+ <dict>
287
+ <key>include</key>
288
+ <string>#comment</string>
289
+ </dict>
290
+ <dict>
291
+ <key>include</key>
292
+ <string>#keyword</string>
293
+ </dict>
294
+ <dict>
295
+ <key>include</key>
296
+ <string>#langvar</string>
297
+ </dict>
298
+ <dict>
299
+ <key>include</key>
300
+ <string>#constant</string>
301
+ </dict>
302
+ <dict>
303
+ <key>include</key>
304
+ <string>#symbol</string>
305
+ </dict>
306
+ <dict>
307
+ <key>include</key>
308
+ <string>#string</string>
309
+ </dict>
310
+ </array>
311
+ </dict>
312
+ <key>classdefkeyword</key>
313
+ <dict>
314
+ <key>match</key>
315
+ <string>[a-zA-Z_][a-zA-Z0-9_]*:</string>
316
+ <key>name</key>
317
+ <string>keyword.language.classdef.smalltalk</string>
318
+ </dict>
319
+ <key>comment</key>
320
+ <dict>
321
+ <key>begin</key>
322
+ <string>"</string>
323
+ <key>end</key>
324
+ <string>"</string>
325
+ <key>name</key>
326
+ <string>comment.block.smalltalk</string>
327
+ </dict>
328
+ <key>constant</key>
329
+ <dict>
330
+ <key>match</key>
331
+ <string>\b(nil|true|false)\b</string>
332
+ <key>name</key>
333
+ <string>constant.language.smalltalk</string>
334
+ </dict>
335
+ <key>containerComment</key>
336
+ <dict>
337
+ <key>begin</key>
338
+ <string>@@ '(\s.*)</string>
339
+ <key>contentName</key>
340
+ <string>comment.block.container.smalltalk</string>
341
+ <key>end</key>
342
+ <string>(\s.*)';</string>
343
+ <key>patterns</key>
344
+ <array>
345
+ <dict>
346
+ <key>match</key>
347
+ <string>''</string>
348
+ <key>name</key>
349
+ <string>constant.string.escape</string>
350
+ </dict>
351
+ </array>
352
+ </dict>
353
+ <key>deferredblock</key>
354
+ <dict>
355
+ <key>begin</key>
356
+ <string>(:\[)</string>
357
+ <key>captures</key>
358
+ <dict>
359
+ <key>1</key>
360
+ <dict>
361
+ <key>name</key>
362
+ <string>keyword.language.smalltalk.deferredblock</string>
363
+ </dict>
364
+ </dict>
365
+ <key>end</key>
366
+ <string>(\])</string>
367
+ <key>name</key>
368
+ <string>meta.deferredblock.smalltalk</string>
369
+ <key>patterns</key>
370
+ <array>
371
+ <dict>
372
+ <key>include</key>
373
+ <string>#block</string>
374
+ </dict>
375
+ <dict>
376
+ <key>include</key>
377
+ <string>#deferredblock</string>
378
+ </dict>
379
+ <dict>
380
+ <key>include</key>
381
+ <string>#param</string>
382
+ </dict>
383
+ <dict>
384
+ <key>include</key>
385
+ <string>#comment</string>
386
+ </dict>
387
+ <dict>
388
+ <key>include</key>
389
+ <string>#keyword</string>
390
+ </dict>
391
+ <dict>
392
+ <key>include</key>
393
+ <string>#langvar</string>
394
+ </dict>
395
+ <dict>
396
+ <key>include</key>
397
+ <string>#constant</string>
398
+ </dict>
399
+ <dict>
400
+ <key>include</key>
401
+ <string>#symbol</string>
402
+ </dict>
403
+ <dict>
404
+ <key>include</key>
405
+ <string>#string</string>
406
+ </dict>
407
+ </array>
408
+ </dict>
409
+ <key>keyword</key>
410
+ <dict>
411
+ <key>match</key>
412
+ <string>[a-zA-Z_][a-zA-Z0-9_]*:</string>
413
+ <key>name</key>
414
+ <string>keyword.language.smalltalk</string>
415
+ </dict>
416
+ <key>langvar</key>
417
+ <dict>
418
+ <key>match</key>
419
+ <string>\b(super|self|thisContext)\b</string>
420
+ <key>name</key>
421
+ <string>variable.language.smalltalk</string>
422
+ </dict>
423
+ <key>methoddef</key>
424
+ <dict>
425
+ <key>begin</key>
426
+ <string>(method:|class_method:)\s*(:\[)\s*$</string>
427
+ <key>beginCaptures</key>
428
+ <dict>
429
+ <key>1</key>
430
+ <dict>
431
+ <key>name</key>
432
+ <string>keyword.language.classdef.smalltalk</string>
433
+ </dict>
434
+ <key>2</key>
435
+ <dict>
436
+ <key>name</key>
437
+ <string>keyword.language.classdef.smalltalk</string>
438
+ </dict>
439
+ </dict>
440
+ <key>end</key>
441
+ <string>(;)</string>
442
+ <key>endCaptures</key>
443
+ <dict>
444
+ <key>1</key>
445
+ <dict>
446
+ <key>name</key>
447
+ <string>keyword.language.classdef.smalltalk</string>
448
+ </dict>
449
+ </dict>
450
+ <key>name</key>
451
+ <string>meta.methoddef.smalltalk</string>
452
+ <key>patterns</key>
453
+ <array>
454
+ <dict>
455
+ <key>include</key>
456
+ <string>#methoddefbody</string>
457
+ </dict>
458
+ </array>
459
+ </dict>
460
+ <key>methoddefbody</key>
461
+ <dict>
462
+ <key>begin</key>
463
+ <string>(?x:
464
+ ^\s*
465
+ (
466
+ (
467
+ [a-zA-Z_][a-zA-Z0-9_]*
468
+ )
469
+ |
470
+ (
471
+ (
472
+ [a-zA-Z_][a-zA-Z0-9_]*:
473
+ \s+
474
+ [a-zA-Z_][a-zA-Z0-9_]*
475
+ \s*
476
+ )+
477
+ )
478
+ )
479
+ \s*$
480
+ )</string>
481
+ <key>beginCaptures</key>
482
+ <dict>
483
+ <key>1</key>
484
+ <dict>
485
+ <key>name</key>
486
+ <string>keyword.language.methoddefselector.smalltalk</string>
487
+ </dict>
488
+ </dict>
489
+ <key>end</key>
490
+ <string>(])</string>
491
+ <key>endCaptures</key>
492
+ <dict>
493
+ <key>0</key>
494
+ <dict>
495
+ <key>name</key>
496
+ <string>keyword.language.classdef.smalltalk</string>
497
+ </dict>
498
+ </dict>
499
+ <key>name</key>
500
+ <string>meta.methoddefbody.smalltalk</string>
501
+ <key>patterns</key>
502
+ <array>
503
+ <dict>
504
+ <key>include</key>
505
+ <string>#block</string>
506
+ </dict>
507
+ <dict>
508
+ <key>include</key>
509
+ <string>#param</string>
510
+ </dict>
511
+ <dict>
512
+ <key>include</key>
513
+ <string>#comment</string>
514
+ </dict>
515
+ <dict>
516
+ <key>include</key>
517
+ <string>#keyword</string>
518
+ </dict>
519
+ <dict>
520
+ <key>include</key>
521
+ <string>#langvar</string>
522
+ </dict>
523
+ <dict>
524
+ <key>include</key>
525
+ <string>#constant</string>
526
+ </dict>
527
+ <dict>
528
+ <key>include</key>
529
+ <string>#symbol</string>
530
+ </dict>
531
+ <dict>
532
+ <key>include</key>
533
+ <string>#string</string>
534
+ </dict>
535
+ </array>
536
+ </dict>
537
+ <key>methoddefx</key>
538
+ <dict>
539
+ <key>begin</key>
540
+ <string>(method:|class_method:)\s*(:\[)\s*(.+)</string>
541
+ <key>beginCaptures</key>
542
+ <dict>
543
+ <key>1</key>
544
+ <dict>
545
+ <key>name</key>
546
+ <string>keyword.language.classdef.smalltalk</string>
547
+ </dict>
548
+ <key>2</key>
549
+ <dict>
550
+ <key>name</key>
551
+ <string>keyword.language.classdef.smalltalk</string>
552
+ </dict>
553
+ <key>3</key>
554
+ <dict>
555
+ <key>name</key>
556
+ <string>keyword.language.methoddefselector.smalltalk</string>
557
+ </dict>
558
+ </dict>
559
+ <key>end</key>
560
+ <string>(];)</string>
561
+ <key>endCaptures</key>
562
+ <dict>
563
+ <key>1</key>
564
+ <dict>
565
+ <key>name</key>
566
+ <string>keyword.language.classdef.smalltalk</string>
567
+ </dict>
568
+ </dict>
569
+ <key>name</key>
570
+ <string>meta.methoddefx.smalltalk</string>
571
+ <key>patterns</key>
572
+ <array>
573
+ <dict>
574
+ <key>include</key>
575
+ <string>#block</string>
576
+ </dict>
577
+ <dict>
578
+ <key>include</key>
579
+ <string>#param</string>
580
+ </dict>
581
+ <dict>
582
+ <key>include</key>
583
+ <string>#comment</string>
584
+ </dict>
585
+ <dict>
586
+ <key>include</key>
587
+ <string>#keyword</string>
588
+ </dict>
589
+ <dict>
590
+ <key>include</key>
591
+ <string>#langvar</string>
592
+ </dict>
593
+ <dict>
594
+ <key>include</key>
595
+ <string>#constant</string>
596
+ </dict>
597
+ <dict>
598
+ <key>include</key>
599
+ <string>#symbol</string>
600
+ </dict>
601
+ <dict>
602
+ <key>include</key>
603
+ <string>#string</string>
604
+ </dict>
605
+ </array>
606
+ </dict>
607
+ <key>param</key>
608
+ <dict>
609
+ <key>match</key>
610
+ <string>:[a-zA-Z_][a-zA-Z0-9_]*</string>
611
+ <key>name</key>
612
+ <string>variable.other</string>
613
+ </dict>
614
+ <key>string</key>
615
+ <dict>
616
+ <key>begin</key>
617
+ <string>'</string>
618
+ <key>end</key>
619
+ <string>'</string>
620
+ <key>name</key>
621
+ <string>string.smalltalk</string>
622
+ <key>patterns</key>
623
+ <array>
624
+ <dict>
625
+ <key>match</key>
626
+ <string>''</string>
627
+ <key>name</key>
628
+ <string>constant.string.escape</string>
629
+ </dict>
630
+ </array>
631
+ </dict>
632
+ <key>symbol</key>
633
+ <dict>
634
+ <key>match</key>
635
+ <string>#[a-zA-Z_][a-zA-Z0-9_:]*</string>
636
+ <key>name</key>
637
+ <string>constant.other</string>
638
+ </dict>
639
+ </dict>
640
+ <key>scopeName</key>
641
+ <string>source.smalltalk.mist</string>
642
+ <key>uuid</key>
643
+ <string>09A69C90-642D-49B4-A7F8-6DC03CC25732</string>
644
+ </dict>
645
+ </plist>