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