| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | " Vim syntax file | 
					
						
							| 
									
										
										
										
											2022-01-29 22:20:48 +00:00
										 |  |  | " Language:		BASIC (QuickBASIC 4.5) | 
					
						
							| 
									
										
										
										
											2021-01-25 21:14:57 +01:00
										 |  |  | " Maintainer:		Doug Kearns <dougkearns@gmail.com> | 
					
						
							|  |  |  | " Previous Maintainer:	Allan Kelly <allan@fruitloaf.co.uk> | 
					
						
							|  |  |  | " Contributors:		Thilo Six | 
					
						
							| 
									
										
										
										
											2022-07-01 18:45:04 +01:00
										 |  |  | " Last Change:		2022 Jun 22 | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | " First version based on Micro$soft QBASIC circa 1989, as documented in | 
					
						
							|  |  |  | " 'Learn BASIC Now' by Halvorson&Rygmyr. Microsoft Press 1989. | 
					
						
							| 
									
										
										
										
											2022-01-29 22:20:48 +00:00
										 |  |  | " | 
					
						
							|  |  |  | " Second version attempts to match Microsoft QuickBASIC 4.5 while keeping FreeBASIC | 
					
						
							|  |  |  | " (-lang qb) and QB64 (excluding extensions) in mind. -- DJK | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-01-25 21:14:57 +01:00
										 |  |  | " Prelude {{{1 | 
					
						
							| 
									
										
										
										
											2016-08-30 23:26:57 +02:00
										 |  |  | if exists("b:current_syntax") | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  |   finish | 
					
						
							|  |  |  | endif | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-12-30 13:11:27 +01:00
										 |  |  | let s:cpo_save = &cpo | 
					
						
							|  |  |  | set cpo&vim | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-01-29 22:20:48 +00:00
										 |  |  | syn iskeyword @,48-57,.,!,#,%,&,$ | 
					
						
							|  |  |  | syn case      ignore | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | " Whitespace Errors {{{1 | 
					
						
							|  |  |  | if exists("basic_space_errors") | 
					
						
							|  |  |  |   if !exists("basic_no_trail_space_error") | 
					
						
							|  |  |  |     syn match basicSpaceError display excludenl "\s\+$" | 
					
						
							|  |  |  |   endif | 
					
						
							|  |  |  |   if !exists("basic_no_tab_space_error") | 
					
						
							|  |  |  |     syn match basicSpaceError display " \+\t"me=e-1 | 
					
						
							|  |  |  |   endif | 
					
						
							|  |  |  | endif | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | " Comment Errors {{{1 | 
					
						
							|  |  |  | if !exists("basic_no_comment_errors") | 
					
						
							|  |  |  |   syn match basicCommentError "\<REM\>.*" | 
					
						
							|  |  |  | endif | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | " Not Top Cluster {{{1 | 
					
						
							|  |  |  | syn cluster basicNotTop contains=@basicLineIdentifier,basicDataString,basicDataSeparator,basicTodo | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | " Statements {{{1 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | syn cluster basicStatements contains=basicStatement,basicDataStatement,basicMetaRemStatement,basicPutStatement,basicRemStatement | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | let s:statements =<< trim EOL " {{{2 | 
					
						
							|  |  |  |   beep | 
					
						
							|  |  |  |   bload | 
					
						
							|  |  |  |   bsave | 
					
						
							|  |  |  |   call | 
					
						
							|  |  |  |   calls | 
					
						
							|  |  |  |   case | 
					
						
							|  |  |  |   chain | 
					
						
							|  |  |  |   chdir | 
					
						
							|  |  |  |   circle | 
					
						
							|  |  |  |   clear | 
					
						
							|  |  |  |   close | 
					
						
							|  |  |  |   cls | 
					
						
							|  |  |  |   color | 
					
						
							|  |  |  |   com | 
					
						
							|  |  |  |   common | 
					
						
							|  |  |  |   const | 
					
						
							|  |  |  |   declare | 
					
						
							|  |  |  |   def | 
					
						
							|  |  |  |   def\s\+seg | 
					
						
							|  |  |  |   defdbl | 
					
						
							|  |  |  |   defint | 
					
						
							|  |  |  |   deflng | 
					
						
							|  |  |  |   defsng | 
					
						
							|  |  |  |   defstr | 
					
						
							|  |  |  |   dim | 
					
						
							|  |  |  |   do | 
					
						
							|  |  |  |   draw | 
					
						
							|  |  |  |   elseif | 
					
						
							|  |  |  |   end | 
					
						
							|  |  |  |   end\s\+\%(def\|function\|if\|select\|sub\|type\) | 
					
						
							|  |  |  |   environ | 
					
						
							|  |  |  |   erase | 
					
						
							|  |  |  |   error | 
					
						
							|  |  |  |   exit\s\+\%(def\|do\|for\|function\|sub\) | 
					
						
							|  |  |  |   field | 
					
						
							|  |  |  |   files | 
					
						
							|  |  |  |   for | 
					
						
							|  |  |  |   function | 
					
						
							|  |  |  |   get | 
					
						
							|  |  |  |   gosub | 
					
						
							|  |  |  |   goto | 
					
						
							|  |  |  |   if | 
					
						
							|  |  |  |   input | 
					
						
							|  |  |  |   ioctl | 
					
						
							|  |  |  |   key | 
					
						
							|  |  |  |   kill | 
					
						
							|  |  |  |   let | 
					
						
							|  |  |  |   line | 
					
						
							|  |  |  |   line\s\+input | 
					
						
							|  |  |  |   locate | 
					
						
							|  |  |  |   lock | 
					
						
							|  |  |  |   loop | 
					
						
							|  |  |  |   lprint | 
					
						
							|  |  |  |   lset | 
					
						
							|  |  |  |   mkdir | 
					
						
							|  |  |  |   name | 
					
						
							|  |  |  |   next | 
					
						
							|  |  |  |   on | 
					
						
							|  |  |  |   on\s\+error | 
					
						
							|  |  |  |   on\s\+uevent | 
					
						
							|  |  |  |   open | 
					
						
							|  |  |  |   open\s\+com | 
					
						
							|  |  |  |   option | 
					
						
							|  |  |  |   out | 
					
						
							|  |  |  |   paint | 
					
						
							|  |  |  |   palette | 
					
						
							|  |  |  |   palette\s\+using | 
					
						
							|  |  |  |   pcopy | 
					
						
							|  |  |  |   pen | 
					
						
							|  |  |  |   pmap | 
					
						
							|  |  |  |   poke | 
					
						
							|  |  |  |   preset | 
					
						
							|  |  |  |   print | 
					
						
							|  |  |  |   pset | 
					
						
							|  |  |  |   randomize | 
					
						
							|  |  |  |   read | 
					
						
							|  |  |  |   redim | 
					
						
							|  |  |  |   reset | 
					
						
							|  |  |  |   restore | 
					
						
							|  |  |  |   resume | 
					
						
							|  |  |  |   return | 
					
						
							|  |  |  |   rmdir | 
					
						
							|  |  |  |   rset | 
					
						
							|  |  |  |   run | 
					
						
							|  |  |  |   select\s\+case | 
					
						
							|  |  |  |   shared | 
					
						
							|  |  |  |   shell | 
					
						
							|  |  |  |   sleep | 
					
						
							|  |  |  |   sound | 
					
						
							|  |  |  |   static | 
					
						
							|  |  |  |   stop | 
					
						
							|  |  |  |   strig | 
					
						
							|  |  |  |   sub | 
					
						
							|  |  |  |   swap | 
					
						
							|  |  |  |   system | 
					
						
							|  |  |  |   troff | 
					
						
							|  |  |  |   tron | 
					
						
							|  |  |  |   type | 
					
						
							|  |  |  |   uevent | 
					
						
							|  |  |  |   unlock | 
					
						
							|  |  |  |   using | 
					
						
							|  |  |  |   view | 
					
						
							|  |  |  |   view\s\+print | 
					
						
							|  |  |  |   wait | 
					
						
							|  |  |  |   wend | 
					
						
							|  |  |  |   while | 
					
						
							|  |  |  |   width | 
					
						
							|  |  |  |   window | 
					
						
							|  |  |  |   write | 
					
						
							|  |  |  | EOL | 
					
						
							|  |  |  | " }}} | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | for s in s:statements | 
					
						
							|  |  |  |   exe 'syn match basicStatement "\<' .. s .. '\>" contained' | 
					
						
							|  |  |  | endfor | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | syn match basicStatement "\<\%(then\|else\)\>" nextgroup=@basicStatements skipwhite | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | " DATA Statement | 
					
						
							|  |  |  | syn match  basicDataSeparator "," contained | 
					
						
							|  |  |  | syn region basicDataStatement matchgroup=basicStatement start="\<data\>" matchgroup=basicStatementSeparator end=":\|$" contained contains=basicDataSeparator,basicDataString,basicNumber,basicFloat,basicString | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | if !exists("basic_no_data_fold") | 
					
						
							|  |  |  |   syn region basicMultilineData start="^\s*\<data\>.*\n\%(^\s*\<data\>\)\@=" end="^\s*\<data\>.*\n\%(^\s*\<data\>\)\@!" contains=basicDataStatement transparent fold keepend | 
					
						
							|  |  |  | endif | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | " PUT File I/O and Graphics statements - needs special handling for graphics | 
					
						
							|  |  |  | " action verbs | 
					
						
							|  |  |  | syn match  basicPutAction "\<\%(pset\|preset\|and\|or\|xor\)\>" contained | 
					
						
							|  |  |  | syn region basicPutStatement matchgroup=basicStatement start="\<put\>" matchgroup=basicStatementSeparator end=":\|$" contained contains=basicKeyword,basicPutAction,basicFilenumber | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-01-25 21:14:57 +01:00
										 |  |  | " Keywords {{{1 | 
					
						
							| 
									
										
										
										
											2022-01-29 22:20:48 +00:00
										 |  |  | let s:keywords =<< trim EOL " {{{2 | 
					
						
							|  |  |  |   absolute | 
					
						
							|  |  |  |   access | 
					
						
							|  |  |  |   alias | 
					
						
							|  |  |  |   append | 
					
						
							|  |  |  |   as | 
					
						
							|  |  |  |   base | 
					
						
							|  |  |  |   binary | 
					
						
							|  |  |  |   byval | 
					
						
							|  |  |  |   cdecl | 
					
						
							|  |  |  |   com | 
					
						
							|  |  |  |   def | 
					
						
							|  |  |  |   do | 
					
						
							|  |  |  |   for | 
					
						
							|  |  |  |   function | 
					
						
							|  |  |  |   gosub | 
					
						
							|  |  |  |   goto | 
					
						
							|  |  |  |   input | 
					
						
							|  |  |  |   int86old | 
					
						
							|  |  |  |   int86xold | 
					
						
							|  |  |  |   interrupt | 
					
						
							|  |  |  |   interruptx | 
					
						
							|  |  |  |   is | 
					
						
							|  |  |  |   key | 
					
						
							|  |  |  |   len | 
					
						
							|  |  |  |   list | 
					
						
							|  |  |  |   local | 
					
						
							|  |  |  |   lock | 
					
						
							|  |  |  |   lprint | 
					
						
							|  |  |  |   next | 
					
						
							|  |  |  |   off | 
					
						
							|  |  |  |   on | 
					
						
							|  |  |  |   output | 
					
						
							|  |  |  |   pen | 
					
						
							|  |  |  |   play | 
					
						
							|  |  |  |   random | 
					
						
							|  |  |  |   read | 
					
						
							|  |  |  |   resume | 
					
						
							|  |  |  |   screen | 
					
						
							|  |  |  |   seg | 
					
						
							|  |  |  |   shared | 
					
						
							|  |  |  |   signal | 
					
						
							|  |  |  |   static | 
					
						
							|  |  |  |   step | 
					
						
							|  |  |  |   stop | 
					
						
							|  |  |  |   strig | 
					
						
							|  |  |  |   sub | 
					
						
							|  |  |  |   timer | 
					
						
							|  |  |  |   to | 
					
						
							|  |  |  |   until | 
					
						
							|  |  |  |   using | 
					
						
							|  |  |  |   while | 
					
						
							|  |  |  |   write | 
					
						
							|  |  |  | EOL | 
					
						
							|  |  |  | " }}} | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | for k in s:keywords | 
					
						
							|  |  |  |   exe 'syn match basicKeyword "\<' .. k .. '\>"' | 
					
						
							|  |  |  | endfor | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | " Functions {{{1 | 
					
						
							|  |  |  | syn keyword basicFunction abs asc atn cdbl chr$ cint clng command$ cos csng | 
					
						
							|  |  |  | syn keyword basicFunction csrlin cvd cvdmbf cvi cvl cvs cvsmbf environ$ eof | 
					
						
							|  |  |  | syn keyword basicFunction erdev erdev$ erl err exp fileattr fix fre freefile | 
					
						
							|  |  |  | syn keyword basicFunction hex$ inkey$ inp input$ instr int ioctl$ left$ lbound | 
					
						
							|  |  |  | syn keyword basicFunction lcase$ len loc lof log lpos ltrim$ mkd$ mkdmbf$ mki$ | 
					
						
							|  |  |  | syn keyword basicFunction mkl$ mks$ mksmbf$ oct$ peek pen point pos right$ rnd | 
					
						
							|  |  |  | syn keyword basicFunction rtrim$ sadd setmem sgn sin space$ spc sqr stick str$ | 
					
						
							|  |  |  | syn keyword basicFunction strig string$ tab tan ubound ucase$ val valptr | 
					
						
							|  |  |  | syn keyword basicFunction valseg varptr varptr$ varseg | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | " Functions and statements (same name) {{{1 | 
					
						
							|  |  |  | syn match   basicStatement "\<\%(date\$\|mid\$\|play\|screen\|seek\|time\$\|timer\)\>" contained | 
					
						
							|  |  |  | syn match   basicFunction  "\<\%(date\$\|mid\$\|play\|screen\|seek\|time\$\|timer\)\>" | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | " Types {{{1 | 
					
						
							|  |  |  | syn keyword basicType integer long single double string any | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | " Strings {{{1 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | " Unquoted DATA strings - anything except [:,] and leading or trailing whitespace | 
					
						
							|  |  |  | " Needs lower priority than numbers | 
					
						
							|  |  |  | syn match basicDataString "[^[:space:],:]\+\%(\s\+[^[:space:],:]\+\)*" contained | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | syn region basicString start=+"+ end=+"+ oneline | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | " Booleans {{{1 | 
					
						
							|  |  |  | if exists("basic_booleans") | 
					
						
							|  |  |  |   syn keyword basicBoolean true false | 
					
						
							|  |  |  | endif | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-01-25 21:14:57 +01:00
										 |  |  | " Numbers {{{1 | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-01-29 22:20:48 +00:00
										 |  |  | " Integers | 
					
						
							|  |  |  | syn match basicNumber "-\=&o\=\o\+[%&]\=\>" | 
					
						
							|  |  |  | syn match basicNumber "-\=&h\x\+[%&]\=\>" | 
					
						
							|  |  |  | syn match basicNumber "-\=\<\d\+[%&]\=\>" | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | " Floats | 
					
						
							|  |  |  | syn match basicFloat "-\=\<\d\+\.\=\d*\%(\%([ed][+-]\=\d*\)\|[!#]\)\=\>" | 
					
						
							|  |  |  | syn match basicFloat      "-\=\<\.\d\+\%(\%([ed][+-]\=\d*\)\|[!#]\)\=\>" | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-01-29 22:20:48 +00:00
										 |  |  | " Statement anchors {{{1 | 
					
						
							|  |  |  | syn match basicLineStart	  "^" nextgroup=@basicStatements,@basicLineIdentifier skipwhite | 
					
						
							|  |  |  | syn match basicStatementSeparator ":" nextgroup=@basicStatements		      skipwhite | 
					
						
							| 
									
										
										
										
											2021-01-25 21:14:57 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-01-29 22:20:48 +00:00
										 |  |  | " Line numbers and labels {{{1 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | " QuickBASIC limits these to 65,529 and 40 chars respectively | 
					
						
							|  |  |  | syn match basicLineNumber "\d\+"		  nextgroup=@basicStatements skipwhite contained | 
					
						
							|  |  |  | syn match basicLineLabel  "\a[[:alnum:]]*\ze\s*:" nextgroup=@basicStatements skipwhite contained | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | syn cluster basicLineIdentifier contains=basicLineNumber,basicLineLabel | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | " Line Continuation {{{1 | 
					
						
							|  |  |  | syn match basicLineContinuation "\s*\zs_\ze\s*$" | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | " Type suffixes {{{1 | 
					
						
							|  |  |  | if exists("basic_type_suffixes") | 
					
						
							|  |  |  |   syn match basicTypeSuffix "\a[[:alnum:].]*\zs[$%&!#]" | 
					
						
							|  |  |  | endif | 
					
						
							| 
									
										
										
										
											2021-01-25 21:14:57 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-01-29 22:20:48 +00:00
										 |  |  | " File numbers {{{1 | 
					
						
							|  |  |  | syn match basicFilenumber "#\d\+" | 
					
						
							|  |  |  | syn match basicFilenumber "#\a[[:alnum:].]*[%&!#]\=" | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | " Operators {{{1 | 
					
						
							|  |  |  | if exists("basic_operators") | 
					
						
							|  |  |  |   syn match basicArithmeticOperator "[-+*/\\^]" | 
					
						
							|  |  |  |   syn match basicRelationalOperator "<>\|<=\|>=\|[><=]" | 
					
						
							|  |  |  | endif | 
					
						
							|  |  |  | syn match basicLogicalOperator	  "\<\%(not\|and\|or\|xor\|eqv\|imp\)\>" | 
					
						
							|  |  |  | syn match basicArithmeticOperator "\<mod\>" | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | " Metacommands {{{1 | 
					
						
							|  |  |  | " Note: No trailing word boundaries.  Text may be freely mixed however there | 
					
						
							|  |  |  | " must be only leading whitespace prior to the first metacommand | 
					
						
							|  |  |  | syn match basicMetacommand "$INCLUDE\s*:\s*'[^']\+'" contained containedin=@basicMetaComments | 
					
						
							|  |  |  | syn match basicMetacommand "$\%(DYNAMIC\|STATIC\)"   contained containedin=@basicMetaComments | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-01-25 21:14:57 +01:00
										 |  |  | " Comments {{{1 | 
					
						
							| 
									
										
										
										
											2022-01-29 22:20:48 +00:00
										 |  |  | syn keyword basicTodo TODO FIXME XXX NOTE contained | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | syn region basicRemStatement matchgroup=basicStatement start="REM\>" end="$" contains=basicTodo,@Spell contained | 
					
						
							|  |  |  | syn region basicComment				       start="'"     end="$" contains=basicTodo,@Spell | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | if !exists("basic_no_comment_fold") | 
					
						
							|  |  |  |   syn region basicMultilineComment start="^\s*'.*\n\%(\s*'\)\@=" end="^\s*'.*\n\%(\s*'\)\@!" contains=@basicComments transparent fold keepend | 
					
						
							|  |  |  | endif | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | " Metacommands | 
					
						
							|  |  |  | syn region  basicMetaRemStatement matchgroup=basicStatement start="REM\>\s*\$\@=" end="$" contains=basicTodo contained | 
					
						
							|  |  |  | syn region  basicMetaComment				    start="'\s*\$\@="	  end="$" contains=basicTodo | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | syn cluster basicMetaComments contains=basicMetaComment,basicMetaRemStatement | 
					
						
							|  |  |  | syn cluster basicComments     contains=basicComment,basicMetaComment | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-01-25 21:14:57 +01:00
										 |  |  | "syn sync ccomment basicComment | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | " Default Highlighting {{{1 | 
					
						
							| 
									
										
										
										
											2022-01-29 22:20:48 +00:00
										 |  |  | hi def link basicArithmeticOperator basicOperator | 
					
						
							|  |  |  | hi def link basicBoolean	    Boolean | 
					
						
							|  |  |  | hi def link basicComment	    Comment | 
					
						
							|  |  |  | hi def link basicCommentError	    Error | 
					
						
							|  |  |  | hi def link basicDataString	    basicString | 
					
						
							|  |  |  | hi def link basicFilenumber	    basicTypeSuffix " TODO: better group | 
					
						
							|  |  |  | hi def link basicFloat		    Float | 
					
						
							| 
									
										
										
										
											2022-07-01 18:45:04 +01:00
										 |  |  | hi def link basicFunction	    Function | 
					
						
							| 
									
										
										
										
											2022-01-29 22:20:48 +00:00
										 |  |  | hi def link basicKeyword	    Keyword | 
					
						
							|  |  |  | hi def link basicLineIdentifier	    LineNr | 
					
						
							|  |  |  | hi def link basicLineContinuation   Special | 
					
						
							|  |  |  | hi def link basicLineLabel	    basicLineIdentifier | 
					
						
							|  |  |  | hi def link basicLineNumber	    basicLineIdentifier | 
					
						
							|  |  |  | hi def link basicLogicalOperator    basicOperator | 
					
						
							|  |  |  | hi def link basicMetacommand	    SpecialComment | 
					
						
							|  |  |  | hi def link basicMetaComment	    Comment | 
					
						
							|  |  |  | hi def link basicMetaRemStatement   Comment | 
					
						
							|  |  |  | hi def link basicNumber		    Number | 
					
						
							|  |  |  | hi def link basicOperator	    Operator | 
					
						
							|  |  |  | hi def link basicPutAction	    Keyword | 
					
						
							|  |  |  | hi def link basicRelationalOperator basicOperator | 
					
						
							|  |  |  | hi def link basicRemStatement	    Comment | 
					
						
							|  |  |  | hi def link basicSpaceError	    Error | 
					
						
							|  |  |  | hi def link basicStatementSeparator Special | 
					
						
							|  |  |  | hi def link basicStatement	    Statement | 
					
						
							|  |  |  | hi def link basicString		    String | 
					
						
							|  |  |  | hi def link basicTodo		    Todo | 
					
						
							|  |  |  | hi def link basicType		    Type | 
					
						
							|  |  |  | hi def link basicTypeSuffix	    Special | 
					
						
							|  |  |  | if exists("basic_legacy_syntax_groups") | 
					
						
							|  |  |  |   hi def link basicTypeSpecifier      Type | 
					
						
							|  |  |  |   hi def link basicTypeSuffix	      basicTypeSpecifier | 
					
						
							|  |  |  | endif | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-01-25 21:14:57 +01:00
										 |  |  | " Postscript {{{1 | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | let b:current_syntax = "basic" | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-12-30 13:11:27 +01:00
										 |  |  | let &cpo = s:cpo_save | 
					
						
							|  |  |  | unlet s:cpo_save | 
					
						
							| 
									
										
										
										
											2021-01-25 21:14:57 +01:00
										 |  |  | 
 | 
					
						
							|  |  |  | " vim: nowrap sw=2 sts=2 ts=8 noet fdm=marker: |