File tree Expand file tree Collapse file tree 4 files changed +32
-24
lines changed
Expand file tree Collapse file tree 4 files changed +32
-24
lines changed Original file line number Diff line number Diff line change @@ -11,6 +11,7 @@ New Grammars:
1111
1212Grammars:
1313
14+ - enh(objectivec) add ` type ` and ` variable.language ` scopes [ Josh Goebel] [ ]
1415- enh(xml) support processing instructions (#3492 ) [ Josh Goebel] [ ]
1516- enh(ruby ) better support multi-line IRB prompts
1617- enh(bash) improved keyword ` $pattern ` (numbers allowed in command names) [ Martin Mattel] [ ]
Original file line number Diff line number Diff line change @@ -12,46 +12,51 @@ export default function(hljs) {
1212 begin : '\\b(AV|CA|CF|CG|CI|CL|CM|CN|CT|MK|MP|MTK|MTL|NS|SCN|SK|UI|WK|XC)\\w+'
1313 } ;
1414 const IDENTIFIER_RE = / [ a - z A - Z @ ] [ a - z A - Z 0 - 9 _ ] * / ;
15- const KWS = [
15+ const TYPES = [
1616 "int" ,
1717 "float" ,
18- "while" ,
1918 "char" ,
19+ "unsigned" ,
20+ "signed" ,
21+ "short" ,
22+ "long" ,
23+ "double" ,
24+ "wchar_t" ,
25+ "unichar" ,
26+ "void" ,
27+ "bool" ,
28+ "BOOL" ,
29+ "id|0" ,
30+ "_Bool"
31+ ] ;
32+ const KWS = [
33+ "while" ,
2034 "export" ,
2135 "sizeof" ,
2236 "typedef" ,
2337 "const" ,
2438 "struct" ,
2539 "for" ,
2640 "union" ,
27- "unsigned" ,
28- "long" ,
2941 "volatile" ,
3042 "static" ,
31- "bool" ,
3243 "mutable" ,
3344 "if" ,
3445 "do" ,
3546 "return" ,
3647 "goto" ,
37- "void" ,
3848 "enum" ,
3949 "else" ,
4050 "break" ,
4151 "extern" ,
4252 "asm" ,
4353 "case" ,
44- "short" ,
4554 "default" ,
46- "double" ,
4755 "register" ,
4856 "explicit" ,
49- "signed" ,
5057 "typename" ,
51- "this" ,
5258 "switch" ,
5359 "continue" ,
54- "wchar_t" ,
5560 "inline" ,
5661 "readonly" ,
5762 "assign" ,
@@ -61,8 +66,6 @@ export default function(hljs) {
6166 "id" ,
6267 "typeof" ,
6368 "nonatomic" ,
64- "super" ,
65- "unichar" ,
6669 "IBOutlet" ,
6770 "IBAction" ,
6871 "strong" ,
@@ -153,18 +156,22 @@ export default function(hljs) {
153156 "NULL"
154157 ] ;
155158 const BUILT_INS = [
156- "BOOL" ,
157159 "dispatch_once_t" ,
158160 "dispatch_queue_t" ,
159161 "dispatch_sync" ,
160162 "dispatch_async" ,
161163 "dispatch_once"
162164 ] ;
163165 const KEYWORDS = {
166+ "variable.language" : [
167+ "this" ,
168+ "super"
169+ ] ,
164170 $pattern : IDENTIFIER_RE ,
165171 keyword : KWS ,
166172 literal : LITERALS ,
167- built_in : BUILT_INS
173+ built_in : BUILT_INS ,
174+ type : TYPES
168175 } ;
169176 const CLASS_KEYWORDS = {
170177 $pattern : IDENTIFIER_RE ,
Original file line number Diff line number Diff line change 22<span class="hljs-meta">#<span class="hljs-keyword">define</span> foo 1<<16</span>
33
44<span class="hljs-meta">#<span class="hljs-keyword">ifdef</span> DEBUG</span>
5- TYPE1 foo(<span class="hljs-keyword ">void</span>)
5+ TYPE1 foo(<span class="hljs-type ">void</span>)
66<span class="hljs-meta">#<span class="hljs-keyword">else</span></span>
7- <span class="hljs-keyword ">int</span> foo(<span class="hljs-keyword ">void</span>)
7+ <span class="hljs-type ">int</span> foo(<span class="hljs-type ">void</span>)
88<span class="hljs-meta">#<span class="hljs-keyword">endif</span></span>
99{ }
1010
@@ -15,5 +15,5 @@ TYPE1 foo(<span class="hljs-keyword">void</span>)
1515<span class="hljs-meta">#<span class="hljs-keyword">if</span> MACRO_WITH_STRING_ARG(<span class="hljs-string">"hello \"world\""</span>)</span>
1616<span class="hljs-meta">#<span class="hljs-keyword">elif</span> MULTI_LINE <span class="hljs-comment">/* comment */</span> < \
1717 EXPRESSION</span>
18- <span class="hljs-keyword ">int</span> bar;
18+ <span class="hljs-type ">int</span> bar;
1919<span class="hljs-meta">#<span class="hljs-keyword">endif</span> <span class="hljs-comment">// comment</span></span>
Original file line number Diff line number Diff line change 1- <span class="hljs-keyword">const</span> <span class="hljs-keyword ">char</span> *str = <span class="hljs-string">"Regular \"quoted\" string\n"</span>;
1+ <span class="hljs-keyword">const</span> <span class="hljs-type ">char</span> *str = <span class="hljs-string">"Regular \"quoted\" string\n"</span>;
22<span class="hljs-built_in">NSString</span> *nsstr = <span class="hljs-string">@"Obj-C \"quoted\" string\n"</span>;
3- <span class="hljs-keyword ">char</span> c = <span class="hljs-string">'c'</span>;
4- <span class="hljs-keyword ">char</span> c2 = <span class="hljs-string">'"'</span>;
5- <span class="hljs-keyword ">char</span> c3 = <span class="hljs-string">'\''</span>;
6- <span class="hljs-keyword ">char</span> c4 = <span class="hljs-string">'\n'</span>;
7- <span class="hljs-keyword ">int</span> multibyte_char = <span class="hljs-string">'abcd'</span>;
3+ <span class="hljs-type ">char</span> c = <span class="hljs-string">'c'</span>;
4+ <span class="hljs-type ">char</span> c2 = <span class="hljs-string">'"'</span>;
5+ <span class="hljs-type ">char</span> c3 = <span class="hljs-string">'\''</span>;
6+ <span class="hljs-type ">char</span> c4 = <span class="hljs-string">'\n'</span>;
7+ <span class="hljs-type ">int</span> multibyte_char = <span class="hljs-string">'abcd'</span>;
You can’t perform that action at this time.
0 commit comments