Ticket #3884: 0001-mceditor-syntax-add-rust.patch

File 0001-mceditor-syntax-add-rust.patch, 5.8 KB (added by gentoo90, 6 years ago)
  • misc/syntax/Makefile.am

    From 6793876718e2eed0ee7c97f32aa7f43ae9e65ae9 Mon Sep 17 00:00:00 2001
    From: gentoo90 <gentoo90@gmail.com>
    Date: Wed, 6 Dec 2017 22:38:28 +0200
    Subject: [PATCH] mceditor: syntax: add rust
    
    ---
     misc/syntax/Makefile.am |   1 +
     misc/syntax/Syntax.in   |   3 +
     misc/syntax/rust.syntax | 153 ++++++++++++++++++++++++++++++++++++++++++++++++
     3 files changed, 157 insertions(+)
     create mode 100644 misc/syntax/rust.syntax
    
    diff --git a/misc/syntax/Makefile.am b/misc/syntax/Makefile.am
    index 4f8bf4a6c..589fdf41f 100644
    a b SYNTAXFILES = \ 
    7171        python.syntax           \ 
    7272        r.syntax                \ 
    7373        ruby.syntax             \ 
     74        rust.syntax             \ 
    7475        sh.syntax               \ 
    7576        slang.syntax            \ 
    7677        smalltalk.syntax        \ 
  • misc/syntax/Syntax.in

    diff --git a/misc/syntax/Syntax.in b/misc/syntax/Syntax.in
    index 8e3cbecc5..c5bc23614 100644
    a b include fortran.syntax 
    103103file ..\*\\.go$ GoLang\sProgram 
    104104include go.syntax 
    105105 
     106file ..\*\\.rs$ Rust\sProgram 
     107include rust.syntax 
     108 
    106109file ..\*\\.(?i:f)9[05]$ Freeform\sFortran\sProgram 
    107110include f90.syntax 
    108111 
  • new file misc/syntax/rust.syntax

    diff --git a/misc/syntax/rust.syntax b/misc/syntax/rust.syntax
    new file mode 100644
    index 000000000..74a507807
    - +  
     1context default 
     2 
     3# keywords 
     4    keyword whole as yellow 
     5    keyword whole break yellow 
     6    keyword whole const yellow 
     7    keyword whole continue yellow 
     8    keyword whole crate yellow 
     9    keyword whole else yellow 
     10    keyword whole enum yellow 
     11    keyword whole extern yellow 
     12    keyword whole fn yellow 
     13    keyword whole for yellow 
     14    keyword whole if yellow 
     15    keyword whole impl yellow 
     16    keyword whole in yellow 
     17    keyword whole let yellow 
     18    keyword whole loop yellow 
     19    keyword whole match yellow 
     20    keyword whole mod yellow 
     21    keyword whole move yellow 
     22    keyword whole mut yellow 
     23    keyword whole pub yellow 
     24    keyword whole ref yellow 
     25    keyword whole return yellow 
     26    keyword whole Self yellow 
     27    keyword whole self brightgreen 
     28    keyword whole static yellow 
     29    keyword whole struct yellow 
     30    keyword whole super yellow 
     31    keyword whole trait yellow 
     32    keyword whole type yellow 
     33    keyword whole unsafe yellow 
     34    keyword whole use yellow 
     35    keyword whole where yellow 
     36    keyword whole while yellow 
     37 
     38# keywords reserved for future use 
     39    keyword whole abstract red 
     40    keyword whole alignof red 
     41    keyword whole become red 
     42    keyword whole box red 
     43    keyword whole do red 
     44    keyword whole final red 
     45    keyword whole macro red 
     46    keyword whole offsetof red 
     47    keyword whole override red 
     48    keyword whole priv red 
     49    keyword whole proc red 
     50    keyword whole pure red 
     51    keyword whole sizeof red 
     52    keyword whole typeof red 
     53    keyword whole unsized red 
     54    keyword whole virtual red 
     55    keyword whole yield red 
     56 
     57# common types 
     58    keyword whole bool brightcyan 
     59    keyword whole char brightcyan 
     60    keyword whole isize brightcyan 
     61    keyword whole usize brightcyan 
     62 
     63    keyword whole i8 brightcyan 
     64    keyword whole i16 brightcyan 
     65    keyword whole i32 brightcyan 
     66    keyword whole i64 brightcyan 
     67    keyword whole u8 brightcyan 
     68    keyword whole u16 brightcyan 
     69    keyword whole u32 brightcyan 
     70    keyword whole u64 brightcyan 
     71    keyword whole isize brightcyan 
     72    keyword whole usize brightcyan 
     73    keyword whole f32 brightcyan 
     74    keyword whole f64 brightcyan 
     75 
     76    keyword whole str brightcyan 
     77    keyword whole String brightcyan 
     78    keyword whole Vec brightcyan 
     79    keyword whole Option brightcyan 
     80    keyword whole Result brightcyan 
     81 
     82# constants 
     83    keyword whole false brightgreen 
     84    keyword whole true brightgreen 
     85    keyword whole Some brightgreen 
     86    keyword whole None brightgreen 
     87    keyword whole Ok brightgreen 
     88    keyword whole Err brightgreen 
     89 
     90# macros 
     91    keyword whole +! brightmagenta 
     92    keyword whole $+ brightblue 
     93 
     94# numbers 
     95    wholechars abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789_. 
     96 
     97    keyword whole 0x\{0123456789abcdefABCDEF_\}\[0123456789abcdefABCDEF_\] brightgreen 
     98    keyword whole 0o\{01234567_\}\[01234567_\] brightgreen 
     99    keyword whole 0b\{01_\}\[01_\] brightgreen 
     100    keyword whole \{0123456789_\}\[0123456789_\] brightgreen 
     101    keyword whole \[0123456789_\]\.\{0123456789_\}\[0123456789_\] brightgreen 
     102    keyword whole \{0123456789_\}\[0123456789_\]\.\[0123456789_\] brightgreen 
     103    keyword whole \{0123456789_\}\[0123456789_\]\{eE\}\{0123456789_\}\[0123456789_\] brightgreen 
     104    keyword whole \{0123456789_\}\[0123456789_\]\{eE\}\{\-\+\}\{0123456789_\}\[0123456789_\] brightgreen 
     105    keyword whole \{0123456789_\}\[0123456789_\]\.\{0123456789_\}\[0123456789_\]\{eE\}\{0123456789_\}\[0123456789_\] brightgreen 
     106    keyword whole \{0123456789_\}\[0123456789_\]\.\{0123456789_\}\[0123456789_\]\{eE\}\{\-\+\}\{0123456789_\}\[0123456789_\] brightgreen 
     107 
     108# char 
     109    keyword '\\'' brightgreen 
     110    keyword '*' brightgreen 
     111 
     112# comments 
     113 
     114context /\* \*/ brown 
     115    spellcheck 
     116    keyword whole BUG brightred 
     117    keyword whole FixMe brightred 
     118    keyword whole FIXME brightred 
     119    keyword whole Note brightred 
     120    keyword whole NOTE brightred 
     121    keyword whole ToDo brightred 
     122    keyword whole TODO brightred 
     123    keyword !!\[!\] brightred 
     124    keyword ??\[?\] brightred 
     125 
     126 
     127context // \n brown 
     128    spellcheck 
     129    keyword whole BUG brightred 
     130    keyword whole FixMe brightred 
     131    keyword whole FIXME brightred 
     132    keyword whole Note brightred 
     133    keyword whole NOTE brightred 
     134    keyword whole ToDo brightred 
     135    keyword whole TODO brightred 
     136    keyword !!\[!\] brightred 
     137    keyword ??\[?\] brightred 
     138 
     139# strings 
     140context " " green 
     141    spellcheck 
     142    keyword \\" brightgreen 
     143    keyword \\' brightgreen 
     144    keyword \\\\ brightgreen 
     145    keyword \\\{abtnvfr0\} brightgreen 
     146 
     147 
     148context r#" "# green 
     149    spellcheck 
     150 
     151 
     152context #[ ] white 
     153context #![ ] white