| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | " Vim syntax file | 
					
						
							| 
									
										
										
										
											2006-03-27 17:01:56 +00:00
										 |  |  | " Language:     RCS file | 
					
						
							| 
									
										
										
										
											2012-02-13 00:05:22 +01:00
										 |  |  | " Maintainer:   Dmitry Vasiliev <dima at hlabs dot org> | 
					
						
							|  |  |  | " URL:          https://github.com/hdima/vim-scripts/blob/master/syntax/rcs.vim | 
					
						
							|  |  |  | " Last Change:  2012-02-11 | 
					
						
							| 
									
										
										
										
											2006-03-27 17:01:56 +00:00
										 |  |  | " Filenames:    *,v | 
					
						
							| 
									
										
										
										
											2012-02-13 00:05:22 +01:00
										 |  |  | " Version:      1.12 | 
					
						
							| 
									
										
										
										
											2006-03-27 17:01:56 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | " Options: | 
					
						
							| 
									
										
										
										
											2006-03-27 17:01:56 +00:00
										 |  |  | "   rcs_folding = 1   For folding strings | 
					
						
							| 
									
										
										
										
											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 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | " RCS file must end with a newline. | 
					
						
							| 
									
										
										
										
											2006-03-27 17:01:56 +00:00
										 |  |  | syn match rcsEOFError   ".\%$" containedin=ALL | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | " Keywords. | 
					
						
							| 
									
										
										
										
											2006-03-27 17:01:56 +00:00
										 |  |  | syn keyword rcsKeyword  head branch access symbols locks strict | 
					
						
							|  |  |  | syn keyword rcsKeyword  comment expand date author state branches | 
					
						
							|  |  |  | syn keyword rcsKeyword  next desc log | 
					
						
							|  |  |  | syn keyword rcsKeyword  text nextgroup=rcsTextStr skipwhite skipempty | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | " Revision numbers and dates. | 
					
						
							| 
									
										
										
										
											2006-03-27 17:01:56 +00:00
										 |  |  | syn match rcsNumber "\<[0-9.]\+\>" display | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | " Strings. | 
					
						
							|  |  |  | if exists("rcs_folding") && has("folding") | 
					
						
							|  |  |  |   " Folded strings. | 
					
						
							| 
									
										
										
										
											2006-03-27 17:01:56 +00:00
										 |  |  |   syn region rcsString  matchgroup=rcsString start="@" end="@" skip="@@" fold contains=rcsSpecial | 
					
						
							|  |  |  |   syn region rcsTextStr matchgroup=rcsTextStr start="@" end="@" skip="@@" fold contained contains=rcsSpecial,rcsDiffLines | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | else | 
					
						
							| 
									
										
										
										
											2006-03-27 17:01:56 +00:00
										 |  |  |   syn region rcsString  matchgroup=rcsString start="@" end="@" skip="@@" contains=rcsSpecial | 
					
						
							|  |  |  |   syn region rcsTextStr matchgroup=rcsTextStr start="@" end="@" skip="@@" contained contains=rcsSpecial,rcsDiffLines | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | endif | 
					
						
							| 
									
										
										
										
											2006-03-27 17:01:56 +00:00
										 |  |  | syn match rcsSpecial    "@@" contained | 
					
						
							|  |  |  | syn match rcsDiffLines  "[da]\d\+ \d\+$" contained | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | " Synchronization. | 
					
						
							|  |  |  | syn sync clear | 
					
						
							|  |  |  | if exists("rcs_folding") && has("folding") | 
					
						
							|  |  |  |   syn sync fromstart | 
					
						
							|  |  |  | else | 
					
						
							|  |  |  |   " We have incorrect folding if following sync patterns is turned on. | 
					
						
							| 
									
										
										
										
											2006-03-27 17:01:56 +00:00
										 |  |  |   syn sync match rcsSync    grouphere rcsString "[0-9.]\+\(\s\|\n\)\+log\(\s\|\n\)\+@"me=e-1 | 
					
						
							|  |  |  |   syn sync match rcsSync    grouphere rcsTextStr "@\(\s\|\n\)\+text\(\s\|\n\)\+@"me=e-1 | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | endif | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | " Define the default highlighting. | 
					
						
							| 
									
										
										
										
											2016-08-30 23:26:57 +02:00
										 |  |  | " Only when an item doesn't have highlighting yet. | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2016-08-31 22:22:10 +02:00
										 |  |  | hi def link rcsKeyword     Keyword | 
					
						
							|  |  |  | hi def link rcsNumber      Identifier | 
					
						
							|  |  |  | hi def link rcsString      String | 
					
						
							|  |  |  | hi def link rcsTextStr     String | 
					
						
							|  |  |  | hi def link rcsSpecial     Special | 
					
						
							|  |  |  | hi def link rcsDiffLines   Special | 
					
						
							|  |  |  | hi def link rcsEOFError    Error | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | let b:current_syntax = "rcs" |