diakonos 0.8.8 → 0.9.8

Sign up to get free protection for your applications and to get access to all the features.
Files changed (111) hide show
  1. checksums.yaml +7 -0
  2. data/CHANGELOG +433 -0
  3. data/LICENCE.md +675 -0
  4. data/bin/diakonos +6 -0
  5. data/diakonos-256-colour.conf +220 -0
  6. data/diakonos.conf +1802 -0
  7. data/help/about-help.dhf +31 -0
  8. data/help/clipboard.dhf +45 -0
  9. data/help/close-file.dhf +6 -0
  10. data/help/code-block-navigation.dhf +16 -0
  11. data/help/column-markers.dhf +15 -0
  12. data/help/config.dhf +69 -0
  13. data/help/cursor-stack.dhf +19 -0
  14. data/help/delete.dhf +41 -0
  15. data/help/extensions.dhf +125 -0
  16. data/help/file-type.dhf +24 -0
  17. data/help/key-mapping.dhf +127 -0
  18. data/help/line-numbers.dhf +22 -0
  19. data/help/macros.dhf +27 -0
  20. data/help/new-file.dhf +6 -0
  21. data/help/open-file.dhf +21 -0
  22. data/help/quit.dhf +7 -0
  23. data/help/resizing.dhf +19 -0
  24. data/help/ruby.dhf +17 -0
  25. data/help/save-file.dhf +10 -0
  26. data/help/scripting.dhf +92 -0
  27. data/help/search.dhf +103 -0
  28. data/help/shell.dhf +60 -0
  29. data/help/speed.dhf +23 -0
  30. data/help/support.dhf +15 -0
  31. data/help/switch-buffers.dhf +15 -0
  32. data/help/tabs.dhf +36 -0
  33. data/help/undo.dhf +9 -0
  34. data/help/uninstall.dhf +18 -0
  35. data/help/welcome.dhf +32 -0
  36. data/help/word-wrap.dhf +17 -0
  37. data/lib/diakonos/about.rb +69 -0
  38. data/lib/diakonos/bookmark.rb +46 -0
  39. data/lib/diakonos/buffer/bookmarking.rb +47 -0
  40. data/lib/diakonos/buffer/cursor.rb +335 -0
  41. data/lib/diakonos/buffer/delete.rb +170 -0
  42. data/lib/diakonos/buffer/display.rb +356 -0
  43. data/lib/diakonos/buffer/file.rb +157 -0
  44. data/lib/diakonos/buffer/indentation.rb +175 -0
  45. data/lib/diakonos/buffer/searching.rb +552 -0
  46. data/lib/diakonos/buffer/selection.rb +360 -0
  47. data/lib/diakonos/buffer/undo.rb +73 -0
  48. data/lib/diakonos/buffer-hash.rb +60 -0
  49. data/lib/diakonos/buffer-management.rb +59 -0
  50. data/lib/diakonos/buffer.rb +698 -0
  51. data/lib/diakonos/clipboard-klipper-dbus.rb +62 -0
  52. data/lib/diakonos/clipboard-klipper.rb +62 -0
  53. data/lib/diakonos/clipboard-osx.rb +59 -0
  54. data/lib/diakonos/clipboard-xclip.rb +60 -0
  55. data/lib/diakonos/clipboard.rb +47 -0
  56. data/lib/diakonos/config-file.rb +67 -0
  57. data/lib/diakonos/config.rb +381 -0
  58. data/lib/diakonos/core-ext/enumerable.rb +15 -0
  59. data/lib/diakonos/core-ext/hash.rb +60 -0
  60. data/lib/diakonos/core-ext/object.rb +6 -0
  61. data/lib/diakonos/core-ext/regexp.rb +6 -0
  62. data/lib/diakonos/core-ext/string.rb +122 -0
  63. data/lib/diakonos/ctag.rb +28 -0
  64. data/lib/diakonos/cursor.rb +27 -0
  65. data/lib/diakonos/display/format.rb +75 -0
  66. data/lib/diakonos/display.rb +336 -0
  67. data/lib/diakonos/extension-set.rb +49 -0
  68. data/lib/diakonos/extension.rb +34 -0
  69. data/lib/diakonos/finding.rb +40 -0
  70. data/lib/diakonos/functions/basics.rb +34 -0
  71. data/lib/diakonos/functions/bookmarking.rb +61 -0
  72. data/lib/diakonos/functions/buffers.rb +489 -0
  73. data/lib/diakonos/functions/clipboard.rb +70 -0
  74. data/lib/diakonos/functions/cursor.rb +264 -0
  75. data/lib/diakonos/functions/grepping.rb +83 -0
  76. data/lib/diakonos/functions/indentation.rb +71 -0
  77. data/lib/diakonos/functions/readline.rb +93 -0
  78. data/lib/diakonos/functions/search.rb +179 -0
  79. data/lib/diakonos/functions/selection.rb +98 -0
  80. data/lib/diakonos/functions/sessions.rb +78 -0
  81. data/lib/diakonos/functions/shell.rb +250 -0
  82. data/lib/diakonos/functions/tags.rb +65 -0
  83. data/lib/diakonos/functions/text-manipulation.rb +196 -0
  84. data/lib/diakonos/functions-deprecated.rb +77 -0
  85. data/lib/diakonos/functions.rb +292 -0
  86. data/lib/diakonos/grep.rb +98 -0
  87. data/lib/diakonos/help.rb +47 -0
  88. data/lib/diakonos/hooks.rb +13 -0
  89. data/lib/diakonos/installation.rb +19 -0
  90. data/lib/diakonos/interaction-handler.rb +216 -0
  91. data/lib/diakonos/interaction.rb +52 -0
  92. data/lib/diakonos/key-map.rb +62 -0
  93. data/lib/diakonos/keying.rb +442 -0
  94. data/lib/diakonos/line-mover.rb +42 -0
  95. data/lib/diakonos/list.rb +59 -0
  96. data/lib/diakonos/logging.rb +27 -0
  97. data/lib/diakonos/mode.rb +17 -0
  98. data/lib/diakonos/mouse.rb +18 -0
  99. data/lib/diakonos/number-fitter.rb +11 -0
  100. data/lib/diakonos/range.rb +31 -0
  101. data/lib/diakonos/readline/functions.rb +82 -0
  102. data/lib/diakonos/readline.rb +222 -0
  103. data/lib/diakonos/search.rb +58 -0
  104. data/lib/diakonos/sessions.rb +257 -0
  105. data/lib/diakonos/sized-array.rb +48 -0
  106. data/lib/diakonos/text-mark.rb +19 -0
  107. data/lib/diakonos/vendor/fuzzy_file_finder.rb +365 -0
  108. data/lib/diakonos/version.rb +25 -0
  109. data/lib/diakonos/window.rb +43 -0
  110. data/lib/diakonos.rb +592 -0
  111. metadata +160 -66
