Annotation of rpl/vim/syntax/rpl.vim, revision 1.1.1.1

1.1       bertrand    1: " Vim syntax file
                      2: " Language:            RPL/2
                      3: " Version:             0.15.26 against RPL/2 version 4.00pre8x
                      4: " Last Change:         2007 july 17
                      5: " Maintainer:          Joël BERTRAND <jkb@systella.fr>
                      6: " URL: http://www.systella.fr/~bertrand/rpl2/download/rpl.tar.gz
                      7: " Credits: Nothing
                      8: 
                      9: " For version 5.x: Clear all syntax items
                     10: " For version 6.x: Quit when a syntax file was already loaded
                     11: if version < 600
                     12:   syntax clear
                     13: elseif exists("b:current_syntax")
                     14:   finish
                     15: endif
                     16: 
                     17: " Keyword characters (not used)
                     18: " set iskeyword=33-127
                     19: 
                     20: " Case sensitive
                     21: syntax case match
                     22: 
                     23: " Constants
                     24: syntax match rplConstant           "\(^\|\s\+\)\(e\|i\)\ze\($\|\s\+\)"
                     25: 
                     26: " Any binary number
                     27: syntax match rplBinaryError        "\(^\|\s\+\)#\s*\S\+b\ze"
                     28: syntax match rplBinary             "\(^\|\s\+\)#\s*[01]\+b\ze\($\|\s\+\)"
                     29: syntax match rplOctalError         "\(^\|\s\+\)#\s*\S\+o\ze"
                     30: syntax match rplOctal              "\(^\|\s\+\)#\s*\o\+o\ze\($\|\s\+\)"
                     31: syntax match rplDecimalError       "\(^\|\s\+\)#\s*\S\+d\ze"
                     32: syntax match rplDecimal            "\(^\|\s\+\)#\s*\d\+d\ze\($\|\s\+\)"
                     33: syntax match rplHexadecimalError   "\(^\|\s\+\)#\s*\S\+h\ze"
                     34: syntax match rplHexadecimal        "\(^\|\s\+\)#\s*\x\+h\ze\($\|\s\+\)"
                     35: 
                     36: " Case unsensitive
                     37: syntax case ignore
                     38: 
                     39: syntax match rplControl            "\(^\|\s\+\)abort\ze\($\|\s\+\)"
                     40: syntax match rplControl            "\(^\|\s\+\)kill\ze\($\|\s\+\)"
                     41: syntax match rplControl            "\(^\|\s\+\)cont\ze\($\|\s\+\)"
                     42: syntax match rplControl            "\(^\|\s\+\)halt\ze\($\|\s\+\)"
                     43: syntax match rplControl            "\(^\|\s\+\)cmlf\ze\($\|\s\+\)"
                     44: syntax match rplControl            "\(^\|\s\+\)sst\ze\($\|\s\+\)"
                     45: syntax match rplControl            "\(^\|\s\+\)detach\ze\($\|\s\+\)"
                     46: syntax match rplControl            "\(^\|\s\+\)send\ze\($\|\s\+\)"
                     47: syntax match rplControl            "\(^\|\s\+\)recv\ze\($\|\s\+\)"
                     48: syntax match rplControl            "\(^\|\s\+\)wfproc\ze\($\|\s\+\)"
                     49: syntax match rplControl            "\(^\|\s\+\)wfdata\ze\($\|\s\+\)"
                     50: syntax match rplControl            "\(^\|\s\+\)suspend\ze\($\|\s\+\)"
                     51: syntax match rplControl            "\(^\|\s\+\)swi\ze\($\|\s\+\)"
                     52: syntax match rplControl            "\(^\|\s\+\)wfswi\ze\($\|\s\+\)"
                     53: syntax match rplControl            "\(^\|\s\+\)swilock\ze\($\|\s\+\)"
                     54: syntax match rplControl            "\(^\|\s\+\)swiunlock\ze\($\|\s\+\)"
                     55: syntax match rplControl            "\(^\|\s\+\)swiqueue\ze\($\|\s\+\)"
                     56: syntax match rplControl            "\(^\|\s\+\)stoswi\ze\($\|\s\+\)"
                     57: syntax match rplControl            "\(^\|\s\+\)rclswi\ze\($\|\s\+\)"
                     58: syntax match rplControl            "\(^\|\s\+\)clrswi\ze\($\|\s\+\)"
                     59: 
                     60: syntax match rplConstant           "\(^\|\s\+\)pi\ze\($\|\s\+\)"
                     61: 
                     62: syntax match rplStatement          "\(^\|\s\+\)return\ze\($\|\s\+\)"
                     63: syntax match rplStatement          "\(^\|\s\+\)last\ze\($\|\s\+\)"
                     64: syntax match rplStatement          "\(^\|\s\+\)syseval\ze\($\|\s\+\)"
                     65: syntax match rplStatement          "\(^\|\s\+\)wait\ze\($\|\s\+\)"
                     66: syntax match rplStatement          "\(^\|\s\+\)alarm\ze\($\|\s\+\)"
                     67: syntax match rplStatement          "\(^\|\s\+\)type\ze\($\|\s\+\)"
                     68: syntax match rplStatement          "\(^\|\s\+\)kind\ze\($\|\s\+\)"
                     69: syntax match rplStatement          "\(^\|\s\+\)eval\ze\($\|\s\+\)"
                     70: syntax match rplStatement          "\(^\|\s\+\)use\ze\($\|\s\+\)"
                     71: syntax match rplStatement          "\(^\|\s\+\)remove\ze\($\|\s\+\)"
                     72: syntax match rplStatement          "\(^\|\s\+\)externals\ze\($\|\s\+\)"
                     73: syntax match rplStatement          "\(^\|\s\+\)dup\([2n]\|\)\ze\($\|\s\+\)"
                     74: syntax match rplStatement          "\(^\|\s\+\)drop\([2n]\|\)\ze\($\|\s\+\)"
                     75: syntax match rplStatement          "\(^\|\s\+\)depth\ze\($\|\s\+\)"
                     76: syntax match rplStatement          "\(^\|\s\+\)roll\(d\|\)\ze\($\|\s\+\)"
                     77: syntax match rplStatement          "\(^\|\s\+\)pick\ze\($\|\s\+\)"
                     78: syntax match rplStatement          "\(^\|\s\+\)rot\ze\($\|\s\+\)"
                     79: syntax match rplStatement          "\(^\|\s\+\)swap\ze\($\|\s\+\)"
                     80: syntax match rplStatement          "\(^\|\s\+\)over\ze\($\|\s\+\)"
                     81: syntax match rplStatement          "\(^\|\s\+\)clear\ze\($\|\s\+\)"
                     82: syntax match rplStatement          "\(^\|\s\+\)warranty\ze\($\|\s\+\)"
                     83: syntax match rplStatement          "\(^\|\s\+\)splash\ze\($\|\s\+\)"
                     84: syntax match rplStatement          "\(^\|\s\+\)copyright\ze\($\|\s\+\)"
                     85: syntax match rplStatement          "\(^\|\s\+\)convert\ze\($\|\s\+\)"
                     86: syntax match rplStatement          "\(^\|\s\+\)date\ze\($\|\s\+\)"
                     87: syntax match rplStatement          "\(^\|\s\+\)jdate\ze\($\|\s\+\)"
                     88: syntax match rplStatement          "\(^\|\s\+\)rdate\ze\($\|\s\+\)"
                     89: syntax match rplStatement          "\(^\|\s\+\)time\ze\($\|\s\+\)"
                     90: syntax match rplStatement          "\(^\|\s\+\)mem\ze\($\|\s\+\)"
                     91: syntax match rplStatement          "\(^\|\s\+\)clmf\ze\($\|\s\+\)"
                     92: syntax match rplStatement          "\(^\|\s\+\)->num\ze\($\|\s\+\)"
                     93: syntax match rplStatement          "\(^\|\s\+\)help\ze\($\|\s\+\)"
                     94: 
                     95: syntax match rplStorage            "\(^\|\s\+\)get\(i\|r\|c\|\)\ze\($\|\s\+\)"
                     96: syntax match rplStorage            "\(^\|\s\+\)put\(i\|r\|c\|\)\ze\($\|\s\+\)"
                     97: syntax match rplStorage            "\(^\|\s\+\)rcl\ze\($\|\s\+\)"
                     98: syntax match rplStorage            "\(^\|\s\+\)purge\ze\($\|\s\+\)"
                     99: syntax match rplStorage            "\(^\|\s\+\)sinv\ze\($\|\s\+\)"
                    100: syntax match rplStorage            "\(^\|\s\+\)sneg\ze\($\|\s\+\)"
                    101: syntax match rplStorage            "\(^\|\s\+\)sconj\ze\($\|\s\+\)"
                    102: syntax match rplStorage            "\(^\|\s\+\)steq\ze\($\|\s\+\)"
                    103: syntax match rplStorage            "\(^\|\s\+\)rceq\ze\($\|\s\+\)"
                    104: syntax match rplStorage            "\(^\|\s\+\)vars\ze\($\|\s\+\)"
                    105: syntax match rplStorage            "\(^\|\s\+\)clusr\ze\($\|\s\+\)"
                    106: syntax match rplStorage            "\(^\|\s\+\)sto\([+-/\*]\|\)\ze\($\|\s\+\)"
                    107: syntax match rplStorage            "\(^\|\s\+\)save\ze\($\|\s\+\)"
                    108: syntax match rplStorage            "\(^\|\s\+\)\(\|wf\)protect\ze\($\|\s\+\)"
                    109: syntax match rplStorage            "\(^\|\s\+\)variable\ze\($\|\s\+\)"
                    110: syntax match rplStorage            "\(^\|\s\+\)parameter\ze\($\|\s\+\)"
                    111: syntax match rplStorage            "\(^\|\s\+\)volatile\ze\($\|\s\+\)"
                    112: syntax match rplStorage            "\(^\|\s\+\)static\ze\($\|\s\+\)"
                    113: 
                    114: syntax match rplAlgConditional     "\(^\|\s\+\)ift\(e\|\)\ze\($\|\s\+\)"
                    115: 
                    116: syntax match rplOperator           "\(^\|\s\+\)and\ze\($\|\s\+\)"
                    117: syntax match rplOperator           "\(^\|\s\+\)\(x\|\)or\ze\($\|\s\+\)"
                    118: syntax match rplOperator           "\(^\|\s\+\)not\ze\($\|\s\+\)"
                    119: syntax match rplOperator           "\(^\|\s\+\)same\ze\($\|\s\+\)"
                    120: syntax match rplOperator           "\(^\|\s\+\)==\ze\($\|\s\+\)"
                    121: syntax match rplOperator           "\(^\|\s\+\)<=\ze\($\|\s\+\)"
                    122: syntax match rplOperator           "\(^\|\s\+\)=<\ze\($\|\s\+\)"
                    123: syntax match rplOperator           "\(^\|\s\+\)=>\ze\($\|\s\+\)"
                    124: syntax match rplOperator           "\(^\|\s\+\)>=\ze\($\|\s\+\)"
                    125: syntax match rplOperator           "\(^\|\s\+\)<>\ze\($\|\s\+\)"
                    126: syntax match rplOperator           "\(^\|\s\+\)>\ze\($\|\s\+\)"
                    127: syntax match rplOperator           "\(^\|\s\+\)<\ze\($\|\s\+\)"
                    128: syntax match rplOperator           "\(^\|\s\+\)[+-]\ze\($\|\s\+\)"
                    129: syntax match rplOperator           "\(^\|\s\+\)[/\*]\ze\($\|\s\+\)"
                    130: syntax match rplOperator           "\(^\|\s\+\)\^\ze\($\|\s\+\)"
                    131: syntax match rplOperator           "\(^\|\s\+\)\*\*\ze\($\|\s\+\)"
                    132: 
                    133: syntax match rplBoolean            "\(^\|\s\+\)true\ze\($\|\s\+\)"
                    134: syntax match rplBoolean            "\(^\|\s\+\)false\ze\($\|\s\+\)"
                    135: 
                    136: syntax match rplReadWrite          "\(^\|\s\+\)store\ze\($\|\s\+\)"
                    137: syntax match rplReadWrite          "\(^\|\s\+\)recall\ze\($\|\s\+\)"
                    138: syntax match rplReadWrite          "\(^\|\s\+\)\(\|wf\|un\)lock\ze\($\|\s\+\)"
                    139: syntax match rplReadWrite          "\(^\|\s\+\)open\ze\($\|\s\+\)"
                    140: syntax match rplReadWrite          "\(^\|\s\+\)connect\ze\($\|\s\+\)"
                    141: syntax match rplReadWrite          "\(^\|\s\+\)close\ze\($\|\s\+\)"
                    142: syntax match rplReadWrite          "\(^\|\s\+\)sql\ze\($\|\s\+\)"
                    143: syntax match rplReadWrite          "\(^\|\s\+\)delete\ze\($\|\s\+\)"
                    144: syntax match rplReadWrite          "\(^\|\s\+\)create\ze\($\|\s\+\)"
                    145: syntax match rplReadWrite          "\(^\|\s\+\)format\ze\($\|\s\+\)"
                    146: syntax match rplReadWrite          "\(^\|\s\+\)rewind\ze\($\|\s\+\)"
                    147: syntax match rplReadWrite          "\(^\|\s\+\)backspace\ze\($\|\s\+\)"
                    148: syntax match rplReadWrite          "\(^\|\s\+\)\(\|re\)write\ze\($\|\s\+\)"
                    149: syntax match rplReadWrite          "\(^\|\s\+\)read\ze\($\|\s\+\)"
                    150: syntax match rplReadWrite          "\(^\|\s\+\)inquire\ze\($\|\s\+\)"
                    151: syntax match rplReadWrite          "\(^\|\s\+\)sync\ze\($\|\s\+\)"
                    152: syntax match rplReadWrite          "\(^\|\s\+\)append\ze\($\|\s\+\)"
                    153: syntax match rplReadWrite          "\(^\|\s\+\)suppress\ze\($\|\s\+\)"
                    154: syntax match rplReadWrite          "\(^\|\s\+\)seek\ze\($\|\s\+\)"
                    155: syntax match rplReadWrite          "\(^\|\s\+\)pr\(1\|int\|st\|stc\|lcd\|var\|usr\|md\)\ze\($\|\s\+\)"
                    156: syntax match rplReadWrite          "\(^\|\s\+\)paper\ze\($\|\s\+\)"
                    157: syntax match rplReadWrite          "\(^\|\s\+\)cr\($\|\s\+\)"
                    158: syntax match rplReadWrite          "\(^\|\s\+\)erase\ze\($\|\s\+\)"
                    159: syntax match rplReadWrite          "\(^\|\s\+\)disp\ze\($\|\s\+\)"
                    160: syntax match rplReadWrite          "\(^\|\s\+\)input\ze\($\|\s\+\)"
                    161: syntax match rplReadWrite          "\(^\|\s\+\)prompt\ze\($\|\s\+\)"
                    162: syntax match rplReadWrite          "\(^\|\s\+\)key\ze\($\|\s\+\)"
                    163: syntax match rplReadWrite          "\(^\|\s\+\)cllcd\ze\($\|\s\+\)"
                    164: syntax match rplReadWrite          "\(^\|\s\+\)\(\|re\)draw\ze\($\|\s\+\)"
                    165: syntax match rplReadWrite          "\(^\|\s\+\)drax\ze\($\|\s\+\)"
                    166: syntax match rplReadWrite          "\(^\|\s\+\)indep\ze\($\|\s\+\)"
                    167: syntax match rplReadWrite          "\(^\|\s\+\)depnd\ze\($\|\s\+\)"
                    168: syntax match rplReadWrite          "\(^\|\s\+\)res\ze\($\|\s\+\)"
                    169: syntax match rplReadWrite          "\(^\|\s\+\)axes\ze\($\|\s\+\)"
                    170: syntax match rplReadWrite          "\(^\|\s\+\)label\ze\($\|\s\+\)"
                    171: syntax match rplReadWrite          "\(^\|\s\+\)pmin\ze\($\|\s\+\)"
                    172: syntax match rplReadWrite          "\(^\|\s\+\)pmax\ze\($\|\s\+\)"
                    173: syntax match rplReadWrite          "\(^\|\s\+\)centr\ze\($\|\s\+\)"
                    174: syntax match rplReadWrite          "\(^\|\s\+\)persist\ze\($\|\s\+\)"
                    175: syntax match rplReadWrite          "\(^\|\s\+\)title\ze\($\|\s\+\)"
                    176: syntax match rplReadWrite          "\(^\|\s\+\)\(slice\|auto\|log\|\)scale\ze\($\|\s\+\)"
                    177: syntax match rplReadWrite          "\(^\|\s\+\)eyept\ze\($\|\s\+\)"
                    178: syntax match rplReadWrite          "\(^\|\s\+\)\(p\|s\)par\ze\($\|\s\+\)"
                    179: syntax match rplReadWrite          "\(^\|\s\+\)function\ze\($\|\s\+\)"
                    180: syntax match rplReadWrite          "\(^\|\s\+\)polar\ze\($\|\s\+\)"
                    181: syntax match rplReadWrite          "\(^\|\s\+\)scatter\ze\($\|\s\+\)"
                    182: syntax match rplReadWrite          "\(^\|\s\+\)plotter\ze\($\|\s\+\)"
                    183: syntax match rplReadWrite          "\(^\|\s\+\)wireframe\ze\($\|\s\+\)"
                    184: syntax match rplReadWrite          "\(^\|\s\+\)parametric\ze\($\|\s\+\)"
                    185: syntax match rplReadWrite          "\(^\|\s\+\)slice\ze\($\|\s\+\)"
                    186: syntax match rplReadWrite          "\(^\|\s\+\)\*w\ze\($\|\s\+\)"
                    187: syntax match rplReadWrite          "\(^\|\s\+\)\*h\ze\($\|\s\+\)"
                    188: syntax match rplReadWrite          "\(^\|\s\+\)\*d\ze\($\|\s\+\)"
                    189: syntax match rplReadWrite          "\(^\|\s\+\)\*s\ze\($\|\s\+\)"
                    190: syntax match rplReadWrite          "\(^\|\s\+\)->lcd\ze\($\|\s\+\)"
                    191: syntax match rplReadWrite          "\(^\|\s\+\)lcd->\ze\($\|\s\+\)"
                    192: syntax match rplReadWrite          "\(^\|\s\+\)edit\ze\($\|\s\+\)"
                    193: syntax match rplReadWrite          "\(^\|\s\+\)visit\ze\($\|\s\+\)"
                    194: 
                    195: syntax match rplIntrinsic          "\(^\|\s\+\)abs\ze\($\|\s\+\)"
                    196: syntax match rplIntrinsic          "\(^\|\s\+\)arg\ze\($\|\s\+\)"
                    197: syntax match rplIntrinsic          "\(^\|\s\+\)conj\ze\($\|\s\+\)"
                    198: syntax match rplIntrinsic          "\(^\|\s\+\)re\ze\($\|\s\+\)"
                    199: syntax match rplIntrinsic          "\(^\|\s\+\)im\ze\($\|\s\+\)"
                    200: syntax match rplIntrinsic          "\(^\|\s\+\)mant\ze\($\|\s\+\)"
                    201: syntax match rplIntrinsic          "\(^\|\s\+\)xpon\ze\($\|\s\+\)"
                    202: syntax match rplIntrinsic          "\(^\|\s\+\)ceil\ze\($\|\s\+\)"
                    203: syntax match rplIntrinsic          "\(^\|\s\+\)fact\ze\($\|\s\+\)"
                    204: syntax match rplIntrinsic          "\(^\|\s\+\)fp\ze\($\|\s\+\)"
                    205: syntax match rplIntrinsic          "\(^\|\s\+\)floor\ze\($\|\s\+\)"
                    206: syntax match rplIntrinsic          "\(^\|\s\+\)inv\ze\($\|\s\+\)"
                    207: syntax match rplIntrinsic          "\(^\|\s\+\)ip\ze\($\|\s\+\)"
                    208: syntax match rplIntrinsic          "\(^\|\s\+\)max\ze\($\|\s\+\)"
                    209: syntax match rplIntrinsic          "\(^\|\s\+\)min\ze\($\|\s\+\)"
                    210: syntax match rplIntrinsic          "\(^\|\s\+\)mod\ze\($\|\s\+\)"
                    211: syntax match rplIntrinsic          "\(^\|\s\+\)neg\ze\($\|\s\+\)"
                    212: syntax match rplIntrinsic          "\(^\|\s\+\)relax\ze\($\|\s\+\)"
                    213: syntax match rplIntrinsic          "\(^\|\s\+\)sign\ze\($\|\s\+\)"
                    214: syntax match rplIntrinsic          "\(^\|\s\+\)sq\(\|rt\)\ze\($\|\s\+\)"
                    215: syntax match rplIntrinsic          "\(^\|\s\+\)xroot\ze\($\|\s\+\)"
                    216: syntax match rplIntrinsic          "\(^\|\s\+\)cos\ze\($\|\s\+\)"
                    217: syntax match rplIntrinsic          "\(^\|\s\+\)sin\ze\($\|\s\+\)"
                    218: syntax match rplIntrinsic          "\(^\|\s\+\)tan\ze\($\|\s\+\)"
                    219: syntax match rplIntrinsic          "\(^\|\s\+\)acos\ze\($\|\s\+\)"
                    220: syntax match rplIntrinsic          "\(^\|\s\+\)asin\ze\($\|\s\+\)"
                    221: syntax match rplIntrinsic          "\(^\|\s\+\)atan\ze\($\|\s\+\)"
                    222: syntax match rplIntrinsic          "\(^\|\s\+\)\(\|a\)cosh\ze\($\|\s\+\)"
                    223: syntax match rplIntrinsic          "\(^\|\s\+\)\(\|a\)sinh\ze\($\|\s\+\)"
                    224: syntax match rplIntrinsic          "\(^\|\s\+\)\(\|a\)tanh\ze\($\|\s\+\)"
                    225: syntax match rplIntrinsic          "\(^\|\s\+\)\(\|a\)log\ze\($\|\s\+\)"
                    226: syntax match rplIntrinsic          "\(^\|\s\+\)ln\(\|1\)\ze\($\|\s\+\)"
                    227: syntax match rplIntrinsic          "\(^\|\s\+\)exp\(\|m\)\ze\($\|\s\+\)"
                    228: syntax match rplIntrinsic          "\(^\|\s\+\)trn\ze\($\|\s\+\)"
                    229: syntax match rplIntrinsic          "\(^\|\s\+\)con\ze\($\|\s\+\)"
                    230: syntax match rplIntrinsic          "\(^\|\s\+\)idn\ze\($\|\s\+\)"
                    231: syntax match rplIntrinsic          "\(^\|\s\+\)rdm\ze\($\|\s\+\)"
                    232: syntax match rplIntrinsic          "\(^\|\s\+\)rsd\ze\($\|\s\+\)"
                    233: syntax match rplIntrinsic          "\(^\|\s\+\)cnrm\ze\($\|\s\+\)"
                    234: syntax match rplIntrinsic          "\(^\|\s\+\)cross\ze\($\|\s\+\)"
                    235: syntax match rplIntrinsic          "\(^\|\s\+\)d[eo]t\ze\($\|\s\+\)"
                    236: syntax match rplIntrinsic          "\(^\|\s\+\)[cr]swp\ze\($\|\s\+\)"
                    237: syntax match rplIntrinsic          "\(^\|\s\+\)rci\(j\|\)\ze\($\|\s\+\)"
                    238: syntax match rplIntrinsic          "\(^\|\s\+\)\(in\|de\)cr\ze\($\|\s\+\)"
                    239: syntax match rplIntrinsic          "\(^\|\s\+\)bessel\ze\($\|\s\+\)"
                    240: syntax match rplIntrinsic          "\(^\|\s\+\)gamma\ze\($\|\s\+\)"
                    241: 
                    242: syntax match rplIntrinsic          "\(^\|\s\+\)\(\|g\)egvl\ze\($\|\s\+\)"
                    243: syntax match rplIntrinsic          "\(^\|\s\+\)\(\|g\)\(\|l\|r\)egv\ze\($\|\s\+\)"
                    244: syntax match rplIntrinsic          "\(^\|\s\+\)rnrm\ze\($\|\s\+\)"
                    245: syntax match rplIntrinsic          "\(^\|\s\+\)\(std\|fix\|sci\|eng\)\ze\($\|\s\+\)"
                    246: syntax match rplIntrinsic          "\(^\|\s\+\)\(rad\|deg\)\ze\($\|\s\+\)"
                    247: syntax match rplIntrinsic          "\(^\|\s\+\)\(\|n\)rand\ze\($\|\s\+\)"
                    248: syntax match rplIntrinsic          "\(^\|\s\+\)rdz\ze\($\|\s\+\)"
                    249: syntax match rplIntrinsic          "\(^\|\s\+\)\(\|i\)\(\f|\d\)ft\ze\($\|\s\+\)"
                    250: syntax match rplIntrinsic          "\(^\|\s\+\)\(dec\|bin\|oct\|hex\)\ze\($\|\s\+\)"
                    251: syntax match rplIntrinsic          "\(^\|\s\+\)rclf\ze\($\|\s\+\)"
                    252: syntax match rplIntrinsic          "\(^\|\s\+\)stof\ze\($\|\s\+\)"
                    253: syntax match rplIntrinsic          "\(^\|\s\+\)[cs]f\ze\($\|\s\+\)"
                    254: syntax match rplIntrinsic          "\(^\|\s\+\)chr\ze\($\|\s\+\)"
                    255: syntax match rplIntrinsic          "\(^\|\s\+\)num\ze\($\|\s\+\)"
                    256: syntax match rplIntrinsic          "\(^\|\s\+\)pos\ze\($\|\s\+\)"
                    257: syntax match rplIntrinsic          "\(^\|\s\+\)sub\ze\($\|\s\+\)"
                    258: syntax match rplIntrinsic          "\(^\|\s\+\)size\ze\($\|\s\+\)"
                    259: syntax match rplIntrinsic          "\(^\|\s\+\)\(st\|rc\)ws\ze\($\|\s\+\)"
                    260: syntax match rplIntrinsic          "\(^\|\s\+\)\(r\|s\)\(r\|l\)\(\|b\)\ze\($\|\s\+\)"
                    261: syntax match rplIntrinsic          "\(^\|\s\+\)as\(r\|l\)\ze\($\|\s\+\)"
                    262: syntax match rplIntrinsic          "\(^\|\s\+\)\(int\|der\)\ze\($\|\s\+\)"
                    263: syntax match rplIntrinsic          "\(^\|\s\+\)stos\ze\($\|\s\+\)"
                    264: syntax match rplIntrinsic          "\(^\|\s\+\)\(\|r\)cls\ze\($\|\s\+\)"
                    265: syntax match rplIntrinsic          "\(^\|\s\+\)drws\ze\($\|\s\+\)"
                    266: syntax match rplIntrinsic          "\(^\|\s\+\)scls\ze\($\|\s\+\)"
                    267: syntax match rplIntrinsic          "\(^\|\s\+\)ns\ze\($\|\s\+\)"
                    268: syntax match rplIntrinsic          "\(^\|\s\+\)tot\ze\($\|\s\+\)"
                    269: syntax match rplIntrinsic          "\(^\|\s\+\)mean\ze\($\|\s\+\)"
                    270: syntax match rplIntrinsic          "\(^\|\s\+\)\(\|p\)sdev\ze\($\|\s\+\)"
                    271: syntax match rplIntrinsic          "\(^\|\s\+\)\(\|p\)var\ze\($\|\s\+\)"
                    272: syntax match rplIntrinsic          "\(^\|\s\+\)maxs\ze\($\|\s\+\)"
                    273: syntax match rplIntrinsic          "\(^\|\s\+\)mins\ze\($\|\s\+\)"
                    274: syntax match rplIntrinsic          "\(^\|\s\+\)\(\|p\)cov\ze\($\|\s\+\)"
                    275: syntax match rplIntrinsic          "\(^\|\s\+\)cols\ze\($\|\s\+\)"
                    276: syntax match rplIntrinsic          "\(^\|\s\+\)s\(x\(\|y\|2\)\|y\(\|2\)\)\ze\($\|\s\+\)"
                    277: syntax match rplIntrinsic          "\(^\|\s\+\)\(x\|y\)col\ze\($\|\s\+\)"
                    278: syntax match rplIntrinsic          "\(^\|\s\+\)corr\ze\($\|\s\+\)"
                    279: syntax match rplIntrinsic          "\(^\|\s\+\)utp[cfnt]\ze\($\|\s\+\)"
                    280: syntax match rplIntrinsic          "\(^\|\s\+\)comb\ze\($\|\s\+\)"
                    281: syntax match rplIntrinsic          "\(^\|\s\+\)perm\ze\($\|\s\+\)"
                    282: syntax match rplIntrinsic          "\(^\|\s\+\)lu\ze\($\|\s\+\)"
                    283: syntax match rplIntrinsic          "\(^\|\s\+\)[lu]chol\ze\($\|\s\+\)"
                    284: syntax match rplIntrinsic          "\(^\|\s\+\)schur\ze\($\|\s\+\)"
                    285: syntax match rplIntrinsic          "\(^\|\s\+\)%\ze\($\|\s\+\)"
                    286: syntax match rplIntrinsic          "\(^\|\s\+\)%ch\ze\($\|\s\+\)"
                    287: syntax match rplIntrinsic          "\(^\|\s\+\)%t\ze\($\|\s\+\)"
                    288: syntax match rplIntrinsic          "\(^\|\s\+\)hms->\ze\($\|\s\+\)"
                    289: syntax match rplIntrinsic          "\(^\|\s\+\)->hms\ze\($\|\s\+\)"
                    290: syntax match rplIntrinsic          "\(^\|\s\+\)hms+\ze\($\|\s\+\)"
                    291: syntax match rplIntrinsic          "\(^\|\s\+\)hms-\ze\($\|\s\+\)"
                    292: syntax match rplIntrinsic          "\(^\|\s\+\)d->r\ze\($\|\s\+\)"
                    293: syntax match rplIntrinsic          "\(^\|\s\+\)r->d\ze\($\|\s\+\)"
                    294: syntax match rplIntrinsic          "\(^\|\s\+\)b->r\ze\($\|\s\+\)"
                    295: syntax match rplIntrinsic          "\(^\|\s\+\)r->b\ze\($\|\s\+\)"
                    296: syntax match rplIntrinsic          "\(^\|\s\+\)c->r\ze\($\|\s\+\)"
                    297: syntax match rplIntrinsic          "\(^\|\s\+\)r->c\ze\($\|\s\+\)"
                    298: syntax match rplIntrinsic          "\(^\|\s\+\)r->p\ze\($\|\s\+\)"
                    299: syntax match rplIntrinsic          "\(^\|\s\+\)p->r\ze\($\|\s\+\)"
                    300: syntax match rplIntrinsic          "\(^\|\s\+\)str->\ze\($\|\s\+\)"
                    301: syntax match rplIntrinsic          "\(^\|\s\+\)->str\ze\($\|\s\+\)"
                    302: syntax match rplIntrinsic          "\(^\|\s\+\)array->\ze\($\|\s\+\)"
                    303: syntax match rplIntrinsic          "\(^\|\s\+\)->array\ze\($\|\s\+\)"
                    304: syntax match rplIntrinsic          "\(^\|\s\+\)list->\ze\($\|\s\+\)"
                    305: syntax match rplIntrinsic          "\(^\|\s\+\)->list\ze\($\|\s\+\)"
                    306: syntax match rplIntrinsic          "\(^\|\s\+\)s+\ze\($\|\s\+\)"
                    307: syntax match rplIntrinsic          "\(^\|\s\+\)s-\ze\($\|\s\+\)"
                    308: syntax match rplIntrinsic          "\(^\|\s\+\)col-\ze\($\|\s\+\)"
                    309: syntax match rplIntrinsic          "\(^\|\s\+\)col->\ze\($\|\s\+\)"
                    310: syntax match rplIntrinsic          "\(^\|\s\+\)->col\ze\($\|\s\+\)"
                    311: syntax match rplIntrinsic          "\(^\|\s\+\)col+\ze\($\|\s\+\)"
                    312: syntax match rplIntrinsic          "\(^\|\s\+\)row-\ze\($\|\s\+\)"
                    313: syntax match rplIntrinsic          "\(^\|\s\+\)row->\ze\($\|\s\+\)"
                    314: syntax match rplIntrinsic          "\(^\|\s\+\)->row\ze\($\|\s\+\)"
                    315: syntax match rplIntrinsic          "\(^\|\s\+\)row+\ze\($\|\s\+\)"
                    316: syntax match rplIntrinsic          "\(^\|\s\+\)->q\ze\($\|\s\+\)"
                    317: syntax match rplIntrinsic          "\(^\|\s\+\)taylr\ze\($\|\s\+\)"
                    318: syntax match rplIntrinsic          "\(^\|\s\+\)mclrin\ze\($\|\s\+\)"
                    319: syntax match rplIntrinsic          "\(^\|\s\+\)\(ob\|ex\)get\ze\($\|\s\+\)"
                    320: syntax match rplIntrinsic          "\(^\|\s\+\)\(ob\|ex\)sub\ze\($\|\s\+\)"
                    321: 
                    322: syntax match rplObsolete           "\(^\|\s\+\)arry->\ze\($\|\s\+\)"hs=e-5
                    323: syntax match rplObsolete           "\(^\|\s\+\)->arry\ze\($\|\s\+\)"hs=e-5
                    324: 
                    325: " Conditional structures
                    326: syntax match rplConditionalError   "\(^\|\s\+\)case\ze\($\|\s\+\)"hs=e-3
                    327: syntax match rplConditionalError   "\(^\|\s\+\)then\ze\($\|\s\+\)"hs=e-3
                    328: syntax match rplConditionalError   "\(^\|\s\+\)else\ze\($\|\s\+\)"hs=e-3
                    329: syntax match rplConditionalError   "\(^\|\s\+\)elseif\ze\($\|\s\+\)"hs=e-5
                    330: syntax match rplConditionalError   "\(^\|\s\+\)end\ze\($\|\s\+\)"hs=e-2
                    331: syntax match rplConditionalError   "\(^\|\s\+\)\(step\|next\)\ze\($\|\s\+\)"hs=e-3
                    332: syntax match rplConditionalError   "\(^\|\s\+\)until\ze\($\|\s\+\)"hs=e-4
                    333: syntax match rplConditionalError   "\(^\|\s\+\)repeat\ze\($\|\s\+\)"hs=e-5
                    334: syntax match rplConditionalError   "\(^\|\s\+\)default\ze\($\|\s\+\)"hs=e-6
                    335: syntax match rplConditionalError   "\(^\|\s\+\)cycle\ze\($\|\s\+\)"hs=e-4
                    336: syntax match rplConditionalError   "\(^\|\s\+\)exit\ze\($\|\s\+\)"hs=e-3
                    337: 
                    338: " FOR/(CYCLE)/(EXIT)/NEXT
                    339: " FOR/(CYCLE)/(EXIT)/STEP
                    340: " START/(CYCLE)/(EXIT)/NEXT
                    341: " START/(CYCLE)/(EXIT)/STEP
                    342: syntax region rplForNext matchgroup=rplRepeat start="\(^\|\s\+\)\(for\|start\)\ze\($\|\s\+\)" end="\(^\|\s\+\)\(next\|step\)\ze\($\|\s\+\)" contains=ALL keepend
                    343: syntax match rplCycle "\(^\|\s\+\)\(cycle\|exit\)\ze\($\|\s\+\)" contained containedin=rplRepeat
                    344: 
                    345: " ELSEIF/END
                    346: syntax region rplElseifEnd matchgroup=rplConditional start="\(^\|\s\+\)elseif\ze\($\|\s\+\)" end="\(^\|\s\+\)end\ze\($\|\s\+\)" contained contains=ALLBUT,rplElseEnd keepend
                    347: 
                    348: " ELSE/END
                    349: syntax region rplElseEnd matchgroup=rplConditional start="\(^\|\s\+\)else\ze\($\|\s\+\)" end="\(^\|\s\+\)end\ze\($\|\s\+\)" contained contains=ALLBUT,rplElseEnd,rplThenEnd,rplElseifEnd keepend
                    350: 
                    351: " THEN/END
                    352: syntax region rplThenEnd matchgroup=rplConditional start="\(^\|\s\+\)then\ze\($\|\s\+\)" end="\(^\|\s\+\)end\ze\($\|\s\+\)" contained containedin=rplIfEnd contains=ALLBUT,rplThenEnd keepend
                    353: 
                    354: " IF/END
                    355: syntax region rplIfEnd matchgroup=rplConditional start="\(^\|\s\+\)if\(err\|\)\ze\($\|\s\+\)" end="\(^\|\s\+\)end\ze\($\|\s\+\)" contains=ALLBUT,rplElseEnd,rplElseifEnd keepend extend
                    356: " if end is accepted !
                    357: " select end too ! 
                    358: 
                    359: " CASE/THEN
                    360: syntax region rplCaseThen matchgroup=rplConditional start="\(^\|\s\+\)case\ze\($\|\s\+\)" end="\(^\|\s\+\)then\ze\($\|\s\+\)" contains=ALLBUT,rplCaseThen,rplCaseEnd,rplThenEnd keepend extend contained containedin=rplCaseEnd
                    361: 
                    362: " CASE/END
                    363: syntax region rplCaseEnd matchgroup=rplConditional start="\(^\|\s\+\)case\ze\($\|\s\+\)" end="\(^\|\s\+\)end\ze\($\|\s\+\)" contains=ALLBUT,rplCaseEnd,rplThenEnd,rplElseEnd keepend extend contained containedin=rplSelectEnd
                    364: 
                    365: " DEFAULT/END
                    366: syntax region rplDefaultEnd matchgroup=rplConditional start="\(^\|\s\+\)default\ze\($\|\s\+\)" end="\(^\|\s\+\)end\ze\($\|\s\+\)" contains=ALLBUT,rplDefaultEnd keepend contained containedin=rplSelectEnd
                    367: 
                    368: " SELECT/END
                    369: syntax region rplSelectEnd matchgroup=rplConditional start="\(^\|\s\+\)select\ze\($\|\s\+\)" end="\(^\|\s\+\)end\ze\($\|\s\+\)" contains=ALLBUT,rplThenEnd keepend extend
                    370: " select end is accepted !
                    371: 
                    372: " DO/UNTIL/END
                    373: syntax region rplUntilEnd matchgroup=rplConditional start="\(^\|\s\+\)until\ze\($\|\s\+\)" end="\(^\|\s\+\)\zsend\ze\($\|\s\+\)" contains=ALLBUT,rplUntilEnd contained containedin=rplDoUntil extend keepend
                    374: syntax region rplDoUntil matchgroup=rplConditional start="\(^\|\s\+\)do\ze\($\|\s\+\)" end="\(^\|\s\+\)until\ze\($\|\s\+\)" contains=ALL keepend extend
                    375: 
                    376: " WHILE/REPEAT/END
                    377: syntax region rplRepeatEnd matchgroup=rplConditional start="\(^\|\s\+\)repeat\ze\($\|\s\+\)" end="\(^\|\s\+\)\zsend\ze\($\|\s\+\)" contains=ALLBUT,rplRepeatEnd contained containedin=rplWhileRepeat extend keepend
                    378: syntax region rplWhileRepeat matchgroup=rplConditional start="\(^\|\s\+\)while\ze\($\|\s\+\)" end="\(^\|\s\+\)repeat\ze\($\|\s\+\)" contains=ALL keepend extend
                    379: 
                    380: " Comments
                    381: syntax match rplCommentError "\*/"
                    382: syntax region rplCommentString contained start=+"+ end=+"+ end=+\*/+me=s-1
                    383: syntax region rplCommentLine start="\(^\|\s\+\)//\ze" skip="\\$" end="$" contains=NONE keepend extend
                    384: syntax region rplComment start="\(^\|\s\+\)/\*\ze" end="\*/" contains=rplCommentString keepend extend
                    385: 
                    386: " Catch errors caused by too many right parentheses
                    387: syntax region rplParen transparent start="(" end=")" contains=ALLBUT,rplParenError,rplComplex,rplIncluded keepend extend
                    388: syntax match rplParenError ")"
                    389: 
                    390: " Subroutines
                    391: " Catch errors caused by too many right '>>'
                    392: syntax match rplSubError "\(^\|\s\+\)>>\ze\($\|\s\+\)"hs=e-1
                    393: syntax region rplSub matchgroup=rplSubDelimitor start="\(^\|\s\+\)<<\ze\($\|\s\+\)" end="\(^\|\s\+\)>>\ze\($\|\s\+\)" contains=ALLBUT,rplSubError,rplIncluded,rplDefaultEnd,rplStorageSub
                    394: 
                    395: " Expressions
                    396: syntax region rplExpr start="\(^\|\s\+\)'" end="'\ze\($\|\s\+\)" contains=rplParen,rplParenError
                    397: 
                    398: " Local variables
                    399: syntax match rplStorageError "\(^\|\s\+\)->\ze\($\|\s\+\)"hs=e-1
                    400: syntax region rplStorageSub matchgroup=rplConditional start="\(^\|\s\+\)<<\ze\($\|\s\+\)" end="\(^\|\s\+\)>>\ze\($\|\s\+\)" contains=ALLBUT,rplSubError,rplIncluded,rplDefaultEnd,rplStorageExpr contained
                    401: "syntax region rplStorageExpr matchgroup=rplConditional start="\(^\|\s\+\)'" end="'\ze\($\|\s\+\)" contains=rplParen,rplParenError
                    402: syntax region rplLocalStorageSub matchgroup=rplConditional start="\(^\|\s\+\)->\ze\($\|\s\+\)" end="\(^\|\s\+\)<<\ze\($\|\s\+\)"hs=e-2 contains=rplComment,rplCommentLine,rplStorageError nextgroup=rplStorageSub keepend extend
                    403: syntax region rplLocalStorageExpr matchgroup=rplConditional start="\(^\|\s\+\)->\ze\($\|\s\+\)" end="'\(\s\+\|\S\+\)\+'" contains=rplComment,rplCommentLine,rplLocalStorage,rplStorageError keepend extend nextgroup=rplStorageExpr
                    404: 
                    405: " Catch errors caused by too many right brackets 
                    406: syntax match rplArrayError "\]"
                    407: syntax match rplArray "\]" contained containedin=rplArray
                    408: syntax region rplArray matchgroup=rplArray start="\[" end="\]" contains=ALLBUT,rplArrayError keepend extend
                    409: 
                    410: " Catch errors caused by too many right '}' 
                    411: syntax match rplListError "}"
                    412: syntax match rplList "}" contained containedin=rplList
                    413: syntax region rplList matchgroup=rplList start="{" end="}" contains=ALLBUT,rplListError,rplIncluded keepend extend
                    414: 
                    415: " gpp is used by RPL/2
                    416: syntax match rplPreProc   "\_^#\s*\(define\|defeval\|eval\|undef\)\>"
                    417: syntax match rplPreProc   "\_^#\s*\(warning\|error\)\>"
                    418: syntax match rplPreProc   "\_^#\s*\(date\|file\|mode\|line\)\>"
                    419: syntax match rplPreCondit "\_^#\s*\(if\|ifdef\|ifndef\|elif\|else\|endif\)\>"
                    420: syntax match rplPreCondit "\_^#\s*\(ifeq\|ifneq\)\>"
                    421: syntax match rplIncluded contained "\<<\s*\S*\s*>\>"
                    422: 
                    423: syntax match rplInclude   "\_^#\s*include\>\s*["<]" contains=rplIncluded,rplString
                    424: "syntax match rplExecPath  "\%^\_^#!\s*\S*"
                    425: syntax match rplExecPath  "\%^\_^#!\p*\_$"
                    426: 
                    427: " Any integer
                    428: syntax match rplInteger    "\(^\|\s\+\)[-+]\=\d\+\ze\($\|\s\+\)"
                    429: 
                    430: " Floating point number
                    431: " [S][ip].[fp]
                    432: syntax match rplFloat       "\(^\|\s\+\)[-+]\=\(\d*\)\=[\.,]\(\d*\)\=\ze\($\|\s\+\)" contains=ALLBUT,rplPoint,rplSign
                    433: " [S]ip[.fp]E[S]exp
                    434: syntax match rplFloat       "\(^\|\s\+\)[-+]\=\d\+\([\.,]\d*\)\=[eE]\([-+]\)\=\d\+\ze\($\|\s\+\)" contains=ALLBUT,rplPoint,rplSign
                    435: " [S].fpE[S]exp
                    436: syntax match rplFloat       "\(^\|\s\+\)[-+]\=\(\d*\)\=[\.,]\d\+[eE]\([-+]\)\=\d\+\ze\($\|\s\+\)" contains=ALLBUT,rplPoint,rplSign
                    437: syntax match rplPoint      "\<[\.,]\>"
                    438: syntax match rplSign       "\<[+-]\>"
                    439: 
                    440: " Complex number
                    441: " (x,y)
                    442: syntax match rplComplex    "\(^\|\s\+\)([-+]\=\(\d*\)\=\.\=\d*\([eE][-+]\=\d\+\)\=\s*,\s*[-+]\=\(\d*\)\=\.\=\d*\([eE][-+]\=\d\+\)\=)\ze\($\|\s\+\)"
                    443: " (x.y)
                    444: syntax match rplComplex    "\(^\|\s\+\)([-+]\=\(\d*\)\=,\=\d*\([eE][-+]\=\d\+\)\=\s*\.\s*[-+]\=\(\d*\)\=,\=\d*\([eE][-+]\=\d\+\)\=)\ze\($\|\s\+\)"
                    445: 
                    446: " Strings
                    447: syntax match rplStringGuilles       "\\\""
                    448: syntax match rplStringAntislash     "\\\\"
                    449: syntax region rplString start=+\(^\|\s\+\)"+ end=+"\ze\($\|\s\+\)+ contains=rplStringGuilles,rplStringAntislash
                    450: 
                    451: syntax match rplTab "\t"  transparent
                    452: 
                    453: " Define the default highlighting.
                    454: " For version 5.7 and earlier: only when not done already
                    455: " For version 5.8 and later: only when an item doesn't have highlighting yet
                    456: if version >= 508 || !exists("did_rpl_syntax_inits")
                    457:   if version < 508
                    458:     let did_rpl_syntax_inits = 1
                    459:     command -nargs=+ HiLink highlight link <args>
                    460:   else
                    461:     command -nargs=+ HiLink highlight default link <args>
                    462:   endif
                    463: 
                    464:   " The default highlighting.
                    465: 
                    466:   HiLink rplControl             Statement
                    467:   HiLink rplStatement           Statement
                    468:   HiLink rplAlgConditional      Conditional
                    469:   HiLink rplConditional         Repeat
                    470:   HiLink rplConditionalError    Error
                    471:   HiLink rplRepeat              Repeat
                    472:   HiLink rplCycle               Repeat
                    473:   HiLink rplUntil               Repeat
                    474:   HiLink rplIntrinsic           Special
                    475:   HiLink rplStorage             StorageClass
                    476:   HiLink rplStorageExpr         StorageClass
                    477:   HiLink rplStorageError       Error
                    478:   HiLink rplReadWrite           rplIntrinsic
                    479: 
                    480:   HiLink rplOperator            Operator
                    481: 
                    482:   HiLink rplList                Special
                    483:   HiLink rplArray               Special
                    484:   HiLink rplConstant            Identifier
                    485:   HiLink rplExpr                Type
                    486: 
                    487:   HiLink rplString              String
                    488:   HiLink rplStringGuilles       String
                    489:   HiLink rplStringAntislash     String
                    490: 
                    491:   HiLink rplBinary              Boolean
                    492:   HiLink rplOctal               Boolean
                    493:   HiLink rplDecimal             Boolean
                    494:   HiLink rplHexadecimal         Boolean
                    495:   HiLink rplInteger             Number
                    496:   HiLink rplFloat               Float
                    497:   HiLink rplComplex             Float
                    498:   HiLink rplBoolean             Identifier
                    499: 
                    500:   HiLink rplObsolete            Todo
                    501: 
                    502:   HiLink rplPreCondit           PreCondit
                    503:   HiLink rplInclude             Include
                    504:   HiLink rplIncluded            rplString
                    505:   HiLink rplInclude             Include
                    506:   HiLink rplExecPath            Include
                    507:   HiLink rplPreProc             PreProc
                    508:   HiLink rplComment             Comment
                    509:   HiLink rplCommentLine         Comment
                    510:   HiLink rplCommentString       Comment
                    511:   HiLink rplSubDelimitor        rplStorage
                    512:   HiLink rplCommentError        Error
                    513:   HiLink rplParenError          Error
                    514:   HiLink rplSubError            Error
                    515:   HiLink rplArrayError          Error
                    516:   HiLink rplListError           Error
                    517:   HiLink rplTab                 Error
                    518:   HiLink rplBinaryError         Error
                    519:   HiLink rplOctalError          Error
                    520:   HiLink rplDecimalError        Error
                    521:   HiLink rplHexadecimalError    Error
                    522: 
                    523:   delcommand HiLink
                    524: endif
                    525: 
                    526: let b:current_syntax = "rpl"
                    527: 
                    528: " vim: ts=8 tw=132

CVSweb interface <joel.bertrand@systella.fr>