|
39 | 39 | " Expression Substitution and Backslash Notation |
40 | 40 | syn match rubyStringEscape "\\\\\|\\[abefnrstv]\|\\\o\{1,3}\|\\x\x\{1,2}" contained display |
41 | 41 | syn match rubyStringEscape "\%(\\M-\\C-\|\\C-\\M-\|\\M-\\c\|\\c\\M-\|\\c\|\\C-\|\\M-\)\%(\\\o\{1,3}\|\\x\x\{1,2}\|\\\=\S\)" contained display |
| 42 | +syn match rubyQuoteEscape "\\[\\']" contained display |
42 | 43 |
|
43 | 44 | syn region rubyInterpolation matchgroup=rubyInterpolationDelimiter start="#{" end="}" contained contains=ALLBUT,@rubyNotTop |
44 | 45 | syn match rubyInterpolation "#\%(\$\|@@\=\)\w\+" display contained contains=rubyInterpolationDelimiter,rubyInstanceVariable,rubyClassVariable,rubyGlobalVariable,rubyPredefinedVariable |
@@ -100,7 +101,7 @@ syn match rubySymbol "[]})\"':]\@<!:\%(\^\|\~\|<<\|<=>\|<=\|<\|===\|==\|=\~\| |
100 | 101 | syn match rubySymbol "[]})\"':]\@<!:\$\%(-.\|[`~<=>_,;:!?/.'"@$*\&+0]\)" |
101 | 102 | syn match rubySymbol "[]})\"':]\@<!:\%(\$\|@@\=\)\=\h\w*" |
102 | 103 | syn match rubySymbol "[]})\"':]\@<!:\h\w*\%([?!=]>\@!\)\=" |
103 | | -syn region rubySymbol start="[]})\"':]\@<!:\"" end="\"" skip="\\\\\|\\\"" |
| 104 | +syn region rubySymbol start="[]})\"':]\@<!:'" end="'" skip="\\\\\|\\'" contains=rubyQuoteEscape fold |
104 | 105 | syn region rubySymbol start="[]})\"':]\@<!:\"" end="\"" skip="\\\\\|\\\"" contains=@rubyStringSpecial fold |
105 | 106 |
|
106 | 107 | syn match rubyBlockParameter "\h\w*" contained |
@@ -132,7 +133,7 @@ syn region rubyRegexp matchgroup=rubyRegexpDelimiter start="%r(" end=")[iomxn |
132 | 133 |
|
133 | 134 | " Normal String and Shell Command Output |
134 | 135 | syn region rubyString matchgroup=rubyStringDelimiter start="\"" end="\"" skip="\\\\\|\\\"" contains=@rubyStringSpecial fold |
135 | | -syn region rubyString matchgroup=rubyStringDelimiter start="'" end="'" skip="\\\\\|\\'" fold |
| 136 | +syn region rubyString matchgroup=rubyStringDelimiter start="'" end="'" skip="\\\\\|\\'" contains=rubyQuoteEscape fold |
136 | 137 | syn region rubyString matchgroup=rubyStringDelimiter start="`" end="`" skip="\\\\\|\\`" contains=@rubyStringSpecial fold |
137 | 138 |
|
138 | 139 | " Generalized Single Quoted String, Symbol and Array of Strings |
@@ -333,6 +334,7 @@ hi def link rubyDataDirective Delimiter |
333 | 334 | hi def link rubyDocumentation Comment |
334 | 335 | hi def link rubyTodo Todo |
335 | 336 |
|
| 337 | +hi def link rubyQuoteEscape rubyStringEscape |
336 | 338 | hi def link rubyStringEscape Special |
337 | 339 | hi def link rubyInterpolationDelimiter Delimiter |
338 | 340 | hi def link rubyNoInterpolation rubyString |
|
0 commit comments