1" Vim filetype plugin file 2" Language: csh 3" Maintainer: Dan Sharp <dwsharp at users dot sourceforge dot net> 4" Last Changed: 20 Jan 2009 5" URL: http://dwsharp.users.sourceforge.net/vim/ftplugin 6 7if exists("b:did_ftplugin") | finish | endif 8let b:did_ftplugin = 1 9 10" Make sure the continuation lines below do not cause problems in 11" compatibility mode. 12let s:save_cpo = &cpo 13set cpo-=C 14 15setlocal commentstring=#%s 16setlocal formatoptions-=t 17setlocal formatoptions+=crql 18 19" Csh: thanks to Johannes Zellner 20" - Both foreach and end must appear alone on separate lines. 21" - The words else and endif must appear at the beginning of input lines; 22" the if must appear alone on its input line or after an else. 23" - Each case label and the default label must appear at the start of a 24" line. 25" - while and end must appear alone on their input lines. 26if exists("loaded_matchit") 27 let b:match_words = 28 \ '^\s*\<if\>.*(.*).*\<then\>:'. 29 \ '^\s*\<else\>\s\+\<if\>.*(.*).*\<then\>:^\s*\<else\>:'. 30 \ '^\s*\<endif\>,'. 31 \ '\%(^\s*\<foreach\>\s\+\S\+\|^s*\<while\>\).*(.*):'. 32 \ '\<break\>:\<continue\>:^\s*\<end\>,'. 33 \ '^\s*\<switch\>.*(.*):^\s*\<case\>\s\+:^\s*\<default\>:^\s*\<endsw\>' 34endif 35 36" Change the :browse e filter to primarily show csh-related files. 37if has("gui_win32") 38 let b:browsefilter="csh Scripts (*.csh)\t*.csh\n" . 39 \ "All Files (*.*)\t*.*\n" 40endif 41 42" Undo the stuff we changed. 43let b:undo_ftplugin = "setlocal commentstring< formatoptions<" . 44 \ " | unlet! b:match_words b:browsefilter" 45 46" Restore the saved compatibility options. 47let &cpo = s:save_cpo 48