| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | " Vim syntax file | 
					
						
							| 
									
										
										
										
											2023-08-22 20:25:06 +02:00
										 |  |  | " Language:	gp (version 2.15) | 
					
						
							| 
									
										
										
										
											2006-04-12 21:52:12 +00:00
										 |  |  | " Maintainer:	Karim Belabas <Karim.Belabas@math.u-bordeaux.fr> | 
					
						
							| 
									
										
										
										
											2023-08-22 20:25:06 +02:00
										 |  |  | " Last change:	2023 Aug 22 | 
					
						
							| 
									
										
										
										
											2006-04-12 21:52:12 +00:00
										 |  |  | " URL:		http://pari.math.u-bordeaux.fr | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2016-08-30 23:26:57 +02:00
										 |  |  | " quit when a syntax file was already loaded | 
					
						
							|  |  |  | if exists("b:current_syntax") | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  |   finish | 
					
						
							|  |  |  | endif | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2012-01-20 21:08:56 +01:00
										 |  |  | let s:cpo_save = &cpo | 
					
						
							|  |  |  | set cpo&vim | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2006-04-12 21:52:12 +00:00
										 |  |  | " control statements | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | syntax keyword gpStatement	break return next | 
					
						
							| 
									
										
										
										
											2023-08-22 20:25:06 +02:00
										 |  |  | syntax keyword gpConditional	if iferr | 
					
						
							|  |  |  | syntax keyword gpRepeat		until while for forcomposite fordiv | 
					
						
							|  |  |  | syntax keyword gpRepeat		fordivfactored foreach forell forfactored | 
					
						
							|  |  |  | syntax keyword gpRepeat		forpart forperm forprime forprimestep forqfvec | 
					
						
							|  |  |  | syntax keyword gpRepeat		forsquarefree forstep forsubgroup forsubset | 
					
						
							|  |  |  | syntax keyword gpRepeat		forvec | 
					
						
							|  |  |  | syntax keyword gpRepeat		parfor parforeach parforprime parforprimestep | 
					
						
							|  |  |  | syntax keyword gpRepeat		parforvec | 
					
						
							| 
									
										
										
										
											2006-04-12 21:52:12 +00:00
										 |  |  | " storage class | 
					
						
							| 
									
										
										
										
											2023-08-22 20:25:06 +02:00
										 |  |  | syntax keyword gpScope		my local global export exportall | 
					
						
							| 
									
										
										
										
											2006-04-12 21:52:12 +00:00
										 |  |  | " defaults | 
					
						
							| 
									
										
										
										
											2012-01-20 21:08:56 +01:00
										 |  |  | syntax keyword gpInterfaceKey	breakloop colors compatible | 
					
						
							| 
									
										
										
										
											2023-08-22 20:25:06 +02:00
										 |  |  | syntax keyword gpInterfaceKey	datadir debug debugfiles debugmem | 
					
						
							|  |  |  | syntax keyword gpInterfaceKey	echo factor_add_primes factor_proven format | 
					
						
							| 
									
										
										
										
											2012-01-20 21:08:56 +01:00
										 |  |  | syntax keyword gpInterfaceKey	graphcolormap graphcolors | 
					
						
							| 
									
										
										
										
											2023-08-22 20:25:06 +02:00
										 |  |  | syntax keyword gpInterfaceKey	help histfile histsize | 
					
						
							|  |  |  | syntax keyword gpInterfaceKey	lines linewrap log logfile nbthreads | 
					
						
							|  |  |  | syntax keyword gpInterfaceKey	new_galois_format output parisize parisizemax | 
					
						
							|  |  |  | syntax keyword gpInterfaceKey	path plothsizes prettyprinter primelimit prompt | 
					
						
							|  |  |  | syntax keyword gpInterfaceKey	prompt_cont psfile readline realbitprecision | 
					
						
							|  |  |  | syntax keyword gpInterfaceKey	realprecision recover secure seriesprecision | 
					
						
							|  |  |  | syntax keyword gpInterfaceKey	simplify sopath strictmatch TeXstyle | 
					
						
							|  |  |  | syntax keyword gpInterfaceKey	threadsize threadsizemax timer | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2012-01-20 21:08:56 +01:00
										 |  |  | syntax match gpInterface	"^\s*\\[a-z].*" | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | syntax keyword gpInterface	default | 
					
						
							|  |  |  | syntax keyword gpInput		read input | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | " functions | 
					
						
							|  |  |  | syntax match gpFunRegion "^\s*[a-zA-Z][_a-zA-Z0-9]*(.*)\s*=\s*[^ \t=]"me=e-1 contains=gpFunction,gpArgs | 
					
						
							|  |  |  | syntax match gpFunRegion "^\s*[a-zA-Z][_a-zA-Z0-9]*(.*)\s*=\s*$" contains=gpFunction,gpArgs | 
					
						
							|  |  |  | syntax match gpArgs contained "[a-zA-Z][_a-zA-Z0-9]*" | 
					
						
							|  |  |  | syntax match gpFunction contained "^\s*[a-zA-Z][_a-zA-Z0-9]*("me=e-1 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | " String and Character constants | 
					
						
							|  |  |  | " Highlight special (backslash'ed) characters differently | 
					
						
							|  |  |  | syntax match  gpSpecial contained "\\[ent\\]" | 
					
						
							|  |  |  | syntax region gpString  start=+"+ skip=+\\\\\|\\"+ end=+"+ contains=gpSpecial | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | "comments | 
					
						
							|  |  |  | syntax region gpComment	start="/\*"  end="\*/" contains=gpTodo | 
					
						
							|  |  |  | syntax match  gpComment "\\\\.*" contains=gpTodo | 
					
						
							|  |  |  | syntax keyword gpTodo contained	TODO | 
					
						
							|  |  |  | syntax sync ccomment gpComment minlines=10 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | "catch errors caused by wrong parenthesis | 
					
						
							|  |  |  | syntax region gpParen		transparent start='(' end=')' contains=ALLBUT,gpParenError,gpTodo,gpFunction,gpArgs,gpSpecial | 
					
						
							|  |  |  | syntax match gpParenError	")" | 
					
						
							|  |  |  | syntax match gpInParen contained "[{}]" | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2023-08-22 20:25:06 +02:00
										 |  |  | hi def link gpConditional	Conditional | 
					
						
							| 
									
										
										
										
											2016-08-31 22:22:10 +02:00
										 |  |  | hi def link gpRepeat		Repeat | 
					
						
							|  |  |  | hi def link gpError		Error | 
					
						
							| 
									
										
										
										
											2023-08-22 20:25:06 +02:00
										 |  |  | hi def link gpParenError	gpError | 
					
						
							| 
									
										
										
										
											2016-08-31 22:22:10 +02:00
										 |  |  | hi def link gpInParen		gpError | 
					
						
							|  |  |  | hi def link gpStatement		Statement | 
					
						
							|  |  |  | hi def link gpString		String | 
					
						
							|  |  |  | hi def link gpComment		Comment | 
					
						
							|  |  |  | hi def link gpInterface		Type | 
					
						
							|  |  |  | hi def link gpInput		Type | 
					
						
							| 
									
										
										
										
											2023-08-22 20:25:06 +02:00
										 |  |  | hi def link gpInterfaceKey	Statement | 
					
						
							| 
									
										
										
										
											2016-08-31 22:22:10 +02:00
										 |  |  | hi def link gpFunction		Function | 
					
						
							|  |  |  | hi def link gpScope		Type | 
					
						
							| 
									
										
										
										
											2016-08-30 23:26:57 +02:00
										 |  |  | " contained ones | 
					
						
							| 
									
										
										
										
											2016-08-31 22:22:10 +02:00
										 |  |  | hi def link gpSpecial		Special | 
					
						
							| 
									
										
										
										
											2023-08-22 20:25:06 +02:00
										 |  |  | hi def link gpTodo		Todo | 
					
						
							|  |  |  | hi def link gpArgs		Type | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | let b:current_syntax = "gp" | 
					
						
							| 
									
										
										
										
											2012-01-20 21:08:56 +01:00
										 |  |  | let &cpo = s:cpo_save | 
					
						
							|  |  |  | unlet s:cpo_save | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | " vim: ts=8 |