Mercurial > hg > RemoteEditor > vim7
comparison runtime/scripts.vim @ 39:c16898406ff2
synchorinize version 7.3.081
author | one@zeus.cr.ie.u-ryukyu.ac.jp |
---|---|
date | Fri, 17 Dec 2010 17:43:06 +0900 |
parents | 6a13985590e6 |
children |
comparison
equal
deleted
inserted
replaced
38:e06a1cd7230d | 39:c16898406ff2 |
---|---|
1 " Vim support file to detect file types in scripts | 1 " Vim support file to detect file types in scripts |
2 " | 2 " |
3 " Maintainer: Bram Moolenaar <Bram@vim.org> | 3 " Maintainer: Bram Moolenaar <Bram@vim.org> |
4 " Last change: 2008 Aug 09 | 4 " Last change: 2010 Sep 22 |
5 | 5 |
6 " This file is called by an autocommand for every file that has just been | 6 " This file is called by an autocommand for every file that has just been |
7 " loaded into a buffer. It checks if the type of file can be recognized by | 7 " loaded into a buffer. It checks if the type of file can be recognized by |
8 " the file contents. The autocommand is in $VIMRUNTIME/filetype.vim. | 8 " the file contents. The autocommand is in $VIMRUNTIME/filetype.vim. |
9 | 9 |
98 | 98 |
99 " Lua | 99 " Lua |
100 elseif s:name =~ 'lua' | 100 elseif s:name =~ 'lua' |
101 set ft=lua | 101 set ft=lua |
102 | 102 |
103 " Perl 6 | |
104 elseif s:name =~ 'perl6' | |
105 set ft=perl6 | |
106 | |
103 " Perl | 107 " Perl |
104 elseif s:name =~ 'perl' | 108 elseif s:name =~ 'perl' |
105 set ft=perl | 109 set ft=perl |
106 | 110 |
107 " PHP | 111 " PHP |
162 " Bourne-like shell scripts: sh ksh bash bash2 | 166 " Bourne-like shell scripts: sh ksh bash bash2 |
163 if s:line1 =~ '^:$' | 167 if s:line1 =~ '^:$' |
164 call SetFileTypeSH(s:line1) " defined in filetype.vim | 168 call SetFileTypeSH(s:line1) " defined in filetype.vim |
165 | 169 |
166 " Z shell scripts | 170 " Z shell scripts |
167 elseif s:line1 =~ '^#compdef\>' || s:line1 =~ '^#autoload\>' | 171 elseif s:line1 =~ '^#compdef\>' || s:line1 =~ '^#autoload\>' || |
172 \ "\n".s:line1."\n".s:line2."\n".s:line3."\n".s:line4."\n".s:line5 =~ '\n\s*emulate\s\+\%(-[LR]\s\+\)\=[ckz]\=sh\>' | |
168 set ft=zsh | 173 set ft=zsh |
169 | 174 |
170 " ELM Mail files | 175 " ELM Mail files |
171 elseif s:line1 =~ '^From \([a-zA-Z][a-zA-Z_0-9\.=-]*\(@[^ ]*\)\=\|-\) .* \(19\|20\)\d\d$' | 176 elseif s:line1 =~ '^From \([a-zA-Z][a-zA-Z_0-9\.=-]*\(@[^ ]*\)\=\|-\) .* \(19\|20\)\d\d$' |
172 set ft=mail | 177 set ft=mail |
316 " Scheme scripts | 321 " Scheme scripts |
317 elseif s:line1 =~ 'exec\s\+\S*scheme' || s:line2 =~ 'exec\s\+\S*scheme' | 322 elseif s:line1 =~ 'exec\s\+\S*scheme' || s:line2 =~ 'exec\s\+\S*scheme' |
318 set ft=scheme | 323 set ft=scheme |
319 | 324 |
320 " Git output | 325 " Git output |
321 elseif s:line1 =~ '^\(commit\|tree\|object\) \x\{40\}$\|^tag \S\+$' | 326 elseif s:line1 =~ '^\(commit\|tree\|object\) \x\{40\}\>\|^tag \S\+$' |
322 set ft=git | 327 set ft=git |
323 | 328 |
324 " CVS diff | 329 " CVS diff |
325 else | 330 else |
326 let lnum = 1 | 331 let s:lnum = 1 |
327 while getline(lnum) =~ "^? " && lnum < line("$") | 332 while getline(s:lnum) =~ "^? " && s:lnum < line("$") |
328 let lnum = lnum + 1 | 333 let s:lnum += 1 |
329 endwhile | 334 endwhile |
330 if getline(lnum) =~ '^Index:\s\+\f\+$' | 335 if getline(s:lnum) =~ '^Index:\s\+\f\+$' |
331 set ft=diff | 336 set ft=diff |
332 | 337 |
333 " locale input files: Formal Definitions of Cultural Conventions | 338 " locale input files: Formal Definitions of Cultural Conventions |
334 " filename must be like en_US, fr_FR@euro or en_US.UTF-8 | 339 " filename must be like en_US, fr_FR@euro or en_US.UTF-8 |
335 elseif expand("%") =~ '\a\a_\a\a\($\|[.@]\)\|i18n$\|POSIX$\|translit_' | 340 elseif expand("%") =~ '\a\a_\a\a\($\|[.@]\)\|i18n$\|POSIX$\|translit_' |
336 let lnum = 1 | 341 let s:lnum = 1 |
337 while lnum < 100 && lnum < line("$") | 342 while s:lnum < 100 && s:lnum < line("$") |
338 if getline(lnum) =~ '^LC_\(IDENTIFICATION\|CTYPE\|COLLATE\|MONETARY\|NUMERIC\|TIME\|MESSAGES\|PAPER\|TELEPHONE\|MEASUREMENT\|NAME\|ADDRESS\)$' | 343 if getline(s:lnum) =~ '^LC_\(IDENTIFICATION\|CTYPE\|COLLATE\|MONETARY\|NUMERIC\|TIME\|MESSAGES\|PAPER\|TELEPHONE\|MEASUREMENT\|NAME\|ADDRESS\)$' |
339 setf fdcc | 344 setf fdcc |
340 break | 345 break |
341 endif | 346 endif |
342 let lnum = lnum + 1 | 347 let s:lnum += 1 |
343 endwhile | 348 endwhile |
344 endif | 349 endif |
350 unlet s:lnum | |
345 | 351 |
346 endif | 352 endif |
347 | 353 |
348 unlet s:line2 s:line3 s:line4 s:line5 | 354 unlet s:line2 s:line3 s:line4 s:line5 |
349 | 355 |