49 lines
1.6 KiB
VimL
49 lines
1.6 KiB
VimL
if exists("b:current_syntax")
|
|
finish
|
|
endif
|
|
|
|
syntax keyword pcdKeyword func
|
|
syntax keyword pcdKeyword if then else while for switch case and
|
|
syntax keyword pcdKeyword break until end default return do in
|
|
syntax keyword pcdKeyword break fetch exclude def from as alloc unalloc using catch vect_create vect_destroy vect_size args args3 proc io arr class
|
|
syntax keyword pcdFunction pcode start stop size_short size_long init populate_db throw err fork print exec size
|
|
syntax keyword pcdKeyword stat const usign
|
|
syntax keyword pcdKeyword i64 i32 i16 i8 ui64 ui32 ui16 ui8 v0 f64 f32 f16 f8
|
|
syntax keyword pcdKeyword global local
|
|
syntax keyword pcdKeyword true false
|
|
|
|
syntax keyword pcdType int vd chr short sshort str flt db tab long vector
|
|
syntax keyword pcdType i64 i32 i16 i8 ui64 ui32 ui16 ui8 v0 f64 f32 f16 f8
|
|
syntax keyword pcdType ctx
|
|
|
|
syntax keyword pcdKeyword pcdver
|
|
|
|
highlight link pcdType Type
|
|
|
|
highlight link pcdKeyword Keyword
|
|
highlight link pcdFunction Function
|
|
|
|
syntax match pcdOperator "\v\="
|
|
syntax match pcdOperator "\v\*"
|
|
syntax match pcdOperator "\v/"
|
|
syntax match pcdOperator "\v\+"
|
|
syntax match pcdOperator "\v-"
|
|
syntax match pcdOperator "\v\?"
|
|
syntax match pcdOperator "\v\*\="
|
|
syntax match pcdOperator "\v/\="
|
|
syntax match pcdOperator "\v\+\="
|
|
syntax match pcdOperator "\v-\="
|
|
syntax match pcdOperator "\v\!\="
|
|
syntax keyword pcdOperator NULL
|
|
|
|
highlight link pcdOperator Operator
|
|
|
|
syntax region pcdString start=/\v"/ skip=/\v\\./ end=/\v"/
|
|
syntax region pcdString start=/\v'/ skip=/\v\\./ end=/\v'/
|
|
highlight link pcdString String
|
|
|
|
syntax match pcdComment "\v//.*$"
|
|
highlight link pcdComment Comment
|
|
|
|
let b:current_syntax = "pcd"
|