| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | " Vim filetype plugin file | 
					
						
							| 
									
										
										
										
											2021-05-02 17:19:11 +02:00
										 |  |  | " Language:		Pascal | 
					
						
							|  |  |  | " Maintainer:		Doug Kearns <dougkearns@gmail.com> | 
					
						
							|  |  |  | " Previous Maintainer:	Dan Sharp <dwsharp at users dot sourceforge dot net> | 
					
						
							|  |  |  | " Last Change:		2021 Apr 23 | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | if exists("b:did_ftplugin") | finish | endif | 
					
						
							|  |  |  | let b:did_ftplugin = 1 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-05-02 17:19:11 +02:00
										 |  |  | let s:cpo_save = &cpo | 
					
						
							|  |  |  | set cpo&vim | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | set comments=s:(*,m:\ ,e:*),s:{,m:\ ,e:} | 
					
						
							|  |  |  | set commentstring={%s} | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | if exists("pascal_delphi") | 
					
						
							|  |  |  |   set comments+=:/// | 
					
						
							|  |  |  | endif | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | if !exists("pascal_traditional") | 
					
						
							|  |  |  |   set commentstring=//\ %s | 
					
						
							|  |  |  |   set comments+=:// | 
					
						
							|  |  |  | endif | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | setlocal formatoptions-=t formatoptions+=croql | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | if exists("loaded_matchit") | 
					
						
							| 
									
										
										
										
											2021-05-02 17:19:11 +02:00
										 |  |  |   let b:match_ignorecase = 1 " (Pascal is case-insensitive) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |   let b:match_words  = '\<\%(asm\|begin\|case\|\%(\%(=\|packed\)\s*\)\@<=\%(class\|object\)\|\%(=\s*\)\@<=interface\|record\|try\)\>' | 
					
						
							|  |  |  |   let b:match_words .= ':\%(^\s*\)\@<=\%(except\|finally\|else\|otherwise\)\>' | 
					
						
							|  |  |  |   let b:match_words .= ':\<end\>\.\@!' | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |   let b:match_words .= ',\<repeat\>:\<until\>' | 
					
						
							|  |  |  |   " let b:match_words .= ',\<if\>:\<else\>' " FIXME - else clashing with middle else. It seems like a debatable use anyway. | 
					
						
							|  |  |  |   let b:match_words .= ',\<unit\>:\<\%(\%(^\s*\)\@<=interface\|implementation\|initialization\|finalization\)\>:\<end\.' | 
					
						
							|  |  |  | endif | 
					
						
							| 
									
										
										
										
											2011-04-28 19:02:44 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-05-02 17:19:11 +02:00
										 |  |  | if (has("gui_win32") || has("gui_gtk")) && !exists("b:browsefilter") | 
					
						
							|  |  |  |   let b:browsefilter = "Pascal Source Files (*.pas *.pp *.inc)\t*.pas;*.pp;*.inc\n" . | 
					
						
							|  |  |  | 		     \ "All Files (*.*)\t*.*\n" | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | endif | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-05-02 17:19:11 +02:00
										 |  |  | let b:undo_ftplugin = "setl fo< cms< com< " .. | 
					
						
							|  |  |  | 		    \ "| unlet! b:browsefilter b:match_words b:match_ignorecase" | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | let &cpo = s:cpo_save | 
					
						
							|  |  |  | unlet s:cpo_save | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | " vim: nowrap sw=2 sts=2 ts=8 noet: |