Mercurial > vim
diff runtime/filetype.vim @ 1125:96cd8222a819
updated for version 7.1a
author | vimboss |
---|---|
date | Sat, 05 May 2007 18:24:42 +0000 |
parents | b933657f7c9d |
children | aea597af5b4e |
line wrap: on
line diff
--- a/runtime/filetype.vim +++ b/runtime/filetype.vim @@ -1,7 +1,7 @@ " Vim support file to detect file types " " Maintainer: Bram Moolenaar <Bram@vim.org> -" Last Change: 2006 May 02 +" Last Change: 2007 Apr 26 " Listen very carefully, I will say this only once if exists("did_load_filetypes") @@ -88,6 +88,11 @@ au BufNewFile,BufRead *.wrm setf acedb " Ada (83, 9X, 95) au BufNewFile,BufRead *.adb,*.ads,*.ada setf ada +if has("vms") + au BufNewFile,BufRead *.gpr,*.ada_m,*.adc setf ada +else + au BufNewFile,BufRead *.gpr setf ada +endif " AHDL au BufNewFile,BufRead *.tdf setf ahdl @@ -194,6 +199,9 @@ au BufNewFile,BufRead *.mar setf vmasm " Atlas au BufNewFile,BufRead *.atl,*.as setf atlas +" Autoit v3 +au BufNewFile,BufRead *.au3 setf autoit + " Automake au BufNewFile,BufRead [mM]akefile.am,GNUmakefile.am setf automake @@ -225,6 +233,12 @@ endfun " Visual Basic Script (close to Visual Basic) au BufNewFile,BufRead *.vbs,*.dsm,*.ctl setf vb +" IBasic file (similar to QBasic) +au BufNewFile,BufRead *.iba,*.ibi setf ibasic + +" FreeBasic file (similar to QBasic) +au BufNewFile,BufRead *.fb,*.bi setf freebasic + " Batch file for MSDOS. au BufNewFile,BufRead *.bat,*.sys setf dosbatch " *.cmd is close to a Batch file, but on OS/2 Rexx files also use *.cmd. @@ -303,6 +317,9 @@ au BufNewFile,BufRead cfengine.conf set " Comshare Dimension Definition Language au BufNewFile,BufRead *.cdl setf cdl +" Conary Recipe +au BufNewFile,BufRead *.recipe setf conaryrecipe + " Controllable Regex Mutilator au BufNewFile,BufRead *.crm setf crm @@ -436,6 +453,10 @@ au BufNewFile,BufRead *.prg " Cmake au BufNewFile,BufRead CMakeLists.txt,*.cmake,*.cmake.in setf cmake +" Cmusrc +au BufNewFile,BufRead ~/.cmus/{autosave,rc,command-history,*.theme} setf cmusrc +au BufNewFile,BufRead */cmus/{rc,*.theme} setf cmusrc + " Cobol au BufNewFile,BufRead *.cbl,*.cob,*.lib setf cobol " cobol or zope form controller python script? (heuristic) @@ -614,7 +635,10 @@ au BufNewFile,BufRead *.mas,*.master se au BufNewFile,BufRead *.fs,*.ft setf forth " Fortran -au BufNewFile,BufRead *.f,*.F,*.for,*.fpp,*.FPP,*.ftn,*.f77,*.F77,*.f90,*.F90,*.f95,*.F95 setf fortran +if has("fname_case") + au BufNewFile,BufRead *.F,*.FOR,*.FPP,*.FTN,*.F77,*.F90,*.F95 setf fortran +endif +au BufNewFile,BufRead *.f,*.for,*.fpp,*.ftn,*.f77,*.f90,*.f95 setf fortran " FStab au BufNewFile,BufRead fstab,mtab setf fstab @@ -660,6 +684,9 @@ au BufNewFile,BufRead /etc/group setf g " GTK RC au BufNewFile,BufRead .gtkrc,gtkrc setf gtkrc +" Hamster Classic | Playground files +au BufNewFile,BufRead *.hsc,*.hsm setf hamster + " Haskell au BufNewFile,BufRead *.hs setf haskell au BufNewFile,BufRead *.lhs setf lhaskell @@ -744,8 +771,11 @@ au BufNewFile,BufRead .indent.pro setf " Inform au BufNewFile,BufRead *.inf,*.INF setf inform +" Initng +au BufNewFile,BufRead /etc/initng/**/*.i,*.ii setf initng + " Ipfilter -au BufNewFile,BufRead ipf.conf,ipf.rules setf ipfilter +au BufNewFile,BufRead ipf.conf,ipf6.conf,ipf.rules setf ipfilter " Informix 4GL (source - canonical, include file, I4GL+M4 preproc.) au BufNewFile,BufRead *.4gl,*.4gh,*.m4gl setf fgl @@ -771,8 +801,8 @@ au BufNewFile,BufRead *.java,*.jav setf " JavaCC au BufNewFile,BufRead *.jj,*.jjt setf javacc -" JavaScript -au BufNewFile,BufRead *.js,*.javascript setf javascript +" JavaScript, ECMAScript +au BufNewFile,BufRead *.js,*.javascript,*.es setf javascript " Java Server Pages au BufNewFile,BufRead *.jsp setf jsp @@ -876,7 +906,7 @@ au BufNewFile,BufRead *.m4 " MaGic Point au BufNewFile,BufRead *.mgp setf mgp -" Mail (for Elm, trn, mutt, rn, slrn) +" Mail (for Elm, trn, mutt, muttng, rn, slrn) au BufNewFile,BufRead snd.\d\+,.letter,.letter.\d\+,.followup,.article,.article.\d\+,pico.\d\+,mutt{ng,}-*-\w\+,mutt\w\{6\},ae\d\+.txt,/tmp/SLRN[0-9A-Z.]\+,*.eml setf mail " Mail aliases @@ -934,6 +964,9 @@ endfun " Maya Extension Language au BufNewFile,BufRead *.mel setf mel +" Messages +au BufNewFile,BufRead /var/log/messages,/var/log/messages.*[0-9] setf messages + " Metafont au BufNewFile,BufRead *.mf setf mf @@ -1015,7 +1048,7 @@ au BufRead,BufNewFile *.mu setf mupad " Mush au BufNewFile,BufRead *.mush setf mush -" Mutt setup file +" Mutt setup file (also for Muttng) au BufNewFile,BufRead Mutt{ng,}rc setf muttrc au BufNewFile,BufRead .mutt{ng,}rc*,*/.mutt{ng,}/mutt{ng,}rc* call s:StarSetf('muttrc') @@ -1232,6 +1265,9 @@ au BufNewFile,BufRead *.it,*.ih setf p " Oracle Pro*C/C++ au BufNewFile,BufRead .pc setf proc +" Privoxy actions file +au BufNewFile,BufRead *.action setf privoxy + " Procmail au BufNewFile,BufRead .procmail,.procmailrc setf procmail @@ -1371,31 +1407,31 @@ endif au BufNewFile,BufRead *.r,*.R call s:FTr() fun! s:FTr() - if getline(1) =~ '^REBOL' - setf rebol - else - let n = 1 - let max = line("$") - if max > 50 - let max = 50 + let max = line("$") > 50 ? 50 : line("$") + + for n in range(1, max) + " Rebol is easy to recognize, check for that first + if getline(n) =~ '\<REBOL\>' + setf rebol + return endif - while n < max - " R has # comments - if getline(n) =~ '^\s*#' - setf r - break - endif - " Rexx has /* comments */ - if getline(n) =~ '^\s*/\*' - setf rexx - break - endif - let n = n + 1 - endwhile - if n >= max + endfor + + for n in range(1, max) + " R has # comments + if getline(n) =~ '^\s*#' + setf r + return + endif + " Rexx has /* comments */ + if getline(n) =~ '^\s*/\*' setf rexx + return endif - endif + endfor + + " Nothing recognized, assume Rexx + setf rexx endfun " Remind @@ -1443,6 +1479,9 @@ au BufNewFile,BufRead *.sa setf sather " Scilab au BufNewFile,BufRead *.sci,*.sce setf scilab +" SD: Streaming Descriptors +au BufNewFile,BufRead *.sd setf sd + " SDL au BufNewFile,BufRead *.sdl,*.pr setf sdl @@ -1922,6 +1961,9 @@ au BufNewFile,BufRead *.web " Windows Scripting Host and Windows Script Component au BufNewFile,BufRead *.ws[fc] setf wsh +" XHTML +au BufNewFile,BufRead *.xhtml,*.xht setf xhtml + " X Pixmap (dynamically sets colors, use BufEnter to make it work better) au BufEnter *.xpm \ if getline(1) =~ "XPM2" | @@ -1973,6 +2015,9 @@ au BufNewFile,BufRead *.csproj,*.csproj. " Qt Linguist translation source and Qt User Interface Files are XML au BufNewFile,BufRead *.ts,*.ui setf xml +" TPM's are RDF-based descriptions of TeX packages (Nikolai Weibull) +au BufNewFile,BufRead *.tpm setf xml + " Xdg menus au BufNewFile,BufRead /etc/xdg/menus/*.menu setf xml @@ -2052,6 +2097,9 @@ au StdinReadPost * if !did_filetype() | au BufNewFile,BufRead *asterisk/*.conf* call s:StarSetf('asterisk') au BufNewFile,BufRead *asterisk*/*voicemail.conf* call s:StarSetf('asteriskvm') +" Bazaar version control +au BufNewFile,BufRead bzr_log.* setf bzr + " BIND zone au BufNewFile,BufRead */named/db.*,*/bind/db.* call s:StarSetf('bindzone') @@ -2073,6 +2121,7 @@ au BufNewFile,BufRead /etc/apt/sources.l au BufNewFile,BufRead drac.* call s:StarSetf('dracula') " Fvwm +au BufNewFile,BufRead */.fvwm/* call s:StarSetf('fvwm') au BufNewFile,BufRead *fvwmrc*,*fvwm95*.hook \ let b:fvwm_version = 1 | call s:StarSetf('fvwm') au BufNewFile,BufRead *fvwm2rc*