data/diakonos.conf ADDED
@@ -0,0 +1,1802 @@
1
+ # suppress_welcome true
2
+
3
+ logfile ~/.diakonos/diakonos.log
4
+
5
+ # session.default_session default-session
6
+
7
+ # mouse false
8
+
9
+ # ---------------------------------------------------------------------
10
+ # Colour Definitions
11
+ #
12
+ # colour <integer greater than 7> <foreground colour> <background colour>
13
+ #
14
+ # For a list of colour names, see the list of format codes in the
15
+ # Language Definitions section, below.
16
+ #
17
+ # With this colour command you can set a different background colour than the
18
+ # terminal default.
19
+ #
20
+ # color is a synonym for colour.
21
+ colour 8 white blue
22
+ colour 9 white red
23
+ colour 10 white magenta
24
+ colour 11 yellow blue
25
+ colour 12 white green
26
+ colour 13 white brown
27
+ colour 14 black cyan
28
+ colour 15 yellow red
29
+
30
+ # Default background colour is whatever the terminal is set to (including
31
+ # transparency, if supported).
32
+ # Black is 0. Greyscale goes from 232 (dark grey) to 255 (white).
33
+
34
+ # colour.background 250
35
+
36
+ # When the cursor is view.margin.y lines or less from the top or
37
+ # bottom line, repeatedly scroll the screen view.jump.y lines until
38
+ # the cursor is more than view.margin.y lines from the top and
39
+ # bottom line.
40
+ # Similarly for view.margin.x and view.jump.x, with respect to the
41
+ # left-most and right-most screen columns.
42
+ view.margin.x 10
43
+ view.margin.y 5
44
+ view.jump.x 10
45
+ view.jump.y 5
46
+ view.scroll_amount 1
47
+ view.lookback 200
48
+ view.nonfilelines.visible false
49
+ view.nonfilelines.character ~
50
+ view.wrap.visual true
51
+
52
+ view.pairs.highlight true
53
+
54
+ view.line_numbers false
55
+ view.line_numbers.width 4
56
+ # view.line_numbers.number_format is a "printf" style format string
57
+ view.line_numbers.number_format "%3s "
58
+ view.line_numbers.format white
59
+
60
+ #view.column_markers.margin.column 80
61
+ view.column_markers.margin.format 9
62
+
63
+ view.non_search_area.format black
64
+
65
+ # bol_behaviour: This specifies where the cursor should go when the
66
+ # beginning-of-line key (the default is the Home key) is pressed.
67
+ # zero: Always move to the left-most column of the line
68
+ # first-char: Always move to the left-most non-whitespace character
69
+ # alternating-zero: As with 'zero', unless the cursor is
70
+ # already there, in which case, as with 'first-char'.
71
+ # alternating-first-char: As with 'first-char', unless the cursor is
72
+ # already there, in which case, as with 'zero'.
73
+ # bol_behavior is a synonym for bol_behaviour.
74
+ bol_behaviour alternating-first-char
75
+
76
+ # eol_behaviour: This specifies where the cursor should go when the
77
+ # end-of-line key (the default is the End key) is pressed.
78
+ # end: Always move to the right-most column of the line
79
+ # last-char: Always move to the right-most non-whitespace character
80
+ # alternating-end: As with 'end', unless the cursor is
81
+ # already there, in which case, as with 'last-char'.
82
+ # alternating-last-char: As with 'last-char', unless the cursor is
83
+ # already there, in which case, as with 'end'.
84
+ # eol_behavior is a synonym for eol_behaviour.
85
+ eol_behaviour alternating-end
86
+
87
+ delete_newline_on_delete_to_eol false
88
+
89
+ # Specifies whether the cursor should be at the end (false) of found text, or the
90
+ # beginning (true).
91
+ found_cursor_start false
92
+ find.return_on_abort false
93
+ find.show_context_after true
94
+ grep.context 0
95
+
96
+ max_clips 30
97
+
98
+ # If you are using KDE, you can uncomment this line to make Diakonos use KDE's
99
+ # klipper instead of its own internal clipboard. Use klipper-dcop for KDE 3,
100
+ # klipper-dbus for KDE 4.
101
+ #clipboard.external klipper-dcop
102
+ #clipboard.external klipper-dbus
103
+
104
+ # Non-KDE users can try xclip (separate, third-party software package)
105
+ # OSX users can set this to osx
106
+ #clipboard.external xclip
107
+ #clipboard.external osx
108
+
109
+ # The maximum number of undo lines held in memory per file
110
+ # Smaller files will be able to have more undo levels.
111
+ max_undo_lines 16384
112
+
113
+ convert_tabs false
114
+ strip_trailing_whitespace_on_save true
115
+ # Ensures saved files end with a newline character by adding it if necessary:
116
+ eof_newline true
117
+ save_backup_files false
118
+
119
+ diff_command diff -U 5
120
+
121
+ # Whether or not to use /usr/bin/file to determine whether files are readable
122
+ # before opening them.
123
+ use_magic_file false
124
+
125
+ fuzzy_file_find true
126
+ # fuzzy_file_find.recursive true
127
+ fuzzy_file_find.max_files 8192
128
+ # Fuzzy file finder ignores. Uses glob syntax, as per File.fnmatch
129
+ # http://www.ruby-doc.org/core/classes/File.html#M000001
130
+ # fuzzy_file_find.ignore some/relative/path/glob*
131
+ # fuzzy_file_find.ignore some/other/relative/path/glob*
132
+
133
+ fuzzy_file_find.ignore node_modules
134
+ fuzzy_file_find.ignore **/node_modules
135
+ fuzzy_file_find.ignore log
136
+ fuzzy_file_find.ignore tmp
137
+ fuzzy_file_find.ignore **/tmp
138
+ fuzzy_file_find.ignore **/dist
139
+
140
+ # By default, opened files are added to the end of the buffer list.
141
+ # i.e. with 3 buffers already open, opening a file will put it into buffer number 4
142
+ # Set open_as_first_buffer to true to put the next opened file into buffer number 1.
143
+ #open_as_first_buffer true
144
+
145
+ # ---------------------------------------------------------------------
146
+ # Status Line
147
+
148
+ # Use "% syntax" as placeholders
149
+ # e.g. %d for decimal integers, %s for strings
150
+ status.left -- %s %s%s%s%s -- (%s) --
151
+ status.right - %s Buf %d of %d --- L%3d/%3d C%2d --
152
+ # The string to use to fill in the space between the left and right sides
153
+ # of the status line.
154
+ status.filler -
155
+ status.modified_str (modified)
156
+ status.selecting_str (selecting)
157
+ status.unnamed_str (unnamed file)
158
+ status.read_only_str (read-only)
159
+ # status.vars: any subset of:
160
+ # line row num_lines col filename modified type buffer_number num_buffers selecting selection_mode session_name read_only
161
+ status.vars filename modified read_only selecting selection_mode type session_name buffer_number num_buffers row num_lines col
162
+ status.format inverse
163
+
164
+ # ---------------------------------------------------------------------
165
+ # Context Line
166
+
167
+ # The context line shows the wrapping context of the cursor, with respect to
168
+ # indentation. This shows the current code block(s) that the cursor is in.
169
+
170
+ context.visible false
171
+ context.combined false
172
+ context.max_levels 4
173
+ context.format inverse
174
+ context.separator |
175
+ context.separator.format red inverse
176
+ #context.max_segment_width 10
177
+
178
+ # ---------------------------------------------------------------------
179
+ # Interaction Line
180
+
181
+ # Duration of "alert" blink (in seconds) when user has made an invalid choice
182
+ interaction.blink_duration 0.05
183
+ interaction.blink_string ***********************************************************
184
+ # Time to wait (in seconds) before accepting user keystrokes when prompting for
185
+ # a choice which has no default
186
+ interaction.choice_delay 3
187
+
188
+ # ---------------------------------------------------------------------
189
+ # Key Configuration
190
+ #
191
+ # key <keystroke> [<keystroke>...];<function> [<arg>[,<arg>...]]
192
+ # If no function is specified, it unmaps any previous mapping.
193
+ # i.e. key <keystroke> [<keystroke>...];
194
+ # <keystroke> can be "keycode##" to specify specific keycodes.
195
+ # e.g. key keycode8;delete
196
+ # Note the lack of space after the word keycode.
197
+
198
+ # To obtain the string to use for any keychain, use the printKeychain command
199
+ # (default alt+k).
200
+
201
+ # The shell, execute and pasteShellResult commands can take variables:
202
+
203
+ # $f current buffer's filepath
204
+ # $d current buffer's directory
205
+ # $F all current buffer filepaths, space-separated
206
+ # $i get a string from user input
207
+ # $c temp file containing current clipboard text
208
+ # $s temp file containing currently selected text
209
+
210
+ key left;cursorLeft
211
+ key right;cursorRight
212
+ key up;cursorUp
213
+ key down;cursorDown
214
+ key home;cursorBOL
215
+ key esc O H;cursorBOL
216
+ key esc [ H;cursorBOL
217
+ key esc [ 1 ~ cursorBOL
218
+ key esc [ 7 ~ cursorBOL
219
+ key end;cursorEOL
220
+ key esc O F;cursorEOL
221
+ key esc [ F;cursorEOL
222
+ key esc [ 4 ~;cursorEOL
223
+ key esc [ 8 ~;cursorEOL
224
+ key pageup;pageUp
225
+ key pagedown;pageDown
226
+ #key ctrl+a;cursorBOL
227
+ key ctrl+e;cursorEOL
228
+ key alt+<;cursorBOF
229
+ key esc [ 1 ; 5 H cursor_bof
230
+ key keycode537 cursor_bof
231
+ key esc [ 1 ^ cursor_bof
232
+ key esc [ 7 ^ cursor_bof
233
+ key alt+>;cursorEOF
234
+ key esc [ 1 ; 5 F cursor_eof
235
+ key esc [ 4 ^ cursor_eof
236
+ key esc [ 8 ^ cursor_eof
237
+ key keycode532 cursor_eof
238
+ key alt+,;cursorTOV
239
+ key alt+.;cursorBOV
240
+ key ctrl+j cursor_return
241
+ key ctrl+l cursor_return :forward
242
+ key esc ` cursor_return :backward, DIFFERENT_FILE
243
+ key esc ~ cursor_return :forward, DIFFERENT_FILE
244
+ key alt+n go_to_char
245
+ key esc N go_to_char :after
246
+ key alt+p go_to_char_previous
247
+ key esc P go_to_char_previous :after
248
+ key esc up scrollUp
249
+ key esc O a scrollUp
250
+ key esc [ A scrollUp
251
+ key esc [ 1 ; 3 A scrollUp
252
+ key esc [ 1 ; 5 A scrollUp
253
+ key keycode520 scrollUp
254
+ key keycode521 scrollUp
255
+ key keycode568 scrollUp
256
+ key keycode570 scrollUp
257
+ key keycode571 scrollUp
258
+ key keycode572 scrollUp
259
+ key keycode574 scrollUp
260
+ key esc down scrollDown
261
+ key esc O b scrollDown
262
+ key esc [ B scrollDown
263
+ key esc [ 1 ; 3 B scrollDown
264
+ key esc [ 1 ; 5 B scrollDown
265
+ key keycode513 scrollDown
266
+ key keycode514 scrollDown
267
+ key keycode527 scrollDown
268
+ key keycode529 scrollDown
269
+ key keycode531 scrollDown
270
+
271
+ # Alt-right-arrow or Ctrl-right-arrow: next word
272
+ key esc right seek /(?:^|\W)(\w)/
273
+ key esc O c seek /(?:^|\W)(\w)/
274
+ key esc [ C seek /(?:^|\W)(\w)/
275
+ key esc [ 1 ; 3 C seek /(?:^|\W)(\w)/
276
+ key esc [ 1 ; 5 C seek /(?:^|\W)(\w)/
277
+ key esc [ 1 ; ; C seek /(?:^|\W)(\w)/
278
+ key keycode517 seek /(?:^|\W)(\w)/
279
+ key keycode518 seek /(?:^|\W)(\w)/
280
+ key keycode553 seek /(?:^|\W)(\w)/
281
+ key keycode555 seek /(?:^|\W)(\w)/
282
+ key keycode565 seek /(?:^|\W)(\w)/
283
+
284
+ # Alt-left-arrow or Ctrl-left-arrow: previous word
285
+ key esc left seek /\w(\W|$)/, :up
286
+ key esc O d seek /\w(\W|$)/, :up
287
+ key esc [ D seek /\w(\W|$)/, :up
288
+ key esc [ 1 ; 3 D seek /\w(\W|$)/, :up
289
+ key esc [ 1 ; 5 D seek /\w(\W|$)/, :up
290
+ key esc [ 1 ; ; D seek /\w(\W|$)/, :up
291
+ key keycode515 seek /\w(\W|$)/, :up
292
+ key keycode516 seek /\w(\W|$)/, :up
293
+ key keycode538 seek /\w(\W|$)/, :up
294
+ key keycode540 seek /\w(\W|$)/, :up
295
+ key keycode547 seek /\w(\W|$)/, :up
296
+
297
+ key esc [ 5 ; 5 ~ go_block_previous
298
+ key esc [ 6 ; 5 ~ go_block_next
299
+ key esc [ 5 ; 3 ~ go_block_outer
300
+ key esc [ 6 ; 3 ~ go_block_inner
301
+ key esc { go_to_pair_match
302
+ key esc } go_to_pair_match
303
+
304
+ key ctrl+g;goToLineAsk
305
+ key alt+b alt+b;toggleBookmark
306
+ key alt+b alt+n;goToNextBookmark
307
+ key alt+b alt+p;goToPreviousBookmark
308
+ key alt+b alt+a;addNamedBookmark
309
+ key alt+b alt+r;removeNamedBookmark
310
+ key alt+b alt+g;goToNamedBookmark
311
+ key alt+b alt+!;addNamedBookmark 1
312
+ key alt+b alt+@;addNamedBookmark 2
313
+ key alt+b alt+#;addNamedBookmark 3
314
+ key alt+b alt+$;addNamedBookmark 4
315
+ key alt+b alt+%;addNamedBookmark 5
316
+ key alt+b alt+1;goToNamedBookmark 1
317
+ key alt+b alt+2;goToNamedBookmark 2
318
+ key alt+b alt+3;goToNamedBookmark 3
319
+ key alt+b alt+4;goToNamedBookmark 4
320
+ key alt+b alt+5;goToNamedBookmark 5
321
+ key alt+t;goToTag
322
+ key alt+);goToTagUnderCursor
323
+ key alt+(;popTag
324
+
325
+ key backspace backspace
326
+ key ctrl+h backspace
327
+ key del delete
328
+ #key ctrl+k deleteLine
329
+ key ctrl+k delete_and_store_line
330
+ key ctrl+d ctrl+d delete_and_store_line
331
+ key ctrl+alt+k delete_to_eol
332
+ key ctrl+d $ delete_to_eol
333
+ key ctrl+d t delete_to
334
+ key ctrl+d ctrl+t delete_to
335
+ key ctrl+d f delete_from
336
+ key ctrl+d ctrl+f delete_from
337
+ key ctrl+d i delete_to_and_from
338
+ key ctrl+d I delete_to_and_from :inclusive
339
+ key ctrl+d ctrl+i delete_to_and_from
340
+ key esc del collapse_whitespace
341
+ key esc [ 3 ; ; ~ collapse_whitespace
342
+ key esc [ 3 ; 3 ~ collapse_whitespace
343
+ key alt+w wrap_paragraph
344
+ key alt+a columnize
345
+ key enter carriageReturn
346
+ key tab parsedIndent
347
+ #key tab indent
348
+ #key ctrl+alt+l unindent
349
+ key alt+i indent
350
+ key esc i indent
351
+ key esc I unindent
352
+ key esc [ Z unindent
353
+ key keycode353 unindent
354
+ #key tab insertSpaces 4
355
+ #key tab insertTab
356
+ key ctrl+t insertTab
357
+ key alt+j join_lines
358
+ key esc J join_lines_upward
359
+ key esc [ 1 ; 6 A move_lines direction: :up
360
+ key esc [ 1 ; 6 B move_lines direction: :down
361
+
362
+ key f1 help
363
+ key esc O P help
364
+ key esc [ 1 1 ~ help
365
+ key esc [ [ A help
366
+ key f13 help
367
+ key esc O 2 P help
368
+ key esc O 1 ; 2 P help
369
+ key f11 about
370
+ key esc [ 2 3 ~ about
371
+ key f12 openFile "~/.diakonos/diakonos.conf"
372
+ key esc [ 2 4 ~ openFile "~/.diakonos/diakonos.conf"
373
+ # Option-F12 in OSX
374
+ key f17 openFile "~/.diakonos/diakonos.conf"
375
+
376
+ key ctrl+alt+r redraw
377
+ key esc C toggleSessionSetting 'context.visible', DO_REDRAW
378
+ key ctrl+alt+d toggleSessionSetting 'display'
379
+ key esc W toggleSessionSetting 'view.wrap.visual', DO_REDRAW
380
+ key esc L toggleSessionSetting 'view.line_numbers', DO_REDRAW
381
+
382
+ key ctrl+n new_file
383
+ key ctrl+o open_file_ask
384
+ key alt+o open_matching_files
385
+ key ctrl+s save_file
386
+ key esc S save_file_as
387
+ key ctrl+w close_buffer
388
+ key ctrl+alt+o revert
389
+ key alt+! setReadOnly
390
+ key ctrl+q quit
391
+ key esc T setBufferType
392
+ key esc s esc n name_session
393
+ key esc s n name_session
394
+ key esc s esc l load_session
395
+ key esc s l load_session
396
+ key esc s esc d set_session_dir
397
+ key esc s d set_session_dir
398
+
399
+ key alt+1;switchToBufferNumber 1
400
+ key alt+2;switchToBufferNumber 2
401
+ key alt+3;switchToBufferNumber 3
402
+ key alt+4;switchToBufferNumber 4
403
+ key alt+5;switchToBufferNumber 5
404
+ key alt+6;switchToBufferNumber 6
405
+ key alt+7;switchToBufferNumber 7
406
+ key alt+8;switchToBufferNumber 8
407
+ key alt+9;switchToBufferNumber 9
408
+ # key alt+0;switchToBufferNumber 10
409
+ key alt+0 alt+0 switch_to_buffer_number 10
410
+ key alt+0 alt+1 switch_to_buffer_number 11
411
+ key alt+0 alt+2 switch_to_buffer_number 12
412
+ key alt+0 alt+3 switch_to_buffer_number 13
413
+ key alt+0 alt+4 switch_to_buffer_number 14
414
+ key alt+0 alt+5 switch_to_buffer_number 15
415
+ key alt+0 alt+6 switch_to_buffer_number 16
416
+ key alt+0 alt+7 switch_to_buffer_number 17
417
+ key alt+0 alt+8 switch_to_buffer_number 18
418
+ key alt+0 alt+9 switch_to_buffer_number 19
419
+ key alt+0 0 switch_to_buffer_number 10
420
+ key alt+0 1 switch_to_buffer_number 11
421
+ key alt+0 2 switch_to_buffer_number 12
422
+ key alt+0 3 switch_to_buffer_number 13
423
+ key alt+0 4 switch_to_buffer_number 14
424
+ key alt+0 5 switch_to_buffer_number 15
425
+ key alt+0 6 switch_to_buffer_number 16
426
+ key alt+0 7 switch_to_buffer_number 17
427
+ key alt+0 8 switch_to_buffer_number 18
428
+ key alt+0 9 switch_to_buffer_number 19
429
+ key alt+- switchToPreviousBuffer
430
+ key alt+= switchToNextBuffer
431
+ key ctrl+alt+b list_buffers
432
+ key ctrl+b 1 renumber_buffer 1
433
+ key ctrl+b 2 renumber_buffer 2
434
+ key ctrl+b 3 renumber_buffer 3
435
+ key ctrl+b 4 renumber_buffer 4
436
+ key ctrl+b 5 renumber_buffer 5
437
+ key ctrl+b 6 renumber_buffer 6
438
+ key ctrl+b 7 renumber_buffer 7
439
+ key ctrl+b 8 renumber_buffer 8
440
+ key ctrl+b 9 renumber_buffer 9
441
+ key ctrl+b 0 renumber_buffer 10
442
+
443
+ #key ctrl+space toggleSelection
444
+ key ctrl+space anchor_selection
445
+ key ctrl+c copySelection
446
+ key esc [ 2 ; 5 ~ copySelection
447
+ key ctrl+x cutSelection
448
+ key keycode383 cutSelection
449
+ key alt+u removeSelection
450
+ key ctrl+a select_all
451
+ key esc M b selection_mode_block
452
+ key esc M alt+b selection_mode_block
453
+ key esc M esc B selection_mode_block
454
+ key esc M n selection_mode_normal
455
+ key esc M alt+n selection_mode_normal
456
+ key esc M esc N selection_mode_normal
457
+ key esc ctrl+space select_line
458
+ key esc space select_wrapping_block
459
+ key.after anchor_selection ctrl+space select_word
460
+ key.after select_word ctrl+space select_word_another
461
+ key.after select_word_another ctrl+space select_word_another
462
+ key esc [ 1 ; 2 A anchor_unanchored_selection :cursor_up
463
+ key esc [ 1 ; 2 B anchor_unanchored_selection :cursor_down
464
+ key esc [ 1 ; 2 C anchor_unanchored_selection :cursor_right
465
+ key esc [ 1 ; 2 D anchor_unanchored_selection :cursor_left
466
+ key esc [ 1 ; 2 H anchor_unanchored_selection :cursor_bol
467
+ key esc [ 1 ; 2 F anchor_unanchored_selection :cursor_eol
468
+ key esc [ 1 ; 6 H anchor_unanchored_selection :cursor_bof
469
+ key esc [ 1 ; 6 F anchor_unanchored_selection :cursor_eof
470
+ key esc [ 1 ; 6 C anchor_unanchored_selection :seek, /(?:^|\W)(\w)/
471
+ key esc [ 1 ; 4 C anchor_unanchored_selection :seek, /(?:^|\W)(\w)/
472
+ key esc [ 1 ; 6 D anchor_unanchored_selection :seek, /\w(\W|$)/, :up
473
+ key esc [ 1 ; 4 D anchor_unanchored_selection :seek, /\w(\W|$)/, :up
474
+
475
+
476
+ # Select file diff in a patch
477
+ key ctrl+alt+d f select_block /^Index: /, /^(Index: |$)/, false
478
+ # Select a diff hunk in a patch
479
+ key ctrl+alt+d h select_block /^@@ /, /^(@@ |$)/, false
480
+ key esc # comment_out
481
+ key esc @ uncomment
482
+
483
+ key ctrl+alt+v;showClips
484
+ key ctrl+v;paste
485
+ key ctrl+y;unundo
486
+ key ctrl+z;undo
487
+ #key ctrl+z;suspend
488
+ key suspend;undo
489
+ #key suspend;suspend
490
+
491
+ key ctrl+f find
492
+ #key ctrl+f find case_sensitive: true
493
+ key alt+f find nil, case_sensitive: true
494
+ #key alt+f findExact
495
+ key ctrl+alt+f find nil, word_only: true
496
+ key esc F find_clip
497
+ #key ctrl+alt+f find nil, direction: :up, case_sensitive: true
498
+ key f3 find_again :down
499
+ key esc [ [ C find_again :down
500
+ key esc O R find_again :down
501
+ key esc [ 1 3 ~ find_again :down
502
+ key f15 find_again :up
503
+ key esc [ 2 8 ~ find_again :up
504
+ key esc O 2 R find_again :up
505
+ key esc [ 2 5 ~ find_again :up
506
+ key esc [ 1 ; 2 R find_again :up
507
+ key ctrl+r searchAndReplace
508
+ key alt+r searchAndReplace CASE_SENSITIVE
509
+ key ctrl+alt+u clearMatches
510
+ key esc g grep
511
+ key esc G grep_buffers
512
+ key ctrl+alt+g grep_dir
513
+
514
+ key alt+c close_code
515
+ key alt+e complete_word
516
+ key esc E complete_word :up
517
+
518
+ key f2 shell
519
+ key esc O Q shell
520
+ key esc [ 1 2 ~ shell
521
+ key esc [ [ B shell
522
+ key f8;execute
523
+ key esc d shell "diff -U 5 -w -b $c $s", "clipboard.diff"
524
+ #key esc F;shell "grep -n '$i' $F"
525
+ #key esc F;execute "grep -n '$i' $F | less"
526
+ #key esc l execute "aspell check $f"
527
+ key f14 evaluate
528
+ key esc O 2 Q evaluate
529
+ key esc [ 2 6 ~ evaluate
530
+ key esc [ 1 ; 2 Q evaluate
531
+ key ctrl+alt+c shell "ruby -c $f"
532
+ #key f10 spawn "firefox --display=:0 http://apidock.com/ruby/$i"
533
+ #key f10 spawn "DISPLAY=:0 opera --remote 'openURL(http://www.ruby-doc.org/core-1.9/classes/$i.html,new-page)' 2>&1 > /dev/null"
534
+
535
+ # To use the following:
536
+ # 1) Copy to the clipboard some Ruby code which operates on stdin text and outputs to stdout.
537
+ # 2) Select (highlight) some text to operate on.
538
+ # 3) Activate this pasteShellResult command.
539
+ # 4) The selected text should now be replaced with the script's results.
540
+ key ctrl+alt+p;pasteShellResult "cat $s | ruby $c"
541
+ #key ctrl+alt+p;pasteShellResult "cat $s | perl $c"
542
+ #key ctrl+alt+p;pasteShellResult "cat $s | python $c"
543
+ #key ctrl+alt+p;pasteShellResult "cat $s | sed -f $c"
544
+ #key ctrl+alt+p;pasteShellResult "cat $s | awk -f $c"
545
+
546
+ key alt+k printKeychain
547
+ key esc K print_mapped_function
548
+ key alt+m toggleMacroRecording
549
+ key f4 playMacro
550
+ key esc O S playMacro
551
+ key esc [ 1 4 ~ playMacro
552
+ key esc [ [ D playMacro
553
+ key f5 loadScript
554
+ key esc [ 1 5 ~ loadScript
555
+ key esc [ [ E loadScript
556
+ key f6 repeatLast
557
+ key esc [ 1 7 ~ repeatLast
558
+ key f7 operate_on_each_line
559
+ key f19 operate_on_string
560
+ key esc [ 1 8 ; 2 ~ operate_on_string
561
+ key esc f7 operate_on_lines
562
+ key esc [ 1 8 ; 3 ~ operate_on_lines
563
+ key esc [ 1 8 ; ; ~ operate_on_lines
564
+ key keycode319 operate_on_lines
565
+
566
+ # Emacs-like keychains
567
+
568
+ #key ctrl+s;find
569
+ #key ctrl+x ctrl+c;quit
570
+ #key ctrl+x ctrl+f;openFileAsk
571
+ #key ctrl+x ctrl+s;saveFile
572
+
573
+ # ------
574
+
575
+ mkey input left readline_cursor_left
576
+ mkey input esc [ D readline_cursor_left
577
+ mkey input right readline_cursor_right
578
+ mkey input esc [ C readline_cursor_right
579
+ mkey input esc esc readline_abort
580
+ mkey input ctrl+q readline_abort
581
+ mkey input ctrl+c readline_abort
582
+ mkey input enter readline_accept
583
+ mkey input backspace readline_backspace
584
+ mkey input ctrl+h readline_backspace
585
+ mkey input tab readline_complete_input
586
+ mkey input del readline_delete
587
+ mkey input ctrl+k readline_delete_line
588
+ mkey input ctrl+w readline_delete_word
589
+
590
+ mkey input up readline_cursor_up
591
+ mkey input esc [ A readline_cursor_up
592
+ mkey input down readline_cursor_down
593
+ mkey input esc [ B readline_cursor_down
594
+ mkey input home readline_cursor_bol
595
+ mkey input esc O H readline_cursor_bol
596
+ mkey input esc [ H readline_cursor_bol
597
+ mkey input esc [ 1 ~ readline_cursor_bol
598
+ mkey input esc [ 7 ~ readline_cursor_bol
599
+ mkey input ctrl+a readline_cursor_bol
600
+ mkey input end readline_cursor_eol
601
+ mkey input esc O F readline_cursor_eol
602
+ mkey input esc [ F readline_cursor_eol
603
+ mkey input esc [ 4 ~ readline_cursor_eol
604
+ mkey input esc [ 8 ~ readline_cursor_eol
605
+ mkey input ctrl+e readline_cursor_eol
606
+ mkey input pagedown readline_page_down
607
+ mkey input pageup readline_page_up
608
+
609
+ mkey input f5 readline_grep_context_decrease
610
+ mkey input esc [ 1 5 ~ readline_grep_context_decrease
611
+ mkey input esc [ [ E readline_grep_context_decrease
612
+ mkey input f6 readline_grep_context_increase
613
+ mkey input esc [ 1 7 ~ readline_grep_context_increase
614
+
615
+ mkey input f3 find_again :down
616
+ mkey input esc [ [ C find_again :down
617
+ mkey input esc O R find_again :down
618
+ mkey input esc [ 1 3 ~ find_again :down
619
+ mkey input f15 find_again :up
620
+ mkey input esc [ 2 8 ~ find_again :up
621
+ mkey input esc O 2 R find_again :up
622
+
623
+ # ---------------------------------------------------------------------
624
+ # Language Definitions
625
+ # For syntax highlighting and indentation.
626
+
627
+ # lang.<language>.tokens.<any name>[.case_insensitive] <regexp with one pair of parentheses identifying the token>
628
+ # lang.<language>.tokens.<any name>.format <format codes>
629
+ # <format codes> can be any subset of:
630
+ # normal black red green brown blue magenta cyan white standout underline inverse blink dim bold
631
+ # The numbers of colour pairs (as defined by the configuration command "colour")
632
+ # can also be used as format codes.
633
+ #
634
+ # indent.roundup: If a line's indentation is not evenly divisible by the
635
+ # indent.size, and indent.roundup is true, then the non-integer indentation
636
+ # level will be rounded up. If indent.roundup is false, then it will be
637
+ # rounded down.
638
+ # e.g. given an indent.size of 4, and a line with 6 spaces, indent.roundup
639
+ # true will make Diakonos consider the line indented 2 levels. With
640
+ # indent.roundup false, it will be considered indented 1 level.
641
+ #
642
+ # The filemask can also be used to specify specific filenames which
643
+ # don't conform to the standard extensions for a language.
644
+
645
+ # Used no matter what language
646
+
647
+ lang.all.tokens.conflict_ours ^<<<<<<<.*
648
+ lang.all.tokens.conflict_ours.format 15 bold
649
+ lang.all.tokens.conflict_theirs ^>>>>>>>.*
650
+ lang.all.tokens.conflict_theirs.format 15 bold
651
+ lang.all.tokens.conflict_separator ^=======$
652
+ lang.all.tokens.conflict_separator.format 9 bold
653
+ # lang.all.tokens.trailing_whitespace (\s+$)
654
+ # lang.all.tokens.trailing_whitespace.format 9
655
+ lang.all.surround.pair "(" "( " " )"
656
+ lang.all.surround.pair ")" "(" ")"
657
+ lang.all.surround.pair "{" "{ " " }"
658
+ lang.all.surround.pair "}" "{" "}"
659
+ lang.all.surround.pair "[" "[ " " ]"
660
+ lang.all.surround.pair "]" "[" "]"
661
+ lang.all.surround.pair "<" "< " " >"
662
+ lang.all.surround.pair ">" "<" ">"
663
+ lang.all.surround.pair "'" "'" "'"
664
+ lang.all.surround.pair "\"" "\"" "\""
665
+ lang.all.surround.pair "/*" "/*" "*/"
666
+
667
+
668
+
669
+ # Inherited by several languages
670
+
671
+ lang.shared.format.default white bold
672
+ lang.shared.format.selection inverse
673
+ lang.shared.format.found yellow inverse
674
+ lang.shared.format.pair cyan inverse
675
+ lang.shared.tokens.reserved_words.format white
676
+ lang.shared.tokens.constants.format yellow bold
677
+ lang.shared.tokens.comments.format 8 bold
678
+ lang.shared.tokens.non_alphanum.format white
679
+ lang.shared.tokens.regular_expressions.format red bold
680
+ lang.shared.tokens.singlequoted_strings.format green bold
681
+ lang.shared.tokens.doublequoted_strings.format green bold
682
+ lang.shared.tokens.backquoted_strings.format red bold
683
+
684
+ # Text (default)
685
+
686
+ lang.text.format.default white
687
+ lang.text.format.selection inverse
688
+ lang.text.format.found yellow inverse
689
+ lang.text.indent.size 2
690
+ lang.text.indent.auto true
691
+ lang.text.indent.roundup false
692
+ #lang.text.indent.using_tabs true
693
+ lang.text.tabsize 8
694
+ lang.text.wrap_margin 80
695
+
696
+ # Diakonos help files
697
+
698
+ lang.dhf.filemask \.dhf
699
+ lang.dhf.format.default white
700
+ lang.dhf.format.selection inverse
701
+ lang.dhf.format.found yellow inverse
702
+ lang.dhf.tokens.tags (^Tags: .+)
703
+ lang.dhf.tokens.tags.format blue
704
+ lang.dhf.tokens.title (^# .*)
705
+ lang.dhf.tokens.title.format 8 bold
706
+ lang.dhf.tokens.subtitle (^## .*)
707
+ lang.dhf.tokens.subtitle.format cyan bold
708
+ lang.dhf.tokens.subsubtitle (^### .*)
709
+ lang.dhf.tokens.subsubtitle.format cyan
710
+ lang.dhf.tokens.keys <(.+?)>
711
+ lang.dhf.tokens.keys.format white bold
712
+ lang.dhf.indent.size 2
713
+ lang.dhf.indent.auto true
714
+ lang.dhf.indent.roundup true
715
+ lang.dhf.wrap_margin 80
716
+
717
+
718
+ # XML
719
+
720
+ lang.xml.filemask \.(xml|xsd|xsl|rdl|aiml)$
721
+ lang.xml.format.default white
722
+ lang.xml.format.selection inverse
723
+ lang.xml.format.found yellow inverse
724
+ lang.xml.tabsize 8
725
+ lang.xml.indent.size 2
726
+ lang.xml.indent.auto true
727
+ lang.xml.indent.roundup true
728
+ #lang.xml.indent.using_tabs true
729
+ lang.xml.tokens.entities &\S+?;
730
+ lang.xml.tokens.entities.format magenta bold
731
+ lang.xml.tokens.comments.open (<!--)
732
+ lang.xml.tokens.comments.close (-->)
733
+ lang.xml.tokens.comments.format 8
734
+ lang.xml.tokens.comments.change_to xml_comment
735
+ lang.xml.comment_string "<!-- "
736
+ lang.xml.comment_close_string " -->"
737
+ lang.xml.tokens.code.open (<)(?:[^%]|$)
738
+ lang.xml.tokens.code.close (?:[^%]|^)(>)
739
+ lang.xml.tokens.code.format white bold
740
+ lang.xml.tokens.code.change_to xml_tag
741
+ lang.xml.tokens.template.open \[@--
742
+ lang.xml.tokens.template.close --@\]
743
+ lang.xml.tokens.template.format brown
744
+ lang.xml.tokens.template.change_to perl
745
+ lang.xml.closers.tag.regexp .*<([^/> ]*)(?:.+?)?>
746
+ lang.xml.closers.tag.closer </\1>
747
+ lang.xml_tag.format.default white bold
748
+ lang.xml_tag.format.selection inverse
749
+ lang.xml_tag.format.found yellow inverse
750
+ lang.xml_tag.tabsize 8
751
+ lang.xml_tag.indent.size 2
752
+ lang.xml_tag.indent.auto true
753
+ lang.xml_tag.indent.roundup true
754
+ #lang.xml_tag.indent.using_tabs true
755
+ lang.xml_tag.tokens.doublequoted_strings (\".*?[^\\]?\")
756
+ lang.xml_tag.tokens.doublequoted_strings.format green bold
757
+ lang.xml_tag.tokens.singlequoted_strings ('.*?[^\\]')
758
+ lang.xml_tag.tokens.singlequoted_strings.format green bold
759
+ lang.xml_tag.tokens.non_alphanum ([@!#$%^&*()\[\]{}/?=+\-\\|,<.>;:])
760
+ lang.xml_tag.tokens.non_alphanum.format white
761
+ lang.xml_tag.tokens.namespaces ([a-zA-Z_-]+):
762
+ lang.xml_tag.tokens.namespaces.format yellow bold
763
+ lang.xml_comment.format.default 8
764
+ lang.xml_comment.format.selection inverse
765
+ lang.xml_comment.format.found yellow inverse
766
+ lang.xml_comment.tabsize 8
767
+ lang.xml_comment.indent.size 2
768
+ lang.xml_comment.indent.auto true
769
+ lang.xml_comment.indent.roundup true
770
+ #lang.xml_comment.indent.using_tabs true
771
+ lang.xml.surround.pair "<!--" "<!-- " " -->"
772
+ lang.xml.surround.pair "/^<(.+?)>$/" "<\1>" "</\1>"
773
+
774
+ lang.html.filemask \.([rx]?html?|php|asp|erb|handlebars|mustache)$
775
+ lang.html.format.default white
776
+ lang.html.format.selection inverse
777
+ lang.html.format.found yellow inverse
778
+ lang.html.tabsize 8
779
+ lang.html.indent.size 2
780
+ lang.html.indent.auto true
781
+ lang.html.indent.roundup true
782
+ #lang.html.indent.using_tabs true
783
+ lang.html.tokens.comments.open (<!--)
784
+ lang.html.tokens.comments.close (-->)
785
+ lang.html.tokens.comments.format 8
786
+ lang.html.tokens.comments.change_to html_comment
787
+ lang.html.comment_string "<!-- "
788
+ lang.html.comment_close_string " -->"
789
+ lang.html.tokens.entities &\S+?;
790
+ lang.html.tokens.entities.format magenta bold
791
+ lang.html.tokens.eruby.open <%
792
+ lang.html.tokens.eruby.close %>
793
+ lang.html.tokens.eruby.format 9 bold
794
+ lang.html.tokens.eruby.change_to ruby
795
+ lang.html.tokens.ezamar.open <\?r
796
+ lang.html.tokens.ezamar.close \?>
797
+ lang.html.tokens.ezamar.format 9 bold
798
+ lang.html.tokens.ezamar.change_to ruby
799
+ lang.html.tokens.ezamar-value.open \#\{
800
+ lang.html.tokens.ezamar-value.close \}
801
+ lang.html.tokens.ezamar-value.format 9 bold
802
+ lang.html.tokens.ezamar-value.change_to ruby
803
+ lang.html.tokens.php.open <\?(?:php)?
804
+ lang.html.tokens.php.close \?>
805
+ lang.html.tokens.php.format 10 bold
806
+ lang.html.tokens.php.change_to php
807
+ lang.html.tokens.code.open (<)(?:[^%]|$)
808
+ lang.html.tokens.code.close (?:[^%]|^)(>)
809
+ lang.html.tokens.code.format white bold
810
+ lang.html.tokens.code.change_to html_tag
811
+ lang.html.tokens.template-interpolation.open \{\{
812
+ lang.html.tokens.template-interpolation.close \}\}
813
+ lang.html.tokens.template-interpolation.format white bold
814
+ # lang.html.tokens.template-interpolation.change_to html_template
815
+ lang.html.closers.tag.regexp .*<([^/> ]*)(?:.+?)?>
816
+ lang.html.closers.tag.closer </\1>
817
+ lang.html_tag.format.default white bold
818
+ lang.html_tag.format.selection inverse
819
+ lang.html_tag.format.found yellow inverse
820
+ lang.html_tag.tabsize 8
821
+ lang.html_tag.indent.size 4
822
+ lang.html_tag.indent.auto true
823
+ lang.html_tag.indent.roundup true
824
+ #lang.html_tag.indent.using_tabs true
825
+ lang.html_tag.tokens.elements.case_insensitive \b(?:S(?:T(?:R(?:IKE|ONG)|YLE)|(?:CRIP|ELEC)T|U[BP]|MALL|AMP|PAN)?|T(?:[DR]|(?:AB|IT)LE|(?:FOO)?T|H(?:EAD)?|EXTAREA|BODY)|B(?:ASE(?:FONT)?|LOCKQUOTE|UTTON|ODY|DO|IG|R)?|C(?:O(?:L(?:GROUP)?|DE)|APTION|ENTER|ITE)|F(?:RAME(?:SET)?|O(?:NT|RM)|IELDSET)|A(?:CRONYM|DDRESS|PPLET|BBR|REA)?|I(?:N(?:PUT|S)|SINDEX|FRAME|MG)?|O(?:PT(?:GROUP|ION)|BJECT|L)|L(?:I(?:NK)?|EGEND|ABEL)|D(?:[DT]|I[RV]|E?L|FN)|H(?:[123456R]|EAD|TML)|NO(?:FRAMES|SCRIPT)|M(?:E(?:NU|TA)|AP)|P(?:ARAM|RE)?|KBD|UL?|EM|VA|Q)\b
826
+ lang.html_tag.tokens.elements.format cyan
827
+ lang.html_tag.tokens.attributes.case_insensitive \b(?:o(?:n(?:mouse(?:o(?:ver|ut)|down|move|up)|(?:s(?:elec|ubmi)|rese)t|key(?:press|down|up)|c(?:hange|lick)|(?:un)?load|dblclick|focus|blur)|bject)|c(?:o(?:de(?:(?:bas|typ)e)?|l(?:s(?:pan)?|or)|(?:mpac|nten)t|ords)|h(?:ar(?:off|set)?|ecked)|ell(?:padd|spac)ing|l(?:ass(?:id)?|ear)|ite)|s(?:c(?:(?:hem|op)e|rolling)|t(?:a(?:ndby|rt)|yle)|(?:hap|iz)e|elected|ummary|pan|rc)|a(?:c(?:ce(?:p(?:t-charse)?t|sskey)|tion)|l(?:i(?:gn|nk)|t)|rchive|bbr|xis)|m(?:a(?:rgin(?:height|width)|xlength)|e(?:thod|dia)|ultiple)|h(?:e(?:aders|ight)|ref(?:lang)?|ttp-equiv|space)|d(?:e(?:clare|fer)|at(?:etime|a)|i(?:sabled|r))|v(?:al(?:u(?:etyp)?e|ign)|ersion|space|link)|n(?:o(?:(?:resiz|shad)e|href|wrap)|ame)|r(?:e(?:[lv]|adonly)|ows(?:pan)?|ules)|l(?:a(?:ng(?:uage)?|bel)|ongdesc|ink)|t(?:a(?:bindex|rget)|(?:itl|yp)e|ext)|b(?:(?:gcolo|orde)r|ackground)|f(?:rame(?:border)?|ace|or)|pro(?:file|mpt)|i(?:smap|d)|enctype|usemap|width)\b
828
+ lang.html_tag.tokens.attributes.format white
829
+ lang.html_tag.tokens.doublequoted_strings (\".*?[^\\]?\")
830
+ lang.html_tag.tokens.doublequoted_strings.format green bold
831
+ lang.html_tag.tokens.singlequoted_strings ('.*?[^\\]')
832
+ lang.html_tag.tokens.singlequoted_strings.format green bold
833
+ lang.html_tag.tokens.non_alphanum ([@!#$%^&*()\[\]{}/?=+\-\\|,<.>;:])
834
+ lang.html_tag.tokens.non_alphanum.format white
835
+ lang.html_comment.format.default 8
836
+ lang.html_comment.format.selection inverse
837
+ lang.html_comment.format.found yellow inverse
838
+ lang.html_comment.tabsize 8
839
+ lang.html_comment.indent.size 4
840
+ lang.html_comment.indent.auto true
841
+ lang.html_comment.indent.roundup true
842
+ #lang.html_comment.indent.using_tabs true
843
+ lang.html.surround.pair "<!--" "<!-- " " -->"
844
+ lang.html.surround.pair "/^<(.+?)>$/" "<\1>" "</\1>"
845
+
846
+ # CSS
847
+
848
+ lang.css.filemask \.(?:s?css|less)$
849
+ lang.css.format.default white
850
+ lang.css.format.selection inverse
851
+ lang.css.format.found yellow inverse
852
+ lang.css.tabsize 8
853
+ lang.css.indent.size 4
854
+ lang.css.indent.auto true
855
+ lang.css.indent.roundup true
856
+ #lang.css.indent.using_tabs true
857
+ lang.css.indent.indenters (\{)
858
+ lang.css.indent.unindenters (\})
859
+ lang.css.indent.preventers (\".+?[^\\]\")|('.+?[^\\]')|(\/\/.*)
860
+ lang.css.tokens.properties \b(?:b(?:o(?:rder(?:-(?:top(?:-(?:color|style|width))?|s(?:pacing|tyle)|col(?:lapse|or)|(?:righ|lef)t|bottom|width))?|ttom)|ackground(?:-(?:(?:attachmen|repea)t|position|color|image))?)|p(?:a(?:dding(?:-(?:(?:righ|lef)t|bottom|top))?|ge-break-(?:(?:befor|insid)e|after)|use(?:-(?:before|after))?)|itch(?:-range)?|lay-during|osition)|c(?:o(?:(?:unter-(?:incremen|rese)|nten)t|lor)|u(?:e(?:-(?:before|after))?|rsor)|aption-side|l(?:ear|ip))|m(?:a(?:rgin(?:-(?:(?:righ|lef)t|bottom|top))?|x-(?:height|width))|in-(?:height|width))|l(?:i(?:st-style(?:-(?:(?:imag|typ)e|position))?|ne-height)|e(?:tter-spacing|ft))|s(?:pe(?:ak(?:-(?:punctuation|numeral|header))?|ech-rate)|tress)|t(?:ext-(?:(?:decoratio|alig)n|transform|indent)|able-layout|op)|f(?:ont(?:-(?:(?:varian|weigh)t|s(?:tyl|iz)e|family))?|loat)|o(?:utline(?:-(?:color|style|width))?|verflow|rphans)|v(?:o(?:ice-family|lume)|ertical-align|isibility)|w(?:id(?:ows|th)|ord-spacing|hite-space)|e(?:mpty-cells|levation)|di(?:rection|splay)|ri(?:chness|ght)|unicode-bidi|azimuth|z-index|height|quotes)\s*:
861
+ lang.css.tokens.properties.format white bold
862
+ lang.css.tokens.colours #[A-Fa-f0-9]{6}|\b(?:aqua|black|blue|fuchsia|gray|green|lime|maroon|navy|olive|orange|purple|red|silver|teal|white|yellow)\b
863
+ lang.css.tokens.colours.format yellow bold
864
+ lang.css.tokens.long_comments.open \/\*
865
+ lang.css.tokens.long_comments.close \*\/
866
+ lang.css.tokens.long_comments.format = lang.shared.tokens.comments.format
867
+ lang.css.comment_string "/* "
868
+ lang.css.comment_close_string " */"
869
+ lang.css.tokens.numbers \b([0-9]+\.[0-9]+|[0-9]+)
870
+ lang.css.tokens.numbers.format blue bold
871
+ lang.css.tokens.units [^A-Za-z](em|pt|px)\b
872
+ lang.css.tokens.units.format cyan
873
+ lang.css.tokens.html_elements.case_insensitive \b(?:S(?:T(?:R(?:IKE|ONG)|YLE)|(?:CRIP|ELEC)T|U[BP]|MALL|AMP|PAN)?|T(?:[DR]|(?:AB|IT)LE|(?:FOO)?T|H(?:EAD)?|EXTAREA|BODY)|B(?:ASE(?:FONT)?|LOCKQUOTE|UTTON|ODY|DO|IG|R)?|C(?:O(?:L(?:GROUP)?|DE)|APTION|ENTER|ITE)|A(?:CRONYM|DDRESS|PPLET|BBR|REA)?|I(?:N(?:PUT|S)|SINDEX|FRAME|MG)?|F(?:RAME(?:SET)?|IELDSET|ORM)|O(?:PT(?:GROUP|ION)|BJECT|L)|L(?:I(?:NK)?|EGEND|ABEL)|D(?:[DT]|I[RV]|E?L|FN)|H(?:[123456R]|EAD|TML)|NO(?:FRAMES|SCRIPT)|M(?:E(?:NU|TA)|AP)|P(?:ARAM|RE)?|KBD|UL?|VA|Q)\b
874
+ lang.css.tokens.html_elements.format green
875
+ lang.css.tokens.values \b(auto|block|inherit|inline|larger|none|smaller|solid)\b
876
+ lang.css.tokens.values.format blue bold
877
+ lang.css.column_delimiters :|,
878
+ lang.css.tokens.variables @\w+
879
+ lang.css.tokens.variables.format cyan bold
880
+
881
+ # Javascript, ES6
882
+
883
+ lang.javascript.filemask \.(?:js|es6)$
884
+ lang.javascript.format.default white bold
885
+ lang.javascript.format.selection inverse
886
+ lang.javascript.format.found yellow inverse
887
+ lang.javascript.tokens.doublequoted_strings (\".*?[^\\]?\")
888
+ lang.javascript.tokens.doublequoted_strings.format green bold
889
+ lang.javascript.tokens.singlequoted_strings ('.*?[^\\]')
890
+ lang.javascript.tokens.singlequoted_strings.format green bold
891
+ # lang.javascript.tokens.backquoted_strings (`.*?[^\\]`)
892
+ # lang.javascript.tokens.backquoted_strings.format green bold
893
+ lang.javascript.tokens.interpolated_string.open (`)
894
+ lang.javascript.tokens.interpolated_string.close (`)
895
+ lang.javascript.tokens.interpolated_string.format green bold
896
+ lang.javascript.tokens.interpolated_string.change_to javascript_template_literal
897
+ lang.javascript_template_literal.format.default green bold
898
+ lang.javascript_template_literal.tokens.interpolation.open (\$\{)
899
+ lang.javascript_template_literal.tokens.interpolation.close (\})
900
+ lang.javascript_template_literal.tokens.interpolation.format 12 bold
901
+ lang.javascript_template_literal.tokens.interpolation.change_to javascript
902
+ lang.javascript.tokens.reserved_words \b(abstract|arguments|boolean|break|byte|case|catch|char|class|const|continue|debugger|default|delete|do|double|else|enum|eval|export|extends|false|final|finally|float|for|function|goto|if|implements|import|in|instanceof|int|interface|let|long|native|new|null|package|private|protected|public|return|short|static|super|switch|synchronized|this|throw|throws|transient|true|try|typeof|var|void|volatile|while|with|yield)\b
903
+ lang.javascript.tokens.reserved_words.format white
904
+ lang.javascript.tokens.constants \b([A-Z_]+|[A-Z_][A-Z0-9_]+)\b
905
+ lang.javascript.tokens.constants.format yellow bold
906
+ lang.javascript.tokens.comments (\/\/.*)
907
+ lang.javascript.tokens.comments.format = lang.shared.tokens.comments.format
908
+ lang.javascript.comment_string "/* "
909
+ lang.javascript.comment_close_string " */"
910
+ lang.javascript.tokens.long_comments.open \/\*
911
+ lang.javascript.tokens.long_comments.close \*\/
912
+ lang.javascript.tokens.long_comments.format = lang.shared.tokens.comments.format
913
+ lang.javascript.tokens.regular_expressions (\/.+?[^\\]\/)
914
+ lang.javascript.tokens.regular_expressions.format red bold
915
+ lang.javascript.tokens.non_alphanum ([!@#$%\^&*()\[\]{}/?=+\-\\|,<.>;:])
916
+ lang.javascript.tokens.non_alphanum.format white
917
+ lang.javascript.indent.size 2
918
+ lang.javascript.indent.auto true
919
+ lang.javascript.indent.roundup false
920
+ #lang.javascript.indent.using_tabs true
921
+ lang.javascript.indent.indenters (\{)
922
+ lang.javascript.indent.unindenters (\})
923
+ lang.javascript.indent.preventers (\".+?[^\\]\")|('.+?[^\\]')|(\/\/.*)
924
+ lang.javascript.indent.ignore ^(.+:|\s*?)$
925
+ lang.javascript.indent.closers true
926
+ lang.javascript.context.ignore ^(.+:|\s*\{?)$
927
+ lang.javascript.closers.for.regexp for$
928
+ lang.javascript.closers.for.closer { |m| "( $i = 0; $i < limit; $i++ ) {\n%_\n}" }
929
+ lang.javascript.column_delimiters =|:|,
930
+
931
+ # Ruby
932
+
933
+ lang.ruby.filemask (?:[Rr]akefile)|Gemfile|(?:\.(?:r[bu]|gem(?:spec)?|rake)$)
934
+ lang.ruby.bangmask #!.*ruby
935
+ lang.ruby.format.default = lang.shared.format.default
936
+ lang.ruby.format.selection = lang.shared.format.selection
937
+ lang.ruby.format.pair = lang.shared.format.pair
938
+ lang.ruby.format.found = lang.shared.format.found
939
+ lang.ruby.tokens.reserved_words \b(?:__FILE__|and|def|end|in|or|self|__LINE__|begin|defined\?|ensure|module|redo|super|until|BEGIN|break|do|false|next|rescue|then|when|END|case|else|for|nil|retry|true|while|alias|class|elsif|not|return|undef|yield)\b
940
+ lang.ruby.tokens.reserved_words.format = lang.shared.tokens.reserved_words.format
941
+ lang.ruby.tokens.non_modifiers ^\s*(if|unless)
942
+ lang.ruby.tokens.non_modifiers.format white
943
+ lang.ruby.tokens.modifiers \s+(if|unless)
944
+ lang.ruby.tokens.modifiers.format 9 bold
945
+ lang.ruby.tokens.constants \b([A-Z_]+|[A-Z_][A-Z0-9_]+)\b
946
+ lang.ruby.tokens.constants.format = lang.shared.tokens.constants.format
947
+ lang.ruby.tokens.namespace ::
948
+ lang.ruby.tokens.namespace.format white
949
+ lang.ruby.tokens.symbols (:[a-zA-Z_][a-zA-Z_0-9]*)
950
+ lang.ruby.tokens.symbols.format white bold
951
+ lang.ruby.tokens.hash_keys \b(\w+):\s
952
+ lang.ruby.tokens.hash_keys.format white bold
953
+ lang.ruby.tokens.comments (#.*)
954
+ lang.ruby.tokens.comments.format = lang.shared.tokens.comments.format
955
+ lang.ruby.comment_string "# "
956
+ lang.ruby.tokens.access_control ^\s*pr(?:ivate|otected)\s*$
957
+ lang.ruby.tokens.access_control.format 13 bold
958
+ lang.ruby.tokens.access_control2 (private|protected) def
959
+ lang.ruby.tokens.access_control2.format yellow
960
+ lang.ruby.tokens.long_comments.open ^=begin yellow bold
961
+ lang.ruby.tokens.long_comments.close ^=end
962
+ lang.ruby.tokens.long_comments.format = lang.shared.tokens.comments.format
963
+ lang.ruby.tokens.instance_variables (@[A-Za-z_][A-Za-z_0-9]*)
964
+ lang.ruby.tokens.instance_variables.format white bold
965
+ lang.ruby.tokens.regular_expressions (\/.+?[^\\]\/)
966
+ lang.ruby.tokens.regular_expressions.format red bold
967
+ lang.ruby.tokens.regular_expressions2 (%r\{.+?[^\}]\})
968
+ lang.ruby.tokens.regular_expressions2.format red bold
969
+ lang.ruby.tokens.doublequoted_strings (\".*?[^\\]?\")
970
+ lang.ruby.tokens.doublequoted_strings.format green bold
971
+ lang.ruby.tokens.interpolated_string.open (%Q?\{)
972
+ lang.ruby.tokens.interpolated_string.close (\})
973
+ lang.ruby.tokens.interpolated_string.format red bold
974
+ lang.ruby.tokens.interpolated_string.change_to interpolated_ruby
975
+ lang.ruby.tokens.interpolated_string2.open (%Q?<)
976
+ lang.ruby.tokens.interpolated_string2.close (>)
977
+ lang.ruby.tokens.interpolated_string2.format green bold
978
+ lang.ruby.tokens.interpolated_string2.change_to interpolated_ruby
979
+ lang.ruby.tokens.interpolated_string3.open (%Q?\|)
980
+ lang.ruby.tokens.interpolated_string3.close (\|)
981
+ lang.ruby.tokens.interpolated_string3.format green bold
982
+ lang.ruby.tokens.interpolated_string3.change_to interpolated_ruby
983
+ lang.interpolated_ruby.format.default green bold
984
+ lang.interpolated_ruby.tokens.interpolation.open (#\{)
985
+ lang.interpolated_ruby.tokens.interpolation.close (\})
986
+ lang.interpolated_ruby.tokens.interpolation.format 12 bold
987
+ lang.interpolated_ruby.tokens.interpolation.change_to ruby
988
+ lang.ruby.tokens.singlequoted_strings ('.*?[^\\]'|'')
989
+ lang.ruby.tokens.singlequoted_strings.format green bold
990
+ lang.ruby.tokens.backquoted_strings (`.*?[^\\]`|``)
991
+ lang.ruby.tokens.backquoted_strings.format red bold
992
+ lang.ruby.tokens.interpolated_exec_string.open (%x\{)
993
+ lang.ruby.tokens.interpolated_exec_string.close (\})
994
+ lang.ruby.tokens.interpolated_exec_string.format red bold
995
+ lang.ruby.tokens.interpolated_exec_string.change_to interpolated_exec_ruby
996
+ lang.interpolated_exec_ruby.format.default red bold
997
+ lang.interpolated_exec_ruby.tokens.interpolation.open (#\{)
998
+ lang.interpolated_exec_ruby.tokens.interpolation.close (\})
999
+ lang.interpolated_exec_ruby.tokens.interpolation.format 9 bold
1000
+ lang.interpolated_exec_ruby.tokens.interpolation.change_to ruby
1001
+ lang.ruby.tokens.character_codes \W(\?\S)
1002
+ lang.ruby.tokens.character_codes.format magenta bold
1003
+ lang.ruby.tokens.non_alphanum [@!#$%^&*()\[\]{}/?=+\-\\|,<.>;~]
1004
+ lang.ruby.tokens.non_alphanum.format white
1005
+ lang.ruby.indent.size 2
1006
+ lang.ruby.indent.auto true
1007
+ lang.ruby.indent.roundup true
1008
+ #lang.ruby.indent.using_tabs true
1009
+ lang.ruby.tabsize 2
1010
+ lang.ruby.indent.indenters ^\s*(case|(?:(?:private|protected) )?def|begin|ensure|when|else|ensure|for|while|until|elsif|if|class|module|rescue)\b|([{\[(]$|\{\s*\|[\w\s,]*\|\s*$)|\b(do)\b
1011
+ lang.ruby.indent.unindenters ^\s*(end|else|elsif|ensure|when|rescue)\b|(^\s*[\]})])
1012
+ lang.ruby.indent.preventers (\".+?[^\\]\")|('.+?[^\\]')|(`.+?[^\\]`)|(\/.+?[^\\]\/)|(^\s*#.*)|\S\s+if
1013
+ lang.ruby.indent.ignore ^\s*$
1014
+ lang.ruby.context.ignore ^=(begin|end)$
1015
+ lang.ruby.column_delimiters =>?|:|,
1016
+
1017
+ # Coffeescript
1018
+
1019
+ lang.coffee.filemask \.coffee$
1020
+ lang.coffee.format.default = lang.shared.format.default
1021
+ lang.coffee.format.selection = lang.shared.format.selection
1022
+ lang.coffee.format.pair = lang.shared.format.pair
1023
+ lang.coffee.format.found = lang.shared.format.found
1024
+ lang.coffee.tokens.reserved_words \b(?:and|catch|class|do|else|extends|false|finally|for|function|if|in|isnt|new|no|of|off|on|or|switch|then|true|try|when|while|until|yes)\b
1025
+ lang.coffee.tokens.reserved_words.format = lang.shared.tokens.reserved_words.format
1026
+ lang.coffee.tokens.non_modifiers ^\s*(if|unless)
1027
+ lang.coffee.tokens.non_modifiers.format white
1028
+ lang.coffee.tokens.modifiers \s+(if|unless)
1029
+ lang.coffee.tokens.modifiers.format 9 bold
1030
+ lang.coffee.tokens.constants \b([A-Z_]+|[A-Z_][A-Z0-9_]+)\b
1031
+ lang.coffee.tokens.constants.format = lang.shared.tokens.constants.format
1032
+ lang.coffee.tokens.namespace ::
1033
+ lang.coffee.tokens.namespace.format white
1034
+ lang.coffee.tokens.symbols (:[a-zA-Z_][a-zA-Z_0-9]*)
1035
+ lang.coffee.tokens.symbols.format white bold
1036
+ lang.coffee.tokens.hash_keys \b(\w+):\s
1037
+ lang.coffee.tokens.hash_keys.format white bold
1038
+ lang.coffee.tokens.comments (#.*)
1039
+ lang.coffee.tokens.comments.format = lang.shared.tokens.comments.format
1040
+ lang.coffee.comment_string "# "
1041
+ lang.coffee.tokens.properties (@[A-Za-z_][A-Za-z_0-9]*)
1042
+ lang.coffee.tokens.properties.format white bold
1043
+ lang.coffee.tokens.regular_expressions (\/.+?[^\\]\/)
1044
+ lang.coffee.tokens.regular_expressions.format red bold
1045
+ lang.coffee.tokens.regular_expressions2 (%r\{.+?[^\}]\})
1046
+ lang.coffee.tokens.regular_expressions2.format red bold
1047
+ lang.coffee.tokens.doublequoted_strings (\".*?[^\\]?\")
1048
+ lang.coffee.tokens.doublequoted_strings.format green bold
1049
+ lang.coffee.tokens.singlequoted_strings ('.*?[^\\]'|'')
1050
+ lang.coffee.tokens.singlequoted_strings.format green bold
1051
+ lang.coffee.tokens.backquoted_strings (`.*?[^\\]`|``)
1052
+ lang.coffee.tokens.backquoted_strings.format red bold
1053
+ lang.coffee.tokens.interpolated_exec_string.open (%x\{)
1054
+ lang.coffee.tokens.interpolated_exec_string.close (\})
1055
+ lang.coffee.tokens.interpolated_exec_string.format red bold
1056
+ lang.coffee.tokens.interpolated_exec_string.change_to interpolated_exec_ruby
1057
+ lang.interpolated_exec_ruby.format.default red bold
1058
+ lang.interpolated_exec_ruby.tokens.interpolation.open (#\{)
1059
+ lang.interpolated_exec_ruby.tokens.interpolation.close (\})
1060
+ lang.interpolated_exec_ruby.tokens.interpolation.format 9 bold
1061
+ lang.interpolated_exec_ruby.tokens.interpolation.change_to ruby
1062
+ lang.coffee.tokens.character_codes \W(\?\S)
1063
+ lang.coffee.tokens.character_codes.format magenta bold
1064
+ lang.coffee.tokens.non_alphanum [@!#$%^&*()\[\]{}/?=+\-\\|,<.>;~]
1065
+ lang.coffee.tokens.non_alphanum.format white
1066
+ lang.coffee.indent.size 2
1067
+ lang.coffee.indent.auto true
1068
+ lang.coffee.indent.roundup true
1069
+ #lang.coffee.indent.using_tabs true
1070
+ lang.coffee.tabsize 2
1071
+ lang.coffee.indent.indenters ^\s*(when|else|try|catch|finally|for|while|until|if|class)\b|([{\[(]$|\{\s*\|[\w\s,]*\|\s*$)|\b(do)\b
1072
+ lang.coffee.indent.unindenters ^\s*(end|else|when)\b|(^\s*[\]})])
1073
+ lang.coffee.indent.preventers (\".+?[^\\]\")|('.+?[^\\]')|(`.+?[^\\]`)|(\/.+?[^\\]\/)|(^\s*#.*)|\S\s+if
1074
+ lang.coffee.indent.ignore ^\s*$
1075
+ lang.coffee.column_delimiters =>?|:|,
1076
+
1077
+
1078
+ # PHP
1079
+
1080
+ lang.php.filemask \.php\d?$
1081
+ lang.php.bangmask #!.*php|<\?php
1082
+ lang.php.format.default white bold
1083
+ lang.php.format.selection inverse
1084
+ lang.php.format.found yellow inverse
1085
+ lang.php.tokens.doublequoted_strings (\".*?[^\\]?\")
1086
+ lang.php.tokens.doublequoted_strings.format green bold
1087
+ lang.php.tokens.singlequoted_strings ('.*?[^\\]')
1088
+ lang.php.tokens.singlequoted_strings.format green bold
1089
+ lang.php.tokens.reserved_words \b(NULL|E_ALL|__wakeup|not|endwhile|__sleep|new|endswitch|__LINE__|list|endif|__FILE__|global|endforeach|while|include_once|endfor|virtual|include|enddeclare|xor|if|empty|var|elseif|TRUE|true|else|this|echo|stdClass|die|switch|do|static|default|return|function|declare|require_once|foreach|continue|require|for|class|print|FALSE|false|cfunction|PHP_VERSION|extends|case|exit|break|PHP_OS|eval|argc|parent|E_WARNING|as|or|E_ERROR|argv|old_function|E_PARSE|and)\b
1090
+ lang.php.tokens.reserved_words.format white
1091
+ lang.php.tokens.constants \b([A-Z_]+|[A-Z_][A-Z0-9_]+)\b
1092
+ lang.php.tokens.constants.format yellow bold
1093
+ lang.php.tokens.comments (\/\/.*)
1094
+ lang.php.tokens.comments.format = lang.shared.tokens.comments.format
1095
+ lang.php.comment_string "// "
1096
+ lang.php.tokens.long_comments.open \/\*
1097
+ lang.php.tokens.long_comments.close \*\/
1098
+ lang.php.tokens.long_comments.format = lang.shared.tokens.comments.format
1099
+ lang.php.tokens.preprocessor (^\s*#.*)
1100
+ lang.php.tokens.preprocessor.format yellow bold
1101
+ lang.php.tokens.sql_string.open (<<<EOS)
1102
+ lang.php.tokens.sql_string.close (EOS)
1103
+ lang.php.tokens.sql_string.format 1
1104
+ lang.php.tokens.sql_string.change_to sql
1105
+ lang.php.tokens.js.open (<<<EOJS)
1106
+ lang.php.tokens.js.close (EOJS)
1107
+ lang.php.tokens.js.format 12 bold
1108
+ lang.php.tokens.js.change_to java
1109
+ lang.php.tokens.non_alphanum ([!@#$%\^&*()\[\]{}/?=+\-\\|,<.>;:])
1110
+ lang.php.tokens.non_alphanum.format white
1111
+ lang.php.indent.size 4
1112
+ lang.php.indent.auto true
1113
+ lang.php.indent.roundup false
1114
+ #lang.php.indent.using_tabs true
1115
+ lang.php.indent.indenters ([{\[(]$)
1116
+ lang.php.indent.unindenters (^\s+[\]})])
1117
+ lang.php.indent.preventers (\".+?[^\\]\")|('.+?[^\\]')|(\/\/.*)
1118
+ lang.php.indent.ignore ^(.+:|\s*?)$
1119
+ lang.php.context.ignore ^(.+:|\s*\{?)$
1120
+
1121
+ # Perl
1122
+
1123
+ lang.perl.filemask \.(?:pl|pm)$
1124
+ lang.perl.bangmask #!.*perl
1125
+ lang.perl.format.default white bold
1126
+ lang.perl.format.selection inverse
1127
+ lang.perl.format.found yellow inverse
1128
+ lang.perl.tokens.comments (#.*)
1129
+ lang.perl.tokens.comments.format = lang.shared.tokens.comments.format
1130
+ lang.perl.comment_string "# "
1131
+ lang.perl.tokens.non_modifiers ^\s*(if|unless|until|while)
1132
+ lang.perl.tokens.non_modifiers.format white
1133
+ lang.perl.tokens.modifiers \s+(if|unless|until|while)
1134
+ lang.perl.tokens.modifiers.format 9 bold
1135
+ lang.perl.tokens.constants \b([A-Z_]+|[A-Z_][A-Z0-9_]+)\b
1136
+ lang.perl.tokens.constants.format yellow bold
1137
+ lang.perl.tokens.regular_expressions (\/.+?[^\\]\/)
1138
+ lang.perl.tokens.regular_expressions.format red bold
1139
+ lang.perl.tokens.doublequoted_strings (\".*?[^\\]?\")
1140
+ lang.perl.tokens.doublequoted_strings.format green bold
1141
+ lang.perl.tokens.singlequoted_strings ('.*?[^\\]')
1142
+ lang.perl.tokens.singlequoted_strings.format green bold
1143
+ lang.perl.tokens.backquoted_strings (`.*?[^\\]`)
1144
+ lang.perl.tokens.backquoted_strings.format red bold
1145
+ lang.perl.tokens.reserved_words \b(else|for|foreach|return|do|next|elsif|last|redo|continue|sub|goto)\b
1146
+ lang.perl.tokens.reserved_words.format white
1147
+ lang.perl.tokens.builtins \b(abs|accept|alarm|atan2|bind|binmode|bless|caller|chdir|chmod|chomp|chop|chown|chr|chroot|close|closedir|connect|continue|cos|crypt|dbmclose|dbmopen|defined|delete|die|do|dump|each|endgrent|endhostent|endnetent|endprotoent|endpwent|endservent|eof|eval|exec|exists|exit|exp|fcntl|fileno|flock|fork|format|formline|getc|getgrent|getgrgid|getgrnam|gethostbyaddr|gethostbyname|gethostent|getlogin|getnetbyaddr|getnetbyname|getnetent|getpeername|getpgrp|getppid|getpriority|getprotobyname|getprotobynumber|getprotoent|getpwent|getpwnam|getpwuid|getservbyname|getservbyport|getservent|getsockname|getsockopt|glob|gmtime|goto|grep|hex|import|index|int|ioctl|join|keys|kill|last|lc|lcfirst|length|link|listen|local|localtime|lock|log|lstat|m|map|mkdir|msgctl|msgget|msgrcv|msgsnd|my|next|no|oct|open|opendir|ord|our|pack|package|pipe|pop|pos|print|printf|prototype|push|q|qq|qr|quotemeta|qw|qx|rand|read|readdir|readline|readlink|readpipe|recv|redo|ref|rename|require|reset|return|reverse|rewinddir|rindex|rmdir|s|scalar|seek|seekdir|select|semctl|semget|semop|send|setgrent|sethostent|setnetent|setpgrp|setpriority|setprotoent|setpwent|setservent|setsockopt|shift|shmctl|shmget|shmread|shmwrite|shutdown|sin|sleep|socket|socketpair|sort|splice|split|sprintf|sqrt|srand|stat|study|sub|substr|symlink|syscall|sysopen|sysread|sysseek|system|syswrite|tell|telldir|tie|tied|time|times|tr|truncate|uc|ucfirst|umask|undef|unlink|unpack|unshift|untie|use|utime|values|vec|wait|waitpid|wantarray|warn|write|y)\b
1148
+ lang.perl.tokens.builtins.format cyan bold
1149
+ lang.perl.tokens.array_variables \s(@[A-Za-z_][A-Za-z_0-9]*)\b
1150
+ lang.perl.tokens.array_variables.format red bold
1151
+ lang.perl.tokens.hash_variables \s(%[A-Za-z_][A-Za-z_0-9]*)\b
1152
+ lang.perl.tokens.hash_variables.format magenta bold
1153
+ lang.perl.tokens.non_alphanum [!#^&*()\[\]{}/?=+\-\\|,<.>;:~]
1154
+ lang.perl.tokens.non_alphanum.format white
1155
+ lang.perl.indent.size 4
1156
+ lang.perl.indent.auto true
1157
+ lang.perl.indent.roundup true
1158
+ #lang.perl.indent.using_tabs true
1159
+ lang.perl.indent.indenters (case|[{\[(]$)
1160
+ lang.perl.indent.unindenters (case|^\s+[\]})])
1161
+ #lang.perl.indent.indenters \b(unless|else|for|while|foreach|if|do|elsif|sub)\b
1162
+ #lang.perl.indent.unindenters \b(else)\b
1163
+ lang.perl.indent.preventers (\".+?[^\\]\")|('.+?[^\\]')|(`.+?[^\\]`)|(\/.+?[^\\]\/)|(^\s*#.*)
1164
+ lang.perl.indent.ignore ^\s*$
1165
+ lang.perl.context.ignore ^(.+:|\s*\{?)$
1166
+ lang.perl.column_delimiters =>?|:|,
1167
+
1168
+
1169
+ # Python
1170
+
1171
+ lang.python.filemask \.py$
1172
+ lang.python.bangmask #!.*python
1173
+ lang.python.format.default white bold
1174
+ lang.python.format.selection inverse
1175
+ lang.python.format.found yellow inverse
1176
+ lang.python.tokens.constants \b([A-Z_]+|[A-Z_][A-Z0-9_]+)\b
1177
+ lang.python.tokens.constants.format yellow bold
1178
+ lang.python.tokens.comments (#.*)
1179
+ lang.python.tokens.comments.format = lang.shared.tokens.comments.format
1180
+ lang.python.comment_string "# "
1181
+ lang.python.tokens.tripledoublequoted_strings.open (""")
1182
+ lang.python.tokens.tripledoublequoted_strings.close (""")
1183
+ lang.python.tokens.tripledoublequoted_strings.format green bold
1184
+ lang.python.tokens.tripledoublequoted_strings.change_to python_multiline_string
1185
+ lang.python_multiline_string.format.default green bold
1186
+ lang.python.tokens.triplesinglequoted_strings.open (''')
1187
+ lang.python.tokens.triplesinglequoted_strings.close (''')
1188
+ lang.python.tokens.triplesinglequoted_strings.format green bold
1189
+ lang.python.tokens.triplesinglequoted_strings.change_to python_multiline_string
1190
+ lang.python_multiline_string.format.default green bold
1191
+ lang.python.tokens.doublequoted_strings (\".*?[^\\]?\")
1192
+ lang.python.tokens.doublequoted_strings.format green bold
1193
+ lang.python.tokens.singlequoted_strings ('.*?[^\\]')
1194
+ lang.python.tokens.singlequoted_strings.format green bold
1195
+ lang.python.tokens.backquoted_strings (`.*?[^\\]`)
1196
+ lang.python.tokens.backquoted_strings.format red bold
1197
+ lang.python.tokens.reserved_words \b(and|assert|break|class|continue|def|del|elif|else|except|exec|finally|for|from|global|if|import|in|is|lambda|not|or|pass|print|raise|return|try|while|yield)\b
1198
+ lang.python.tokens.reserved_words.format white
1199
+ lang.python.tokens.non_alphanum [@!#$%^&*()\[\]{}/?=+\-\\|,<.>;:~]
1200
+ lang.python.tokens.non_alphanum.format white
1201
+ lang.python.indent.size 4
1202
+ lang.python.indent.auto true
1203
+ lang.python.indent.roundup true
1204
+ #lang.python.indent.using_tabs true
1205
+ lang.python.indent.indenters \b(class|def|elif|else|except|finally|for|if|try|while)\b
1206
+ #lang.python.indent.indenters :
1207
+ lang.python.indent.unindenters \b(else|elif|except)\b
1208
+ lang.python.indent.preventers (\".+?[^\\]\")|('.+?[^\\]')|(`.+?[^\\]`)|(^\s*#.*)
1209
+ lang.python.indent.ignore ^\s*$
1210
+
1211
+ # Java
1212
+
1213
+ lang.java.filemask \.java$
1214
+ lang.java.format.default white bold
1215
+ lang.java.format.selection inverse
1216
+ lang.java.format.found yellow inverse
1217
+ lang.java.tokens.doublequoted_strings (\".*?[^\\]?\")
1218
+ lang.java.tokens.doublequoted_strings.format green bold
1219
+ lang.java.tokens.singlequoted_strings ('.*?[^\\]')
1220
+ lang.java.tokens.singlequoted_strings.format green bold
1221
+ lang.java.tokens.reserved_words \b(abstract|do|if|package|synchronized|boolean|double|implements|private|this|break|else|import|protected|throw|byte|extends|instanceof|public|throws|case|false|int|return|transient|catch|final|interface|short|true|char|finally|long|static|try|class|float|native|strictfp|void|const|for|new|super|volatile|continue|goto|null|switch|while|default|assert)\b
1222
+ lang.java.tokens.reserved_words.format white
1223
+ lang.java.tokens.constants \b([A-Z_]+|[A-Z_][A-Z0-9_]+)\b
1224
+ lang.java.tokens.constants.format yellow bold
1225
+ lang.java.tokens.comments (\/\/.*)
1226
+ lang.java.tokens.comments.format = lang.shared.tokens.comments.format
1227
+ lang.java.comment_string "/* "
1228
+ lang.java.comment_close_string " */"
1229
+ lang.java.tokens.long_comments.open \/\*
1230
+ lang.java.tokens.long_comments.close \*\/
1231
+ lang.java.tokens.long_comments.format = lang.shared.tokens.comments.format
1232
+ lang.java.tokens.regular_expressions (\/.+?[^\\]\/)
1233
+ lang.java.tokens.regular_expressions.format red bold
1234
+ lang.java.tokens.non_alphanum ([!@#$%\^&*()\[\]{}/?=+\-\\|,<.>;:])
1235
+ lang.java.tokens.non_alphanum.format white
1236
+ lang.java.indent.size 4
1237
+ lang.java.indent.auto true
1238
+ lang.java.indent.roundup false
1239
+ #lang.java.indent.using_tabs true
1240
+ lang.java.indent.indenters (\{)
1241
+ lang.java.indent.unindenters (\})
1242
+ lang.java.indent.preventers (\".+?[^\\]\")|('.+?[^\\]')|(\/\/.*)
1243
+ lang.java.indent.ignore ^(.+:|\s*?)$
1244
+ lang.java.indent.closers true
1245
+ lang.java.context.ignore ^(.+:|\s*\{?)$
1246
+ lang.java.closers.for.regexp for$
1247
+ lang.java.closers.for.closer { |m| "( $i = 0; $i < limit; $i++ ) {\n%_\n}" }
1248
+ lang.java.column_delimiters =|:|,
1249
+
1250
+ # C
1251
+
1252
+ lang.c.filemask \.(c(pp|xx)?|h)$
1253
+ lang.c.format.default white bold
1254
+ lang.c.format.selection inverse
1255
+ lang.c.format.found yellow inverse
1256
+ lang.c.tokens.doublequoted_strings (\".*?[^\\]?\")
1257
+ lang.c.tokens.doublequoted_strings.format green bold
1258
+ lang.c.tokens.singlequoted_strings ('.*?[^\\]')
1259
+ lang.c.tokens.singlequoted_strings.format green bold
1260
+ lang.c.tokens.reserved_words \b(if|double|break|else|byte|case|int|return|short|char|long|static|void|for|super|continue|goto|switch|while)\b
1261
+ lang.c.tokens.reserved_words.format white
1262
+ lang.c.tokens.constants \b([A-Z_]+|[A-Z_][A-Z0-9_]+)\b
1263
+ lang.c.tokens.constants.format yellow bold
1264
+ lang.c.tokens.comments (\/\/.*)
1265
+ lang.c.tokens.comments.format = lang.shared.tokens.comments.format
1266
+ lang.c.comment_string "// "
1267
+ lang.c.tokens.preprocessor (^\s*#.*)
1268
+ lang.c.tokens.preprocessor.format yellow bold
1269
+ lang.c.tokens.long_comments.open \/\*
1270
+ lang.c.tokens.long_comments.close \*\/
1271
+ lang.c.tokens.long_comments.format = lang.shared.tokens.comments.format
1272
+ lang.c.tokens.non_alphanum ([!@#$%\^&*()\[\]{}/?=+\-\\|,<.>;:])
1273
+ lang.c.tokens.non_alphanum.format white
1274
+ lang.c.indent.size 4
1275
+ lang.c.indent.auto true
1276
+ lang.c.indent.roundup false
1277
+ #lang.c.indent.using_tabs true
1278
+ lang.c.indent.indenters_next_line (((if|for)\s*\(.+?\)\s*[^{]?|else\s*)$)
1279
+ lang.c.indent.indenters (case|[{\[(]\s*$)
1280
+ lang.c.indent.unindenters (case|^\s*[\]})])
1281
+ lang.c.indent.preventers (\".+?[^\\]\")|('.+?[^\\]')|(\/\/.*)
1282
+ lang.c.indent.ignore ^(.+:|\s*?)$
1283
+ lang.c.indent.not_indented ^\s*#
1284
+ lang.c.indent.triggers (\})$
1285
+ lang.c.context.ignore ^(.+:|\s*\{?)$
1286
+
1287
+ # Configuration files
1288
+
1289
+ lang.conf.filemask (?:\.conf(?:ig)?|\.cfg|\.cnf|user_prefs|XF86Config)$
1290
+ lang.conf.format.default white
1291
+ lang.conf.format.selection inverse
1292
+ lang.conf.format.found yellow inverse
1293
+ lang.conf.tokens.commands ^\s*([^\s=#]+)
1294
+ lang.conf.tokens.commands.format cyan bold
1295
+ lang.conf.tokens.comments (^\s*#.*)
1296
+ lang.conf.tokens.comments.format yellow bold
1297
+ lang.conf.comment_string "# "
1298
+ lang.conf.tokens.doublequoted_strings (\".*?[^\\]?\")
1299
+ lang.conf.tokens.doublequoted_strings.format green bold
1300
+ lang.conf.tokens.singlequoted_strings ('.*?[^\\]')
1301
+ lang.conf.tokens.singlequoted_strings.format green bold
1302
+ lang.conf.indent.size 4
1303
+ lang.conf.indent.auto true
1304
+ lang.conf.indent.roundup true
1305
+ #lang.conf.indent.using_tabs true
1306
+
1307
+ # crontab
1308
+
1309
+ lang.crontab.filemask (?:^|\/)crontab$
1310
+ lang.crontab.format.default white
1311
+ lang.crontab.format.selection inverse
1312
+ lang.crontab.format.found yellow inverse
1313
+ lang.crontab.tokens.comments (^\s*#.*)
1314
+ lang.crontab.tokens.comments.format yellow bold
1315
+ lang.crontab.comment_string "# "
1316
+ lang.crontab.tokens.schedule ^((?:[0-9\/*,-]+\s+){5})
1317
+ lang.crontab.tokens.schedule.format cyan bold
1318
+ lang.crontab.tokens.commands ^(\S+=.+)
1319
+ lang.crontab.tokens.commands.format cyan
1320
+ lang.crontab.indent.size 4
1321
+ lang.crontab.indent.auto true
1322
+ lang.crontab.indent.roundup true
1323
+ #lang.crontab.indent.using_tabs true
1324
+
1325
+ lang.fstab.filemask ^fstab$
1326
+ lang.fstab.format.default white
1327
+ lang.fstab.format.selection inverse
1328
+ lang.fstab.format.found yellow inverse
1329
+ lang.fstab.tokens.comments (^\s*#.*)
1330
+ lang.fstab.tokens.comments.format yellow bold
1331
+ lang.fstab.comment_string "# "
1332
+ lang.fstab.indent.size 4
1333
+ lang.fstab.indent.auto true
1334
+ lang.fstab.indent.roundup true
1335
+ #lang.fstab.indent.using_tabs true
1336
+
1337
+ # SQL
1338
+
1339
+ lang.sql.filemask \.sql$
1340
+ lang.sql.format.default white bold
1341
+ lang.sql.format.selection inverse
1342
+ lang.sql.format.found yellow inverse
1343
+ lang.sql.indent.size 4
1344
+ lang.sql.indent.auto true
1345
+ lang.sql.indent.roundup false
1346
+ #lang.sql.indent.using_tabs true
1347
+ #lang.sql.tokens.reserved_words.case_insensitive \b(ABSOLUTE|ACCESS|ACTION|ADD|ADMIN|AFTER|ALIAS|ALL|ALLOCATE|AND|ANY|ARE|AS|ASC|ASSERTION|AT|AUDIT|AUTHORIZATION|AVG|BEFORE|BEGIN|BETWEEN|BIT_LENGTH|BOTH|BREADTH|BY|CASCADE|CASCADED|CASE|CAST|CATALOG|CHAR_LENGTH|CHARACTER_LENGTH|CHECK|CLASS|CLOSE|CLUSTER|COALESCE|COBOL|COLLATE|COLLATION|COLUMN|COMPLETION|COMPRESS|COMPUTED|CONCAT|CONNECT|CONNECTION|CONSTRAINT|CONSTRAINTS|CONSTRUCTOR|CONTINUE|CONVERT|CORRESPONDING|COUNT|CROSS|CURRENT_DATE|CURRENT_TIME|CURRENT_TIMESTAMP|CURRENT_USER|CURRENT|CURSOR|CYCLE|DATA|DAY|DBHIGH|DBKEY|DBLOW|DBMAC|DEALLOCATE|DECLARE|DECODE|DEFAULT|DEFERRABLE|DEFERRED|DEPTH|DEREF|DESC|DESCRIBE|DESCRIPTOR|DESTROY|DESTRUCTOR|DIAGNOSTICS|DICTIONARY|DISCONNECT|DISTINCT|DO|DOMAIN|EACH|ELEMENT|ELSE|ELSEIF|END-EXEC|END|EQUALS|ESCAPE|EXCEPT|EXCEPTION|EXCEPTIONS|EXCLUSIVE|EXISTS|EXTERNAL|EXTERNALLY|EXTRACT|FALSE|FILE|FIRST|FOR|FOREIGN|FORTRAN|FOUND|FROM|FULL|FUNCTION|GENERAL|GET|GLOBAL|GO|GOTO|GROUP|HAVING|HOUR|IDENTIFIED|IDENTITY|IF|IGNORE|IMMEDIATE|IN|INCREMENT|INDEX|INDICATOR|INITIAL|INITIALLY|INNER|INOUT|INPUT|INSENSITIVE|INSTEAD|INTERSECT|INTERVAL|INTO|IS|ISOLATION|JOIN|KEY|LABEL|LANGUAGE|LAST|LEADING|LEAVE|LEFT|LESS|LEVEL|LIKE|LIMIT|LOCAL|LOCK|LOOP|LOWER|MATCH|MAX|MAXEXTENTS|MIN|MINUS|MINUTE|MLSLABEL|MLS_LABEL_FORMAT|MODE|MODIFY|MODULE|MONTH|MOVE|MULTISET|NAMES|NATIONAL|NATURAL|NEW_TABLE|NEXT|NO|NOAUDIT|NOCOMPRESS|NONE|NOT|NOWAIT|NULL|NULLIF|NUMBER|NVL|OCTET_LENGTH|OF|OFF|OFFLINE|OID|OLD|OLD_TABLE|ON|ONLINE|ONLY|OPEN|OPERATION|OPERATORS|OPTION|OR|ORDER|OTHERS|OUT|OUTER|OUTPUT|OVERLAPS|PAD|PARAMETER|PARTIAL|PASCAL|PCTFREE|PENDANT|PLI|POSITION|PRECISION|PREORDER|PRESERVE|PRIMARY|PRIOR|PRIVATE|PRIVILEGES|PROCEDURE|PROTECTED|PUBLIC|RAW|READ|READUP|REAL|RECORD|RECURSIVE|REF|REFERENCES|REFERENCING|RELATIVE|RENAME|REPLACE|REPRESENTATION|RESIGNAL|RESOURCE|RESTRICT|RETURN|RETURNS|RIGHT|ROLE|ROUTINE|ROW|ROWID|ROWNUM|ROWS|SAVEPOINT|SCHEMA|SCROLL|SEARCH|SECOND|SECTION|SENSITIVE|SEQUENCE|SESSION|SESSION_USER|SET|SHARE|SIGNAL|SIMILAR|SIZE|SOME|SPACE|SPECIFIC|SQL|SQLCODE|SQLERROR|SQLEXCEPTION|SQLSTATE|SQLWARNING|START|STRUCTURE|SUBSTRING|SUCCESSFUL|SUM|SYNONYM|SYSDATE|SYSTEM_USER|TABLE|TEMPLATE|TEMPORARY|TEST|THAN|THEN|THERE|SQ92|TIMEZONE_HOUR|TIMEZONE_MINUTE|TO|TRAILING|TRANSACTION|TRANSLATE|TRANSLATION|TRIGGER|TRIM|TRUE|TUPLE|TYPE|UID|UNDER|UNION|UNIQUE|UNKNOWN|UPPER|USAGE|USER|USING|VALIDATE|VALUE|VALUES|VARIABLE|VARIANT|VIRTUAL|VARYING|VIEW|VISIBLE|VOID|WAIT|WHEN|WHENEVER|WHERE|WHILE|WITH|WITHOUT|WORK|WRITE|WRITEDOWN|WRITEUP|YEAR|ZONE)\b
1348
+ lang.sql.tokens.reserved_words.case_insensitive \b(ALL|AND|ANY|AS|ASC|BEGIN|BY|CASCADE|CASE|CAST|CHECK|COALESCE|COLUMN|CONSTRAINT|COUNT|CURRENT_DATE|CURRENT_TIME|CURRENT_TIMESTAMP|CURSOR|DECLARE|DEFAULT|DESC|DISTINCT|DO|ELSE|ELSEIF|END|EXCEPT|EXISTS|FALSE|FIRST|FOR|FOREIGN|FOUND|FROM|FULL|FUNCTION|GROUP|HAVING|HOUR|IF|IN|INCREMENT|INDEX|INNER|INPUT|INSTEAD|INTERSECT|INTERVAL|INTO|IS|JOIN|KEY|LANGUAGE|LAST|LEFT|LIKE|LIMIT|LOOP|MAX|MIN|NATURAL|NEXT|NO|NONE|NOT|NULL|NUMBER|OF|OFF|OLD|ON|ONLY|OR|ORDER|OUT|OUTER|PARTIAL|PRECISION|PRIMARY|REAL|RECORD|REF|REFERENCES|REPLACE|RESTRICT|RETURN|RETURNS|RIGHT|SCHEMA|SEQUENCE|SET|SUM|TABLE|TEMPORARY|THAN|THEN|TO|TRANSACTION|TRIGGER|TRUE|TYPE|UNION|UNIQUE|UPPER|USING|VALUE|VALUES|VARYING|VIEW|WHEN|WHERE|WHILE|WITH|WITHOUT|WORK)\b
1349
+ lang.sql.tokens.reserved_words.format white
1350
+ lang.sql.tokens.commands.case_insensitive \b(ALTER|COMMENT|COMMIT|CREATE|DELETE|DROP|EXEC|EXECUTE|FETCH|GRANT|INSERT|PERFORM|PREPARE|REVOKE|ROLLBACK|SELECT|UPDATE)\b
1351
+ lang.sql.tokens.commands.format cyan
1352
+ lang.sql.tokens.data_types.case_insensitive \b(BIT|BOOLEAN|CHAR|CHARACTER|DATE|DEC|DECIMAL|DOUBLE|FLOAT|INT|INTEGER|INTERVAL|LONG|NCHAR|NUMBER|NUMERIC|REAL|RECORD|ROW|SMALLINT|STRUCTURE|TIME|TIMESTAMP|TUPLE|VARCHAR|VARCHAR2)\b
1353
+ lang.sql.tokens.data_types.format brown
1354
+ lang.sql.tokens.comments (--.*)
1355
+ lang.sql.tokens.comments.format = lang.shared.tokens.comments.format
1356
+ lang.sql.comment_string "-- "
1357
+ lang.sql.tokens.singlequoted_strings ('.*?[^\\]')
1358
+ lang.sql.tokens.singlequoted_strings.format green bold
1359
+ lang.sql.tokens.typos (==)
1360
+ lang.sql.tokens.typos.format 15 bold
1361
+ lang.sql.tokens.non_alphanum ([!@#$%\^&*()\[\]{}/?=+\-\\|,<.>;:])
1362
+ lang.sql.tokens.non_alphanum.format white
1363
+ lang.sql.indent.indenters ((?:\(|BEGIN|DECLARE|FROM|LOOP|ORDER BY|SELECT|SET|WHERE)$)
1364
+ lang.sql.indent.unindenters (^\s+(?:\)|;|BEGIN|DECLARE|END))
1365
+ lang.sql.indent.preventers (\".+?[^\\]\")|('.+?[^\\]')
1366
+ lang.sql.context.ignore ^(\W+)$
1367
+
1368
+ # Bash
1369
+
1370
+ lang.bash.filemask (?:\.(?:ebuild|bash_profile|bashrc)|PKGBUILD)$
1371
+ lang.bash.bangmask #!.*(?:ba)?sh\b
1372
+ lang.bash.format.default white bold
1373
+ lang.bash.format.selection inverse
1374
+ lang.bash.format.found yellow inverse
1375
+ lang.bash.indent.size 2
1376
+ lang.bash.indent.auto true
1377
+ lang.bash.indent.roundup true
1378
+ #lang.bash.indent.using_tabs true
1379
+ lang.bash.tabsize 2
1380
+ lang.bash.tokens.comments (^\s*#.*)
1381
+ lang.bash.tokens.comments.format = lang.shared.tokens.comments.format
1382
+ lang.bash.comment_string "# "
1383
+ lang.bash.tokens.singlequoted_strings ('.*?[^\\]')
1384
+ lang.bash.tokens.singlequoted_strings.format green bold
1385
+ lang.bash.tokens.doublequoted_strings (\".*?[^\\]?\")
1386
+ lang.bash.tokens.doublequoted_strings.format green bold
1387
+ lang.bash.tokens.backquoted_strings (`.*?[^\\]`)
1388
+ lang.bash.tokens.backquoted_strings.format red bold
1389
+ lang.bash.indent.indenters (\{)
1390
+ lang.bash.indent.unindenters (\})
1391
+ lang.bash.indent.preventers (\".+?[^\\]\")|('.+?[^\\]')|(\/\/.*)
1392
+ lang.bash.indent.ignore ^(.+:|\s*?)$
1393
+
1394
+ # Tcl
1395
+
1396
+ lang.tcl.filemask \.tcl$
1397
+ lang.tcl.bangmask #!.*tcl
1398
+ lang.tcl.format.default white bold
1399
+ lang.tcl.format.selection inverse
1400
+ lang.tcl.format.found yellow inverse
1401
+ lang.tcl.indent.size 4
1402
+ lang.tcl.indent.auto true
1403
+ lang.tcl.indent.roundup true
1404
+ #lang.tcl.indent.using_tabs true
1405
+ lang.tcl.tabsize 4
1406
+ lang.tcl.tokens.comments (^\s*#.*)
1407
+ lang.tcl.tokens.comments.format = lang.shared.tokens.comments.format
1408
+ lang.tcl.comment_string "# "
1409
+ lang.tcl.tokens.reserved_words \b(encoding|incr|pid|tcl_endOfWord|Tcl|eof|info|tcl_findLibrary|after|error|interp|pkg_mkIndex|tcl_startOfNextWord|append|eval|join|proc|tcl_startOfPreviousWord|array|exec|lappend|puts|tcl_wordBreakAfter|auto_execok|exit|lassign|pwd|tcl_wordBreakBefore|auto_import|expr|lindex|re_syntax|tcltest|auto_load|fblocked|linsert|read|tclvars|auto_mkindex|fconfigure|list|regexp|tell|auto_mkindex_old|fcopy|llength|registry|time|auto_qualify|file|load|regsub|trace|auto_reset|fileevent|lrange|rename|unknown|bgerror|filename|lrepeat|resource|unload|binary|flush|lreplace|return|unset|break|for|lsearch|scan|update|catch|foreach|lset|seek|uplevel|cd|format|lsort|set|upvar|clock|gets|memory|socket|variable|close|glob|msgcat|source|vwait|concat|global|namespace|split|while|continue|history|open|string|dde|http|package|subst|dict|if|parray|switch)\b
1410
+ lang.tcl.tokens.reserved_words.format white
1411
+ lang.tcl.tokens.variables (\$[A-Za-z_][A-Za-z_0-9]*)\b
1412
+ lang.tcl.tokens.variables.format yellow bold
1413
+ lang.tcl.tokens.doublequoted_strings (\".*?[^\\]?\")
1414
+ lang.tcl.tokens.doublequoted_strings.format green bold
1415
+ lang.tcl.tokens.non_alphanum ([!@#$%\^&*()\[\]{}/?=+\-\\|,<.>;:])
1416
+ lang.tcl.tokens.non_alphanum.format white
1417
+ lang.tcl.indent.indenters (\{)
1418
+ lang.tcl.indent.unindenters (\})
1419
+ lang.tcl.indent.preventers (\".+?[^\\]\")|('.+?[^\\]')|(\/\/.*)
1420
+
1421
+ lang.diff.filemask (?:\.(?:diff|patch|rej)|COMMIT_EDITMSG)$
1422
+ lang.diff.format.default white
1423
+ lang.diff.format.selection inverse
1424
+ lang.diff.format.found yellow inverse
1425
+ lang.diff.indent.size 4
1426
+ lang.diff.indent.auto false
1427
+ #lang.diff.indent.using_tabs true
1428
+ lang.diff.tabsize 4
1429
+ lang.diff.tokens.oldfile (^--- .+$)
1430
+ lang.diff.tokens.oldfile.format red bold
1431
+ lang.diff.tokens.newfile (^\+\+\+ .+$)
1432
+ lang.diff.tokens.newfile.format green bold
1433
+ lang.diff.tokens.oldline (^-.+$)
1434
+ lang.diff.tokens.oldline.format red bold
1435
+ lang.diff.tokens.newline (^\+.+$)
1436
+ lang.diff.tokens.newline.format green bold
1437
+ lang.diff.tokens.location (^@@.+$)
1438
+ lang.diff.tokens.location.format green
1439
+ lang.diff.tokens.filediff (^Only in .+$)
1440
+ lang.diff.tokens.filediff.format magenta bold
1441
+ lang.diff.tokens.diff_command (^diff .+$)
1442
+ lang.diff.tokens.diff_command.format 13 bold
1443
+
1444
+ lang.yaml.filemask (?:\.ya?ml)$
1445
+ lang.yaml.format.default white bold
1446
+ lang.yaml.format.selection inverse
1447
+ lang.yaml.format.found yellow inverse
1448
+ lang.yaml.tokens.value_indicator (:)(?: |$)
1449
+ lang.yaml.tokens.value_indicator.format white
1450
+ lang.yaml.tokens.key_indicator (\? )
1451
+ lang.yaml.tokens.key_indicator.format white
1452
+ lang.yaml.tokens.nested_series (?:^|[^-])(- )
1453
+ lang.yaml.tokens.nested_series.format magenta bold
1454
+ lang.yaml.tokens.series_separator (,)
1455
+ lang.yaml.tokens.series_separator.format white
1456
+ lang.yaml.tokens.inline_series ([\[\]])
1457
+ lang.yaml.tokens.inline_series.format white
1458
+ lang.yaml.tokens.inline_keyed ([{}])
1459
+ lang.yaml.tokens.inline_keyed.format white
1460
+ lang.yaml.tokens.doublequoted_strings (\".*?[^\\]?\")
1461
+ lang.yaml.tokens.doublequoted_strings.format green bold
1462
+ lang.yaml.tokens.singlequoted_strings ('.*?[^\\]'|'')
1463
+ lang.yaml.tokens.singlequoted_strings.format green bold
1464
+ lang.yaml.tokens.block_scalar (\|[0-9+-]*)$
1465
+ lang.yaml.tokens.block_scalar.format blue bold
1466
+ lang.yaml.tokens.folded_scalar (>[0-9+-]*)$
1467
+ lang.yaml.tokens.folded_scalar.format blue bold
1468
+ lang.yaml.tokens.document_header ^(---.*)$
1469
+ lang.yaml.tokens.document_header.format 10 bold
1470
+ lang.yaml.tokens.document_terminator ^(\.\.\.)
1471
+ lang.yaml.tokens.document_terminator.format 10
1472
+ lang.yaml.tokens.directive_indicator ^(%.*)
1473
+ lang.yaml.tokens.directive_indicator.format 10
1474
+ lang.yaml.tokens.comment_indicator (#.+)
1475
+ lang.yaml.tokens.comment_indicator.format = lang.shared.tokens.comments.format
1476
+ lang.yaml.comment_string "# "
1477
+ lang.yaml.tokens.anchor_indicator (&\w+)
1478
+ lang.yaml.tokens.anchor_indicator.format red bold
1479
+ lang.yaml.tokens.alias_indicator (\*\w+)
1480
+ lang.yaml.tokens.alias_indicator.format yellow
1481
+ lang.yaml.tokens.tag (!\w*)
1482
+ lang.yaml.tokens.tag.format yellow bold
1483
+ lang.yaml.tokens.null (~|null)
1484
+ lang.yaml.tokens.null.format red
1485
+ lang.yaml.tabsize 8
1486
+ lang.yaml.indent.size 2
1487
+ lang.yaml.indent.auto true
1488
+ lang.yaml.indent.roundup true
1489
+ lang.yaml.indent.indenters :$
1490
+ lang.yaml.indent.preventers (\".+?[^\\]\")|('.+?[^\\]')|(`.+?[^\\]`)|(^\s*#.*)
1491
+ lang.yaml.indent.ignore ^\s*$
1492
+
1493
+ lang.haml.filemask \.haml$
1494
+ lang.haml.format.default white bold
1495
+ lang.haml.format.selection inverse
1496
+ lang.haml.format.found yellow inverse
1497
+ lang.haml.tabsize 8
1498
+ lang.haml.indent.size 2
1499
+ lang.haml.indent.auto true
1500
+ lang.haml.indent.roundup true
1501
+ lang.haml.indent.using_tabs false
1502
+ lang.haml.tokens.code.open [=~-]
1503
+ lang.haml.tokens.code.close $
1504
+ lang.haml.tokens.code.format 9 bold
1505
+ lang.haml.tokens.code.change_to ruby
1506
+ lang.haml.tokens.tags (%\w+\b)
1507
+ lang.haml.tokens.tags.format white
1508
+ lang.haml.tokens.hash.open [{\[]
1509
+ lang.haml.tokens.hash.close [}\]]
1510
+ lang.haml.tokens.hash.format blue bold
1511
+ lang.haml.tokens.hash.change_to ruby
1512
+ lang.haml.tokens.class \.[a-zA-Z0-9_-]+
1513
+ lang.haml.tokens.class.format cyan bold
1514
+ lang.haml.tokens.id ^\s*#[a-zA-Z0-9_-]+
1515
+ lang.haml.tokens.id.format cyan
1516
+ lang.haml.tokens.xml !!!
1517
+ lang.haml.tokens.xml.format magenta bold
1518
+ lang.haml.tokens.comments (^\s*-#.*)
1519
+ lang.haml.tokens.comments.format = lang.shared.tokens.comments.format
1520
+ lang.haml.comment_string "-# "
1521
+ lang.haml.tokens.html_comment ^ *(\/.*)
1522
+ lang.haml.tokens.html_comment.format = lang.shared.tokens.comments.format
1523
+ lang.haml.tokens.line_joiner \|$
1524
+ lang.haml.tokens.line_joiner.format 12 bold
1525
+
1526
+ lang.sass.filemask \.sass$
1527
+ lang.sass.format.default white
1528
+ lang.sass.format.selection inverse
1529
+ lang.sass.format.found yellow inverse
1530
+ lang.sass.tabsize 2
1531
+ lang.sass.indent.size 2
1532
+ lang.sass.indent.auto true
1533
+ lang.sass.indent.roundup true
1534
+ lang.sass.indent.using_tabs false
1535
+ lang.sass.tokens.rules ^[A-Za-z0-9,.#\s_-]+$
1536
+ lang.sass.tokens.rules.format cyan bold
1537
+ lang.sass.tokens.attributes ^ *(?::\S+|[A-Za-z0-9_-]+: )
1538
+ lang.sass.tokens.attributes.format white bold
1539
+ lang.sass.tokens.colour #(?:[A-Fa-f0-9]{3}){1,2}\b
1540
+ lang.sass.tokens.colour.format yellow bold
1541
+ lang.sass.tokens.units \d+ *(px|em|pt)\b
1542
+ lang.sass.tokens.units.format brown
1543
+ lang.sass.tokens.silent_comments (\/\/.*)
1544
+ lang.sass.tokens.silent_comments.format = lang.shared.tokens.comments.format
1545
+ lang.sass.tokens.loud_comments (\/\*.*)
1546
+ lang.sass.tokens.loud_comments.format = lang.shared.tokens.comments.format
1547
+ lang.sass.tokens.line_joiner \|$
1548
+ lang.sass.tokens.line_joiner.format 12 bold
1549
+ lang.sass.tokens.parent (&):
1550
+ lang.sass.tokens.parent.format red bold
1551
+
1552
+ lang.makefile.filemask Makefile$
1553
+ lang.makefile.format.default white
1554
+ lang.makefile.format.selection inverse
1555
+ lang.makefile.format.found yellow inverse
1556
+ lang.makefile.tokens.assignment_lhs ^\s*([^\s=]+)\s*[+?]?=
1557
+ lang.makefile.tokens.assignment_lhs.format white bold
1558
+ lang.makefile.tokens.comments (^\s*#.*)
1559
+ lang.makefile.tokens.comments.format = lang.shared.tokens.comments.format
1560
+ lang.makefile.comment_string "# "
1561
+ lang.makefile.tokens.targets (^\S+):
1562
+ lang.makefile.tokens.targets.format yellow bold
1563
+ lang.makefile.tokens.references @?\$(?:\(.+?\)|\w+)
1564
+ lang.makefile.tokens.references.format green bold
1565
+ lang.makefile.tokens.keywords ^\s*(else|endif|export|ifdef|ifeq|ifndef|ifneq)
1566
+ lang.makefile.tokens.keywords.format cyan bold
1567
+ lang.makefile.indent.size 8
1568
+ lang.makefile.indent.auto true
1569
+ lang.makefile.indent.roundup true
1570
+ lang.makefile.indent.using_tabs true
1571
+ lang.makefile.indent.indenters ^(\S+:|ifdef|ifeq|ifndef|ifneq|else)
1572
+ lang.makefile.indent.unindenters ^(\S+:|endif)
1573
+ lang.makefile.indent.preventers (^\s*#.*)
1574
+ lang.makefile.indent.ignore ^\s*$
1575
+
1576
+ lang.bind.bangmask ^(@\s|\$TTL|;.*(?:bind|BIND|Bind))
1577
+ lang.bind.format.default white bold
1578
+ lang.bind.format.selection inverse
1579
+ lang.bind.format.found yellow inverse
1580
+ lang.bind.tokens.comments (;.*)
1581
+ lang.bind.tokens.comments.format = lang.shared.tokens.comments.format
1582
+ lang.bind.comment_string "; "
1583
+ lang.bind.tokens.ttl \$TTL
1584
+ lang.bind.tokens.ttl.format yellow bold
1585
+ lang.bind.tokens.number \s(\d+)(?:[^0-9.mhdw]|$)
1586
+ lang.bind.tokens.number.format blue bold
1587
+ lang.bind.tokens.time \b(\d+)[mhdw]
1588
+ lang.bind.tokens.time.format red bold
1589
+ lang.bind.tokens.domain (?:[a-z][\w-]+\.)+[a-z][\w-]+\.?
1590
+ lang.bind.tokens.domain.format cyan bold
1591
+ lang.bind.tokens.ip4address \b\d+\.\d+\.\d+\.\d+\b
1592
+ lang.bind.tokens.ip4address.format cyan
1593
+ lang.bind.tokens.keywords1 \b(IN)\b
1594
+ lang.bind.tokens.keywords1.format white
1595
+ lang.bind.tokens.keywords2 \b(A|CNAME|MX|NS|SOA|TXT)\b
1596
+ lang.bind.tokens.keywords2.format yellow bold
1597
+ lang.bind.tokens.doublequoted_strings (\".*?[^\\]?\")
1598
+ lang.bind.tokens.doublequoted_strings.format green bold
1599
+ lang.bind.indent.size 8
1600
+ lang.bind.indent.auto true
1601
+ lang.bind.indent.roundup true
1602
+ lang.bind.indent.using_tabs false
1603
+
1604
+ lang.markdown.filemask \.(?:md|markdown)
1605
+ lang.markdown.format.default white
1606
+ lang.markdown.format.selection inverse
1607
+ lang.markdown.format.found yellow inverse
1608
+ lang.markdown.tokens.title (^# .*)
1609
+ lang.markdown.tokens.title.format 8 bold
1610
+ lang.markdown.tokens.subtitle (^## .*)
1611
+ lang.markdown.tokens.subtitle.format cyan bold
1612
+ lang.markdown.tokens.subsubtitle (^###+ .*)
1613
+ lang.markdown.tokens.subsubtitle.format cyan
1614
+ lang.markdown.tokens.list_item ^\s*\*
1615
+ lang.markdown.tokens.list_item.format white bold
1616
+ lang.markdown.tokens.code ^(?: {4,}|\t)\s*.+
1617
+ lang.markdown.tokens.code.format yellow bold
1618
+ lang.markdown.indent.size 2
1619
+ lang.markdown.indent.auto true
1620
+ lang.markdown.indent.roundup true
1621
+ lang.markdown.wrap_margin 80
1622
+
1623
+ lang.gherkin.filemask \.feature
1624
+ lang.gherkin.format.default white
1625
+ lang.gherkin.format.selection inverse
1626
+ lang.gherkin.format.found yellow inverse
1627
+ lang.gherkin.tokens.keyword ^\s*(And|As a|Background|But|Examples|Scenarios|Given|GivenScenario|I want|In order to|Scenario Outline|Then|When)
1628
+ lang.gherkin.tokens.keyword.format white bold
1629
+ lang.gherkin.tokens.feature_header ^\s*(Feature:.+)
1630
+ lang.gherkin.tokens.feature_header.format 8 bold
1631
+ lang.gherkin.tokens.scenario_header ^\s*(Scenario:.+)
1632
+ lang.gherkin.tokens.scenario_header.format 8
1633
+ lang.gherkin.indent.size 2
1634
+ lang.gherkin.indent.auto true
1635
+ lang.gherkin.indent.roundup true
1636
+ lang.gherkin.indent.indenters ^\s*(?:Feature|Scenario):
1637
+ lang.gherkin.wrap_margin 80
1638
+
1639
+ lang.haskell.filemask \.hs$
1640
+ # lang.haskell.bangmask #!.*ruby
1641
+ lang.haskell.format.default = lang.shared.format.default
1642
+ lang.haskell.format.selection = lang.shared.format.selection
1643
+ lang.haskell.format.found = lang.shared.format.found
1644
+ lang.haskell.tokens.reserved_words \b(case|class|data|deriving|do|else|if|import|in|infix|infixl|infixr|instance|let|of|module|newtype|then|type|where)\b
1645
+ lang.haskell.tokens.reserved_words.format = lang.shared.tokens.reserved_words.format
1646
+ # lang.haskell.tokens.non_modifiers ^\s*(if|unless)
1647
+ # lang.haskell.tokens.non_modifiers.format white
1648
+ # lang.haskell.tokens.modifiers \s+(if|unless)
1649
+ # lang.haskell.tokens.modifiers.format 44
1650
+ # lang.haskell.tokens.constants \b([A-Z_]+|[A-Z_][A-Z0-9_]+)\b
1651
+ # lang.haskell.tokens.constants.format = lang.shared.tokens.constants.format
1652
+ # lang.haskell.tokens.symbols [^:](:[a-zA-Z_][a-zA-Z_0-9]*)
1653
+ # lang.haskell.tokens.symbols.format white bold
1654
+ lang.haskell.tokens.comments (--.*)
1655
+ lang.haskell.tokens.comments.format = lang.shared.tokens.comments.format
1656
+ lang.haskell.comment_string "-- "
1657
+ lang.haskell.tokens.long_comments.open \{-
1658
+ lang.haskell.tokens.long_comments.close -\}
1659
+ lang.haskell.tokens.long_comments.format = lang.shared.tokens.comments.format
1660
+ # lang.haskell.tokens.regular_expressions (\/.+?[^\\]\/)
1661
+ # lang.haskell.tokens.regular_expressions (\/.+?[^\\]\/)
1662
+ # lang.haskell.tokens.regular_expressions.format red bold
1663
+ # lang.haskell.tokens.regular_expressions2 (%r\{.+?[^\}]\})
1664
+ # lang.haskell.tokens.regular_expressions2.format red bold
1665
+ lang.haskell.tokens.doublequoted_strings (\".*?[^\\]?\")
1666
+ lang.haskell.tokens.doublequoted_strings.format green bold
1667
+ lang.haskell.tokens.singlequoted_strings ('.*?[^\\]'|'')
1668
+ lang.haskell.tokens.singlequoted_strings.format green bold
1669
+ # lang.haskell.tokens.backquoted_strings (`.*?[^\\]`|``)
1670
+ # lang.haskell.tokens.backquoted_strings.format red bold
1671
+ lang.haskell.tokens.numbers \b([0-9]+[.e][0-9]+|[0-9]+)
1672
+ lang.haskell.tokens.numbers.format blue bold
1673
+ lang.haskell.tokens.non_alphanum [@!#$%^&*()\[\]{}/?=+\-\\|,<.>;~]
1674
+ lang.haskell.tokens.non_alphanum.format white
1675
+ lang.haskell.indent.size 4
1676
+ lang.haskell.indent.auto true
1677
+ lang.haskell.indent.roundup true
1678
+ lang.haskell.tabsize 4
1679
+ lang.haskell.indent.indenters ^\s*(else|if|where)\b|([{\[(=]$|(?:do|let|of|where)$|\{\s*\|[\w\s,]*\|\s*$)
1680
+ # lang.haskell.indent.unindenters ^\s*(end|else|elsif|ensure|when|rescue)\b|(^\s*[\]})])
1681
+ lang.haskell.indent.preventers (\".+?[^\\]\")|('.+?[^\\]')|(`.+?[^\\]`)|(\/.+?[^\\]\/)|(^\s*--.*)
1682
+ lang.haskell.indent.ignore ^\s*$
1683
+ # lang.haskell.context.ignore ^=(begin|end)$
1684
+ lang.haskell.column_delimiters =>?|:|,
1685
+
1686
+ # Lua
1687
+
1688
+ lang.lua.filemask (?:\.lua)$
1689
+ lang.lua.bangmask #!.*lua\b
1690
+ lang.lua.format.default white bold
1691
+ lang.lua.format.selection inverse
1692
+ lang.lua.format.found yellow inverse
1693
+ lang.lua.indent.size 4
1694
+ lang.lua.indent.auto true
1695
+ lang.lua.indent.roundup true
1696
+ #lang.lua.indent.using_tabs true
1697
+ lang.lua.tabsize 4
1698
+ lang.lua.tokens.reserved_words \b(and|break|do|else|elseif|end|for|function|if|local|nil|not|or|repeat|return|then|until|while)\b
1699
+ lang.lua.tokens.reserved_words.format = lang.shared.tokens.reserved_words.format
1700
+ lang.lua.tokens.comments (--.*)
1701
+ lang.lua.tokens.comments.format = lang.shared.tokens.comments.format
1702
+ lang.lua.comment_string "-- "
1703
+ lang.lua.tokens.singlequoted_strings ('.*?[^\\]')
1704
+ lang.lua.tokens.singlequoted_strings.format green bold
1705
+ lang.lua.tokens.doublequoted_strings (\".*?[^\\]?\")
1706
+ lang.lua.tokens.doublequoted_strings.format green bold
1707
+ lang.lua.tokens.numbers \b([0-9]+[.e][0-9]+|[0-9]+)
1708
+ lang.lua.tokens.numbers.format blue bold
1709
+ lang.lua.tokens.non_alphanum [@!#$%^&*()\[\]{}/?=+\-\\|,<.>;~]
1710
+ lang.lua.tokens.non_alphanum.format = lang.shared.tokens.non_alphanum.format
1711
+ lang.lua.indent.indenters ([{\[(])
1712
+ lang.lua.indent.unindenters ([}\])])
1713
+ lang.lua.indent.preventers (\".+?[^\\]\")|('.+?[^\\]')|(\/\/.*)
1714
+ lang.lua.indent.ignore ^(.+:|\s*?)$
1715
+
1716
+ # Octave
1717
+
1718
+ lang.octave.filemask \.m$
1719
+ lang.octave.bangmask #!.*octave
1720
+ lang.octave.format.default white
1721
+ lang.octave.format.selection inverse
1722
+ lang.octave.format.found yellow inverse
1723
+ lang.octave.tokens.constants \b([A-Z_]+|[A-Z_][A-Z0-9_]+)\b
1724
+ lang.octave.tokens.constants.format yellow bold
1725
+ lang.octave.tokens.comments (#.*)
1726
+ lang.octave.tokens.comments.format cyan
1727
+ lang.octave.comment_string "# "
1728
+ lang.octave.tokens.doublequoted_strings (\".*?[^\\]\")
1729
+ lang.octave.tokens.doublequoted_strings.format green bold
1730
+ lang.octave.tokens.singlequoted_strings ('.*?[^\\]')
1731
+ lang.octave.tokens.singlequoted_strings.format green bold
1732
+ lang.octave.tokens.backquoted_strings (`.*?[^\\]`)
1733
+ lang.octave.tokens.backquoted_strings.format red bold
1734
+ lang.octave.tokens.reserved_words \b(break|case|catch|continue|else|elseif|end|endif|endfor|endfunction|endwhile|false|for|function|global|if|otherwise|persistent|return|setenv|switch|true|try|while)\b
1735
+ lang.octave.tokens.reserved_words.format magenta bold
1736
+ lang.octave.tokens.non_alphanum [@!#$%^&*()\[\]{}/?=+\-\\|,<.>;:~]
1737
+ lang.octave.tokens.non_alphanum.format white
1738
+ lang.octave.tokens.numbers \b(([+-])?\d+(\.\d+)?(e\w+)?)\b
1739
+ lang.octave.tokens.numbers.format yellow bold
1740
+ lang.octave.indent.size 4
1741
+ lang.octave.indent.auto true
1742
+ lang.octave.indent.roundup true
1743
+ #lang.octave.indent.using_tabs true
1744
+ lang.octave.indent.indenters \b(case|catch|else|elseif|end|endif|endfor|endfunction|for|function|if|otherwise|switch|try|while)\b
1745
+ lang.octave.indent.unindenters \b(else|elseif|end|endif|endfor|endfunction|endwhile)\b
1746
+ lang.octave.indent.preventers (\".+?[^\\]\")|('.+?[^\\]')|(`.+?[^\\]`)|(^\s*#.*)
1747
+ lang.octave.indent.ignore ^\s*$
1748
+
1749
+ # Vue.js Webpack
1750
+
1751
+ lang.vue.filemask \.vue$
1752
+ lang.vue.format.default white
1753
+ lang.vue.format.selection inverse
1754
+ lang.vue.format.found yellow inverse
1755
+ lang.vue.tabsize 8
1756
+ lang.vue.indent.size 2
1757
+ lang.vue.indent.auto true
1758
+ lang.vue.indent.roundup true
1759
+ lang.vue.tokens.comments.open (<!--)
1760
+ lang.vue.tokens.comments.close (-->)
1761
+ lang.vue.tokens.comments.format 8
1762
+ lang.vue.tokens.comments.change_to html_comment
1763
+ lang.vue.comment_string "<!-- "
1764
+ lang.vue.comment_close_string " -->"
1765
+ lang.vue.tokens.entities &\S+?;
1766
+ lang.vue.tokens.entities.format magenta bold
1767
+ lang.vue.tokens.html_template.open <template.*?>
1768
+ lang.vue.tokens.html_template.close </template>
1769
+ lang.vue.tokens.html_template.format 47
1770
+ lang.vue.tokens.html_template.change_to html
1771
+ lang.vue.tokens.script.open <script.*?>
1772
+ lang.vue.tokens.script.close </script>
1773
+ lang.vue.tokens.script.format 47
1774
+ lang.vue.tokens.script.change_to javascript
1775
+ lang.vue.tokens.css.open <style.*?>
1776
+ lang.vue.tokens.css.close </style>
1777
+ lang.vue.tokens.css.format 47
1778
+ lang.vue.tokens.css.change_to css
1779
+ lang.vue.tokens.code.open (<)(?:[^%]|$)
1780
+ lang.vue.tokens.code.close (?:[^%]|^)(>)
1781
+ lang.vue.tokens.code.format white bold
1782
+ lang.vue.tokens.code.change_to html_tag
1783
+ lang.vue.tokens.template-interpolation.open \{\{
1784
+ lang.vue.tokens.template-interpolation.close \}\}
1785
+ lang.vue.tokens.template-interpolation.format white bold
1786
+ lang.vue.closers.tag.regexp .*<([^/> ]*)(?:.+?)?>
1787
+ lang.vue.closers.tag.closer </\1>
1788
+ lang.vue.surround.pair "<!--" "<!-- " " -->"
1789
+ lang.vue.surround.pair "/^<(.+?)>$/" "<\1>" "</\1>"
1790
+
1791
+
1792
+ # Other configuration files can be included.
1793
+ # If a setting is specified again, it overrides the previous setting given
1794
+ # higher up in the configuration file(s).
1795
+
1796
+ #include ~/.diakonos/custom.conf
1797
+
1798
+ # Uncomment this line if your terminal supports 256 colours.
1799
+ #include ~/.diakonos/diakonos-256-colour.conf
1800
+
1801
+ # Load extensions like this, specifying the extension directory (relative to ~/.diakonos/extensions)
1802
+ #load_extension dk-git