This adds a rust.lang and changes lang.map so that .rs is recognized as Rust source. --- ChangeLog | 5 +++++ src/lang.map | 1 + src/rust.lang | 34 ++++++++++++++++++++++++++++++++++ 3 files changed, 40 insertions(+) create mode 100644 src/rust.lang
diff --git a/ChangeLog b/ChangeLog index 0b45fa8..5188f53 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2018-10-13 Tom Tromey <[email protected]> + + * src/lang.map: Add .rs. + * src/rust.lang: New file. + 2012-11-09 bettini <bettini@bettini-laptop-quantal> * src/lang.map: .f mapped to fotran diff --git a/src/lang.map b/src/lang.map index e84ded8..6a2ca0c 100644 --- a/src/lang.map +++ b/src/lang.map @@ -169,3 +169,4 @@ ly = lilypond.lang groovy = groovy.lang json = json.lang feature = feature.lang +rs = rust.lang diff --git a/src/rust.lang b/src/rust.lang new file mode 100644 index 0000000..bc74eb1 --- /dev/null +++ b/src/rust.lang @@ -0,0 +1,34 @@ +# Rust + +environment comment start "//" begin + include "url.lang" + include "todo.lang" +end + +# Strings. +string delim `(?<!r)b?\"` "\"" escape "\\" +string delim `b?r(#*)\"` "\"" + @{1} multiline + +vardef common_escape = `(?:[\\nrt0']|x[a-fA-F0-9]{2})` +vardef unicode_escape = `u\{[a-fA-F0-9]{6}\}` + +string = `b?'(?:[^\\']|\\(?:` + $common_escape + `|` + $unicode_escape + `))'` + +# Not exactly Rust syntax. +include "number.lang" + +# Reserved keywords aren't listed. +keyword = "as|box|break|const|continue|crate|else|enum|extern", + "false|fn|for|if|impl|in|let|loop", + "match|mod|move|mut|pub|ref|return", + "self|static|struct|super|trait|true|type", + "union|unsafe|use|where|while" + +type = "i8|u8|i16|u16|i32|u32|i64|u64|i128|u128|isize|usize", + "bool|char|Self|f32|f64|&str" + +include "symbols.lang" + +cbracket = "{|}" + +include "function.lang" -- 2.17.1 _______________________________________________ Help-source-highlight mailing list [email protected] https://lists.gnu.org/mailman/listinfo/help-source-highlight
