Annotation of rpl/vim/syntax/rpl.vim, revision 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>