David Lawrence Ramsey | 5e6434c | 2006-06-01 17:23:28 +0000 | [diff] [blame] | 1 | ## Here is an example for C/C++. |
Benno Schulenberg | 275b617 | 2014-05-15 12:52:30 +0000 | [diff] [blame] | 2 | |
Benno Schulenberg | cf79e52 | 2014-02-22 16:57:23 +0000 | [diff] [blame] | 3 | syntax "c" "\.(c(c|pp|xx|\+\+)?|C)$" "\.(h(h|pp|xx)?|H)$" "\.ii?$" |
Benno Schulenberg | 275b617 | 2014-05-15 12:52:30 +0000 | [diff] [blame] | 4 | magic "(ASCII|UTF-8 Unicode) C(\+\+)? program text" |
Mike Scalora | 6a2032f | 2016-05-25 22:13:50 +0200 | [diff] [blame] | 5 | comment "//" |
Benno Schulenberg | 275b617 | 2014-05-15 12:52:30 +0000 | [diff] [blame] | 6 | |
Benno Schulenberg | fe9da94 | 2014-05-16 20:21:34 +0000 | [diff] [blame] | 7 | color brightred "\<[A-Z_][0-9A-Z_]+\>" |
Chris Allegretta | d1336f6 | 2013-06-14 02:48:59 +0000 | [diff] [blame] | 8 | color green "\<(float|double|bool|char|int|short|long|sizeof|enum|void|auto|static|const|struct|union|typedef|extern|(un)?signed|inline)\>" |
David Lawrence Ramsey | 012425c | 2006-09-16 02:40:31 +0000 | [diff] [blame] | 9 | color green "\<((s?size)|((u_?)?int(8|16|32|64|ptr)))_t\>" |
Mike Frysinger | 3ca6c92 | 2017-02-20 13:07:25 -0500 | [diff] [blame] | 10 | color green "\<(class|namespace|template|public|protected|private|typename|this|friend|virtual|override|using|mutable|volatile|register|explicit)\>" |
David Lawrence Ramsey | 5e6434c | 2006-06-01 17:23:28 +0000 | [diff] [blame] | 11 | color brightyellow "\<(for|if|while|do|else|case|default|switch)\>" |
| 12 | color brightyellow "\<(try|throw|catch|operator|new|delete)\>" |
| 13 | color magenta "\<(goto|continue|break|return)\>" |
Chris Allegretta | fe2042d | 2010-03-21 05:04:03 +0000 | [diff] [blame] | 14 | color brightcyan "^[[:space:]]*#[[:space:]]*(define|include(_next)?|(un|ifn?)def|endif|el(if|se)|if|warning|error|pragma)" |
David Lawrence Ramsey | 5e6434c | 2006-06-01 17:23:28 +0000 | [diff] [blame] | 15 | color brightmagenta "'([^'\]|(\\["'abfnrtv\\]))'" "'\\(([0-3]?[0-7]{1,2}))'" "'\\x[0-9A-Fa-f]{1,2}'" |
Benno Schulenberg | c4b344f | 2014-02-23 16:07:44 +0000 | [diff] [blame] | 16 | |
Benno Schulenberg | 275b617 | 2014-05-15 12:52:30 +0000 | [diff] [blame] | 17 | # GCC builtins. |
David Lawrence Ramsey | 5e6434c | 2006-06-01 17:23:28 +0000 | [diff] [blame] | 18 | color cyan "__attribute__[[:space:]]*\(\([^)]*\)\)" "__(aligned|asm|builtin|hidden|inline|packed|restrict|section|typeof|weak)__" |
Benno Schulenberg | c4b344f | 2014-02-23 16:07:44 +0000 | [diff] [blame] | 19 | |
Benno Schulenberg | 275b617 | 2014-05-15 12:52:30 +0000 | [diff] [blame] | 20 | # Strings. In general you will want your strings and comments to come last, |
| 21 | # because highlighting rules are applied in the order they are read in. |
Benno Schulenberg | 836fa70 | 2016-02-07 13:14:23 +0000 | [diff] [blame] | 22 | color brightyellow ""([^"]|\\")*"" "<[^[:blank:]=]*>" |
Benno Schulenberg | ae598e7 | 2015-12-29 16:48:25 +0000 | [diff] [blame] | 23 | # Multiline strings. This regex is VERY resource intensive, |
| 24 | # and sometimes colours things that shouldn't be coloured. |
| 25 | ###color brightyellow start=""(\\.|[^"])*\\[[:space:]]*$" end="^(\\.|[^"])*"" |
David Lawrence Ramsey | 5e6434c | 2006-06-01 17:23:28 +0000 | [diff] [blame] | 26 | |
Benno Schulenberg | 275b617 | 2014-05-15 12:52:30 +0000 | [diff] [blame] | 27 | # Comments. |
David Lawrence Ramsey | 5e6434c | 2006-06-01 17:23:28 +0000 | [diff] [blame] | 28 | color brightblue "//.*" |
David Lawrence Ramsey | 6da4e56 | 2006-08-02 19:30:24 +0000 | [diff] [blame] | 29 | color brightblue start="/\*" end="\*/" |
David Lawrence Ramsey | e081fb9 | 2007-04-11 22:18:16 +0000 | [diff] [blame] | 30 | |
Benno Schulenberg | 275b617 | 2014-05-15 12:52:30 +0000 | [diff] [blame] | 31 | # Reminders. |
Benno Schulenberg | 836fa70 | 2016-02-07 13:14:23 +0000 | [diff] [blame] | 32 | color ,yellow "\<(FIXME|TODO|XXX)\>" |
Benno Schulenberg | 8347d02 | 2014-04-13 15:57:05 +0000 | [diff] [blame] | 33 | |
Benno Schulenberg | 275b617 | 2014-05-15 12:52:30 +0000 | [diff] [blame] | 34 | # Trailing whitespace. |
David Lawrence Ramsey | e081fb9 | 2007-04-11 22:18:16 +0000 | [diff] [blame] | 35 | color ,green "[[:space:]]+$" |