| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | " Vim filetype plugin file | 
					
						
							|  |  |  | " Language:	csh | 
					
						
							| 
									
										
										
										
											2010-01-06 20:54:52 +01:00
										 |  |  | " Maintainer:	Dan Sharp <dwsharp at users dot sourceforge dot net> | 
					
						
							|  |  |  | " Last Changed: 20 Jan 2009 | 
					
						
							|  |  |  | " URL:		http://dwsharp.users.sourceforge.net/vim/ftplugin | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | if exists("b:did_ftplugin") | finish | endif | 
					
						
							|  |  |  | let b:did_ftplugin = 1 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | " Make sure the continuation lines below do not cause problems in | 
					
						
							|  |  |  | " compatibility mode. | 
					
						
							|  |  |  | let s:save_cpo = &cpo | 
					
						
							|  |  |  | set cpo-=C | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | setlocal commentstring=#%s | 
					
						
							|  |  |  | setlocal formatoptions-=t | 
					
						
							|  |  |  | setlocal formatoptions+=crql | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | " Csh:  thanks to Johannes Zellner | 
					
						
							|  |  |  | " - Both foreach and end must appear alone on separate lines. | 
					
						
							|  |  |  | " - The words else and endif must appear at the beginning of input lines; | 
					
						
							|  |  |  | "   the if must appear alone on its input line or after an else. | 
					
						
							|  |  |  | " - Each case label and the default label must appear at the start of a | 
					
						
							|  |  |  | "   line. | 
					
						
							|  |  |  | " - while and end must appear alone on their input lines. | 
					
						
							|  |  |  | if exists("loaded_matchit") | 
					
						
							|  |  |  |     let b:match_words = | 
					
						
							|  |  |  |       \ '^\s*\<if\>.*(.*).*\<then\>:'. | 
					
						
							|  |  |  |       \   '^\s*\<else\>\s\+\<if\>.*(.*).*\<then\>:^\s*\<else\>:'. | 
					
						
							|  |  |  |       \   '^\s*\<endif\>,'. | 
					
						
							|  |  |  |       \ '\%(^\s*\<foreach\>\s\+\S\+\|^s*\<while\>\).*(.*):'. | 
					
						
							|  |  |  |       \   '\<break\>:\<continue\>:^\s*\<end\>,'. | 
					
						
							|  |  |  |       \ '^\s*\<switch\>.*(.*):^\s*\<case\>\s\+:^\s*\<default\>:^\s*\<endsw\>' | 
					
						
							|  |  |  | endif | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | " Change the :browse e filter to primarily show csh-related files. | 
					
						
							|  |  |  | if has("gui_win32") | 
					
						
							|  |  |  |     let  b:browsefilter="csh Scripts (*.csh)\t*.csh\n" . | 
					
						
							|  |  |  | 		\	"All Files (*.*)\t*.*\n" | 
					
						
							|  |  |  | endif | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | " Undo the stuff we changed. | 
					
						
							|  |  |  | let b:undo_ftplugin = "setlocal commentstring< formatoptions<" . | 
					
						
							|  |  |  | 		\     " | unlet! b:match_words b:browsefilter" | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | " Restore the saved compatibility options. | 
					
						
							|  |  |  | let &cpo = s:save_cpo | 
					
						
							| 
									
										
										
										
											2012-03-11 15:57:40 +01:00
										 |  |  | unlet s:save_cpo |