# HG changeset patch # User vimboss # Date 1214424815 0 # Node ID 58cad056e60844274b103ff3fdb56d7a6749b121 # Parent 484fb4dfd45216f6539f79e5309669a7866654d1 updated for version 7.2a-00 diff --git a/Contents b/Contents --- a/Contents +++ b/Contents @@ -9,10 +9,10 @@ Vim Vi IMproved. A clone of the UNIX t messages, shows current file name in window title, on-line help, rectangular cut/paste, etc., etc., etc... - Version 7.1. Also runs under UNIX, MSDOS and other systems. - vim71rt.tgz contains the documentation and syntax files. - vim71bin.tgz contains the binaries. - vim71src.tgz contains the sources. + Version 7.2a. Also runs under UNIX, MSDOS and other systems. + vim72art.tgz contains the documentation and syntax files. + vim72abin.tgz contains the binaries. + vim72asrc.tgz contains the sources. Author: Bram Moolenaar et al. diff --git a/Filelist b/Filelist --- a/Filelist +++ b/Filelist @@ -137,6 +137,7 @@ SRC_UNIX = \ pixmaps/gen-inline-pixbufs.sh \ pixmaps/stock_icons.h \ src/INSTALL \ + src/INSTALLx.txt \ src/Makefile \ src/auto/configure \ src/config.aap.in \ @@ -250,6 +251,7 @@ SRC_DOS = \ src/Make_w16.mak \ src/bigvim.bat \ src/msvcsetup.bat \ + src/msvc2008.bat \ src/dimm.idl \ src/dlldata.c \ src/dosinst.c \ @@ -671,17 +673,9 @@ LANG_GEN = \ runtime/keymap/*.vim \ runtime/tutor/README.*.txt \ runtime/tutor/Makefile \ + runtime/tutor/tutor.utf-8 \ runtime/tutor/tutor.?? \ - runtime/tutor/tutor.cs.* \ - runtime/tutor/tutor.gr.* \ - runtime/tutor/tutor.hu.* \ - runtime/tutor/tutor.ja.* \ - runtime/tutor/tutor.ko.* \ - runtime/tutor/tutor.pl.* \ - runtime/tutor/tutor.ru.* \ - runtime/tutor/tutor.sk.* \ - runtime/tutor/tutor.tr.* \ - runtime/tutor/tutor.zh.* \ + runtime/tutor/tutor.??.* \ runtime/spell/README.txt \ runtime/spell/??/*.diff \ runtime/spell/??/main.aap \ diff --git a/Makefile b/Makefile --- a/Makefile +++ b/Makefile @@ -69,7 +69,7 @@ all install uninstall tools config confi # Before creating an archive first delete all backup files, *.orig, etc. MAJOR = 7 -MINOR = 1 +MINOR = 2a # Uncomment this line if the Win32s version is to be included. DOSBIN_S = dosbin_s @@ -87,8 +87,8 @@ DOSBIN_S = dosbin_s # ignore warnings for missing include files, fix problems for syntax errors). # - With these features: "make depend" (works best with gcc). # - "make lint" and check the output (ignore GTK warnings). -# - Enable the efence library in "src/Makefile" and run "make test". May -# require disabling Python and Ruby to avoid trouble with threads. +# - Enable the efence library in "src/Makefile" and run "make test". Disable +# Python and Ruby to avoid trouble with threads (efence is not threadsafe). # - Check for missing entries in runtime/makemenu.vim (with checkmenu script). # - Check for missing options in runtime/optwin.vim et al. (with check.vim). # - Do "make menu" to update the runtime/synmenu.vim file. @@ -120,17 +120,20 @@ DOSBIN_S = dosbin_s # - "bmake -f Make_bc3.mak BOR=E:\borlandc" (compiling xxd might fail, in that # case set environment for compiling with Borland C++ 4.0 and do # "make -f make_bc3.mak BOR=E:\BC4 xxd/xxd.exe"). +# NOTE: this currently fails because Vim is too big. # - "make test" and check the output. # - Rename the executables to "vimd16.exe", "xxdd16.exe", "installd16.exe" and # "uninstald16.exe". # 32 bit DOS version: # - Set environment for compiling with DJGPP; "gmake -f Make_djg.mak". -# - "rm testdir/*.out", "gmake -f Make_djg.mak test" and check the output. +# - "rm testdir/*.out", "gmake -f Make_djg.mak test" and check the output for +# "ALL DONE". # - Rename the executables to "vimd32.exe", "xxdd32.exe", "installd32.exe" and # "uninstald32.exe". # Win32 console version: -# - Set environment for Visual C++ Toolkit 2003: "msvcsetup.bat" (adjust the -# paths when necessary). +# - Set environment for Visual C++ 2008 Express Edition: "msvc2008.bat". Or, +# when using the Visual C++ Toolkit 2003: "msvcsetup.bat" (adjust the paths +# when necessary). # - "nmake -f Make_mvc.mak" # - "rm testdir/*.out", "nmake -f Make_mvc.mak test" and check the output. # - Rename the executables to "vimw32.exe", "xxdw32.exe". diff --git a/README.txt b/README.txt --- a/README.txt +++ b/README.txt @@ -1,4 +1,4 @@ -README.txt for version 7.1 of Vim: Vi IMproved. +README.txt for version 7.2a of Vim: Vi IMproved. WHAT IS VIM @@ -133,9 +133,6 @@ MAIN AUTHOR Send any other comments, patches, pizza and suggestions to: Bram Moolenaar E-mail: Bram@vim.org - Molenstraat 2 - 2161 HP Lisse - The Netherlands - -This is the address of my parents, they will forward mail and eat the pizza. -My actual address will change a couple of times in 2006. + Finsterruetihof 1 + 8134 Adliswil + Switzerland diff --git a/README_ami.txt b/README_ami.txt --- a/README_ami.txt +++ b/README_ami.txt @@ -1,4 +1,4 @@ -README_ami.txt for version 7.1 of Vim: Vi IMproved. +README_ami.txt for version 7.2a of Vim: Vi IMproved. This file explains the installation of Vim on Amiga systems. See README.txt for general information about Vim. diff --git a/README_amibin.txt b/README_amibin.txt --- a/README_amibin.txt +++ b/README_amibin.txt @@ -1,4 +1,4 @@ -README_amibin.txt for version 7.1 of Vim: Vi IMproved. +README_amibin.txt for version 7.2a of Vim: Vi IMproved. See "README.txt" for general information about Vim. See "README_ami.txt" for installation instructions for the Amiga. diff --git a/README_amisrc.txt b/README_amisrc.txt --- a/README_amisrc.txt +++ b/README_amisrc.txt @@ -1,4 +1,4 @@ -README_amisrc.txt for version 7.1 of Vim: Vi IMproved. +README_amisrc.txt for version 7.2a of Vim: Vi IMproved. See "README.txt" for general information about Vim. See "README_ami.txt" for installation instructions for the Amiga. diff --git a/README_bindos.txt b/README_bindos.txt --- a/README_bindos.txt +++ b/README_bindos.txt @@ -1,4 +1,4 @@ -README_bindos.txt for version 7.1 of Vim: Vi IMproved. +README_bindos.txt for version 7.2a of Vim: Vi IMproved. See "README.txt" for general information about Vim. See "README_dos.txt" for installation instructions for MS-DOS and MS-Windows. diff --git a/README_dos.txt b/README_dos.txt --- a/README_dos.txt +++ b/README_dos.txt @@ -1,4 +1,4 @@ -README_dos.txt for version 7.1 of Vim: Vi IMproved. +README_dos.txt for version 7.2a of Vim: Vi IMproved. This file explains the installation of Vim on MS-DOS and MS-Windows systems. See "README.txt" for general information about Vim. diff --git a/README_extra.txt b/README_extra.txt --- a/README_extra.txt +++ b/README_extra.txt @@ -1,4 +1,4 @@ -README_extra.txt for version 7.1 of Vim: Vi IMproved. +README_extra.txt for version 7.2a of Vim: Vi IMproved. The extra archive of Vim is to be used in combination with the source archive (vim-7.0-src.tar.gz). The extra archive is useless without it. diff --git a/README_lang.txt b/README_lang.txt --- a/README_lang.txt +++ b/README_lang.txt @@ -1,4 +1,4 @@ -README_lang.txt for version 7.1 of Vim: Vi IMproved. +README_lang.txt for version 7.2a of Vim: Vi IMproved. This file contains files for non-English languages: - Translated messages. diff --git a/README_mac.txt b/README_mac.txt --- a/README_mac.txt +++ b/README_mac.txt @@ -1,4 +1,4 @@ -README_mac.txt for version 7.1 of Vim: Vi IMproved. +README_mac.txt for version 7.2a of Vim: Vi IMproved. This file explains the installation of Vim on Macintosh systems. See "README.txt" for general information about Vim. diff --git a/README_ole.txt b/README_ole.txt --- a/README_ole.txt +++ b/README_ole.txt @@ -1,4 +1,4 @@ -README_ole.txt for version 7.1 of Vim: Vi IMproved. +README_ole.txt for version 7.2a of Vim: Vi IMproved. This archive contains gvim.exe with OLE interface and VisVim. This version of gvim.exe can also load a number of interface dynamically (you diff --git a/README_os2.txt b/README_os2.txt --- a/README_os2.txt +++ b/README_os2.txt @@ -1,4 +1,4 @@ -README_os2.txt for version 7.1 of Vim: Vi IMproved. +README_os2.txt for version 7.2a of Vim: Vi IMproved. This file explains the installation of Vim on OS/2 systems. See "README.txt" for general information about Vim. diff --git a/README_os390.txt b/README_os390.txt --- a/README_os390.txt +++ b/README_os390.txt @@ -1,4 +1,4 @@ -README_os_390.txt for version 7.1 of Vim: Vi IMproved. +README_os_390.txt for version 7.2a of Vim: Vi IMproved. Welcome to the OS/390 Unix port of VIM. diff --git a/README_src.txt b/README_src.txt --- a/README_src.txt +++ b/README_src.txt @@ -1,4 +1,4 @@ -README_src.txt for version 7.1 of Vim: Vi IMproved. +README_src.txt for version 7.2a of Vim: Vi IMproved. The source archive contains the files needed to compile Vim on Unix systems. It is packed for Unix systems (NL line separator). It is also used for other diff --git a/README_srcdos.txt b/README_srcdos.txt --- a/README_srcdos.txt +++ b/README_srcdos.txt @@ -1,4 +1,4 @@ -README_srcdos.txt for version 7.1 of Vim: Vi IMproved. +README_srcdos.txt for version 7.2a of Vim: Vi IMproved. See "README.txt" for general information about Vim. See "README_dos.txt" for installation instructions for MS-DOS and MS-Windows. diff --git a/README_unix.txt b/README_unix.txt --- a/README_unix.txt +++ b/README_unix.txt @@ -1,4 +1,4 @@ -README_unix.txt for version 7.1 of Vim: Vi IMproved. +README_unix.txt for version 7.2a of Vim: Vi IMproved. This file explains the installation of Vim on Unix systems. See "README.txt" for general information about Vim. diff --git a/README_vms.txt b/README_vms.txt --- a/README_vms.txt +++ b/README_vms.txt @@ -1,4 +1,4 @@ -README_vms.txt for version 7.1 of Vim: Vi IMproved. +README_vms.txt for version 7.2a of Vim: Vi IMproved. This file explains the installation of Vim on VMS systems. See "README.txt" in the runtime archive for information about Vim. diff --git a/README_w32s.txt b/README_w32s.txt --- a/README_w32s.txt +++ b/README_w32s.txt @@ -1,4 +1,4 @@ -README_w32s.txt for version 7.1 of Vim: Vi IMproved. +README_w32s.txt for version 7.2a of Vim: Vi IMproved. This archive contains the gvim.exe that was specifically compiled for use in the Win32s subsystem in MS-Windows 3.1 and 3.11. diff --git a/runtime/doc/ada.txt b/runtime/doc/ada.txt deleted file mode 100644 --- a/runtime/doc/ada.txt +++ /dev/null @@ -1,515 +0,0 @@ -*ada.txt* For Vim version 7.1. Last change: 2007 May 08 - - - ADA FILE TYPE PLUG-INS REFERENCE MANUAL~ - -ADA *ada.vim* - -1. Syntax Highlighting |ft-ada-syntax| -2. Plug-in |ft-ada-plugin| -3. Omni Completion |ft-ada-omni| - 3.1 Omni Completion with "gnat xref" |gnat-xref| - 3.2 Omni Completion with "ctags" |ada-ctags| -4. Compiler Support |ada-compiler| - 4.1 GNAT |compiler-gnat| - 4.1 Dec Ada |compiler-decada| -5. References |ada-reference| - 5.1 Options |ft-ada-options| - 5.2 Functions |ft-ada-functions| - 5.3 Commands |ft-ada-commands| - 5.4 Variables |ft-ada-variables| - 5.5 Constants |ft-ada-constants| -8. Extra Plug-ins |ada-extra-plugins| - -============================================================================== -1. Syntax Highlighting ~ - *ft-ada-syntax* - -This mode is designed for the 2005 edition of Ada ("Ada 2005"), which includes -support for objected-programming, protected types, and so on. It handles code -written for the original Ada language ("Ada83", "Ada87", "Ada95") as well, -though code which uses Ada 2005-only keywords will be wrongly colored (such -code should be fixed anyway). For more information about Ada, see -http://www.adapower.com. - -The Ada mode handles a number of situations cleanly. - -For example, it knows that the "-" in "-5" is a number, but the same character -in "A-5" is an operator. Normally, a "with" or "use" clause referencing -another compilation unit is coloured the same way as C's "#include" is coloured. -If you have "Conditional" or "Repeat" groups coloured differently, then "end -if" and "end loop" will be coloured as part of those respective groups. - -You can set these to different colours using vim's "highlight" command (e.g., -to change how loops are displayed, enter the command ":hi Repeat" followed by -the colour specification; on simple terminals the colour specification -ctermfg=White often shows well). - -There are several options you can select in this Ada mode. See|ft-ada-options| -for a complete list. - -To enable them, assign a value to the option. For example, to turn one on: - > - > let g:ada_standard_types = 1 -> -To disable them use ":unlet". Example: -> - > unlet g:ada_standard_types - -You can just use ":" and type these into the command line to set these -temporarily before loading an Ada file. You can make these option settings -permanent by adding the "let" command(s), without a colon, to your "~/.vimrc" -file. - -Even on a slow (90Mhz) PC this mode works quickly, but if you find the -performance unacceptable, turn on |g:ada_withuse_ordinary|. - -Syntax folding instructions (|fold-syntax|) are added when |g:ada_folding| is -set. - -============================================================================== -2. File type Plug-in ~ - *ft-ada-indent* *ft-ada-plugin* - -The Ada plug-in provides support for: - - - auto indenting (|indent.txt|) - - insert completion (|i_CTRL-N|) - - user completion (|i_CTRL-X_CTRL-U|) - - tag searches (|tagsrch.txt|) - - Quick Fix (|quickfix.txt|) - - backspace handling (|'backspace'|) - - comment handling (|'comments'|, |'commentstring'|) - -The plug-in only activates the features of the Ada mode whenever an Ada -files is opened and add adds Ada related entries to the main and pop-up menu. - -============================================================================== -3. Omni Completion ~ - *ft-ada-omni* - -The Ada omni-completions (|i_CTRL-X_CTRL-O|) uses tags database created either -by "gnat xref -v" or the "exuberant Ctags (http://ctags.sourceforge.net). The -complete function will automatically detect which tool was used to create the -tags file. - ------------------------------------------------------------------------------- -3.1 Omni Completion with "gnat xref" ~ - *gnat-xref* - -GNAT XREF uses the compiler internal informations (ali-files) to produce the -tags file. This has the advantage to be 100% correct and the option of deep -nested analysis. However the code must compile, the generator is quite -slow and the created tags file contains only the basic Ctags informations for -each entry - not enough for some of the more advanced Vim code browser -plug-ins. - -NOTE: "gnat xref -v" is very tricky to use as it has almost no diagnostic - output - If nothing is printed then usually the parameters are wrong. - Here some important tips: - -1) You need to compile your code first and use the "-aO" option to point to - your .ali files. -2) "gnat xref -v ../Include/adacl.ads" won't work - use the "gnat xref -v - -aI../Include adacl.ads" instead. -3) "gnat xref -v -aI../Include *.ad?" won't work - use "cd ../Include" and - then "gnat xref -v *.ad?" -4) Project manager support is completely broken - don't even try "gnat xref - -Padacl.gpr". -5) VIM is faster when the tags file is sorted - use "sort --unique - --ignore-case --output=tags tags" . -6) Remember to insert "!_TAG_FILE_SORTED 2 %sort ui" as first line to mark - the file assorted. - ------------------------------------------------------------------------------- -3.2 Omni Completion with "ctags"~ - *ada-ctags* - -Exuberant Ctags uses its own multi-language code parser. The parser is quite -fast, produces a lot of extra informations (hence the name "Exuberant Ctags") -and can run on files which currently do not compile. - -There are also lots of other Vim-tools which use exuberant Ctags. - -You will need to install a version of the Exuberant Ctags which has Ada -support patched in. Such a version is available from the GNU Ada Project -(http://gnuada.sourceforge.net). - -The Ada parser for Exuberant Ctags is fairly new - don't expect complete -support yet. - -============================================================================== -4. Compiler Support ~ - *ada-compiler* - -The Ada mode supports more then one Ada compiler and will automatically load the -compiler set in|g:ada_default_compiler|whenever an Ada source is opened. The -provided compiler plug-ins are split into the actual compiler plug-in and a -collection of support functions and variables. This allows the easy -development of specialized compiler plug-ins fine tuned to your development -environment. - ------------------------------------------------------------------------------- -4.1 GNAT ~ - *compiler-gnat* - -GNAT is the only free (beer and speech) Ada compiler available. There are -several version available which differentiate in the licence terms used. - -The GNAT compiler plug-in will perform a compile on pressing and then -immediately shows the result. You can set the project file to be used by -setting: - > - > call g:gnat.Set_Project_File ('my_project.gpr') - -Setting a project file will also create a Vim session (|views-sessions|) so - -like with the GPS - opened files, window positions etc. will remembered -separately for all projects. - - *gnat_members* -GNAT OBJECT ~ - - *g:gnat.Make()* -g:gnat.Make() - Calls|g:gnat.Make_Command|and displays the result inside a - |quickfix| window. - - *g:gnat.Pretty()* -g:gnat.Pretty() - Calls|g:gnat.Pretty_Command| - - *g:gnat.Find()* -g:gnat.Find() - Calls|g:gnat.Find_Command| - - *g:gnat.Tags()* -g:gnat.Tags() - Calls|g:gnat.Tags_Command| - - *g:gnat.Set_Project_File()* -g:gnat.Set_Project_File([{file}]) - Set gnat project file and load associated session. An open - project will be closed and the session written. If called - without file name the file selector opens for selection of a - project file. If called with an empty string then the project - and associated session are closed. - - *g:gnat.Project_File* -g:gnat.Project_File string - Current project file. - - *g:gnat.Make_Command* -g:gnat.Make_Command string - External command used for|g:gnat.Make()| (|'makeprg'|). - - *g:gnat.Pretty_Program* -g:gnat.Pretty_Program string - External command used for|g:gnat.Pretty()| - - *g:gnat.Find_Program* -g:gnat.Find_Program string - External command used for|g:gnat.Find()| - - *g:gnat.Tags_Command* -g:gnat.Tags_Command string - External command used for|g:gnat.Tags()| - - *g:gnat.Error_Format* -g:gnat.Error_Format string - Error format (|'errorformat'|) - ------------------------------------------------------------------------------- -4.2 Dec Ada ~ - *compiler-hpada* *compiler-decada* - *compiler-vaxada* *compiler-compaqada* - -Dec Ada (also known by - in chronological order - VAX Ada, Dec Ada, Compaq Ada -and HP Ada) is a fairly dated Ada 83 compiler. Support is basic: will -compile the current unit. - -The Dec Ada compiler expects the package name and not the file name to be -passed a parameter. The compiler plug-in supports the usual file name -convention to convert the file into a unit name. For separates both '-' and -'__' are allowed. - - *decada_members* -DEC ADA OBJECT ~ - - *g:decada.Make()* -g:decada.Make() function - Calls|g:decada.Make_Command|and displays the result inside a - |quickfix| window. - - *g:decada.Unit_Name()* -g:decada.Unit_Name() function - Get the Unit name for the current file. - - *g:decada.Make_Command* -g:decada.Make_Command string - External command used for|g:decadat.Make()| (|'makeprg'|). - - *g:decada.Error_Format* -g:decada.Error_Format| string - Error format (|'errorformat'|). - -============================================================================== -5. References ~ - *ada-reference* - ------------------------------------------------------------------------------- -5.1 Options ~ - *ft-ada-options* - - *g:ada_standard_types* -g:ada_standard_types bool (true when exists) - Highlight types in package Standard (e.g., "Float") - - *g:ada_space_errors* - *g:ada_no_trail_space_error* - *g:ada_no_tab_space_error* - *g:ada_all_tab_usage* -g:ada_space_errors bool (true when exists) - Highlight extraneous errors in spaces ... - g:ada_no_trail_space_error - - but ignore trailing spaces at the end of a line - g:ada_no_tab_space_error - - but ignore tabs after spaces - g:ada_all_tab_usage - - highlight all tab use - - *g:ada_line_errors* -g:ada_line_errors bool (true when exists) - Highlight lines which are to long. Note: This highlighting - option is quite CPU intensive. - - *g:ada_rainbow_color* -g:ada_rainbow_color bool (true when exists) - Use rainbow colours for '(' and ')'. You need the - rainbow_parenthesis for this to work - - *g:ada_folding* -g:ada_folding set ('sigpft') - Use folding for Ada sources. - 's': activate syntax folding on load - 'p': fold packages - 'f': fold functions and procedures - 't': fold types - 'c': fold conditionals - 'g': activate gnat pretty print folding on load - 'i': lone 'is' folded with line above - 'b': lone 'begin' folded with line above - 'p': lone 'private' folded with line above - 'x': lone 'exception' folded with line above - 'i': activate indent folding on load - - Note: Syntax folding is in an early (unusable) stage and - indent or gnat pretty folding is suggested. - - For gnat pretty folding to work the following settings are - suggested: -cl3 -M79 -c2 -c3 -c4 -A1 -A2 -A3 -A4 -A5 - - For indent folding to work the following settings are - suggested: shiftwidth=3 softtabstop=3 - - *g:ada_abbrev* -g:ada_abbrev bool (true when exists) - Add some abbreviations. This feature more or less superseded - by the various completion methods. - - *g:ada_withuse_ordinary* -g:ada_withuse_ordinary bool (true when exists) - Show "with" and "use" as ordinary keywords (when used to - reference other compilation units they're normally highlighted - specially). - - *g:ada_begin_preproc* -g:ada_begin_preproc bool (true when exists) - Show all begin-like keywords using the colouring of C - preprocessor commands. - - *g:ada_omni_with_keywords* -g:ada_omni_with_keywords - Add Keywords, Pragmas, Attributes to omni-completions - (|compl-omni|). Note: You can always complete then with user - completion (|i_CTRL-X_CTRL-U|). - - *g:ada_extended_tagging* -g:ada_extended_tagging enum ('jump', 'list') - use extended tagging, two options are available - 'jump': use tjump to jump. - 'list': add tags quick fix list. - Normal tagging does not support function or operator - overloading as these features are not available in C and - tagging was originally developed for C. - - *g:ada_extended_completion* -g:ada_extended_completion - Uses extended completion for and completions - (|i_CTRL-N|). In this mode the '.' is used as part of the - identifier so that 'Object.Method' or 'Package.Procedure' are - completed together. - - *g:ada_gnat_extensions* -g:ada_gnat_extensions bool (true when exists) - Support GNAT extensions. - - *g:ada_with_gnat_project_files* -g:ada_with_gnat_project_files bool (true when exists) - Add gnat project file keywords and Attributes. - - *g:ada_default_compiler* -g:ada_default_compiler string - set default compiler. Currently supported is 'gnat' and - 'decada'. - -An "exists" type is a boolean is considered true when the variable is defined -and false when the variable is undefined. The value which the variable is -set makes no difference. - ------------------------------------------------------------------------------- -5.3 Commands ~ - *ft-ada-commands* - -:AdaRainbow *:AdaRainbow* - Toggles rainbow colour (|g:ada_rainbow_color|) mode for - '(' and ')' - -:AdaLines *:AdaLines* - Toggles line error (|g:ada_line_errors|) display - -:AdaSpaces *:AdaSpaces* - Toggles space error (|g:ada_space_errors|) display. - -:AdaTagDir *:AdaTagDir* - Creates tags file for the directory of the current file. - -:AdaTagFile *:AdaTagFile* - Creates tags file for the current file. - -:AdaTypes *:AdaTypes* - Toggles standard types (|g:ada_standard_types|) colour. - -:GnatFind *:GnatFind* - Calls |g:gnat.Find()| - -:GnatPretty *:GnatPretty* - Calls |g:gnat.Pretty()| - -:GnatTags *:GnatTags* - Calls |g:gnat.Tags()| - ------------------------------------------------------------------------------- -5.3 Variables ~ - *ft-ada-variables* - - *g:gnat* -g:gnat object - Control object which manages GNAT compiles. The object - is created when the first Ada source code is loaded provided - that |g:ada_default_compiler|is set to 'gnat'. See|gnat_members| - for details. - - *g:decada* -g:decada object - Control object which manages Dec Ada compiles. The object - is created when the first Ada source code is loaded provided - that |g:ada_default_compiler|is set to 'decada'. See - |decada_members|for details. - ------------------------------------------------------------------------------- -5.4 Constants ~ - *ft-ada-constants* - -All constants are locked. See |:lockvar| for details. - - *g:ada#WordRegex* -g:ada#WordRegex string - Regular expression to search for Ada words - - *g:ada#DotWordRegex* -g:ada#DotWordRegex string - Regular expression to search for Ada words separated by dots. - - *g:ada#Comment* -g:ada#Comment string - Regular expression to search for Ada comments - - *g:ada#Keywords* -g:ada#Keywords list of dictionaries - List of keywords, attributes etc. pp. in the format used by - omni completion. See |complete-items| for details. - - *g:ada#Ctags_Kinds* -g:ada#Ctags_Kinds dictionary of lists - Dictionary of the various kinds of items which the Ada support - for Ctags generates. - ------------------------------------------------------------------------------- -5.2 Functions ~ - *ft-ada-functions* - -ada#Word([{line}, {col}]) *ada#Word()* - Return full name of Ada entity under the cursor (or at given - line/column), stripping white space/newlines as necessary. - -ada#List_Tag([{line}, {col}]) *ada#Listtags()* - List all occurrences of the Ada entity under the cursor (or at - given line/column) inside the quick-fix window - -ada#Jump_Tag ({ident}, {mode}) *ada#Jump_Tag()* - List all occurrences of the Ada entity under the cursor (or at - given line/column) in the tag jump list. Mode can either be - 'tjump' or 'stjump'. - -ada#Create_Tags ({option}) *ada#Create_Tags()* - Creates tag file using Ctags. The option can either be 'file' - for the current file, 'dir' for the directory of the current - file or a file name. - -gnat#Insert_Tags_Header() *gnat#Insert_Tags_Header()* - Adds the tag file header (!_TAG_) informations to the current - file which are missing from the GNAT XREF output. - -ada#Switch_Syntax_Option ({option}) *ada#Switch_Syntax_Option()* - Toggles highlighting options on or off. Used for the Ada menu. - - *gnat#New()* -gnat#New () - Create a new gnat object. See |g:gnat| for details. - - -============================================================================== -8. Extra Plugins ~ - *ada-extra-plugins* - -You can optionally install the following extra plug-in. They work well with Ada -and enhance the ability of the Ada mode.: - -backup.vim - http://www.vim.org/scripts/script.php?script_id=1537 - Keeps as many backups as you like so you don't have to. - -rainbow_parenthsis.vim - http://www.vim.org/scripts/script.php?script_id=1561 - Very helpful since Ada uses only '(' and ')'. - -nerd_comments.vim - http://www.vim.org/scripts/script.php?script_id=1218 - Excellent commenting and uncommenting support for almost any - programming language. - -matchit.vim - http://www.vim.org/scripts/script.php?script_id=39 - '%' jumping for any language. The normal '%' jump only works for '{}' - style languages. The Ada mode will set the needed search patters. - -taglist.vim - http://www.vim.org/scripts/script.php?script_id=273 - Source code explorer sidebar. There is a patch for Ada available. - -The GNU Ada Project distribution (http://gnuada.sourceforge.net) of Vim -contains all of the above. - -============================================================================== -vim: textwidth=78 nowrap tabstop=8 shiftwidth=4 softtabstop=4 noexpandtab -vim: filetype=help encoding=latin1 diff --git a/runtime/doc/sql.txt b/runtime/doc/sql.txt deleted file mode 100644 --- a/runtime/doc/sql.txt +++ /dev/null @@ -1,763 +0,0 @@ -*sql.txt* For Vim version 7.1. Last change: Wed Apr 26 2006 3:05:33 PM - -by David Fishburn - -This is a filetype plugin to work with SQL files. - -The Structured Query Language (SQL) is a standard which specifies statements -that allow a user to interact with a relational database. Vim includes -features for navigation, indentation and syntax highlighting. - -1. Navigation |sql-navigation| - 1.1 Matchit |sql-matchit| - 1.2 Text Object Motions |sql-object-motions| - 1.3 Predefined Object Motions |sql-predefined-objects| - 1.4 Macros |sql-macros| -2. SQL Dialects |sql-dialects| - 2.1 SQLSetType |SQLSetType| - 2.2 SQL Dialect Default |sql-type-default| -3. Adding new SQL Dialects |sql-adding-dialects| -4. OMNI SQL Completion |sql-completion| - 4.1 Static mode |sql-completion-static| - 4.2 Dynamic mode |sql-completion-dynamic| - 4.3 Tutorial |sql-completion-tutorial| - 4.3.1 Complete Tables |sql-completion-tables| - 4.3.2 Complete Columns |sql-completion-columns| - 4.3.3 Complete Procedures |sql-completion-procedures| - 4.3.4 Complete Views |sql-completion-views| - 4.4 Completion Customization |sql-completion-customization| - 4.5 SQL Maps |sql-completion-maps| - 4.6 Using with other filetypes |sql-completion-filetypes| - -============================================================================== -1. Navigation *sql-navigation* - -The SQL ftplugin provides a number of options to assist with file -navigation. - - -1.1 Matchit *sql-matchit* ------------ -The matchit plugin (http://www.vim.org/scripts/script.php?script_id=39) -provides many additional features and can be customized for different -languages. The matchit plugin is configured by defining a local -buffer variable, b:match_words. Pressing the % key while on various -keywords will move the cursor to its match. For example, if the cursor -is on an "if", pressing % will cycle between the "else", "elseif" and -"end if" keywords. - -The following keywords are supported: > - if - elseif | elsif - else [if] - end if - - [while condition] loop - leave - break - continue - exit - end loop - - for - leave - break - continue - exit - end loop - - do - statements - doend - - case - when - when - default - end case - - merge - when not matched - when matched - - create[ or replace] procedure|function|event - returns - - -1.2 Text Object Motions *sql-object-motions* ------------------------ -Vim has a number of predefined keys for working with text |object-motions|. -This filetype plugin attempts to translate these keys to maps which make sense -for the SQL language. - -The following |Normal| mode and |Visual| mode maps exist (when you edit a SQL -file): > - ]] move forward to the next 'begin' - [[ move backwards to the previous 'begin' - ][ move forward to the next 'end' - [] move backwards to the previous 'end' - - -1.3 Predefined Object Motions *sql-predefined-objects* ------------------------------ -Most relational databases support various standard features, tables, indices, -triggers and stored procedures. Each vendor also has a variety of proprietary -objects. The next set of maps have been created to help move between these -objects. Depends on which database vendor you are using, the list of objects -must be configurable. The filetype plugin attempts to define many of the -standard objects, plus many additional ones. In order to make this as -flexible as possible, you can override the list of objects from within your -|vimrc| with the following: > - let g:ftplugin_sql_objects = 'function,procedure,event,table,trigger' . - \ ',schema,service,publication,database,datatype,domain' . - \ ',index,subscription,synchronization,view,variable' - -The following |Normal| mode and |Visual| mode maps have been created which use -the above list: > - ]} move forward to the next 'create ' - [{ move backward to the previous 'create ' - -Repeatedly pressing ]} will cycle through each of these create statements: > - create table t1 ( - ... - ); - - create procedure p1 - begin - ... - end; - - create index i1 on t1 (c1); - -The default setting for g:ftplugin_sql_objects is: > - let g:ftplugin_sql_objects = 'function,procedure,event,' . - \ '\\(existing\\\\|global\\s\\+temporary\\s\\+\\)\\\{,1}' . - \ 'table,trigger' . - \ ',schema,service,publication,database,datatype,domain' . - \ ',index,subscription,synchronization,view,variable' - -The above will also handle these cases: > - create table t1 ( - ... - ); - create existing table t2 ( - ... - ); - create global temporary table t3 ( - ... - ); - -By default, the ftplugin only searches for CREATE statements. You can also -override this via your |vimrc| with the following: > - let g:ftplugin_sql_statements = 'create,alter' - -The filetype plugin defines three types of comments: > - 1. -- - 2. // - 3. /* - * - */ - -The following |Normal| mode and |Visual| mode maps have been created to work -with comments: > - ]" move forward to the beginning of a comment - [" move forward to the end of a comment - - - -1.4 Macros *sql-macros* ----------- -Vim's feature to find macro definitions, |'define'|, is supported using this -regular expression: > - \c\<\(VARIABLE\|DECLARE\|IN\|OUT\|INOUT\)\> - -This addresses the following code: > - CREATE VARIABLE myVar1 INTEGER; - - CREATE PROCEDURE sp_test( - IN myVar2 INTEGER, - OUT myVar3 CHAR(30), - INOUT myVar4 NUMERIC(20,0) - ) - BEGIN - DECLARE myVar5 INTEGER; - - SELECT c1, c2, c3 - INTO myVar2, myVar3, myVar4 - FROM T1 - WHERE c4 = myVar1; - END; - -Place your cursor on "myVar1" on this line: > - WHERE c4 = myVar1; - ^ - -Press any of the following keys: > - [d - [D - [CTRL-D - - -============================================================================== -2. SQL Dialects *sql-dialects* *sql-types* - *sybase* *TSQL* *Transact-SQL* - *sqlanywhere* - *oracle* *plsql* *sqlj* - *sqlserver* - *mysql* *postgres* *psql* - *informix* - -All relational databases support SQL. There is a portion of SQL that is -portable across vendors (ex. CREATE TABLE, CREATE INDEX), but there is a -great deal of vendor specific extensions to SQL. Oracle supports the -"CREATE OR REPLACE" syntax, column defaults specified in the CREATE TABLE -statement and the procedural language (for stored procedures and triggers). - -The default Vim distribution ships with syntax highlighting based on Oracle's -PL/SQL. The default SQL indent script works for Oracle and SQL Anywhere. -The default filetype plugin works for all vendors and should remain vendor -neutral, but extendable. - -Vim currently has support for a variety of different vendors, currently this -is via syntax scripts. Unfortunately, to flip between different syntax rules -you must either create: - 1. New filetypes - 2. Custom autocmds - 3. Manual steps / commands - -The majority of people work with only one vendor's database product, it would -be nice to specify a default in your |vimrc|. - - -2.1 SQLSetType *sqlsettype* *SQLSetType* --------------- -For the people that work with many different databases, it would be nice to be -able to flip between the various vendors rules (indent, syntax) on a per -buffer basis, at any time. The ftplugin/sql.vim file defines this function: > - SQLSetType - -Executing this function without any parameters will set the indent and syntax -scripts back to their defaults, see |sql-type-default|. If you have turned -off Vi's compatibility mode, |'compatible'|, you can use the key to -complete the optional parameter. - -After typing the function name and a space, you can use the completion to -supply a parameter. The function takes the name of the Vim script you want to -source. Using the |cmdline-completion| feature, the SQLSetType function will -search the |'runtimepath'| for all Vim scripts with a name containing 'sql'. -This takes the guess work out of the spelling of the names. The following are -examples: > - :SQLSetType - :SQLSetType sqloracle - :SQLSetType sqlanywhere - :SQLSetType sqlinformix - :SQLSetType mysql - -The easiest approach is to the use character which will first complete -the command name (SQLSetType), after a space and another , display a list -of available Vim script names: > - :SQL - - -2.2 SQL Dialect Default *sql-type-default* ------------------------ -As mentioned earlier, the default syntax rules for Vim is based on Oracle -(PL/SQL). You can override this default by placing one of the following in -your |vimrc|: > - let g:sql_type_default = 'sqlanywhere' - let g:sql_type_default = 'sqlinformix' - let g:sql_type_default = 'mysql' - -If you added the following to your |vimrc|: > - let g:sql_type_default = 'sqlinformix' - -The next time edit a SQL file the following scripts will be automatically -loaded by Vim: > - ftplugin/sql.vim - syntax/sqlinformix.vim - indent/sql.vim -> -Notice indent/sqlinformix.sql was not loaded. There is no indent file -for Informix, Vim loads the default files if the specified files does not -exist. - - -============================================================================== -3. Adding new SQL Dialects *sql-adding-dialects* - -If you begin working with a SQL dialect which does not have any customizations -available with the default Vim distribution you can check http://www.vim.org -to see if any customization currently exist. If not, you can begin by cloning -an existing script. Read |filetype-plugins| for more details. - -To help identify these scripts, try to create the files with a "sql" prefix. -If you decide you wish to create customizations for the SQLite database, you -can create any of the following: > - Unix - ~/.vim/syntax/sqlite.vim - ~/.vim/indent/sqlite.vim - Windows - $VIM/vimfiles/syntax/sqlite.vim - $VIM/vimfiles/indent/sqlite.vim - -No changes are necessary to the SQLSetType function. It will automatically -pickup the new SQL files and load them when you issue the SQLSetType command. - - -============================================================================== -4. OMNI SQL Completion *sql-completion* - *omni-sql-completion* - -Vim 7 includes a code completion interface and functions which allows plugin -developers to build in code completion for any language. Vim 7 includes -code completion for the SQL language. - -There are two modes to the SQL completion plugin, static and dynamic. The -static mode populates the popups with the data generated from current syntax -highlight rules. The dynamic mode populates the popups with data retrieved -directly from a database. This includes, table lists, column lists, -procedures names and more. - -4.1 Static Mode *sql-completion-static* ---------------- -The static popups created contain items defined by the active syntax rules -while editing a file with a filetype of SQL. The plugin defines (by default) -various maps to help the user refine the list of items to be displayed. -The defaults static maps are: > - imap a :call sqlcomplete#Map('syntax') - imap k :call sqlcomplete#Map('sqlKeyword') - imap f :call sqlcomplete#Map('sqlFunction') - imap o :call sqlcomplete#Map('sqlOption') - imap T :call sqlcomplete#Map('sqlType') - imap s :call sqlcomplete#Map('sqlStatement') - -The static maps (which are based on the syntax highlight groups) follow this -format: > - imap k :call sqlcomplete#Map('sqlKeyword') - -This command breaks down as: > - imap - Create an insert map - - Only for this buffer - k - Your choice of key map - - Execute one command, return to Insert mode - :call sqlcomplete#Map( - Allows the SQL completion plugin to perform some - housekeeping functions to allow it to be used in - conjunction with other completion plugins. - Indicate which item you want the SQL completion - plugin to complete. - In this case we are asking the plugin to display - items from the syntax highlight group - 'sqlKeyword'. - You can view a list of highlight group names to - choose from by executing the - :syntax list - command while editing a SQL file. - 'sqlKeyword' - Display the items for the sqlKeyword highlight - group - ) - Execute the :let command - - Trigger the standard omni completion key stroke. - Passing in 'sqlKeyword' instructs the SQL - completion plugin to populate the popup with - items from the sqlKeyword highlight group. The - plugin will also cache this result until Vim is - restarted. The syntax list is retrieved using - the syntaxcomplete plugin. - -Using the 'syntax' keyword is a special case. This instructs the -syntaxcomplete plugin to retrieve all syntax items. So this will effectively -work for any of Vim's SQL syntax files. At the time of writing this includes -10 different syntax files for the different dialects of SQL (see section 3 -above, |sql-dialects|). - -Here are some examples of the entries which are pulled from the syntax files: > - All - - Contains the contents of all syntax highlight groups - Statements - - Select, Insert, Update, Delete, Create, Alter, ... - Functions - - Min, Max, Trim, Round, Date, ... - Keywords - - Index, Database, Having, Group, With - Options - - Isolation_level, On_error, Qualify_owners, Fire_triggers, ... - Types - - Integer, Char, Varchar, Date, DateTime, Timestamp, ... - - -4.2 Dynamic Mode *sql-completion-dynamic* ----------------- -Dynamic mode populates the popups with data directly from a database. In -order for the dynamic feature to be enabled you must have the dbext.vim -plugin installed, (http://vim.sourceforge.net/script.php?script_id=356). - -Dynamic mode is used by several features of the SQL completion plugin. -After installing the dbext plugin see the dbext-tutorial for additional -configuration and usage. The dbext plugin allows the SQL completion plugin -to display a list of tables, procedures, views and columns. > - Table List - - All tables for all schema owners - Procedure List - - All stored procedures for all schema owners - View List - - All stored procedures for all schema owners - Column List - - For the selected table, the columns that are part of the table - -To enable the popup, while in INSERT mode, use the following key combinations -for each group (where means hold the CTRL key down while pressing -the space bar): - Table List - t - - (the default map assumes tables) - Stored Procedure List - p - View List - v - Column List - c - - Windows platform only - When viewing a popup window displaying the list - of tables, you can press , this will - replace the table currently highlighted with - the column list for that table. - - When viewing a popup window displaying the list - of columns, you can press , this will - replace the column list with the list of tables. - - This allows you to quickly drill down into a - table to view it's columns and back again. - -The SQL completion plugin caches various lists that are displayed in -the popup window. This makes the re-displaying of these lists very -fast. If new tables or columns are added to the database it may become -necessary to clear the plugins cache. The default map for this is: > - imap R :call sqlcomplete#Map('ResetCache') - - -4.3 SQL Tutorial *sql-completion-tutorial* ----------------- - -This tutorial is designed to take you through the common features of the SQL -completion plugin so that: > - a) You gain familiarity with the plugin - b) You are introduced to some of the more common features - c) Show how to customize it to your preferences - d) Demonstrate "Best of Use" of the plugin (easiest way to configure). - -First, create a new buffer: > - :e tutorial.sql - - -Static features ---------------- -To take you through the various lists, simply enter insert mode, hit: - s (show SQL statements) -At this point, you can page down through the list until you find "select". -If you are familiar with the item you are looking for, for example you know -the statement begins with the letter "s". You can type ahead (without the -quotes) "se" then press: - t -Assuming "select" is highlighted in the popup list press to choose -the entry. Now type: - * fra (show all syntax items) -choose "from" from the popup list. - -When writing stored procedures using the "type" list is useful. It contains -a list of all the database supported types. This may or may not be true -depending on the syntax file you are using. The SQL Anywhere syntax file -(sqlanywhere.vim) has support for this: > - BEGIN - DECLARE customer_id T <-- Choose a type from the list - - -Dynamic features ----------------- -To take advantage of the dynamic features you must first install the -dbext.vim plugin (http://vim.sourceforge.net/script.php?script_id=356). It -also comes with a tutorial. From the SQL completion plugin's perspective, -the main feature dbext provides is a connection to a database. dbext -connection profiles are the most efficient mechanism to define connection -information. Once connections have been setup, the SQL completion plugin -uses the features of dbext in the background to populate the popups. - -What follows assumes dbext.vim has been correctly configured, a simple test -is to run the command, :DBListTable. If a list of tables is shown, you know -dbext.vim is working as expected. If not, please consult the dbext.txt -documentation. - -Assuming you have followed the dbext-tutorial you can press t to -display a list of tables. There is a delay while dbext is creating the table -list. After the list is displayed press . This will remove both the -popup window and the table name already chosen when the list became active. > - - 4.3.1 Table Completion: *sql-completion-tables* - -Press t to display a list of tables from within the database you -have connected via the dbext plugin. -NOTE: All of the SQL completion popups support typing a prefix before pressing -the key map. This will limit the contents of the popup window to just items -beginning with those characters. > - - 4.3.2 Column Completion: *sql-completion-columns* - -The SQL completion plugin can also display a list of columns for particular -tables. The column completion is trigger via c. - -NOTE: The following example uses to trigger a column list while -the popup window is active. This map is only available on the Windows -platforms since *nix does not recognize CTRL and the right arrow held down -together. If you wish to enable this functionality on a *nix platform choose -a key and create one of these mappings (see |sql-completion-maps| for further -details on where to create this imap): > - imap =sqlcomplete#DrillIntoTable() - imap :call sqlcomplete#Map('column') - -Example of using column completion: - - Press t again to display the list of tables. - - When the list is displayed in the completion window, press , - this will replace the list of tables, with a list of columns for the - table highlighted (after the same short delay). - - If you press , this will again replace the column list with the - list of tables. This allows you to drill into tables and column lists - very quickly. - - Press again while the same table is highlighted. You will - notice there is no delay since the column list has been cached. If you - change the schema of a cached table you can press R, which - clears the SQL completion cache. - - NOTE: and have been designed to work while the - completion window is active. If the completion popup window is - not active, a normal or will be executed. - -Lets look how we can build a SQL statement dynamically. A select statement -requires a list of columns. There are two ways to build a column list using -the SQL completion plugin. > - One column at a time: -< 1. After typing SELECT press t to display a list of tables. - 2. Choose a table from the list. - 3. Press to display a list of columns. - 4. Choose the column from the list and press enter. - 5. Enter a "," and press c. Generating a column list - generally requires having the cursor on a table name. The plugin - uses this name to determine what table to retrieve the column list. - In this step, since we are pressing c without the cursor - on a table name the column list displayed will be for the previous - table. Choose a different column and move on. - 6. Repeat step 5 as often as necessary. > - All columns for a table: -< 1. After typing SELECT press t to display a list of tables. - 2. Highlight the table you need the column list for. - 3. Press to choose the table from the list. - 4. Press l to request a comma separated list of all columns - for this table. - 5. Based on the table name chosen in step 3, the plugin attempts to - decide on a reasonable table alias. You are then prompted to - either accept of change the alias. Press OK. - 6. The table name is replaced with the column list of the table is - replaced with the comma separate list of columns with the alias - prepended to each of the columns. - 7. Step 3 and 4 can be replaced by pressing L, which has - a embedded in the map to choose the currently highlighted - table in the list. - -There is a special provision when writing select statements. Consider the -following statement: > - select * - from customer c, - contact cn, - department as dp, - employee e, - site_options so - where c. - -In INSERT mode after typing the final "c." which is an alias for the -"customer" table, you can press either c or . This will -popup a list of columns for the customer table. It does this by looking back -to the beginning of the select statement and finding a list of the tables -specified in the FROM clause. In this case it notes that in the string -"customer c", "c" is an alias for the customer table. The optional "AS" -keyword is also supported, "customer AS c". > - - - 4.3.3 Procedure Completion: *sql-completion-procedures* - -Similar to the table list, p, will display a list of stored -procedures stored within the database. > - - 4.3.4 View Completion: *sql-completion-views* - -Similar to the table list, v, will display a list of views in the -database. - - -4.4 Completion Customization *sql-completion-customization* ----------------------------- - -The SQL completion plugin can be customized through various options set in -your |vimrc|: > - omni_sql_no_default_maps -< - Default: This variable is not defined - - If this variable is defined, no maps are created for OMNI - completion. See |sql-completion-maps| for further discussion. -> - omni_sql_use_tbl_alias -< - Default: a - - This setting is only used when generating a comma separated - column list. By default the map is l. When generating - a column list, an alias can be prepended to the beginning of each - column, for example: e.emp_id, e.emp_name. This option has three - settings: > - n - do not use an alias - d - use the default (calculated) alias - a - ask to confirm the alias name -< - An alias is determined following a few rules: - 1. If the table name has an '_', then use it as a separator: > - MY_TABLE_NAME --> MTN - my_table_name --> mtn - My_table_NAME --> MtN -< 2. If the table name does NOT contain an '_', but DOES use - mixed case then the case is used as a separator: > - MyTableName --> MTN -< 3. If the table name does NOT contain an '_', and does NOT - use mixed case then the first letter of the table is used: > - mytablename --> m - MYTABLENAME --> M - - omni_sql_ignorecase -< - Default: Current setting for|ignorecase| - - Valid settings are 0 or 1. - - When entering a few letters before initiating completion, the list - will be filtered to display only the entries which begin with the - list of characters. When this option is set to 0, the list will be - filtered using case sensitivity. > - - omni_sql_include_owner -< - Default: 0, unless dbext.vim 3.00 has been installed - - Valid settings are 0 or 1. - - When completing tables, procedure or views and using dbext.vim 3.00 - or higher the list of objects will also include the owner name. - When completing these objects and omni_sql_include_owner is enabled - the owner name will be replaced. > - - omni_sql_precache_syntax_groups -< - Default: - ['syntax','sqlKeyword','sqlFunction','sqlOption','sqlType','sqlStatement'] - - sqlcomplete can be used in conjunction with other completion - plugins. This is outlined at |sql-completion-filetypes|. When the - filetype is changed temporarily to SQL, the sqlcompletion plugin - will cache the syntax groups listed in the List specified in this - option. -> - -4.5 SQL Maps *sql-completion-maps* ------------- - -The default SQL maps have been described in other sections of this document in -greater detail. Here is a list of the maps with a brief description of each. - -Static Maps ------------ -These are maps which use populate the completion list using Vim's syntax -highlighting rules. > - a -< - Displays all SQL syntax items. > - k -< - Displays all SQL syntax items defined as 'sqlKeyword'. > - f -< - Displays all SQL syntax items defined as 'sqlFunction. > - o -< - Displays all SQL syntax items defined as 'sqlOption'. > - T -< - Displays all SQL syntax items defined as 'sqlType'. > - s -< - Displays all SQL syntax items defined as 'sqlStatement'. > - -Dynamic Maps ------------- -These are maps which use populate the completion list using the dbext.vim -plugin. > - t -< - Displays a list of tables. > - p -< - Displays a list of procedures. > - v -< - Displays a list of views. > - c -< - Displays a list of columns for a specific table. > - l -< - Displays a comma separated list of columns for a specific table. > - L -< - Displays a comma separated list of columns for a specific table. - This should only be used when the completion window is active. > - -< - Displays a list of columns for the table currently highlighted in - the completion window. is not recognized on most Unix - systems, so this maps is only created on the Windows platform. - If you would like the same feature on Unix, choose a different key - and make the same map in your vimrc. > - -< - Displays the list of tables. - is not recognized on most Unix systems, so this maps is - only created on the Windows platform. If you would like the same - feature on Unix, choose a different key and make the same map in - your vimrc. > - R -< - This maps removes all cached items and forces the SQL completion - to regenerate the list of items. - -Customizing Maps ----------------- -You can create as many additional key maps as you like. Generally, the maps -will be specifying different syntax highlight groups. - -If you do not wish the default maps created or the key choices do not work on -your platform (often a case on *nix) you define the following variable in -your |vimrc|: > - let g:omni_sql_no_default_maps = 1 - -Do no edit ftplugin/sql.vim directly! If you change this file your changes -will be over written on future updates. Vim has a special directory structure -which allows you to make customizations without changing the files that are -included with the Vim distribution. If you wish to customize the maps -create an after/ftplugin/sql.vim (see |after-directory|) and place the same -maps from the ftplugin/sql.vim in it using your own key strokes. was -chosen since it will work on both Windows and *nix platforms. On the windows -platform you can also use or ALT keys. - - -4.6 Using with other filetypes *sql-completion-filetypes* ------------------------------- - -Many times SQL can be used with different filetypes. For example Perl, Java, -PHP, Javascript can all interact with a database. Often you need both the SQL -completion as well as the completion capabilities for the current language you -are editing. - -This can be enabled easily with the following steps (assuming a Perl file): > - 1. :e test.pl - 2. :set filetype=sql - 3. :set ft=perl - -Step 1 ------- -Begins by editing a Perl file. Vim automatically sets the filetype to -"perl". By default, Vim runs the appropriate filetype file -ftplugin/perl.vim. If you are using the syntax completion plugin by following -the directions at |ft-syntax-omni| then the |'omnifunc'| option has been set to -"syntax#Complete". Pressing will display the omni popup containing -the syntax items for Perl. - -Step 2 ------- -Manually setting the filetype to 'sql' will also fire the appropriate filetype -files ftplugin/sql.vim. This file will define a number of buffer specific -maps for SQL completion, see |sql-completion-maps|. Now these maps have -been created and the SQL completion plugin has been initialized. All SQL -syntax items have been cached in preparation. The SQL filetype script detects -we are attempting to use two different completion plugins. Since the SQL maps -begin with , the maps will toggle the |'omnifunc'| when in use. So you -can use to continue using the completion for Perl (using the syntax -completion plugin) and to use the SQL completion features. - -Step 3 ------- -Setting the filetype back to Perl sets all the usual "perl" related items back -as they were. - - -vim:tw=78:ts=8:ft=help:norl: diff --git a/runtime/filetype.vim b/runtime/filetype.vim --- a/runtime/filetype.vim +++ b/runtime/filetype.vim @@ -1,7 +1,7 @@ " Vim support file to detect file types " " Maintainer: Bram Moolenaar -" Last Change: 2007 May 15 +" Last Change: 2008 Jun 20 " Listen very carefully, I will say this only once if exists("did_load_filetypes") @@ -320,6 +320,9 @@ au BufNewFile,BufRead *.cs setf cs " Cdrdao TOC au BufNewFile,BufRead *.toc setf cdrtoc +" Cdrdao config +au BufNewFile,BufRead etc/cdrdao.conf,etc/defaults/cdrdao,etc/default/cdrdao,~/.cdrdao setf cdrdaoconf + " Cfengine au BufNewFile,BufRead cfengine.conf setf cfengine @@ -349,12 +352,22 @@ else au BufNewFile,BufRead *.cxx,*.c++,*.hh,*.hxx,*.hpp,*.moc,*.tcc,*.inl setf cpp endif -" .h files can be C, Ch or C++, set c_syntax_for_h if you want C, -" ch_syntax_for_h if you want Ch. -au BufNewFile,BufRead *.h - \ if exists("c_syntax_for_h") | setf c | - \ elseif exists("ch_syntax_for_h") | setf ch | - \ else | setf cpp | endif +" .h files can be C, Ch C++, ObjC or ObjC++. +" Set c_syntax_for_h if you want C, ch_syntax_for_h if you want Ch. ObjC is +" detected automatically. +au BufNewFile,BufRead *.h call s:FTheader() + +func! s:FTheader() + if match(getline(1, min([line("$"), 200])), '^@\(interface\|end\|class\)') > -1 + setf objc + elseif exists("c_syntax_for_h") + setf c + elseif exists("ch_syntax_for_h") + setf ch + else + setf cpp + endif +endfunc " Ch (CHscript) au BufNewFile,BufRead *.chf setf ch @@ -476,12 +489,18 @@ au BufNewFile,BufRead *.cpy \ setf cobol | \ endif +" Coco/R +au BufNewFile,BufRead *.atg setf coco + " Cold Fusion au BufNewFile,BufRead *.cfm,*.cfi,*.cfc setf cf " Configure scripts au BufNewFile,BufRead configure.in,configure.ac setf config +" CUDA Cumpute Unified Device Architecture +au BufNewFile,BufRead *.cu setf cuda + " WildPackets EtherPeek Decoder au BufNewFile,BufRead *.dcd setf dcd @@ -513,15 +532,31 @@ au BufNewFile,BufRead *.si setf cuplsi " Debian Control au BufNewFile,BufRead */debian/control setf debcontrol +au BufNewFile,BufRead control + \ if getline(1) =~ '^Source:' + \| setf debcontrol + \| endif " Debian Sources.list au BufNewFile,BufRead /etc/apt/sources.list setf debsources +" Deny hosts +au BufNewFile,BufRead denyhosts.conf setf denyhosts + " ROCKLinux package description au BufNewFile,BufRead *.desc setf desc -" the D language -au BufNewFile,BufRead *.d setf d +" the D language or dtrace +au BufNewFile,BufRead *.d call s:DtraceCheck() + +func! s:DtraceCheck() + let lines = getline(1, min([line("$"), 100])) + if match(lines, '^#!\S\+dtrace\|#pragma\s\+D\s\+option\|:\S\{-}:\S\{-}:') > -1 + setf dtrace + else + setf d + endif +endfunc " Desktop files au BufNewFile,BufRead *.desktop,.directory setf desktop @@ -597,8 +632,8 @@ func! s:FTe() setf eiffel endfunc -" ERicsson LANGuage -au BufNewFile,BufRead *.erl setf erlang +" ERicsson LANGuage; Yaws is erlang too +au BufNewFile,BufRead *.erl,*.yaws setf erlang " Elm Filter Rules file au BufNewFile,BufRead filter-rules setf elmfilt @@ -643,11 +678,14 @@ au BufNewFile,BufRead *.mas,*.master se " Forth au BufNewFile,BufRead *.fs,*.ft setf forth +" Reva Forth +au BufNewFile,BufRead *.frt setf reva + " 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 +au BufNewFile,BufRead *.f,*.for,*.fortran,*.fpp,*.ftn,*.f77,*.f90,*.f95 setf fortran " FStab au BufNewFile,BufRead fstab,mtab setf fstab @@ -661,6 +699,19 @@ au BufNewFile,BufRead *.mo,*.gdmo setf " Gedcom au BufNewFile,BufRead *.ged setf gedcom +" Git +autocmd BufNewFile,BufRead *.git/COMMIT_EDITMSG setf gitcommit +autocmd BufNewFile,BufRead *.git/config,.gitconfig setf gitconfig +autocmd BufNewFile,BufRead git-rebase-todo setf gitrebase +autocmd BufNewFile,BufRead .msg.[0-9]* + \ if getline(1) =~ '^From.*# This line is ignored.$' | + \ setf gitsendemail | + \ endif +autocmd BufNewFile,BufRead *.git/** + \ if getline(1) =~ '^\x\{40\}\>\|^ref: ' | + \ setf git | + \ endif + " Gkrellmrc au BufNewFile,BufRead gkrellmrc,gkrellmrc_? setf gkrellmrc @@ -701,6 +752,9 @@ au BufNewFile,BufRead *.hs setf haskel au BufNewFile,BufRead *.lhs setf lhaskell au BufNewFile,BufRead *.chs setf chaskell +" Haste +au BufNewFile,BufRead *.ht setf haste + " Hercules au BufNewFile,BufRead *.vc,*.ev,*.rs,*.sum,*.errsum setf hercules @@ -739,6 +793,9 @@ au BufNewFile,BufRead *.html.m4 setf h " HTML Cheetah template au BufNewFile,BufRead *.tmpl setf htmlcheetah +" Host config +au BufNewFile,BufRead /etc/host.conf setf hostconf + " Hyper Builder au BufNewFile,BufRead *.hb setf hb @@ -922,6 +979,9 @@ au BufNewFile,BufRead *.lou,*.lout setf " Lua au BufNewFile,BufRead *.lua setf lua +" Linden Scripting Language (Second Life) +au BufNewFile,BufRead *.lsl setf lsl + " Lynx style file (or LotusScript!) au BufNewFile,BufRead *.lss setf lss @@ -933,7 +993,7 @@ au BufNewFile,BufRead *.m4 au BufNewFile,BufRead *.mgp setf mgp " 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[[:alnum:]._-]\{6\},ae\d\+.txt,/tmp/SLRN[0-9A-Z.]\+,*.eml setf mail +au BufNewFile,BufRead snd.\d\+,.letter,.letter.\d\+,.followup,.article,.article.\d\+,pico.\d\+,mutt{ng,}-*-\w\+,mutt[[:alnum:]_-]\{6\},ae\d\+.txt,/tmp/SLRN[0-9A-Z.]\+,*.eml setf mail " Mail aliases au BufNewFile,BufRead /etc/mail/aliases,/etc/aliases setf mailaliases @@ -987,6 +1047,9 @@ func! s:FTm() endif endfunc +" Mathematica notebook +au BufNewFile,BufRead *.nb setf mma + " Maya Extension Language au BufNewFile,BufRead *.mel setf mel @@ -1005,6 +1068,9 @@ au BufNewFile,BufRead *.mgl setf mgl " MMIX or VMS makefile au BufNewFile,BufRead *.mms call s:FTmms() +" Symbian meta-makefile definition (MMP) +au BufNewFile,BufRead *.mmp setf mmp + func! s:FTmms() let n = 1 while n < 10 @@ -1075,8 +1141,7 @@ au BufRead,BufNewFile *.mu setf mupad au BufNewFile,BufRead *.mush setf mush " 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') +au BufNewFile,BufRead Mutt{ng,}rc setf muttrc " Nano au BufNewFile,BufRead /etc/nanorc,.nanorc setf nanorc @@ -1169,6 +1234,9 @@ au BufNewFile,BufRead *.pas setf pasca " Delphi project file au BufNewFile,BufRead *.dpr setf pascal +" PDF +au BufNewFile,BufRead *.pdf setf pdf + " Perl if has("fname_case") au BufNewFile,BufRead *.pl,*.PL call s:FTpl() @@ -1206,10 +1274,9 @@ au BufNewFile,BufRead *.pm au BufNewFile,BufRead *.pod setf pod " Php, php3, php4, etc. -au BufNewFile,BufRead *.php,*.php\d setf php - -" Phtml -au BufNewFile,BufRead *.phtml setf phtml +" Also Phtml (was used for PHP 2 in the past) +" Also .ctp for Cake template file +au BufNewFile,BufRead *.php,*.php\d,*.phtml,*.ctp setf php " Pike au BufNewFile,BufRead *.pike,*.lpc,*.ulpc,*.pmod setf pike @@ -1377,6 +1444,9 @@ au BufNewFile,BufRead INDEX,INFO " Prolog au BufNewFile,BufRead *.pdb setf prolog +" Promela +au BufNewFile,BufRead *.pml setf promela + " Protocols au BufNewFile,BufRead /etc/protocols setf protocols @@ -1406,7 +1476,7 @@ au BufNewFile,BufRead *.reg au BufNewFile,BufRead *.rib setf rib " Rexx -au BufNewFile,BufRead *.rexx,*.rex setf rexx +au BufNewFile,BufRead *.rexx,*.rex,*.jrexx,*.rxj,*.orx setf rexx " R (Splus) if has("fname_case") @@ -1437,7 +1507,7 @@ func! s:FTr() for n in range(1, max) " Rebol is easy to recognize, check for that first - if getline(n) =~ '\' + if getline(n) =~? '\' setf rebol return endif @@ -1523,8 +1593,24 @@ au BufNewFile,BufRead *.siv setf sieve " Sendmail au BufNewFile,BufRead sendmail.cf setf sm -" Sendmail .mc files are actually m4 -au BufNewFile,BufRead *.mc setf m4 +" Sendmail .mc files are actually m4. Could also be MS Message text file. +au BufNewFile,BufRead *.mc call s:McSetf() + +func! s:McSetf() + " Rely on the file to start with a comment. + " MS message text files use ';', Sendmail files use '#' or 'dnl' + for lnum in range(1, min([line("$"), 20])) + let line = getline(lnum) + if line =~ '^\s*\(#\|dnl\)' + setf m4 " Sendmail .mc file + return + elseif line =~ '^\s*;' + setf msmessages " MS Message text file + return + endif + endfor + setf m4 " Default: Sendmail .mc file +endfunc " Services au BufNewFile,BufRead /etc/services setf services @@ -1710,17 +1796,21 @@ au BufNewFile,BufRead *.rules call s:F let s:ft_rules_udev_rules_pattern = '^\s*\cudev_rules\s*=\s*"\([^"]\{-1,}\)/*".*' func! s:FTRules() + if expand(':p') =~ '^/etc/udev/rules\.d/.*\.rules$' + setf udevrules + return + endif try let config_lines = readfile('/etc/udev/udev.conf') catch /^Vim\%((\a\+)\)\=:E484/ setf hog return endtry + let dir = expand(':p:h') for line in config_lines if line =~ s:ft_rules_udev_rules_pattern let udev_rules = substitute(line, s:ft_rules_udev_rules_pattern, '\1', "") - let amatch_dirname = substitute(expand(''), '^\(.*\)/[^/]\+$', '\1', "") - if amatch_dirname == udev_rules + if dir == udev_rules setf udevrules endif break @@ -1786,6 +1876,9 @@ au BufNewFile,BufRead *.stp setf stp " Standard ML au BufNewFile,BufRead *.sml setf sml +" Sratus VOS command macro +au BufNewFile,BufRead *.cm setf voscm + " Sysctl au BufNewFile,BufRead /etc/sysctl.conf setf sysctl @@ -1892,8 +1985,8 @@ func! s:FTtex() return endfunc -" Context -au BufNewFile,BufRead tex/context/*/*.tex setf context +" ConTeXt +au BufNewFile,BufRead tex/context/*/*.tex,*.mkii,*.mkiv setf context " Texinfo au BufNewFile,BufRead *.texinfo,*.texi,*.txi setf texinfo @@ -1928,9 +2021,6 @@ au BufNewFile,BufRead *.uit,*.uil setf " Udev conf au BufNewFile,BufRead /etc/udev/udev.conf setf udevconf -" Udev rules -au BufNewFile,BufRead /etc/udev/rules.d/*.rules setf udevrules - " Udev permissions au BufNewFile,BufRead /etc/udev/permissions.d/*.permissions setf udevperm " @@ -2049,14 +2139,26 @@ au BufNewFile,BufRead *.msc,*.msf setf au BufNewFile,BufRead *.ms \ if !s:FTnroff() | setf xmath | endif -" XML -au BufNewFile,BufRead *.xml - \ if getline(1) . getline(2) . getline(3) =~ ' -" Last Change: 2007 May 10 +" Last Change: 2008 Jun 24 " This is used by "make menu" in the src directory. edit :p:h/synmenu.vim @@ -116,6 +116,7 @@ SynMenu C.Calendar:calendar SynMenu C.Cascading\ Style\ Sheets:css SynMenu C.CDL:cdl SynMenu C.Cdrdao\ TOC:cdrtoc +SynMenu C.Cdrdao\ config:cdrdaoconf SynMenu C.Century\ Term:cterm SynMenu C.CH\ script:ch SynMenu C.ChangeLog:changelog @@ -128,6 +129,7 @@ SynMenu C.Clipper:clipper SynMenu C.Cmake:cmake SynMenu C.Cmusrc:cmusrc SynMenu C.Cobol:cobol +SynMenu C.Coco/R:coco SynMenu C.Cold\ Fusion:cf SynMenu C.Conary\ Recipe:conaryrecipe SynMenu C.Config.Cfg\ Config\ file:cfg @@ -137,6 +139,7 @@ SynMenu C.CRM114:crm SynMenu C.Crontab:crontab SynMenu C.CSP:csp SynMenu C.Ctrl-H:ctrlh +SynMenu C.CUDA:cuda SynMenu C.CUPL.CUPL:cupl SynMenu C.CUPL.Simulation:cuplsim SynMenu C.CVS.commit\ file:cvs @@ -148,6 +151,7 @@ SynMenu DE.D:d SynMenu DE.Debian.Debian\ ChangeLog:debchangelog SynMenu DE.Debian.Debian\ Control:debcontrol SynMenu DE.Debian.Debian\ Sources\.list:debsources +SynMenu DE.Denyhosts:denyhosts SynMenu DE.Desktop:desktop SynMenu DE.Dict\ config:dictconf SynMenu DE.Dictd\ config:dictdconf @@ -168,6 +172,7 @@ SynMenu DE.Dracula:dracula SynMenu DE.DSSSL:dsl SynMenu DE.DTD:dtd SynMenu DE.DTML\ (Zope):dtml +SynMenu DE.DTrace:dtrace SynMenu DE.Dylan.Dylan:dylan SynMenu DE.Dylan.Dylan\ interface:dylanintr SynMenu DE.Dylan.Dylan\ lid:dylanlid @@ -205,6 +210,11 @@ SynMenu FG.Fvwm.Fvwm2\ configuration\ wi SynMenu FG.GDB\ command\ file:gdb SynMenu FG.GDMO:gdmo SynMenu FG.Gedcom:gedcom +SynMenu FG.Git.Output:git +SynMenu FG.Git.Commit:gitcommit +SynMenu FG.Git.Config:gitconfig +SynMenu FG.Git.Rebase:gitrebase +SynMenu FG.Git.Send\ Email:gitsendemail SynMenu FG.Gkrellmrc:gkrellmrc SynMenu FG.GP:gp SynMenu FG.GPG:gpg @@ -222,6 +232,7 @@ SynMenu HIJK.Hamster:hamster SynMenu HIJK.Haskell.Haskell:haskell SynMenu HIJK.Haskell.Haskell-c2hs:chaskell SynMenu HIJK.Haskell.Haskell-literate:lhaskell +SynMenu HIJK.HASTE:haste SynMenu HIJK.Hercules:hercules SynMenu HIJK.Hex\ dump.XXD:xxd SynMenu HIJK.Hex\ dump.Intel\ MCS51:hex @@ -232,6 +243,7 @@ SynMenu HIJK.HTML.Cheetah\ HTML\ templat SynMenu HIJK.HTML.Django\ HTML\ template:htmldjango SynMenu HIJK.HTML.HTML/OS:htmlos SynMenu HIJK.HTML.XHTML:xhtml +SynMenu HIJK.Host\.conf:hostconf SynMenu HIJK.Hyper\ Builder:hb SynMenu HIJK.Icewm\ menu:icemenu SynMenu HIJK.Icon:icon @@ -273,6 +285,7 @@ SynMenu L-Ma.Libao:libao SynMenu L-Ma.LifeLines\ script:lifelines SynMenu L-Ma.Lilo:lilo SynMenu L-Ma.Limits\ config:limits +SynMenu L-Ma.Linden\ scripting:lsl SynMenu L-Ma.Lisp:lisp SynMenu L-Ma.Lite:lite SynMenu L-Ma.LiteStep\ RC:litestep @@ -320,6 +333,7 @@ SynMenu Me-NO.Mrxvtrc:mrxvtrc SynMenu Me-NO.MS-DOS/Windows.4DOS\ \.bat\ file:btm SynMenu Me-NO.MS-DOS/Windows.\.bat\/\.cmd\ file:dosbatch SynMenu Me-NO.MS-DOS/Windows.\.ini\ file:dosini +SynMenu Me-NO.MS-DOS/Windows.Message\ text:msmessages SynMenu Me-NO.MS-DOS/Windows.Module\ Definition:def SynMenu Me-NO.MS-DOS/Windows.Registry:registry SynMenu Me-NO.MS-DOS/Windows.Resource\ file:rc @@ -351,7 +365,7 @@ SynMenu PQ.PApp:papp SynMenu PQ.Pascal:pascal SynMenu PQ.Password\ file:passwd SynMenu PQ.PCCTS:pccts -SynMenu PQ.PPWizard:ppwiz +SynMenu PQ.PDF:pdf SynMenu PQ.Perl.Perl:perl SynMenu PQ.Perl.Perl\ POD:pod SynMenu PQ.Perl.Perl\ XS:xs @@ -369,6 +383,7 @@ SynMenu PQ.PostScript.PostScript:postscr SynMenu PQ.PostScript.PostScript\ Printer\ Description:ppd SynMenu PQ.Povray.Povray\ scene\ descr:pov SynMenu PQ.Povray.Povray\ configuration:povini +SynMenu PQ.PPWizard:ppwiz SynMenu PQ.Prescribe\ (Kyocera):prescribe SynMenu PQ.Printcap:pcap SynMenu PQ.Privoxy:privoxy @@ -376,6 +391,7 @@ SynMenu PQ.Procmail:procmail SynMenu PQ.Product\ Spec\ File:psf SynMenu PQ.Progress:progress SynMenu PQ.Prolog:prolog +SynMenu PQ.ProMeLa:promela SynMenu PQ.Protocols:protocols SynMenu PQ.Purify\ log:purifylog SynMenu PQ.Pyrex:pyrex @@ -398,6 +414,7 @@ SynMenu R-Sg.Relax\ NG\ compact:rnc SynMenu R-Sg.Renderman.Renderman\ Shader\ Lang:sl SynMenu R-Sg.Renderman.Renderman\ Interface\ Bytestream:rib SynMenu R-Sg.Resolv\.conf:resolv +SynMenu R-Sg.Reva\ Forth:reva SynMenu R-Sg.Rexx:rexx SynMenu R-Sg.Robots\.txt:robots SynMenu R-Sg.RockLinux\ package\ desc\.:desc @@ -481,6 +498,7 @@ SynMenu Sh-S.Strace:strace SynMenu Sh-S.Streaming\ descriptor\ file:sd SynMenu Sh-S.Subversion\ commit:svn SynMenu Sh-S.Sudoers:sudoers +SynMenu Sh-S.Symbian\ meta-makefile:mmp SynMenu Sh-S.Sysctl\.conf:sysctl SynMenu TUV.TADS:tads @@ -524,6 +542,7 @@ SynMenu TUV.Vim.Vim\ script:vim SynMenu TUV.Vim.Viminfo\ file:viminfo SynMenu TUV.Virata\ config:virata SynMenu TUV.Visual\ Basic:vb +SynMenu TUV.VOS\ CM\ macro:voscm SynMenu TUV.VRML:vrml SynMenu TUV.VSE\ JCL:vsejcl @@ -544,6 +563,7 @@ SynMenu WXYZ.X\ Keyboard\ Extension:xkb SynMenu WXYZ.X\ Pixmap:xpm SynMenu WXYZ.X\ Pixmap\ (2):xpm2 SynMenu WXYZ.X\ resources:xdefaults +SynMenu WXYZ.XBL:xbl SynMenu WXYZ.Xinetd\.conf:xinetd SynMenu WXYZ.Xmodmap:xmodmap SynMenu WXYZ.Xmath:xmath diff --git a/runtime/menu.vim b/runtime/menu.vim --- a/runtime/menu.vim +++ b/runtime/menu.vim @@ -2,7 +2,7 @@ " You can also use this as a start for your own set of menus. " " Maintainer: Bram Moolenaar -" Last Change: 2007 Nov 19 +" Last Change: 2008 Jun 16 " Note that ":an" (short for ":anoremenu") is often used to make a menu work " in all modes and avoid side effects from mappings defined by the user. @@ -135,6 +135,11 @@ func! SelectAll() exe "norm gg" . (&slm == "" ? "VG" : "gH\G") endfunc +func! s:FnameEscape(fname) + if exists('*fnameescape') + return fnameescape(a:fname) + return escape(a:fname, " \t\n*?[{`$\\%#'\"|!<") +endfunc " Edit menu an 20.310 &Edit.&Undou u @@ -193,6 +198,7 @@ fun! s:EditVimrc() else let fname = "$HOME/.vimrc" endif + let fname = s:FnameEscape(fname) if &mod exe "split " . fname else @@ -806,7 +812,7 @@ if has("vertsplit") if @% == "" 20vsp . else - exe "20vsp " . expand("%:p:h") + exe "20vsp " . s:FnameEscape(expand("%:p:h")) endif endfun endif @@ -1028,7 +1034,7 @@ endif " Select a session to load; default to current session name if present fun! s:LoadVimSesn() if strlen(v:this_session) > 0 - let name = escape(v:this_session, ' \t#%$|<>"*?[{`') + let name = s:FnameEscape(v:this_session) else let name = "Session.vim" endif @@ -1040,7 +1046,7 @@ fun! s:SaveVimSesn() if strlen(v:this_session) == 0 let v:this_session = "Session.vim" endif - execute "browse mksession! " . escape(v:this_session, ' \t#%$|<>"*?[{`') + execute "browse mksession! " . s:FnameEscape(v:this_session) endfun endif diff --git a/runtime/scripts.vim b/runtime/scripts.vim --- a/runtime/scripts.vim +++ b/runtime/scripts.vim @@ -1,7 +1,7 @@ " Vim support file to detect file types in scripts " " Maintainer: Bram Moolenaar -" Last change: 2007 Apr 29 +" Last change: 2008 Apr 28 " This file is called by an autocommand for every file that has just been " loaded into a buffer. It checks if the type of file can be recognized by @@ -234,6 +234,10 @@ else elseif s:line1 =~ '\ an 50.20.150 &Syntax.C.CDL :cal SetSyn("cdl") an 50.20.160 &Syntax.C.Cdrdao\ TOC :cal SetSyn("cdrtoc") -an 50.20.170 &Syntax.C.Century\ Term :cal SetSyn("cterm") -an 50.20.180 &Syntax.C.CH\ script :cal SetSyn("ch") -an 50.20.190 &Syntax.C.ChangeLog :cal SetSyn("changelog") -an 50.20.200 &Syntax.C.Cheetah\ template :cal SetSyn("cheetah") -an 50.20.210 &Syntax.C.CHILL :cal SetSyn("chill") -an 50.20.220 &Syntax.C.ChordPro :cal SetSyn("chordpro") -an 50.20.230 &Syntax.C.Clean :cal SetSyn("clean") -an 50.20.240 &Syntax.C.Clever :cal SetSyn("cl") -an 50.20.250 &Syntax.C.Clipper :cal SetSyn("clipper") -an 50.20.260 &Syntax.C.Cmake :cal SetSyn("cmake") -an 50.20.270 &Syntax.C.Cmusrc :cal SetSyn("cmusrc") -an 50.20.280 &Syntax.C.Cobol :cal SetSyn("cobol") -an 50.20.290 &Syntax.C.Cold\ Fusion :cal SetSyn("cf") -an 50.20.300 &Syntax.C.Conary\ Recipe :cal SetSyn("conaryrecipe") -an 50.20.310 &Syntax.C.Config.Cfg\ Config\ file :cal SetSyn("cfg") -an 50.20.320 &Syntax.C.Config.Configure\.in :cal SetSyn("config") -an 50.20.330 &Syntax.C.Config.Generic\ Config\ file :cal SetSyn("conf") -an 50.20.340 &Syntax.C.CRM114 :cal SetSyn("crm") -an 50.20.350 &Syntax.C.Crontab :cal SetSyn("crontab") -an 50.20.360 &Syntax.C.CSP :cal SetSyn("csp") -an 50.20.370 &Syntax.C.Ctrl-H :cal SetSyn("ctrlh") -an 50.20.380 &Syntax.C.CUPL.CUPL :cal SetSyn("cupl") -an 50.20.390 &Syntax.C.CUPL.Simulation :cal SetSyn("cuplsim") -an 50.20.400 &Syntax.C.CVS.commit\ file :cal SetSyn("cvs") -an 50.20.410 &Syntax.C.CVS.cvsrc :cal SetSyn("cvsrc") -an 50.20.420 &Syntax.C.Cyn++ :cal SetSyn("cynpp") -an 50.20.430 &Syntax.C.Cynlib :cal SetSyn("cynlib") +an 50.20.170 &Syntax.C.Cdrdao\ config :cal SetSyn("cdrdaoconf") +an 50.20.180 &Syntax.C.Century\ Term :cal SetSyn("cterm") +an 50.20.190 &Syntax.C.CH\ script :cal SetSyn("ch") +an 50.20.200 &Syntax.C.ChangeLog :cal SetSyn("changelog") +an 50.20.210 &Syntax.C.Cheetah\ template :cal SetSyn("cheetah") +an 50.20.220 &Syntax.C.CHILL :cal SetSyn("chill") +an 50.20.230 &Syntax.C.ChordPro :cal SetSyn("chordpro") +an 50.20.240 &Syntax.C.Clean :cal SetSyn("clean") +an 50.20.250 &Syntax.C.Clever :cal SetSyn("cl") +an 50.20.260 &Syntax.C.Clipper :cal SetSyn("clipper") +an 50.20.270 &Syntax.C.Cmake :cal SetSyn("cmake") +an 50.20.280 &Syntax.C.Cmusrc :cal SetSyn("cmusrc") +an 50.20.290 &Syntax.C.Cobol :cal SetSyn("cobol") +an 50.20.300 &Syntax.C.Coco/R :cal SetSyn("coco") +an 50.20.310 &Syntax.C.Cold\ Fusion :cal SetSyn("cf") +an 50.20.320 &Syntax.C.Conary\ Recipe :cal SetSyn("conaryrecipe") +an 50.20.330 &Syntax.C.Config.Cfg\ Config\ file :cal SetSyn("cfg") +an 50.20.340 &Syntax.C.Config.Configure\.in :cal SetSyn("config") +an 50.20.350 &Syntax.C.Config.Generic\ Config\ file :cal SetSyn("conf") +an 50.20.360 &Syntax.C.CRM114 :cal SetSyn("crm") +an 50.20.370 &Syntax.C.Crontab :cal SetSyn("crontab") +an 50.20.380 &Syntax.C.CSP :cal SetSyn("csp") +an 50.20.390 &Syntax.C.Ctrl-H :cal SetSyn("ctrlh") +an 50.20.400 &Syntax.C.CUDA :cal SetSyn("cuda") +an 50.20.410 &Syntax.C.CUPL.CUPL :cal SetSyn("cupl") +an 50.20.420 &Syntax.C.CUPL.Simulation :cal SetSyn("cuplsim") +an 50.20.430 &Syntax.C.CVS.commit\ file :cal SetSyn("cvs") +an 50.20.440 &Syntax.C.CVS.cvsrc :cal SetSyn("cvsrc") +an 50.20.450 &Syntax.C.Cyn++ :cal SetSyn("cynpp") +an 50.20.460 &Syntax.C.Cynlib :cal SetSyn("cynlib") an 50.30.100 &Syntax.DE.D :cal SetSyn("d") an 50.30.110 &Syntax.DE.Debian.Debian\ ChangeLog :cal SetSyn("debchangelog") an 50.30.120 &Syntax.DE.Debian.Debian\ Control :cal SetSyn("debcontrol") an 50.30.130 &Syntax.DE.Debian.Debian\ Sources\.list :cal SetSyn("debsources") -an 50.30.140 &Syntax.DE.Desktop :cal SetSyn("desktop") -an 50.30.150 &Syntax.DE.Dict\ config :cal SetSyn("dictconf") -an 50.30.160 &Syntax.DE.Dictd\ config :cal SetSyn("dictdconf") -an 50.30.170 &Syntax.DE.Diff :cal SetSyn("diff") -an 50.30.180 &Syntax.DE.Digital\ Command\ Lang :cal SetSyn("dcl") -an 50.30.190 &Syntax.DE.Dircolors :cal SetSyn("dircolors") -an 50.30.200 &Syntax.DE.Django\ template :cal SetSyn("django") -an 50.30.210 &Syntax.DE.DNS/BIND\ zone :cal SetSyn("bindzone") -an 50.30.220 &Syntax.DE.DocBook.auto-detect :cal SetSyn("docbk") -an 50.30.230 &Syntax.DE.DocBook.SGML :cal SetSyn("docbksgml") -an 50.30.240 &Syntax.DE.DocBook.XML :cal SetSyn("docbkxml") -an 50.30.250 &Syntax.DE.Dot :cal SetSyn("dot") -an 50.30.260 &Syntax.DE.Doxygen.C\ with\ doxygen :cal SetSyn("c.doxygen") -an 50.30.270 &Syntax.DE.Doxygen.C++\ with\ doxygen :cal SetSyn("cpp.doxygen") -an 50.30.280 &Syntax.DE.Doxygen.IDL\ with\ doxygen :cal SetSyn("idl.doxygen") -an 50.30.290 &Syntax.DE.Doxygen.Java\ with\ doxygen :cal SetSyn("java.doxygen") -an 50.30.300 &Syntax.DE.Dracula :cal SetSyn("dracula") -an 50.30.310 &Syntax.DE.DSSSL :cal SetSyn("dsl") -an 50.30.320 &Syntax.DE.DTD :cal SetSyn("dtd") -an 50.30.330 &Syntax.DE.DTML\ (Zope) :cal SetSyn("dtml") -an 50.30.340 &Syntax.DE.Dylan.Dylan :cal SetSyn("dylan") -an 50.30.350 &Syntax.DE.Dylan.Dylan\ interface :cal SetSyn("dylanintr") -an 50.30.360 &Syntax.DE.Dylan.Dylan\ lid :cal SetSyn("dylanlid") -an 50.30.380 &Syntax.DE.EDIF :cal SetSyn("edif") -an 50.30.390 &Syntax.DE.Eiffel :cal SetSyn("eiffel") -an 50.30.400 &Syntax.DE.Elinks\ config :cal SetSyn("elinks") -an 50.30.410 &Syntax.DE.Elm\ filter\ rules :cal SetSyn("elmfilt") -an 50.30.420 &Syntax.DE.Embedix\ Component\ Description :cal SetSyn("ecd") -an 50.30.430 &Syntax.DE.ERicsson\ LANGuage :cal SetSyn("erlang") -an 50.30.440 &Syntax.DE.ESMTP\ rc :cal SetSyn("esmtprc") -an 50.30.450 &Syntax.DE.ESQL-C :cal SetSyn("esqlc") -an 50.30.460 &Syntax.DE.Essbase\ script :cal SetSyn("csc") -an 50.30.470 &Syntax.DE.Esterel :cal SetSyn("esterel") -an 50.30.480 &Syntax.DE.Eterm\ config :cal SetSyn("eterm") -an 50.30.490 &Syntax.DE.Eviews :cal SetSyn("eviews") -an 50.30.500 &Syntax.DE.Exim\ conf :cal SetSyn("exim") -an 50.30.510 &Syntax.DE.Expect :cal SetSyn("expect") -an 50.30.520 &Syntax.DE.Exports :cal SetSyn("exports") +an 50.30.140 &Syntax.DE.Denyhosts :cal SetSyn("denyhosts") +an 50.30.150 &Syntax.DE.Desktop :cal SetSyn("desktop") +an 50.30.160 &Syntax.DE.Dict\ config :cal SetSyn("dictconf") +an 50.30.170 &Syntax.DE.Dictd\ config :cal SetSyn("dictdconf") +an 50.30.180 &Syntax.DE.Diff :cal SetSyn("diff") +an 50.30.190 &Syntax.DE.Digital\ Command\ Lang :cal SetSyn("dcl") +an 50.30.200 &Syntax.DE.Dircolors :cal SetSyn("dircolors") +an 50.30.210 &Syntax.DE.Django\ template :cal SetSyn("django") +an 50.30.220 &Syntax.DE.DNS/BIND\ zone :cal SetSyn("bindzone") +an 50.30.230 &Syntax.DE.DocBook.auto-detect :cal SetSyn("docbk") +an 50.30.240 &Syntax.DE.DocBook.SGML :cal SetSyn("docbksgml") +an 50.30.250 &Syntax.DE.DocBook.XML :cal SetSyn("docbkxml") +an 50.30.260 &Syntax.DE.Dot :cal SetSyn("dot") +an 50.30.270 &Syntax.DE.Doxygen.C\ with\ doxygen :cal SetSyn("c.doxygen") +an 50.30.280 &Syntax.DE.Doxygen.C++\ with\ doxygen :cal SetSyn("cpp.doxygen") +an 50.30.290 &Syntax.DE.Doxygen.IDL\ with\ doxygen :cal SetSyn("idl.doxygen") +an 50.30.300 &Syntax.DE.Doxygen.Java\ with\ doxygen :cal SetSyn("java.doxygen") +an 50.30.310 &Syntax.DE.Dracula :cal SetSyn("dracula") +an 50.30.320 &Syntax.DE.DSSSL :cal SetSyn("dsl") +an 50.30.330 &Syntax.DE.DTD :cal SetSyn("dtd") +an 50.30.340 &Syntax.DE.DTML\ (Zope) :cal SetSyn("dtml") +an 50.30.350 &Syntax.DE.DTrace :cal SetSyn("dtrace") +an 50.30.360 &Syntax.DE.Dylan.Dylan :cal SetSyn("dylan") +an 50.30.370 &Syntax.DE.Dylan.Dylan\ interface :cal SetSyn("dylanintr") +an 50.30.380 &Syntax.DE.Dylan.Dylan\ lid :cal SetSyn("dylanlid") +an 50.30.400 &Syntax.DE.EDIF :cal SetSyn("edif") +an 50.30.410 &Syntax.DE.Eiffel :cal SetSyn("eiffel") +an 50.30.420 &Syntax.DE.Elinks\ config :cal SetSyn("elinks") +an 50.30.430 &Syntax.DE.Elm\ filter\ rules :cal SetSyn("elmfilt") +an 50.30.440 &Syntax.DE.Embedix\ Component\ Description :cal SetSyn("ecd") +an 50.30.450 &Syntax.DE.ERicsson\ LANGuage :cal SetSyn("erlang") +an 50.30.460 &Syntax.DE.ESMTP\ rc :cal SetSyn("esmtprc") +an 50.30.470 &Syntax.DE.ESQL-C :cal SetSyn("esqlc") +an 50.30.480 &Syntax.DE.Essbase\ script :cal SetSyn("csc") +an 50.30.490 &Syntax.DE.Esterel :cal SetSyn("esterel") +an 50.30.500 &Syntax.DE.Eterm\ config :cal SetSyn("eterm") +an 50.30.510 &Syntax.DE.Eviews :cal SetSyn("eviews") +an 50.30.520 &Syntax.DE.Exim\ conf :cal SetSyn("exim") +an 50.30.530 &Syntax.DE.Expect :cal SetSyn("expect") +an 50.30.540 &Syntax.DE.Exports :cal SetSyn("exports") an 50.40.100 &Syntax.FG.Fetchmail :cal SetSyn("fetchmail") an 50.40.110 &Syntax.FG.FlexWiki :cal SetSyn("flexwiki") an 50.40.120 &Syntax.FG.Focus\ Executable :cal SetSyn("focexec") @@ -186,60 +191,67 @@ an 50.40.220 &Syntax.FG.Fvwm.Fvwm2\ conf an 50.40.240 &Syntax.FG.GDB\ command\ file :cal SetSyn("gdb") an 50.40.250 &Syntax.FG.GDMO :cal SetSyn("gdmo") an 50.40.260 &Syntax.FG.Gedcom :cal SetSyn("gedcom") -an 50.40.270 &Syntax.FG.Gkrellmrc :cal SetSyn("gkrellmrc") -an 50.40.280 &Syntax.FG.GP :cal SetSyn("gp") -an 50.40.290 &Syntax.FG.GPG :cal SetSyn("gpg") -an 50.40.300 &Syntax.FG.Group\ file :cal SetSyn("group") -an 50.40.310 &Syntax.FG.Grub :cal SetSyn("grub") -an 50.40.320 &Syntax.FG.GNU\ Server\ Pages :cal SetSyn("gsp") -an 50.40.330 &Syntax.FG.GNUplot :cal SetSyn("gnuplot") -an 50.40.340 &Syntax.FG.GrADS\ scripts :cal SetSyn("grads") -an 50.40.350 &Syntax.FG.Gretl :cal SetSyn("gretl") -an 50.40.360 &Syntax.FG.Groff :cal SetSyn("groff") -an 50.40.370 &Syntax.FG.Groovy :cal SetSyn("groovy") -an 50.40.380 &Syntax.FG.GTKrc :cal SetSyn("gtkrc") +an 50.40.270 &Syntax.FG.Git.Output :cal SetSyn("git") +an 50.40.280 &Syntax.FG.Git.Commit :cal SetSyn("gitcommit") +an 50.40.290 &Syntax.FG.Git.Config :cal SetSyn("gitconfig") +an 50.40.300 &Syntax.FG.Git.Rebase :cal SetSyn("gitrebase") +an 50.40.310 &Syntax.FG.Git.Send\ Email :cal SetSyn("gitsendemail") +an 50.40.320 &Syntax.FG.Gkrellmrc :cal SetSyn("gkrellmrc") +an 50.40.330 &Syntax.FG.GP :cal SetSyn("gp") +an 50.40.340 &Syntax.FG.GPG :cal SetSyn("gpg") +an 50.40.350 &Syntax.FG.Group\ file :cal SetSyn("group") +an 50.40.360 &Syntax.FG.Grub :cal SetSyn("grub") +an 50.40.370 &Syntax.FG.GNU\ Server\ Pages :cal SetSyn("gsp") +an 50.40.380 &Syntax.FG.GNUplot :cal SetSyn("gnuplot") +an 50.40.390 &Syntax.FG.GrADS\ scripts :cal SetSyn("grads") +an 50.40.400 &Syntax.FG.Gretl :cal SetSyn("gretl") +an 50.40.410 &Syntax.FG.Groff :cal SetSyn("groff") +an 50.40.420 &Syntax.FG.Groovy :cal SetSyn("groovy") +an 50.40.430 &Syntax.FG.GTKrc :cal SetSyn("gtkrc") an 50.50.100 &Syntax.HIJK.Hamster :cal SetSyn("hamster") an 50.50.110 &Syntax.HIJK.Haskell.Haskell :cal SetSyn("haskell") an 50.50.120 &Syntax.HIJK.Haskell.Haskell-c2hs :cal SetSyn("chaskell") an 50.50.130 &Syntax.HIJK.Haskell.Haskell-literate :cal SetSyn("lhaskell") -an 50.50.140 &Syntax.HIJK.Hercules :cal SetSyn("hercules") -an 50.50.150 &Syntax.HIJK.Hex\ dump.XXD :cal SetSyn("xxd") -an 50.50.160 &Syntax.HIJK.Hex\ dump.Intel\ MCS51 :cal SetSyn("hex") -an 50.50.170 &Syntax.HIJK.HTML.HTML :cal SetSyn("html") -an 50.50.180 &Syntax.HIJK.HTML.HTML\ with\ M4 :cal SetSyn("htmlm4") -an 50.50.190 &Syntax.HIJK.HTML.HTML\ with\ Ruby\ (eRuby) :cal SetSyn("eruby") -an 50.50.200 &Syntax.HIJK.HTML.Cheetah\ HTML\ template :cal SetSyn("htmlcheetah") -an 50.50.210 &Syntax.HIJK.HTML.Django\ HTML\ template :cal SetSyn("htmldjango") -an 50.50.220 &Syntax.HIJK.HTML.HTML/OS :cal SetSyn("htmlos") -an 50.50.230 &Syntax.HIJK.HTML.XHTML :cal SetSyn("xhtml") -an 50.50.240 &Syntax.HIJK.Hyper\ Builder :cal SetSyn("hb") -an 50.50.260 &Syntax.HIJK.Icewm\ menu :cal SetSyn("icemenu") -an 50.50.270 &Syntax.HIJK.Icon :cal SetSyn("icon") -an 50.50.280 &Syntax.HIJK.IDL\Generic\ IDL :cal SetSyn("idl") -an 50.50.290 &Syntax.HIJK.IDL\Microsoft\ IDL :cal SetSyn("msidl") -an 50.50.300 &Syntax.HIJK.Indent\ profile :cal SetSyn("indent") -an 50.50.310 &Syntax.HIJK.Inform :cal SetSyn("inform") -an 50.50.320 &Syntax.HIJK.Informix\ 4GL :cal SetSyn("fgl") -an 50.50.330 &Syntax.HIJK.Initng :cal SetSyn("initng") -an 50.50.340 &Syntax.HIJK.Inittab :cal SetSyn("inittab") -an 50.50.350 &Syntax.HIJK.Inno\ setup :cal SetSyn("iss") -an 50.50.360 &Syntax.HIJK.InstallShield\ script :cal SetSyn("ishd") -an 50.50.370 &Syntax.HIJK.Interactive\ Data\ Lang :cal SetSyn("idlang") -an 50.50.380 &Syntax.HIJK.IPfilter :cal SetSyn("ipfilter") -an 50.50.400 &Syntax.HIJK.JAL :cal SetSyn("jal") -an 50.50.410 &Syntax.HIJK.JAM :cal SetSyn("jam") -an 50.50.420 &Syntax.HIJK.Jargon :cal SetSyn("jargon") -an 50.50.430 &Syntax.HIJK.Java.Java :cal SetSyn("java") -an 50.50.440 &Syntax.HIJK.Java.JavaCC :cal SetSyn("javacc") -an 50.50.450 &Syntax.HIJK.Java.Java\ Server\ Pages :cal SetSyn("jsp") -an 50.50.460 &Syntax.HIJK.Java.Java\ Properties :cal SetSyn("jproperties") -an 50.50.470 &Syntax.HIJK.JavaScript :cal SetSyn("javascript") -an 50.50.480 &Syntax.HIJK.Jess :cal SetSyn("jess") -an 50.50.490 &Syntax.HIJK.Jgraph :cal SetSyn("jgraph") -an 50.50.510 &Syntax.HIJK.Kconfig :cal SetSyn("kconfig") -an 50.50.520 &Syntax.HIJK.KDE\ script :cal SetSyn("kscript") -an 50.50.530 &Syntax.HIJK.Kimwitu++ :cal SetSyn("kwt") -an 50.50.540 &Syntax.HIJK.KixTart :cal SetSyn("kix") +an 50.50.140 &Syntax.HIJK.HASTE :cal SetSyn("haste") +an 50.50.150 &Syntax.HIJK.Hercules :cal SetSyn("hercules") +an 50.50.160 &Syntax.HIJK.Hex\ dump.XXD :cal SetSyn("xxd") +an 50.50.170 &Syntax.HIJK.Hex\ dump.Intel\ MCS51 :cal SetSyn("hex") +an 50.50.180 &Syntax.HIJK.HTML.HTML :cal SetSyn("html") +an 50.50.190 &Syntax.HIJK.HTML.HTML\ with\ M4 :cal SetSyn("htmlm4") +an 50.50.200 &Syntax.HIJK.HTML.HTML\ with\ Ruby\ (eRuby) :cal SetSyn("eruby") +an 50.50.210 &Syntax.HIJK.HTML.Cheetah\ HTML\ template :cal SetSyn("htmlcheetah") +an 50.50.220 &Syntax.HIJK.HTML.Django\ HTML\ template :cal SetSyn("htmldjango") +an 50.50.230 &Syntax.HIJK.HTML.HTML/OS :cal SetSyn("htmlos") +an 50.50.240 &Syntax.HIJK.HTML.XHTML :cal SetSyn("xhtml") +an 50.50.250 &Syntax.HIJK.Host\.conf :cal SetSyn("hostconf") +an 50.50.260 &Syntax.HIJK.Hyper\ Builder :cal SetSyn("hb") +an 50.50.280 &Syntax.HIJK.Icewm\ menu :cal SetSyn("icemenu") +an 50.50.290 &Syntax.HIJK.Icon :cal SetSyn("icon") +an 50.50.300 &Syntax.HIJK.IDL\Generic\ IDL :cal SetSyn("idl") +an 50.50.310 &Syntax.HIJK.IDL\Microsoft\ IDL :cal SetSyn("msidl") +an 50.50.320 &Syntax.HIJK.Indent\ profile :cal SetSyn("indent") +an 50.50.330 &Syntax.HIJK.Inform :cal SetSyn("inform") +an 50.50.340 &Syntax.HIJK.Informix\ 4GL :cal SetSyn("fgl") +an 50.50.350 &Syntax.HIJK.Initng :cal SetSyn("initng") +an 50.50.360 &Syntax.HIJK.Inittab :cal SetSyn("inittab") +an 50.50.370 &Syntax.HIJK.Inno\ setup :cal SetSyn("iss") +an 50.50.380 &Syntax.HIJK.InstallShield\ script :cal SetSyn("ishd") +an 50.50.390 &Syntax.HIJK.Interactive\ Data\ Lang :cal SetSyn("idlang") +an 50.50.400 &Syntax.HIJK.IPfilter :cal SetSyn("ipfilter") +an 50.50.420 &Syntax.HIJK.JAL :cal SetSyn("jal") +an 50.50.430 &Syntax.HIJK.JAM :cal SetSyn("jam") +an 50.50.440 &Syntax.HIJK.Jargon :cal SetSyn("jargon") +an 50.50.450 &Syntax.HIJK.Java.Java :cal SetSyn("java") +an 50.50.460 &Syntax.HIJK.Java.JavaCC :cal SetSyn("javacc") +an 50.50.470 &Syntax.HIJK.Java.Java\ Server\ Pages :cal SetSyn("jsp") +an 50.50.480 &Syntax.HIJK.Java.Java\ Properties :cal SetSyn("jproperties") +an 50.50.490 &Syntax.HIJK.JavaScript :cal SetSyn("javascript") +an 50.50.500 &Syntax.HIJK.Jess :cal SetSyn("jess") +an 50.50.510 &Syntax.HIJK.Jgraph :cal SetSyn("jgraph") +an 50.50.530 &Syntax.HIJK.Kconfig :cal SetSyn("kconfig") +an 50.50.540 &Syntax.HIJK.KDE\ script :cal SetSyn("kscript") +an 50.50.550 &Syntax.HIJK.Kimwitu++ :cal SetSyn("kwt") +an 50.50.560 &Syntax.HIJK.KixTart :cal SetSyn("kix") an 50.60.100 &Syntax.L-Ma.Lace :cal SetSyn("lace") an 50.60.110 &Syntax.L-Ma.LamdaProlog :cal SetSyn("lprolog") an 50.60.120 &Syntax.L-Ma.Latte :cal SetSyn("latte") @@ -252,34 +264,35 @@ an 50.60.180 &Syntax.L-Ma.Libao :cal Set an 50.60.190 &Syntax.L-Ma.LifeLines\ script :cal SetSyn("lifelines") an 50.60.200 &Syntax.L-Ma.Lilo :cal SetSyn("lilo") an 50.60.210 &Syntax.L-Ma.Limits\ config :cal SetSyn("limits") -an 50.60.220 &Syntax.L-Ma.Lisp :cal SetSyn("lisp") -an 50.60.230 &Syntax.L-Ma.Lite :cal SetSyn("lite") -an 50.60.240 &Syntax.L-Ma.LiteStep\ RC :cal SetSyn("litestep") -an 50.60.250 &Syntax.L-Ma.Locale\ Input :cal SetSyn("fdcc") -an 50.60.260 &Syntax.L-Ma.Login\.access :cal SetSyn("loginaccess") -an 50.60.270 &Syntax.L-Ma.Login\.defs :cal SetSyn("logindefs") -an 50.60.280 &Syntax.L-Ma.Logtalk :cal SetSyn("logtalk") -an 50.60.290 &Syntax.L-Ma.LOTOS :cal SetSyn("lotos") -an 50.60.300 &Syntax.L-Ma.LotusScript :cal SetSyn("lscript") -an 50.60.310 &Syntax.L-Ma.Lout :cal SetSyn("lout") -an 50.60.320 &Syntax.L-Ma.LPC :cal SetSyn("lpc") -an 50.60.330 &Syntax.L-Ma.Lua :cal SetSyn("lua") -an 50.60.340 &Syntax.L-Ma.Lynx\ Style :cal SetSyn("lss") -an 50.60.350 &Syntax.L-Ma.Lynx\ config :cal SetSyn("lynx") -an 50.60.370 &Syntax.L-Ma.M4 :cal SetSyn("m4") -an 50.60.380 &Syntax.L-Ma.MaGic\ Point :cal SetSyn("mgp") -an 50.60.390 &Syntax.L-Ma.Mail :cal SetSyn("mail") -an 50.60.400 &Syntax.L-Ma.Mail\ aliases :cal SetSyn("mailaliases") -an 50.60.410 &Syntax.L-Ma.Mailcap :cal SetSyn("mailcap") -an 50.60.420 &Syntax.L-Ma.Makefile :cal SetSyn("make") -an 50.60.430 &Syntax.L-Ma.MakeIndex :cal SetSyn("ist") -an 50.60.440 &Syntax.L-Ma.Man\ page :cal SetSyn("man") -an 50.60.450 &Syntax.L-Ma.Man\.conf :cal SetSyn("manconf") -an 50.60.460 &Syntax.L-Ma.Maple\ V :cal SetSyn("maple") -an 50.60.470 &Syntax.L-Ma.Mason :cal SetSyn("mason") -an 50.60.480 &Syntax.L-Ma.Mathematica :cal SetSyn("mma") -an 50.60.490 &Syntax.L-Ma.Matlab :cal SetSyn("matlab") -an 50.60.500 &Syntax.L-Ma.Maxima :cal SetSyn("maxima") +an 50.60.220 &Syntax.L-Ma.Linden\ scripting :cal SetSyn("lsl") +an 50.60.230 &Syntax.L-Ma.Lisp :cal SetSyn("lisp") +an 50.60.240 &Syntax.L-Ma.Lite :cal SetSyn("lite") +an 50.60.250 &Syntax.L-Ma.LiteStep\ RC :cal SetSyn("litestep") +an 50.60.260 &Syntax.L-Ma.Locale\ Input :cal SetSyn("fdcc") +an 50.60.270 &Syntax.L-Ma.Login\.access :cal SetSyn("loginaccess") +an 50.60.280 &Syntax.L-Ma.Login\.defs :cal SetSyn("logindefs") +an 50.60.290 &Syntax.L-Ma.Logtalk :cal SetSyn("logtalk") +an 50.60.300 &Syntax.L-Ma.LOTOS :cal SetSyn("lotos") +an 50.60.310 &Syntax.L-Ma.LotusScript :cal SetSyn("lscript") +an 50.60.320 &Syntax.L-Ma.Lout :cal SetSyn("lout") +an 50.60.330 &Syntax.L-Ma.LPC :cal SetSyn("lpc") +an 50.60.340 &Syntax.L-Ma.Lua :cal SetSyn("lua") +an 50.60.350 &Syntax.L-Ma.Lynx\ Style :cal SetSyn("lss") +an 50.60.360 &Syntax.L-Ma.Lynx\ config :cal SetSyn("lynx") +an 50.60.380 &Syntax.L-Ma.M4 :cal SetSyn("m4") +an 50.60.390 &Syntax.L-Ma.MaGic\ Point :cal SetSyn("mgp") +an 50.60.400 &Syntax.L-Ma.Mail :cal SetSyn("mail") +an 50.60.410 &Syntax.L-Ma.Mail\ aliases :cal SetSyn("mailaliases") +an 50.60.420 &Syntax.L-Ma.Mailcap :cal SetSyn("mailcap") +an 50.60.430 &Syntax.L-Ma.Makefile :cal SetSyn("make") +an 50.60.440 &Syntax.L-Ma.MakeIndex :cal SetSyn("ist") +an 50.60.450 &Syntax.L-Ma.Man\ page :cal SetSyn("man") +an 50.60.460 &Syntax.L-Ma.Man\.conf :cal SetSyn("manconf") +an 50.60.470 &Syntax.L-Ma.Maple\ V :cal SetSyn("maple") +an 50.60.480 &Syntax.L-Ma.Mason :cal SetSyn("mason") +an 50.60.490 &Syntax.L-Ma.Mathematica :cal SetSyn("mma") +an 50.60.500 &Syntax.L-Ma.Matlab :cal SetSyn("matlab") +an 50.60.510 &Syntax.L-Ma.Maxima :cal SetSyn("maxima") an 50.70.100 &Syntax.Me-NO.MEL\ (for\ Maya) :cal SetSyn("mel") an 50.70.110 &Syntax.Me-NO.Messages\ (/var/log) :cal SetSyn("messages") an 50.70.120 &Syntax.Me-NO.Metafont :cal SetSyn("mf") @@ -298,29 +311,30 @@ an 50.70.240 &Syntax.Me-NO.Mrxvtrc :cal an 50.70.250 &Syntax.Me-NO.MS-DOS/Windows.4DOS\ \.bat\ file :cal SetSyn("btm") an 50.70.260 &Syntax.Me-NO.MS-DOS/Windows.\.bat\/\.cmd\ file :cal SetSyn("dosbatch") an 50.70.270 &Syntax.Me-NO.MS-DOS/Windows.\.ini\ file :cal SetSyn("dosini") -an 50.70.280 &Syntax.Me-NO.MS-DOS/Windows.Module\ Definition :cal SetSyn("def") -an 50.70.290 &Syntax.Me-NO.MS-DOS/Windows.Registry :cal SetSyn("registry") -an 50.70.300 &Syntax.Me-NO.MS-DOS/Windows.Resource\ file :cal SetSyn("rc") -an 50.70.310 &Syntax.Me-NO.Msql :cal SetSyn("msql") -an 50.70.320 &Syntax.Me-NO.MuPAD :cal SetSyn("mupad") -an 50.70.330 &Syntax.Me-NO.MUSHcode :cal SetSyn("mush") -an 50.70.340 &Syntax.Me-NO.Muttrc :cal SetSyn("muttrc") -an 50.70.360 &Syntax.Me-NO.Nanorc :cal SetSyn("nanorc") -an 50.70.370 &Syntax.Me-NO.Nastran\ input/DMAP :cal SetSyn("nastran") -an 50.70.380 &Syntax.Me-NO.Natural :cal SetSyn("natural") -an 50.70.390 &Syntax.Me-NO.Netrc :cal SetSyn("netrc") -an 50.70.400 &Syntax.Me-NO.Novell\ NCF\ batch :cal SetSyn("ncf") -an 50.70.410 &Syntax.Me-NO.Not\ Quite\ C\ (LEGO) :cal SetSyn("nqc") -an 50.70.420 &Syntax.Me-NO.Nroff :cal SetSyn("nroff") -an 50.70.430 &Syntax.Me-NO.NSIS\ script :cal SetSyn("nsis") -an 50.70.450 &Syntax.Me-NO.Objective\ C :cal SetSyn("objc") -an 50.70.460 &Syntax.Me-NO.Objective\ C++ :cal SetSyn("objcpp") -an 50.70.470 &Syntax.Me-NO.OCAML :cal SetSyn("ocaml") -an 50.70.480 &Syntax.Me-NO.Occam :cal SetSyn("occam") -an 50.70.490 &Syntax.Me-NO.Omnimark :cal SetSyn("omnimark") -an 50.70.500 &Syntax.Me-NO.OpenROAD :cal SetSyn("openroad") -an 50.70.510 &Syntax.Me-NO.Open\ Psion\ Lang :cal SetSyn("opl") -an 50.70.520 &Syntax.Me-NO.Oracle\ config :cal SetSyn("ora") +an 50.70.280 &Syntax.Me-NO.MS-DOS/Windows.Message\ text :cal SetSyn("msmessages") +an 50.70.290 &Syntax.Me-NO.MS-DOS/Windows.Module\ Definition :cal SetSyn("def") +an 50.70.300 &Syntax.Me-NO.MS-DOS/Windows.Registry :cal SetSyn("registry") +an 50.70.310 &Syntax.Me-NO.MS-DOS/Windows.Resource\ file :cal SetSyn("rc") +an 50.70.320 &Syntax.Me-NO.Msql :cal SetSyn("msql") +an 50.70.330 &Syntax.Me-NO.MuPAD :cal SetSyn("mupad") +an 50.70.340 &Syntax.Me-NO.MUSHcode :cal SetSyn("mush") +an 50.70.350 &Syntax.Me-NO.Muttrc :cal SetSyn("muttrc") +an 50.70.370 &Syntax.Me-NO.Nanorc :cal SetSyn("nanorc") +an 50.70.380 &Syntax.Me-NO.Nastran\ input/DMAP :cal SetSyn("nastran") +an 50.70.390 &Syntax.Me-NO.Natural :cal SetSyn("natural") +an 50.70.400 &Syntax.Me-NO.Netrc :cal SetSyn("netrc") +an 50.70.410 &Syntax.Me-NO.Novell\ NCF\ batch :cal SetSyn("ncf") +an 50.70.420 &Syntax.Me-NO.Not\ Quite\ C\ (LEGO) :cal SetSyn("nqc") +an 50.70.430 &Syntax.Me-NO.Nroff :cal SetSyn("nroff") +an 50.70.440 &Syntax.Me-NO.NSIS\ script :cal SetSyn("nsis") +an 50.70.460 &Syntax.Me-NO.Objective\ C :cal SetSyn("objc") +an 50.70.470 &Syntax.Me-NO.Objective\ C++ :cal SetSyn("objcpp") +an 50.70.480 &Syntax.Me-NO.OCAML :cal SetSyn("ocaml") +an 50.70.490 &Syntax.Me-NO.Occam :cal SetSyn("occam") +an 50.70.500 &Syntax.Me-NO.Omnimark :cal SetSyn("omnimark") +an 50.70.510 &Syntax.Me-NO.OpenROAD :cal SetSyn("openroad") +an 50.70.520 &Syntax.Me-NO.Open\ Psion\ Lang :cal SetSyn("opl") +an 50.70.530 &Syntax.Me-NO.Oracle\ config :cal SetSyn("ora") an 50.80.100 &Syntax.PQ.Packet\ filter\ conf :cal SetSyn("pf") an 50.80.110 &Syntax.PQ.Palm\ resource\ compiler :cal SetSyn("pilrc") an 50.80.120 &Syntax.PQ.Pam\ config :cal SetSyn("pamconf") @@ -328,7 +342,7 @@ an 50.80.130 &Syntax.PQ.PApp :cal SetSyn an 50.80.140 &Syntax.PQ.Pascal :cal SetSyn("pascal") an 50.80.150 &Syntax.PQ.Password\ file :cal SetSyn("passwd") an 50.80.160 &Syntax.PQ.PCCTS :cal SetSyn("pccts") -an 50.80.170 &Syntax.PQ.PPWizard :cal SetSyn("ppwiz") +an 50.80.170 &Syntax.PQ.PDF :cal SetSyn("pdf") an 50.80.180 &Syntax.PQ.Perl.Perl :cal SetSyn("perl") an 50.80.190 &Syntax.PQ.Perl.Perl\ POD :cal SetSyn("pod") an 50.80.200 &Syntax.PQ.Perl.Perl\ XS :cal SetSyn("xs") @@ -346,19 +360,21 @@ an 50.80.310 &Syntax.PQ.PostScript.PostS an 50.80.320 &Syntax.PQ.PostScript.PostScript\ Printer\ Description :cal SetSyn("ppd") an 50.80.330 &Syntax.PQ.Povray.Povray\ scene\ descr :cal SetSyn("pov") an 50.80.340 &Syntax.PQ.Povray.Povray\ configuration :cal SetSyn("povini") -an 50.80.350 &Syntax.PQ.Prescribe\ (Kyocera) :cal SetSyn("prescribe") -an 50.80.360 &Syntax.PQ.Printcap :cal SetSyn("pcap") -an 50.80.370 &Syntax.PQ.Privoxy :cal SetSyn("privoxy") -an 50.80.380 &Syntax.PQ.Procmail :cal SetSyn("procmail") -an 50.80.390 &Syntax.PQ.Product\ Spec\ File :cal SetSyn("psf") -an 50.80.400 &Syntax.PQ.Progress :cal SetSyn("progress") -an 50.80.410 &Syntax.PQ.Prolog :cal SetSyn("prolog") -an 50.80.420 &Syntax.PQ.Protocols :cal SetSyn("protocols") -an 50.80.430 &Syntax.PQ.Purify\ log :cal SetSyn("purifylog") -an 50.80.440 &Syntax.PQ.Pyrex :cal SetSyn("pyrex") -an 50.80.450 &Syntax.PQ.Python :cal SetSyn("python") -an 50.80.470 &Syntax.PQ.Quake :cal SetSyn("quake") -an 50.80.480 &Syntax.PQ.Quickfix\ window :cal SetSyn("qf") +an 50.80.350 &Syntax.PQ.PPWizard :cal SetSyn("ppwiz") +an 50.80.360 &Syntax.PQ.Prescribe\ (Kyocera) :cal SetSyn("prescribe") +an 50.80.370 &Syntax.PQ.Printcap :cal SetSyn("pcap") +an 50.80.380 &Syntax.PQ.Privoxy :cal SetSyn("privoxy") +an 50.80.390 &Syntax.PQ.Procmail :cal SetSyn("procmail") +an 50.80.400 &Syntax.PQ.Product\ Spec\ File :cal SetSyn("psf") +an 50.80.410 &Syntax.PQ.Progress :cal SetSyn("progress") +an 50.80.420 &Syntax.PQ.Prolog :cal SetSyn("prolog") +an 50.80.430 &Syntax.PQ.ProMeLa :cal SetSyn("promela") +an 50.80.440 &Syntax.PQ.Protocols :cal SetSyn("protocols") +an 50.80.450 &Syntax.PQ.Purify\ log :cal SetSyn("purifylog") +an 50.80.460 &Syntax.PQ.Pyrex :cal SetSyn("pyrex") +an 50.80.470 &Syntax.PQ.Python :cal SetSyn("python") +an 50.80.490 &Syntax.PQ.Quake :cal SetSyn("quake") +an 50.80.500 &Syntax.PQ.Quickfix\ window :cal SetSyn("qf") an 50.90.100 &Syntax.R-Sg.R.R :cal SetSyn("r") an 50.90.110 &Syntax.R-Sg.R.R\ help :cal SetSyn("rhelp") an 50.90.120 &Syntax.R-Sg.R.R\ noweb :cal SetSyn("rnoweb") @@ -374,35 +390,36 @@ an 50.90.210 &Syntax.R-Sg.Relax\ NG\ com an 50.90.220 &Syntax.R-Sg.Renderman.Renderman\ Shader\ Lang :cal SetSyn("sl") an 50.90.230 &Syntax.R-Sg.Renderman.Renderman\ Interface\ Bytestream :cal SetSyn("rib") an 50.90.240 &Syntax.R-Sg.Resolv\.conf :cal SetSyn("resolv") -an 50.90.250 &Syntax.R-Sg.Rexx :cal SetSyn("rexx") -an 50.90.260 &Syntax.R-Sg.Robots\.txt :cal SetSyn("robots") -an 50.90.270 &Syntax.R-Sg.RockLinux\ package\ desc\. :cal SetSyn("desc") -an 50.90.280 &Syntax.R-Sg.Rpcgen :cal SetSyn("rpcgen") -an 50.90.290 &Syntax.R-Sg.RPL/2 :cal SetSyn("rpl") -an 50.90.300 &Syntax.R-Sg.ReStructuredText :cal SetSyn("rst") -an 50.90.310 &Syntax.R-Sg.RTF :cal SetSyn("rtf") -an 50.90.320 &Syntax.R-Sg.Ruby :cal SetSyn("ruby") -an 50.90.340 &Syntax.R-Sg.S-Lang :cal SetSyn("slang") -an 50.90.350 &Syntax.R-Sg.Samba\ config :cal SetSyn("samba") -an 50.90.360 &Syntax.R-Sg.SAS :cal SetSyn("sas") -an 50.90.370 &Syntax.R-Sg.Sather :cal SetSyn("sather") -an 50.90.380 &Syntax.R-Sg.Scheme :cal SetSyn("scheme") -an 50.90.390 &Syntax.R-Sg.Scilab :cal SetSyn("scilab") -an 50.90.400 &Syntax.R-Sg.Screen\ RC :cal SetSyn("screen") -an 50.90.410 &Syntax.R-Sg.SDL :cal SetSyn("sdl") -an 50.90.420 &Syntax.R-Sg.Sed :cal SetSyn("sed") -an 50.90.430 &Syntax.R-Sg.Sendmail\.cf :cal SetSyn("sm") -an 50.90.440 &Syntax.R-Sg.Send-pr :cal SetSyn("sendpr") -an 50.90.450 &Syntax.R-Sg.Sensors\.conf :cal SetSyn("sensors") -an 50.90.460 &Syntax.R-Sg.Service\ Location\ config :cal SetSyn("slpconf") -an 50.90.470 &Syntax.R-Sg.Service\ Location\ registration :cal SetSyn("slpreg") -an 50.90.480 &Syntax.R-Sg.Service\ Location\ SPI :cal SetSyn("slpspi") -an 50.90.490 &Syntax.R-Sg.Services :cal SetSyn("services") -an 50.90.500 &Syntax.R-Sg.Setserial\ config :cal SetSyn("setserial") -an 50.90.510 &Syntax.R-Sg.SGML.SGML\ catalog :cal SetSyn("catalog") -an 50.90.520 &Syntax.R-Sg.SGML.SGML\ DTD :cal SetSyn("sgml") -an 50.90.530 &Syntax.R-Sg.SGML.SGML\ Declaration :cal SetSyn("sgmldecl") -an 50.90.540 &Syntax.R-Sg.SGML.SGML-linuxdoc :cal SetSyn("sgmllnx") +an 50.90.250 &Syntax.R-Sg.Reva\ Forth :cal SetSyn("reva") +an 50.90.260 &Syntax.R-Sg.Rexx :cal SetSyn("rexx") +an 50.90.270 &Syntax.R-Sg.Robots\.txt :cal SetSyn("robots") +an 50.90.280 &Syntax.R-Sg.RockLinux\ package\ desc\. :cal SetSyn("desc") +an 50.90.290 &Syntax.R-Sg.Rpcgen :cal SetSyn("rpcgen") +an 50.90.300 &Syntax.R-Sg.RPL/2 :cal SetSyn("rpl") +an 50.90.310 &Syntax.R-Sg.ReStructuredText :cal SetSyn("rst") +an 50.90.320 &Syntax.R-Sg.RTF :cal SetSyn("rtf") +an 50.90.330 &Syntax.R-Sg.Ruby :cal SetSyn("ruby") +an 50.90.350 &Syntax.R-Sg.S-Lang :cal SetSyn("slang") +an 50.90.360 &Syntax.R-Sg.Samba\ config :cal SetSyn("samba") +an 50.90.370 &Syntax.R-Sg.SAS :cal SetSyn("sas") +an 50.90.380 &Syntax.R-Sg.Sather :cal SetSyn("sather") +an 50.90.390 &Syntax.R-Sg.Scheme :cal SetSyn("scheme") +an 50.90.400 &Syntax.R-Sg.Scilab :cal SetSyn("scilab") +an 50.90.410 &Syntax.R-Sg.Screen\ RC :cal SetSyn("screen") +an 50.90.420 &Syntax.R-Sg.SDL :cal SetSyn("sdl") +an 50.90.430 &Syntax.R-Sg.Sed :cal SetSyn("sed") +an 50.90.440 &Syntax.R-Sg.Sendmail\.cf :cal SetSyn("sm") +an 50.90.450 &Syntax.R-Sg.Send-pr :cal SetSyn("sendpr") +an 50.90.460 &Syntax.R-Sg.Sensors\.conf :cal SetSyn("sensors") +an 50.90.470 &Syntax.R-Sg.Service\ Location\ config :cal SetSyn("slpconf") +an 50.90.480 &Syntax.R-Sg.Service\ Location\ registration :cal SetSyn("slpreg") +an 50.90.490 &Syntax.R-Sg.Service\ Location\ SPI :cal SetSyn("slpspi") +an 50.90.500 &Syntax.R-Sg.Services :cal SetSyn("services") +an 50.90.510 &Syntax.R-Sg.Setserial\ config :cal SetSyn("setserial") +an 50.90.520 &Syntax.R-Sg.SGML.SGML\ catalog :cal SetSyn("catalog") +an 50.90.530 &Syntax.R-Sg.SGML.SGML\ DTD :cal SetSyn("sgml") +an 50.90.540 &Syntax.R-Sg.SGML.SGML\ Declaration :cal SetSyn("sgmldecl") +an 50.90.550 &Syntax.R-Sg.SGML.SGML-linuxdoc :cal SetSyn("sgmllnx") an 50.100.100 &Syntax.Sh-S.Shell\ script.sh\ and\ ksh :cal SetSyn("sh") an 50.100.110 &Syntax.Sh-S.Shell\ script.csh :cal SetSyn("csh") an 50.100.120 &Syntax.Sh-S.Shell\ script.tcsh :cal SetSyn("tcsh") @@ -456,7 +473,8 @@ an 50.100.590 &Syntax.Sh-S.Strace :cal S an 50.100.600 &Syntax.Sh-S.Streaming\ descriptor\ file :cal SetSyn("sd") an 50.100.610 &Syntax.Sh-S.Subversion\ commit :cal SetSyn("svn") an 50.100.620 &Syntax.Sh-S.Sudoers :cal SetSyn("sudoers") -an 50.100.630 &Syntax.Sh-S.Sysctl\.conf :cal SetSyn("sysctl") +an 50.100.630 &Syntax.Sh-S.Symbian\ meta-makefile :cal SetSyn("mmp") +an 50.100.640 &Syntax.Sh-S.Sysctl\.conf :cal SetSyn("sysctl") an 50.110.100 &Syntax.TUV.TADS :cal SetSyn("tads") an 50.110.110 &Syntax.TUV.Tags :cal SetSyn("tags") an 50.110.120 &Syntax.TUV.TAK.TAK\ compare :cal SetSyn("takcmp") @@ -498,8 +516,9 @@ an 50.110.490 &Syntax.TUV.Vim.Vim\ scrip an 50.110.500 &Syntax.TUV.Vim.Viminfo\ file :cal SetSyn("viminfo") an 50.110.510 &Syntax.TUV.Virata\ config :cal SetSyn("virata") an 50.110.520 &Syntax.TUV.Visual\ Basic :cal SetSyn("vb") -an 50.110.530 &Syntax.TUV.VRML :cal SetSyn("vrml") -an 50.110.540 &Syntax.TUV.VSE\ JCL :cal SetSyn("vsejcl") +an 50.110.530 &Syntax.TUV.VOS\ CM\ macro :cal SetSyn("voscm") +an 50.110.540 &Syntax.TUV.VRML :cal SetSyn("vrml") +an 50.110.550 &Syntax.TUV.VSE\ JCL :cal SetSyn("vsejcl") an 50.120.100 &Syntax.WXYZ.WEB.CWEB :cal SetSyn("cweb") an 50.120.110 &Syntax.WXYZ.WEB.WEB :cal SetSyn("web") an 50.120.120 &Syntax.WXYZ.WEB.WEB\ Changes :cal SetSyn("change") @@ -517,16 +536,17 @@ an 50.120.260 &Syntax.WXYZ.X\ Keyboard\ an 50.120.270 &Syntax.WXYZ.X\ Pixmap :cal SetSyn("xpm") an 50.120.280 &Syntax.WXYZ.X\ Pixmap\ (2) :cal SetSyn("xpm2") an 50.120.290 &Syntax.WXYZ.X\ resources :cal SetSyn("xdefaults") -an 50.120.300 &Syntax.WXYZ.Xinetd\.conf :cal SetSyn("xinetd") -an 50.120.310 &Syntax.WXYZ.Xmodmap :cal SetSyn("xmodmap") -an 50.120.320 &Syntax.WXYZ.Xmath :cal SetSyn("xmath") -an 50.120.330 &Syntax.WXYZ.XML :cal SetSyn("xml") -an 50.120.340 &Syntax.WXYZ.XML\ Schema\ (XSD) :cal SetSyn("xsd") -an 50.120.350 &Syntax.WXYZ.XQuery :cal SetSyn("xquery") -an 50.120.360 &Syntax.WXYZ.Xslt :cal SetSyn("xslt") -an 50.120.370 &Syntax.WXYZ.XFree86\ Config :cal SetSyn("xf86conf") -an 50.120.390 &Syntax.WXYZ.YAML :cal SetSyn("yaml") -an 50.120.400 &Syntax.WXYZ.Yacc :cal SetSyn("yacc") +an 50.120.300 &Syntax.WXYZ.XBL :cal SetSyn("xbl") +an 50.120.310 &Syntax.WXYZ.Xinetd\.conf :cal SetSyn("xinetd") +an 50.120.320 &Syntax.WXYZ.Xmodmap :cal SetSyn("xmodmap") +an 50.120.330 &Syntax.WXYZ.Xmath :cal SetSyn("xmath") +an 50.120.340 &Syntax.WXYZ.XML :cal SetSyn("xml") +an 50.120.350 &Syntax.WXYZ.XML\ Schema\ (XSD) :cal SetSyn("xsd") +an 50.120.360 &Syntax.WXYZ.XQuery :cal SetSyn("xquery") +an 50.120.370 &Syntax.WXYZ.Xslt :cal SetSyn("xslt") +an 50.120.380 &Syntax.WXYZ.XFree86\ Config :cal SetSyn("xf86conf") +an 50.120.400 &Syntax.WXYZ.YAML :cal SetSyn("yaml") +an 50.120.410 &Syntax.WXYZ.Yacc :cal SetSyn("yacc") " The End Of The Syntax Menu diff --git a/runtime/tutor/Contents b/runtime/tutor/Contents deleted file mode 100644 --- a/runtime/tutor/Contents +++ /dev/null @@ -1,23 +0,0 @@ -Vim Vi IMproved. A clone of the UNIX text editor Vi. Very useful - for editing programs and other plain ASCII text. Full Vi - compatibility and includes all Ex commands. Extra features - above Vi: Multilevel undo, multiple windows, syntax - highlighting, command line history, folding, improved command - line editing, command typeahead display, command to display - yank buffers, possibility to edit binary files, file name - stack, support for Manx QuickFix and other compiler's error - messages, shows current file name in window title, on-line - help, rectangular cut/paste, etc., etc., etc... - - Version 7.2a. Also runs under UNIX, MSDOS and other systems. - vim72art.tgz contains the documentation and syntax files. - vim72abin.tgz contains the binaries. - vim72asrc.tgz contains the sources. - Author: Bram Moolenaar et al. - - -Xxd Hex dumper and reader. Can be used to view files as hex, edit - them and write them back. Can also be used to patch files. - - Version 1.8 (1997 May 22) - Author: Juergen Weigert diff --git a/runtime/tutor/Contents.info b/runtime/tutor/Contents.info deleted file mode 100755 index 9e855c7e985538013037a50559046912fb9b3a23..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 GIT binary patch literal 0 Hc$@. -This port is not maintained or supported by IBM!! - - -For the list of changes see runtime/doc/os_390.txt. - - -Compiling: ----------- - -Note: After the file configure was created via autoconf, it had been - handedited, to make the test for ICEConnectionNumber work. - DO NOT run autoconf again! - -Without X11: - -If you build VIM without X11 support, compiling and building is nearly -straightforward. The only restriction is, that you can't call make from the -VIM toplevel directory. Change to the src directory first and call make from -there. Here is a what to do: - - # Don't use c89! - # Make additional symbols visible. - # Allow intermixing of compiler options and files. - - $ export CC=cc - $ export CFLAGS=-D_ALL_SOURCE - $ export _CC_CCMODE=1 - $./configure --enable-max-features --without-x --enable-gui=no - $ cd src - $ make - $ make test - - Note: Test 28 will be reported as failed. This is because diff can't - compare files containing '\0' characters. Test 11 will fail if you - don't have gzip. - - $ make install - - -With X11: - -There are two ways for building VIM with X11 support. The first way is simple -and results in a big executable (~13 Mb), the second needs a few additional -steps and results in a much smaller executable (~4.5 Mb). This examples assume -you want Motif. - - The easy way: - $ export CC=cc - $ export CFLAGS="-D_ALL_SOURCE -W c,dll" - $ export LDFLAGS="-W l,dll" - $ export _CC_CCMODE=1 - $ ./configure --enable-max-features --enable-gui=motif - $ cd src - $ make - - With this VIM is linked statically with the X11 libraries. - - The smarter way: - Make VIM as described above. Then create a file named 'link.sed' with the - following contense: - - s/-lXext *//g - s/-lXmu *//g - s/-lXm */\/usr\/lib\/Xm.x /g - s/-lX11 */\/usr\/lib\/X11.x /g - s/-lXt *//g - s/-lSM */\/usr\/lib\/SM.x /g - s/-lICE */\/usr\/lib\/ICE.x /g - - Then do: - $ rm vim - $ make - - Now Vim is linked with the X11-DLLs. - - See the Makefile and the file link.sh on how link.sed is used. - - -Hint: ------ -Use the online help! (See weaknesses below.) - -Example: -Enter ':help syntax' and then press several times, you will switch -through all help items containing 'syntax'. Press on the one you are -interested at. Or press and you will get a list of all items printed -that contain 'syntax'. - -The helpfiles contains cross-references. Links are between '|'. Position the -cursor on them and press to follow this link. Use to jump -back. - -Known weaknesses: ------------------ - -- You can't call make from the toplevel directory, you have to do a 'cd src' - first. If you do it, make will call configure again. I don't know why and - didn't investigate it, there were more important things to do. If you can - make it work drop me a note. - -- The documentation was not updated for this alpha release. It contains lot of - ASCII dependencies, especially in examples. - -- Digraphs are dependent on code page 1047. Digraphs are used to enter - characters that normally cannot be entered by an ordinary keyboard. - See ":help digraphs". - -- Using 'ga' to show the code of the character under the cursor shows the - correct dec/hex/oct values, but the other informations might be missing or - wrong. - -- The sed syntax file doesn't work, it is ASCII dependent. - -Bugs: ------ -If you find a bug please inform me (schandl@de.ibm.com), don't disturb Bram -Moolenaar. It's most likely a bug I introduced during porting or some ASCII -dependency I didn't notice. - -Feedback: ---------- -Feedback welcome! Just drop me a note. diff --git a/runtime/tutor/README_src.txt b/runtime/tutor/README_src.txt deleted file mode 100644 --- a/runtime/tutor/README_src.txt +++ /dev/null @@ -1,10 +0,0 @@ -README_src.txt for version 7.2a of Vim: Vi IMproved. - -The source archive contains the files needed to compile Vim on Unix systems. -It is packed for Unix systems (NL line separator). It is also used for other -systems in combination with the extra archive (vim-7.0-extra.tar.gz, in the -"extra" directory of ftp.vim.org). - -For more information, see the README.txt file that comes with the runtime -archive (vim-7.0-rt.tar.gz). To be able to run Vim you MUST get the runtime -archive too! diff --git a/runtime/tutor/README_srcdos.txt b/runtime/tutor/README_srcdos.txt deleted file mode 100644 --- a/runtime/tutor/README_srcdos.txt +++ /dev/null @@ -1,12 +0,0 @@ -README_srcdos.txt for version 7.2a of Vim: Vi IMproved. - -See "README.txt" for general information about Vim. -See "README_dos.txt" for installation instructions for MS-DOS and MS-Windows. -These files are in the runtime archive (vim70rt.zip). - - -The DOS source archive contains the files needed to compile Vim on MS-DOS or -MS-Windows. It is packed for DOS systems, with CR-LF. It also includes the -VisVim sources. - -See "src/INSTALLpc.txt" for instructions on how to compile Vim on the PC. diff --git a/runtime/tutor/README_unix.txt b/runtime/tutor/README_unix.txt deleted file mode 100644 --- a/runtime/tutor/README_unix.txt +++ /dev/null @@ -1,10 +0,0 @@ -README_unix.txt for version 7.2a of Vim: Vi IMproved. - -This file explains the installation of Vim on Unix systems. -See "README.txt" for general information about Vim. - - -When you use the source distribution, "make install" is used to install Vim. -See the "INSTALL" file in the "src" directory. - -If you use a compiled package, follow the instructions for the package. diff --git a/runtime/tutor/README_vms.txt b/runtime/tutor/README_vms.txt deleted file mode 100644 --- a/runtime/tutor/README_vms.txt +++ /dev/null @@ -1,48 +0,0 @@ -README_vms.txt for version 7.2a of Vim: Vi IMproved. - -This file explains the installation of Vim on VMS systems. -See "README.txt" in the runtime archive for information about Vim. - - -Most information can be found in the on-line documentation. Use ":help vms" -inside Vim. Or get the runtime files and read runtime/doc/os_vms.txt to find -out how to install and configure Vim with runtime files etc. - -To compile Vim yourself you need three archives: - vim-X.X-rt.tar.gz runtime files - vim-X.X-src.tar.gz source files - vim-X.X-extra.tar.gz extra source files - -Compilation is recommended, in order to make sure that the correct -libraries are used for your specific system. Read about compiling in -src/INSTALLvms.txt. - -To use the binary version, you need one of these archives: - - vim-XX-exe-ia64-gui.zip IA64 GUI/Motif executables - vim-XX-exe-ia64-gtk.zip IA64 GUI/GTK executables - vim-XX-exe-ia64-term.zip IA64 console executables - vim-XX-exe-axp-gui.zip Alpha GUI/Motif executables - vim-XX-exe-axp-gtk.zip Alpha GUI/GTK executables - vim-XX-exe-axp-term.zip Alpha console executables - vim-XX-exe-vax-gui.zip VAX GUI executables - vim-XX-exe-vax-term.zip VAX console executables - -and of course - vim-XX-runtime.zip runtime files - -The binary archives contain: vim.exe, ctags.exe, xxd.exe files, -but there are also prepared "deploy ready" archives: - -vim-XX-ia64.zip GUI and console executables with runtime and - help files for IA64 systems -vim-XX-axp.zip GUI and console executables with runtime and - help files for Alpha systems -vim-XX-vax.zip GUI and console executables with runtime and - help files for VAX systems - -GTK builds need LIBGTK library installed. - -These executables and up to date patches for OpenVMS system are downloadable -from http://www.polarhome.com/vim/ or ftp://ftp.polarhome.com/pub/vim/ - diff --git a/runtime/tutor/README_w32s.txt b/runtime/tutor/README_w32s.txt deleted file mode 100644 --- a/runtime/tutor/README_w32s.txt +++ /dev/null @@ -1,15 +0,0 @@ -README_w32s.txt for version 7.2a of Vim: Vi IMproved. - -This archive contains the gvim.exe that was specifically compiled for use in -the Win32s subsystem in MS-Windows 3.1 and 3.11. - -Also see the README_bindos.txt, README_dos.txt and README.txt files. - -Be careful not to overwrite the Win32s gvim.exe with the another gvim.exe when -unpacking another binary archive! Check the output of ":version": - Win32s - "MS-Windows 16/32 bit GUI version" - Win32 - "MS-Windows 32 bit GUI version" -Win32 with OLE - "MS-Windows 32 bit GUI version with OLE support" - -For further information, type this inside Vim: - :help win32s diff --git a/runtime/tutor/Vim.info b/runtime/tutor/Vim.info deleted file mode 100755 index 5c465ffab394d442dfdd993dfe5f013d3b5e9b5e..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 GIT binary patch literal 0 Hc$@ -:" Last change: 2005 Jun 12 -:" -:" To use inside Vim: -:" :so $VIMRUNTIME/bugreport.vim -:" Or, from the command line: -:" vim -s $VIMRUNTIME/bugreport.vim -:" -:" The "if 1" lines are to avoid error messages when expression evaluation is -:" not compiled in. -:" -:if 1 -: let more_save = &more -:endif -:set nomore -:if has("unix") -: !echo "uname -a" >bugreport.txt -: !uname -a >>bugreport.txt -:endif -:redir >>bugreport.txt -:version -:if 1 -: func CheckDir(n) -: if isdirectory(a:n) -: echo 'directory "' . a:n . '" exists' -: else -: echo 'directory "' . a:n . '" does NOT exist' -: endif -: endfun -: func CheckFile(n) -: if filereadable(a:n) -: echo '"' . a:n . '" is readable' -: else -: echo '"' . a:n . '" is NOT readable' -: endif -: endfun -: echo "--- Directories and Files ---" -: echo '$VIM = "' . $VIM . '"' -: call CheckDir($VIM) -: echo '$VIMRUNTIME = "' . $VIMRUNTIME . '"' -: call CheckDir($VIMRUNTIME) -: call CheckFile(&helpfile) -: call CheckFile(fnamemodify(&helpfile, ":h") . "/tags") -: call CheckFile($VIMRUNTIME . "/menu.vim") -: call CheckFile($VIMRUNTIME . "/filetype.vim") -: call CheckFile($VIMRUNTIME . "/syntax/synload.vim") -: delfun CheckDir -: delfun CheckFile -: echo "--- Scripts sourced ---" -: scriptnames -:endif -:set all -:set termcap -:if has("autocmd") -: au -:endif -:if 1 -: echo "--- Normal/Visual mode mappings ---" -:endif -:map -:if 1 -: echo "--- Insert/Command-line mode mappings ---" -:endif -:map! -:if 1 -: echo "--- Abbreviations ---" -:endif -:ab -:if 1 -: echo "--- Highlighting ---" -:endif -:highlight -:if 1 -: echo "--- Variables ---" -:endif -:if 1 -: let -:endif -:redir END -:set more& -:if 1 -: let &more = more_save -: unlet more_save -:endif -:e bugreport.txt diff --git a/runtime/tutor/runtime/delmenu.vim b/runtime/tutor/runtime/delmenu.vim deleted file mode 100644 --- a/runtime/tutor/runtime/delmenu.vim +++ /dev/null @@ -1,25 +0,0 @@ -" This Vim script deletes all the menus, so that they can be redefined. -" Warning: This also deletes all menus defined by the user! -" -" Maintainer: Bram Moolenaar -" Last Change: 2001 May 27 - -aunmenu * - -silent! unlet did_install_default_menus -silent! unlet did_install_syntax_menu -if exists("did_menu_trans") - menutrans clear - unlet did_menu_trans -endif - -silent! unlet find_help_dialog - -silent! unlet menutrans_help_dialog -silent! unlet menutrans_path_dialog -silent! unlet menutrans_tags_dialog -silent! unlet menutrans_textwidth_dialog -silent! unlet menutrans_fileformat_dialog -silent! unlet menutrans_no_file - -" vim: set sw=2 : diff --git a/runtime/tutor/runtime/doc.info b/runtime/tutor/runtime/doc.info deleted file mode 100755 index a836031ee043e8f7a60249a7578cd1e7ad978b55..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 GIT binary patch literal 0 Hc$@ -" Last Change: 2006 Mar 29 - -" Don't use Vi-compatible mode. -set nocompatible - -" Use the mswin.vim script for most mappings -source :p:h/mswin.vim - -" Vim is in Insert mode by default -set insertmode - -" Make a buffer hidden when editing another one -set hidden - -" Make cursor keys ignore wrapping -inoremap =pumvisible() ? "\Down>" : "\C-O>gj" -inoremap =pumvisible() ? "\Up>" : "\C-O>gk" - -" CTRL-F does Find dialog instead of page forward -noremap :promptfind -vnoremap y:promptfind " -onoremap :promptfind -inoremap :promptfind -cnoremap :promptfind - - -set backspace=2 " allow backspacing over everything in insert mode -set autoindent " always set autoindenting on -if has("vms") - set nobackup " do not keep a backup file, use versions instead -else - set backup " keep a backup file -endif -set history=50 " keep 50 lines of command line history -set ruler " show the cursor position all the time -set incsearch " do incremental searching -set mouse=a " always use the mouse - -" Don't use Ex mode, use Q for formatting -map Q gq - -" Switch syntax highlighting on, when the terminal has colors -" Highlight the last used search pattern on the next search command. -if &t_Co > 2 || has("gui_running") - syntax on - set hlsearch - nohlsearch -endif - -" Only do this part when compiled with support for autocommands. -if has("autocmd") - - " Enable file type detection. - " Use the default filetype settings, so that mail gets 'tw' set to 72, - " 'cindent' is on in C files, etc. - " Also load indent files, to automatically do language-dependent indenting. - filetype plugin indent on - - " For all text files set 'textwidth' to 78 characters. - au FileType text setlocal tw=78 - -endif " has("autocmd") - -" vim: set sw=2 : diff --git a/runtime/tutor/runtime/filetype.vim b/runtime/tutor/runtime/filetype.vim deleted file mode 100644 --- a/runtime/tutor/runtime/filetype.vim +++ /dev/null @@ -1,2412 +0,0 @@ -" Vim support file to detect file types -" -" Maintainer: Bram Moolenaar -" Last Change: 2008 Jun 20 - -" Listen very carefully, I will say this only once -if exists("did_load_filetypes") - finish -endif -let did_load_filetypes = 1 - -" Line continuation is used here, remove 'C' from 'cpoptions' -let s:cpo_save = &cpo -set cpo&vim - -augroup filetypedetect - -" Ignored extensions -if exists("*fnameescape") -au BufNewFile,BufRead ?\+.orig,?\+.bak,?\+.old,?\+.new,?\+.rpmsave,?\+.rpmnew - \ exe "doau filetypedetect BufRead " . fnameescape(expand(":r")) -au BufNewFile,BufRead *~ - \ let s:name = expand("") | - \ let s:short = substitute(s:name, '\~$', '', '') | - \ if s:name != s:short && s:short != "" | - \ exe "doau filetypedetect BufRead " . fnameescape(s:short) | - \ endif | - \ unlet s:name s:short -au BufNewFile,BufRead ?\+.in - \ if expand(":t") != "configure.in" | - \ exe "doau filetypedetect BufRead " . fnameescape(expand(":r")) | - \ endif -elseif &verbose > 0 - echomsg "Warning: some filetypes will not be recognized because this version of Vim does not have fnameescape()" -endif - -" Pattern used to match file names which should not be inspected. -" Currently finds compressed files. -if !exists("g:ft_ignore_pat") - let g:ft_ignore_pat = '\.\(Z\|gz\|bz2\|zip\|tgz\)$' -endif - -" Function used for patterns that end in a star: don't set the filetype if the -" file name matches ft_ignore_pat. -func! s:StarSetf(ft) - if expand("") !~ g:ft_ignore_pat - exe 'setf ' . a:ft - endif -endfunc - -" Abaqus or Trasys -au BufNewFile,BufRead *.inp call s:Check_inp() - -func! s:Check_inp() - if getline(1) =~ '^\*' - setf abaqus - else - let n = 1 - if line("$") > 500 - let nmax = 500 - else - let nmax = line("$") - endif - while n <= nmax - if getline(n) =~? "^header surface data" - setf trasys - break - endif - let n = n + 1 - endwhile - endif -endfunc - -" A-A-P recipe -au BufNewFile,BufRead *.aap setf aap - -" A2ps printing utility -au BufNewFile,BufRead etc/a2ps.cfg,etc/a2ps/*.cfg,a2psrc,.a2psrc setf a2ps - -" ABAB/4 -au BufNewFile,BufRead *.abap setf abap - -" ABC music notation -au BufNewFile,BufRead *.abc setf abc - -" ABEL -au BufNewFile,BufRead *.abl setf abel - -" AceDB -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 - -" AMPL -au BufNewFile,BufRead *.run setf ampl - -" Ant -au BufNewFile,BufRead build.xml setf ant - -" Apache style config file -au BufNewFile,BufRead proftpd.conf* call s:StarSetf('apachestyle') - -" Apache config file -au BufNewFile,BufRead .htaccess setf apache -au BufNewFile,BufRead httpd.conf*,srm.conf*,access.conf*,apache.conf*,apache2.conf*,/etc/apache2/*.conf* call s:StarSetf('apache') - -" XA65 MOS6510 cross assembler -au BufNewFile,BufRead *.a65 setf a65 - -" Applix ELF -au BufNewFile,BufRead *.am - \ if expand("") !~? 'Makefile.am\>' | setf elf | endif - -" ALSA configuration -au BufNewFile,BufRead ~/.asoundrc,/usr/share/alsa/alsa.conf,/etc/asound.conf setf alsaconf - -" Arc Macro Language -au BufNewFile,BufRead *.aml setf aml - -" Arch Inventory file -au BufNewFile,BufRead .arch-inventory,=tagging-method setf arch - -" ART*Enterprise (formerly ART-IM) -au BufNewFile,BufRead *.art setf art - -" ASN.1 -au BufNewFile,BufRead *.asn,*.asn1 setf asn - -" Active Server Pages (with Visual Basic Script) -au BufNewFile,BufRead *.asa - \ if exists("g:filetype_asa") | - \ exe "setf " . g:filetype_asa | - \ else | - \ setf aspvbs | - \ endif - -" Active Server Pages (with Perl or Visual Basic Script) -au BufNewFile,BufRead *.asp - \ if exists("g:filetype_asp") | - \ exe "setf " . g:filetype_asp | - \ elseif getline(1) . getline(2) . getline(3) =~? "perlscript" | - \ setf aspperl | - \ else | - \ setf aspvbs | - \ endif - -" Grub (must be before catch *.lst) -au BufNewFile,BufRead /boot/grub/menu.lst,/boot/grub/grub.conf,/etc/grub.conf setf grub - -" Assembly (all kinds) -" *.lst is not pure assembly, it has two extra columns (address, byte codes) -au BufNewFile,BufRead *.asm,*.[sS],*.[aA],*.mac,*.lst call s:FTasm() - -" This function checks for the kind of assembly that is wanted by the user, or -" can be detected from the first five lines of the file. -func! s:FTasm() - " make sure b:asmsyntax exists - if !exists("b:asmsyntax") - let b:asmsyntax = "" - endif - - if b:asmsyntax == "" - call s:FTasmsyntax() - endif - - " if b:asmsyntax still isn't set, default to asmsyntax or GNU - if b:asmsyntax == "" - if exists("g:asmsyntax") - let b:asmsyntax = g:asmsyntax - else - let b:asmsyntax = "asm" - endif - endif - - exe "setf " . b:asmsyntax -endfunc - -func! s:FTasmsyntax() - " see if file contains any asmsyntax=foo overrides. If so, change - " b:asmsyntax appropriately - let head = " ".getline(1)." ".getline(2)." ".getline(3)." ".getline(4). - \" ".getline(5)." " - if head =~ '\sasmsyntax=\S\+\s' - let b:asmsyntax = substitute(head, '.*\sasmsyntax=\([a-zA-Z0-9]\+\)\s.*','\1', "") - elseif ((head =~? '\.title') || (head =~? '\.ident') || (head =~? '\.macro') || (head =~? '\.subtitle') || (head =~? '\.library')) - let b:asmsyntax = "vmasm" - endif -endfunc - -" Macro (VAX) -au BufNewFile,BufRead *.mar setf vmasm - -" Atlas -au BufNewFile,BufRead *.atl,*.as setf atlas - -" Autoit v3 -au BufNewFile,BufRead *.au3 setf autoit - -" Autohotkey -au BufNewFile,BufRead *.ahk setf autohotkey - -" Automake -au BufNewFile,BufRead [mM]akefile.am,GNUmakefile.am setf automake - -" Autotest .at files are actually m4 -au BufNewFile,BufRead *.at setf m4 - -" Avenue -au BufNewFile,BufRead *.ave setf ave - -" Awk -au BufNewFile,BufRead *.awk setf awk - -" B -au BufNewFile,BufRead *.mch,*.ref,*.imp setf b - -" BASIC or Visual Basic -au BufNewFile,BufRead *.bas call s:FTVB("basic") - -" Check if one of the first five lines contains "VB_Name". In that case it is -" probably a Visual Basic file. Otherwise it's assumed to be "alt" filetype. -func! s:FTVB(alt) - if getline(1).getline(2).getline(3).getline(4).getline(5) =~? 'VB_Name\|Begin VB\.\(Form\|MDIForm\|UserControl\)' - setf vb - else - exe "setf " . a:alt - endif -endfunc - -" 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. -au BufNewFile,BufRead *.cmd - \ if getline(1) =~ '^/\*' | setf rexx | else | setf dosbatch | endif - -" Batch file for 4DOS -au BufNewFile,BufRead *.btm call s:FTbtm() -func! s:FTbtm() - if exists("g:dosbatch_syntax_for_btm") && g:dosbatch_syntax_for_btm - setf dosbatch - else - setf btm - endif -endfunc - -" BC calculator -au BufNewFile,BufRead *.bc setf bc - -" BDF font -au BufNewFile,BufRead *.bdf setf bdf - -" BibTeX bibliography database file -au BufNewFile,BufRead *.bib setf bib - -" BibTeX Bibliography Style -au BufNewFile,BufRead *.bst setf bst - -" BIND configuration -au BufNewFile,BufRead named.conf,rndc.conf setf named - -" BIND zone -au BufNewFile,BufRead named.root setf bindzone -au BufNewFile,BufRead *.db call s:BindzoneCheck('') - -func! s:BindzoneCheck(default) - if getline(1).getline(2).getline(3).getline(4) =~ '^; <<>> DiG [0-9.]\+ <<>>\|BIND.*named\|$ORIGIN\|$TTL\|IN\s\+SOA' - setf bindzone - elseif a:default != '' - exe 'setf ' . a:default - endif -endfunc - -" Blank -au BufNewFile,BufRead *.bl setf blank - -" C or lpc -au BufNewFile,BufRead *.c call s:FTlpc() - -func! s:FTlpc() - if exists("g:lpc_syntax_for_c") - let lnum = 1 - while lnum <= 12 - if getline(lnum) =~# '^\(//\|inherit\|private\|protected\|nosave\|string\|object\|mapping\|mixed\)' - setf lpc - return - endif - let lnum = lnum + 1 - endwhile - endif - setf c -endfunc - -" Calendar -au BufNewFile,BufRead calendar setf calendar -au BufNewFile,BufRead */.calendar/*, - \*/share/calendar/*/calendar.*,*/share/calendar/calendar.* - \ call s:StarSetf('calendar') - -" C# -au BufNewFile,BufRead *.cs setf cs - -" Cdrdao TOC -au BufNewFile,BufRead *.toc setf cdrtoc - -" Cdrdao config -au BufNewFile,BufRead etc/cdrdao.conf,etc/defaults/cdrdao,etc/default/cdrdao,~/.cdrdao setf cdrdaoconf - -" Cfengine -au BufNewFile,BufRead cfengine.conf setf cfengine - -" 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 - -" Cyn++ -au BufNewFile,BufRead *.cyn setf cynpp - -" Cynlib -" .cc and .cpp files can be C++ or Cynlib. -au BufNewFile,BufRead *.cc - \ if exists("cynlib_syntax_for_cc")|setf cynlib|else|setf cpp|endif -au BufNewFile,BufRead *.cpp - \ if exists("cynlib_syntax_for_cpp")|setf cynlib|else|setf cpp|endif - -" C++ -if has("fname_case") - au BufNewFile,BufRead *.cxx,*.c++,*.C,*.H,*.hh,*.hxx,*.hpp,*.moc,*.tcc,*.inl setf cpp -else - au BufNewFile,BufRead *.cxx,*.c++,*.hh,*.hxx,*.hpp,*.moc,*.tcc,*.inl setf cpp -endif - -" .h files can be C, Ch C++, ObjC or ObjC++. -" Set c_syntax_for_h if you want C, ch_syntax_for_h if you want Ch. ObjC is -" detected automatically. -au BufNewFile,BufRead *.h call s:FTheader() - -func! s:FTheader() - if match(getline(1, min([line("$"), 200])), '^@\(interface\|end\|class\)') > -1 - setf objc - elseif exists("c_syntax_for_h") - setf c - elseif exists("ch_syntax_for_h") - setf ch - else - setf cpp - endif -endfunc - -" Ch (CHscript) -au BufNewFile,BufRead *.chf setf ch - -" TLH files are C++ headers generated by Visual C++'s #import from typelibs -au BufNewFile,BufRead *.tlh setf cpp - -" Cascading Style Sheets -au BufNewFile,BufRead *.css setf css - -" Century Term Command Scripts (*.cmd too) -au BufNewFile,BufRead *.con setf cterm - -" Changelog -au BufNewFile,BufRead changelog.Debian,changelog.dch,NEWS.Debian,NEWS.dch - \ setf debchangelog - -au BufNewFile,BufRead [cC]hange[lL]og - \ if getline(1) =~ '; urgency=' - \| setf debchangelog - \| else - \| setf changelog - \| endif - -au BufNewFile,BufRead NEWS - \ if getline(1) =~ '; urgency=' - \| setf debchangelog - \| endif - -" CHILL -au BufNewFile,BufRead *..ch setf chill - -" Changes for WEB and CWEB or CHILL -au BufNewFile,BufRead *.ch call s:FTchange() - -" This function checks if one of the first ten lines start with a '@'. In -" that case it is probably a change file. -" If the first line starts with # or ! it's probably a ch file. -" If a line has "main", "include", "//" ir "/*" it's probably ch. -" Otherwise CHILL is assumed. -func! s:FTchange() - let lnum = 1 - while lnum <= 10 - if getline(lnum)[0] == '@' - setf change - return - endif - if lnum == 1 && (getline(1)[0] == '#' || getline(1)[0] == '!') - setf ch - return - endif - if getline(lnum) =~ "MODULE" - setf chill - return - endif - if getline(lnum) =~ 'main\s*(\|#\s*include\|//' - setf ch - return - endif - let lnum = lnum + 1 - endwhile - setf chill -endfunc - -" ChordPro -au BufNewFile,BufRead *.chopro,*.crd,*.cho,*.crdpro,*.chordpro setf chordpro - -" Clean -au BufNewFile,BufRead *.dcl,*.icl setf clean - -" Clever -au BufNewFile,BufRead *.eni setf cl - -" Clever or dtd -au BufNewFile,BufRead *.ent call s:FTent() - -func! s:FTent() - " This function checks for valid cl syntax in the first five lines. - " Look for either an opening comment, '#', or a block start, '{". - " If not found, assume SGML. - let lnum = 1 - while lnum < 6 - let line = getline(lnum) - if line =~ '^\s*[#{]' - setf cl - return - elseif line !~ '^\s*$' - " Not a blank line, not a comment, and not a block start, - " so doesn't look like valid cl code. - break - endif - let lnum = lnum + 1 - endw - setf dtd -endfunc - -" Clipper (or FoxPro; could also be eviews) -au BufNewFile,BufRead *.prg - \ if exists("g:filetype_prg") | - \ exe "setf " . g:filetype_prg | - \ else | - \ setf clipper | - \ endif - -" 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) -au BufNewFile,BufRead *.cpy - \ if getline(1) =~ '^##' | - \ setf python | - \ else | - \ setf cobol | - \ endif - -" Coco/R -au BufNewFile,BufRead *.atg setf coco - -" Cold Fusion -au BufNewFile,BufRead *.cfm,*.cfi,*.cfc setf cf - -" Configure scripts -au BufNewFile,BufRead configure.in,configure.ac setf config - -" CUDA Cumpute Unified Device Architecture -au BufNewFile,BufRead *.cu setf cuda - -" WildPackets EtherPeek Decoder -au BufNewFile,BufRead *.dcd setf dcd - -" Enlightenment configuration files -au BufNewFile,BufRead *enlightenment/*.cfg setf c - -" Eterm -au BufNewFile,BufRead *Eterm/*.cfg setf eterm - -" Lynx config files -au BufNewFile,BufRead lynx.cfg setf lynx - -" Quake -au BufNewFile,BufRead *baseq[2-3]/*.cfg,*id1/*.cfg setf quake -au BufNewFile,BufRead *quake[1-3]/*.cfg setf quake - -" Quake C -au BufNewFile,BufRead *.qc setf c - -" Configure files -au BufNewFile,BufRead *.cfg setf cfg - -" Communicating Sequential Processes -au BufNewFile,BufRead *.csp,*.fdr setf csp - -" CUPL logic description and simulation -au BufNewFile,BufRead *.pld setf cupl -au BufNewFile,BufRead *.si setf cuplsim - -" Debian Control -au BufNewFile,BufRead */debian/control setf debcontrol -au BufNewFile,BufRead control - \ if getline(1) =~ '^Source:' - \| setf debcontrol - \| endif - -" Debian Sources.list -au BufNewFile,BufRead /etc/apt/sources.list setf debsources - -" Deny hosts -au BufNewFile,BufRead denyhosts.conf setf denyhosts - -" ROCKLinux package description -au BufNewFile,BufRead *.desc setf desc - -" the D language or dtrace -au BufNewFile,BufRead *.d call s:DtraceCheck() - -func! s:DtraceCheck() - let lines = getline(1, min([line("$"), 100])) - if match(lines, '^#!\S\+dtrace\|#pragma\s\+D\s\+option\|:\S\{-}:\S\{-}:') > -1 - setf dtrace - else - setf d - endif -endfunc - -" Desktop files -au BufNewFile,BufRead *.desktop,.directory setf desktop - -" Dict config -au BufNewFile,BufRead dict.conf,.dictrc setf dictconf - -" Dictd config -au BufNewFile,BufRead dictd.conf setf dictdconf - -" Diff files -au BufNewFile,BufRead *.diff,*.rej,*.patch setf diff - -" Dircolors -au BufNewFile,BufRead .dir_colors,/etc/DIR_COLORS setf dircolors - -" Diva (with Skill) or InstallShield -au BufNewFile,BufRead *.rul - \ if getline(1).getline(2).getline(3).getline(4).getline(5).getline(6) =~? 'InstallShield' | - \ setf ishd | - \ else | - \ setf diva | - \ endif - -" DCL (Digital Command Language - vms) or DNS zone file -au BufNewFile,BufRead *.com call s:BindzoneCheck('dcl') - -" DOT -au BufNewFile,BufRead *.dot setf dot - -" Dylan - lid files -au BufNewFile,BufRead *.lid setf dylanlid - -" Dylan - intr files (melange) -au BufNewFile,BufRead *.intr setf dylanintr - -" Dylan -au BufNewFile,BufRead *.dylan setf dylan - -" Microsoft Module Definition -au BufNewFile,BufRead *.def setf def - -" Dracula -au BufNewFile,BufRead *.drac,*.drc,*lvs,*lpe setf dracula - -" dsl -au BufNewFile,BufRead *.dsl setf dsl - -" DTD (Document Type Definition for XML) -au BufNewFile,BufRead *.dtd setf dtd - -" EDIF (*.edf,*.edif,*.edn,*.edo) -au BufNewFile,BufRead *.ed\(f\|if\|n\|o\) setf edif - -" Embedix Component Description -au BufNewFile,BufRead *.ecd setf ecd - -" Eiffel or Specman -au BufNewFile,BufRead *.e,*.E call s:FTe() - -" Elinks configuration -au BufNewFile,BufRead */etc/elinks.conf,*/.elinks/elinks.conf setf elinks - -func! s:FTe() - let n = 1 - while n < 100 && n < line("$") - if getline(n) =~ "^\\s*\\(<'\\|'>\\)\\s*$" - setf specman - return - endif - let n = n + 1 - endwhile - setf eiffel -endfunc - -" ERicsson LANGuage; Yaws is erlang too -au BufNewFile,BufRead *.erl,*.yaws setf erlang - -" Elm Filter Rules file -au BufNewFile,BufRead filter-rules setf elmfilt - -" ESMTP rc file -au BufNewFile,BufRead *esmtprc setf esmtprc - -" ESQL-C -au BufNewFile,BufRead *.ec,*.EC setf esqlc - -" Esterel -au BufNewFile,BufRead *.strl setf esterel - -" Essbase script -au BufNewFile,BufRead *.csc setf csc - -" Exim -au BufNewFile,BufRead exim.conf setf exim - -" Expect -au BufNewFile,BufRead *.exp setf expect - -" Exports -au BufNewFile,BufRead exports setf exports - -" Factor -au BufNewFile,BufRead *.factor setf factor - -" Fetchmail RC file -au BufNewFile,BufRead .fetchmailrc setf fetchmail - -" FlexWiki -au BufNewFile,BufRead *.wiki setf flexwiki - -" Focus Executable -au BufNewFile,BufRead *.fex,*.focexec setf focexec - -" Focus Master file (but not for auto.master) -au BufNewFile,BufRead auto.master setf conf -au BufNewFile,BufRead *.mas,*.master setf master - -" Forth -au BufNewFile,BufRead *.fs,*.ft setf forth - -" Reva Forth -au BufNewFile,BufRead *.frt setf reva - -" Fortran -if has("fname_case") - au BufNewFile,BufRead *.F,*.FOR,*.FPP,*.FTN,*.F77,*.F90,*.F95 setf fortran -endif -au BufNewFile,BufRead *.f,*.for,*.fortran,*.fpp,*.ftn,*.f77,*.f90,*.f95 setf fortran - -" FStab -au BufNewFile,BufRead fstab,mtab setf fstab - -" GDB command files -au BufNewFile,BufRead .gdbinit setf gdb - -" GDMO -au BufNewFile,BufRead *.mo,*.gdmo setf gdmo - -" Gedcom -au BufNewFile,BufRead *.ged setf gedcom - -" Git -autocmd BufNewFile,BufRead *.git/COMMIT_EDITMSG setf gitcommit -autocmd BufNewFile,BufRead *.git/config,.gitconfig setf gitconfig -autocmd BufNewFile,BufRead git-rebase-todo setf gitrebase -autocmd BufNewFile,BufRead .msg.[0-9]* - \ if getline(1) =~ '^From.*# This line is ignored.$' | - \ setf gitsendemail | - \ endif -autocmd BufNewFile,BufRead *.git/** - \ if getline(1) =~ '^\x\{40\}\>\|^ref: ' | - \ setf git | - \ endif - -" Gkrellmrc -au BufNewFile,BufRead gkrellmrc,gkrellmrc_? setf gkrellmrc - -" GP scripts (2.0 and onward) -au BufNewFile,BufRead *.gp,.gprc setf gp - -" GPG -au BufNewFile,BufRead */.gnupg/options setf gpg -au BufNewFile,BufRead */.gnupg/gpg.conf setf gpg -au BufNewFile,BufRead /usr/**/gnupg/options.skel setf gpg - -" Gnuplot scripts -au BufNewFile,BufRead *.gpi setf gnuplot - -" GrADS scripts -au BufNewFile,BufRead *.gs setf grads - -" Gretl -au BufNewFile,BufRead *.gretl setf gretl - -" Groovy -au BufNewFile,BufRead *.groovy setf groovy - -" GNU Server Pages -au BufNewFile,BufRead *.gsp setf gsp - -" Group file -au BufNewFile,BufRead /etc/group setf group - -" 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 -au BufNewFile,BufRead *.chs setf chaskell - -" Haste -au BufNewFile,BufRead *.ht setf haste - -" Hercules -au BufNewFile,BufRead *.vc,*.ev,*.rs,*.sum,*.errsum setf hercules - -" HEX (Intel) -au BufNewFile,BufRead *.hex,*.h32 setf hex - -" Tilde (must be before HTML) -au BufNewFile,BufRead *.t.html setf tilde - -" HTML (.shtml and .stm for server side) -au BufNewFile,BufRead *.html,*.htm,*.shtml,*.stm call s:FThtml() - -" Distinguish between HTML, XHTML and Django -func! s:FThtml() - let n = 1 - while n < 10 && n < line("$") - if getline(n) =~ '\' - setf htmldjango - return - endif - let n = n + 1 - endwhile - setf html -endfunc - -" HTML with Ruby - eRuby -au BufNewFile,BufRead *.erb,*.rhtml setf eruby - -" HTML with M4 -au BufNewFile,BufRead *.html.m4 setf htmlm4 - -" HTML Cheetah template -au BufNewFile,BufRead *.tmpl setf htmlcheetah - -" Host config -au BufNewFile,BufRead /etc/host.conf setf hostconf - -" Hyper Builder -au BufNewFile,BufRead *.hb setf hb - -" Icon -au BufNewFile,BufRead *.icn setf icon - -" IDL (Interface Description Language) -au BufNewFile,BufRead *.idl call s:FTidl() - -" Distinguish between standard IDL and MS-IDL -func! s:FTidl() - let n = 1 - while n < 50 && n < line("$") - if getline(n) =~ '^\s*import\s\+"\(unknwn\|objidl\)\.idl"' - setf msidl - return - endif - let n = n + 1 - endwhile - setf idl -endfunc - -" Microsoft IDL (Interface Description Language) Also *.idl -" MOF = WMI (Windows Management Instrumentation) Managed Object Format -au BufNewFile,BufRead *.odl,*.mof setf msidl - -" Icewm menu -au BufNewFile,BufRead */.icewm/menu setf icemenu - -" Indent profile (must come before IDL *.pro!) -au BufNewFile,BufRead .indent.pro setf indent -au BufNewFile,BufRead indent.pro call s:ProtoCheck('indent') - -" IDL (Interactive Data Language) -au BufNewFile,BufRead *.pro call s:ProtoCheck('idlang') - -" Distinguish between "default" and Cproto prototype file. */ -func! s:ProtoCheck(default) - " Cproto files have a comment in the first line and a function prototype in - " the second line, it always ends in ";". Indent files may also have - " comments, thus we can't match comments to see the difference. - if getline(2) =~ ';$' - setf cpp - else - exe 'setf ' . a:default - endif -endfunc - - -" Indent RC -au BufNewFile,BufRead indentrc setf indentrc - -" Inform -au BufNewFile,BufRead *.inf,*.INF setf inform - -" Initng -au BufNewFile,BufRead /etc/initng/**/*.i,*.ii setf initng - -" 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 - -" .INI file for MSDOS -au BufNewFile,BufRead *.ini setf dosini - -" SysV Inittab -au BufNewFile,BufRead inittab setf inittab - -" Inno Setup -au BufNewFile,BufRead *.iss setf iss - -" JAL -au BufNewFile,BufRead *.jal,*.JAL setf jal - -" Jam -au BufNewFile,BufRead *.jpl,*.jpr setf jam - -" Java -au BufNewFile,BufRead *.java,*.jav setf java - -" JavaCC -au BufNewFile,BufRead *.jj,*.jjt setf javacc - -" JavaScript, ECMAScript -au BufNewFile,BufRead *.js,*.javascript,*.es setf javascript - -" Java Server Pages -au BufNewFile,BufRead *.jsp setf jsp - -" Java Properties resource file (note: doesn't catch font.properties.pl) -au BufNewFile,BufRead *.properties,*.properties_??,*.properties_??_?? setf jproperties -au BufNewFile,BufRead *.properties_??_??_* call s:StarSetf('jproperties') - -" Jess -au BufNewFile,BufRead *.clp setf jess - -" Jgraph -au BufNewFile,BufRead *.jgr setf jgraph - -" Kixtart -au BufNewFile,BufRead *.kix setf kix - -" Kimwitu[++] -au BufNewFile,BufRead *.k setf kwt - -" KDE script -au BufNewFile,BufRead *.ks setf kscript - -" Kconfig -au BufNewFile,BufRead Kconfig,Kconfig.debug setf kconfig - -" Lace (ISE) -au BufNewFile,BufRead *.ace,*.ACE setf lace - -" Latte -au BufNewFile,BufRead *.latte,*.lte setf latte - -" Limits -au BufNewFile,BufRead /etc/limits setf limits - -" LambdaProlog (*.mod too, see Modsim) -au BufNewFile,BufRead *.sig setf lprolog - -" LDAP LDIF -au BufNewFile,BufRead *.ldif setf ldif - -" Ld loader -au BufNewFile,BufRead *.ld setf ld - -" Lex -au BufNewFile,BufRead *.lex,*.l setf lex - -" Libao -au BufNewFile,BufRead /etc/libao.conf,*/.libao setf libao - -" Libsensors -au BufNewFile,BufRead /etc/sensors.conf setf sensors - -" LFTP -au BufNewFile,BufRead lftp.conf,.lftprc,*lftp/rc setf lftp - -" Lifelines (or Lex for C++!) -au BufNewFile,BufRead *.ll setf lifelines - -" Lilo: Linux loader -au BufNewFile,BufRead lilo.conf* call s:StarSetf('lilo') - -" Lisp (*.el = ELisp, *.cl = Common Lisp, *.jl = librep Lisp) -if has("fname_case") - au BufNewFile,BufRead *.lsp,*.lisp,*.el,*.cl,*.jl,*.L,.emacs,.sawfishrc setf lisp -else - au BufNewFile,BufRead *.lsp,*.lisp,*.el,*.cl,*.jl,.emacs,.sawfishrc setf lisp -endif - -" SBCL implementation of Common Lisp -au BufNewFile,BufRead sbclrc,.sbclrc setf lisp - -" Lite -au BufNewFile,BufRead *.lite,*.lt setf lite - -" LiteStep RC files -au BufNewFile,BufRead */LiteStep/*/*.rc setf litestep - -" Login access -au BufNewFile,BufRead /etc/login.access setf loginaccess - -" Login defs -au BufNewFile,BufRead /etc/login.defs setf logindefs - -" Logtalk -au BufNewFile,BufRead *.lgt setf logtalk - -" LOTOS -au BufNewFile,BufRead *.lot,*.lotos setf lotos - -" Lout (also: *.lt) -au BufNewFile,BufRead *.lou,*.lout setf lout - -" Lua -au BufNewFile,BufRead *.lua setf lua - -" Linden Scripting Language (Second Life) -au BufNewFile,BufRead *.lsl setf lsl - -" Lynx style file (or LotusScript!) -au BufNewFile,BufRead *.lss setf lss - -" M4 -au BufNewFile,BufRead *.m4 - \ if expand("") !~? 'html.m4$\|fvwm2rc' | setf m4 | endif - -" MaGic Point -au BufNewFile,BufRead *.mgp setf mgp - -" 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[[:alnum:]_-]\{6\},ae\d\+.txt,/tmp/SLRN[0-9A-Z.]\+,*.eml setf mail - -" Mail aliases -au BufNewFile,BufRead /etc/mail/aliases,/etc/aliases setf mailaliases - -" Mailcap configuration file -au BufNewFile,BufRead .mailcap,mailcap setf mailcap - -" Makefile -au BufNewFile,BufRead *[mM]akefile,*.mk,*.mak,*.dsp setf make - -" MakeIndex -au BufNewFile,BufRead *.ist,*.mst setf ist - -" Manpage -au BufNewFile,BufRead *.man setf man - -" Man config -au BufNewFile,BufRead /etc/man.conf,man.config setf manconf - -" Maple V -au BufNewFile,BufRead *.mv,*.mpl,*.mws setf maple - -" Mason -au BufNewFile,BufRead *.mason,*.mhtml setf mason - -" Matlab or Objective C -au BufNewFile,BufRead *.m call s:FTm() - -func! s:FTm() - let n = 1 - while n < 10 - let line = getline(n) - if line =~ '^\s*\(#\s*\(include\|import\)\>\|/\*\)' - setf objc - return - endif - if line =~ '^\s*%' - setf matlab - return - endif - if line =~ '^\s*(\*' - setf mma - return - endif - let n = n + 1 - endwhile - if exists("g:filetype_m") - exe "setf " . g:filetype_m - else - setf matlab - endif -endfunc - -" Mathematica notebook -au BufNewFile,BufRead *.nb setf mma - -" 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 - -" MetaPost -au BufNewFile,BufRead *.mp setf mp - -" MGL -au BufNewFile,BufRead *.mgl setf mgl - -" MMIX or VMS makefile -au BufNewFile,BufRead *.mms call s:FTmms() - -" Symbian meta-makefile definition (MMP) -au BufNewFile,BufRead *.mmp setf mmp - -func! s:FTmms() - let n = 1 - while n < 10 - let line = getline(n) - if line =~ '^\s*\(%\|//\)' || line =~ '^\*' - setf mmix - return - endif - if line =~ '^\s*#' - setf make - return - endif - let n = n + 1 - endwhile - setf mmix -endfunc - - -" Modsim III (or LambdaProlog) -au BufNewFile,BufRead *.mod - \ if getline(1) =~ '\' | - \ setf lprolog | - \ else | - \ setf modsim3 | - \ endif - -" Modula 2 -au BufNewFile,BufRead *.m2,*.DEF,*.MOD,*.md,*.mi setf modula2 - -" Modula 3 (.m3, .i3, .mg, .ig) -au BufNewFile,BufRead *.[mi][3g] setf modula3 - -" Monk -au BufNewFile,BufRead *.isc,*.monk,*.ssc,*.tsc setf monk - -" MOO -au BufNewFile,BufRead *.moo setf moo - -" Modconf -au BufNewFile,BufRead /etc/modules.conf,/etc/conf.modules setf modconf -au BufNewFile,BufRead /etc/modutils/* - \ if executable(expand("")) != 1 - \| call s:StarSetf('modconf') - \|endif - -" Mplayer config -au BufNewFile,BufRead mplayer.conf,*/.mplayer/config setf mplayerconf - -" Moterola S record -au BufNewFile,BufRead *.s19,*.s28,*.s37 setf srec - -" Mrxvtrc -au BufNewFile,BufRead mrxvtrc,.mrxvtrc setf mrxvtrc - -" Msql -au BufNewFile,BufRead *.msql setf msql - -" Mysql -au BufNewFile,BufRead *.mysql setf mysql - -" M$ Resource files -au BufNewFile,BufRead *.rc setf rc - -" MuPAD source -au BufRead,BufNewFile *.mu setf mupad - -" Mush -au BufNewFile,BufRead *.mush setf mush - -" Mutt setup file (also for Muttng) -au BufNewFile,BufRead Mutt{ng,}rc setf muttrc - -" Nano -au BufNewFile,BufRead /etc/nanorc,.nanorc setf nanorc - -" Nastran input/DMAP -"au BufNewFile,BufRead *.dat setf nastran - -" Natural -au BufNewFile,BufRead *.NS[ACGLMNPS] setf natural - -" Netrc -au BufNewFile,BufRead .netrc setf netrc - -" Novell netware batch files -au BufNewFile,BufRead *.ncf setf ncf - -" Nroff/Troff (*.ms and *.t are checked below) -au BufNewFile,BufRead *.me - \ if expand("") != "read.me" && expand("") != "click.me" | - \ setf nroff | - \ endif -au BufNewFile,BufRead *.tr,*.nr,*.roff,*.tmac,*.mom setf nroff -au BufNewFile,BufRead *.[1-9] call s:FTnroff() - -" This function checks if one of the first five lines start with a dot. In -" that case it is probably an nroff file: 'filetype' is set and 1 is returned. -func! s:FTnroff() - if getline(1)[0] . getline(2)[0] . getline(3)[0] . getline(4)[0] . getline(5)[0] =~ '\.' - setf nroff - return 1 - endif - return 0 -endfunc - -" Nroff or Objective C++ -au BufNewFile,BufRead *.mm call s:FTmm() - -func! s:FTmm() - let n = 1 - while n < 10 - let line = getline(n) - if line =~ '^\s*\(#\s*\(include\|import\)\>\|/\*\)' - setf objcpp - return - endif - let n = n + 1 - endwhile - setf nroff -endfunc - -" Not Quite C -au BufNewFile,BufRead *.nqc setf nqc - -" NSIS -au BufNewFile,BufRead *.nsi setf nsis - -" OCAML -au BufNewFile,BufRead *.ml,*.mli,*.mll,*.mly setf ocaml - -" Occam -au BufNewFile,BufRead *.occ setf occam - -" Omnimark -au BufNewFile,BufRead *.xom,*.xin setf omnimark - -" OpenROAD -au BufNewFile,BufRead *.or setf openroad - -" OPL -au BufNewFile,BufRead *.[Oo][Pp][Ll] setf opl - -" Oracle config file -au BufNewFile,BufRead *.ora setf ora - -" Packet filter conf -au BufNewFile,BufRead pf.conf setf pf - -" Pam conf -au BufNewFile,BufRead /etc/pam.conf setf pamconf - -" PApp -au BufNewFile,BufRead *.papp,*.pxml,*.pxsl setf papp - -" Password file -au BufNewFile,BufRead /etc/passwd,/etc/shadow,/etc/shadow- setf passwd - -" Pascal (also *.p) -au BufNewFile,BufRead *.pas setf pascal - -" Delphi project file -au BufNewFile,BufRead *.dpr setf pascal - -" PDF -au BufNewFile,BufRead *.pdf setf pdf - -" Perl -if has("fname_case") - au BufNewFile,BufRead *.pl,*.PL call s:FTpl() -else - au BufNewFile,BufRead *.pl call s:FTpl() -endif -au BufNewFile,BufRead *.plx setf perl - -func! s:FTpl() - if exists("g:filetype_pl") - exe "setf " . g:filetype_pl - else - " recognize Prolog by specific text in the first non-empty line - " require a blank after the '%' because Perl uses "%list" and "%translate" - let l = getline(nextnonblank(1)) - if l =~ '\' || l =~ '^\s*\(%\+\(\s\|$\)\|/\*\)' || l =~ ':-' - setf prolog - else - setf perl - endif - endif -endfunc - -" Perl, XPM or XPM2 -au BufNewFile,BufRead *.pm - \ if getline(1) =~ "XPM2" | - \ setf xpm2 | - \ elseif getline(1) =~ "XPM" | - \ setf xpm | - \ else | - \ setf perl | - \ endif - -" Perl POD -au BufNewFile,BufRead *.pod setf pod - -" Php, php3, php4, etc. -" Also Phtml (was used for PHP 2 in the past) -" Also .ctp for Cake template file -au BufNewFile,BufRead *.php,*.php\d,*.phtml,*.ctp setf php - -" Pike -au BufNewFile,BufRead *.pike,*.lpc,*.ulpc,*.pmod setf pike - -" Pinfo config -au BufNewFile,BufRead */etc/pinforc,*/.pinforc setf pinfo - -" Palm Resource compiler -au BufNewFile,BufRead *.rcp setf pilrc - -" Pine config -au BufNewFile,BufRead .pinerc,pinerc,.pinercex,pinercex setf pine - -" PL/M (also: *.inp) -au BufNewFile,BufRead *.plm,*.p36,*.pac setf plm - -" PL/SQL -au BufNewFile,BufRead *.pls,*.plsql setf plsql - -" PLP -au BufNewFile,BufRead *.plp setf plp - -" PO and PO template (GNU gettext) -au BufNewFile,BufRead *.po,*.pot setf po - -" Postfix main config -au BufNewFile,BufRead main.cf setf pfmain - -" PostScript (+ font files, encapsulated PostScript, Adobe Illustrator) -au BufNewFile,BufRead *.ps,*.pfa,*.afm,*.eps,*.epsf,*.epsi,*.ai setf postscr - -" PostScript Printer Description -au BufNewFile,BufRead *.ppd setf ppd - -" Povray -au BufNewFile,BufRead *.pov setf pov - -" Povray configuration -au BufNewFile,BufRead .povrayrc setf povini - -" Povray, PHP or assembly -au BufNewFile,BufRead *.inc call s:FTinc() - -func! s:FTinc() - if exists("g:filetype_inc") - exe "setf " . g:filetype_inc - else - let lines = getline(1).getline(2).getline(3) - if lines =~? "perlscript" - setf aspperl - elseif lines =~ "<%" - setf aspvbs - elseif lines =~ "' - \ || line =~ '^\s*{' || line =~ '^\s*(\*' - setf pascal - return - elseif line !~ '^\s*$' || line =~ '^/\*' - " Not an empty line: Doesn't look like valid Pascal code. - " Or it looks like a Progress /* comment - break - endif - let lnum = lnum + 1 - endw - setf progress -endfunc - - -" Software Distributor Product Specification File (POSIX 1387.2-1995) -au BufNewFile,BufRead *.psf setf psf -au BufNewFile,BufRead INDEX,INFO - \ if getline(1) =~ '^\s*\(distribution\|installed_software\|root\|bundle\|product\)\s*$' | - \ setf psf | - \ endif - -" Prolog -au BufNewFile,BufRead *.pdb setf prolog - -" Promela -au BufNewFile,BufRead *.pml setf promela - -" Protocols -au BufNewFile,BufRead /etc/protocols setf protocols - -" Pyrex -au BufNewFile,BufRead *.pyx,*.pxd setf pyrex - -" Python -au BufNewFile,BufRead *.py,*.pyw setf python - -" Radiance -au BufNewFile,BufRead *.rad,*.mat setf radiance - -" Ratpoison config/command files -au BufNewFile,BufRead .ratpoisonrc,ratpoisonrc setf ratpoison - -" RCS file -au BufNewFile,BufRead *\,v setf rcs - -" Readline -au BufNewFile,BufRead .inputrc,inputrc setf readline - -" Registry for MS-Windows -au BufNewFile,BufRead *.reg - \ if getline(1) =~? '^REGEDIT[0-9]*\s*$\|^Windows Registry Editor Version \d*\.\d*\s*$' | setf registry | endif - -" Renderman Interface Bytestream -au BufNewFile,BufRead *.rib setf rib - -" Rexx -au BufNewFile,BufRead *.rexx,*.rex,*.jrexx,*.rxj,*.orx setf rexx - -" R (Splus) -if has("fname_case") - au BufNewFile,BufRead *.s,*.S setf r -else - au BufNewFile,BufRead *.s setf r -endif - -" R Help file -if has("fname_case") - au BufNewFile,BufRead *.rd,*.Rd setf rhelp -else - au BufNewFile,BufRead *.rd setf rhelp -endif - -" R noweb file -if has("fname_case") - au BufNewFile,BufRead *.Rnw,*.rnw,*.Snw,*.snw setf rnoweb -else - au BufNewFile,BufRead *.rnw,*.snw setf rnoweb -endif - -" Rexx, Rebol or R -au BufNewFile,BufRead *.r,*.R call s:FTr() - -func! s:FTr() - let max = line("$") > 50 ? 50 : line("$") - - for n in range(1, max) - " Rebol is easy to recognize, check for that first - if getline(n) =~? '\' - setf rebol - return - endif - 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 - endfor - - " Nothing recognized, assume Rexx - setf rexx -endfunc - -" Remind -au BufNewFile,BufRead .reminders* call s:StarSetf('remind') - -" Resolv.conf -au BufNewFile,BufRead resolv.conf setf resolv - -" Relax NG Compact -au BufNewFile,BufRead *.rnc setf rnc - -" RPL/2 -au BufNewFile,BufRead *.rpl setf rpl - -" Robots.txt -au BufNewFile,BufRead robots.txt setf robots - -" Rpcgen -au BufNewFile,BufRead *.x setf rpcgen - -" reStructuredText Documentation Format -au BufNewFile,BufRead *.rst setf rst - -" RTF -au BufNewFile,BufRead *.rtf setf rtf - -" Ruby -au BufNewFile,BufRead *.rb,*.rbw,*.gem,*.gemspec setf ruby - -" Ruby on Rails -au BufNewFile,BufRead *.builder,*.rxml,*.rjs setf ruby - -" Rantfile and Rakefile is like Ruby -au BufNewFile,BufRead [rR]antfile,*.rant,[rR]akefile,*.rake setf ruby - -" S-lang (or shader language!) -au BufNewFile,BufRead *.sl setf slang - -" Samba config -au BufNewFile,BufRead smb.conf setf samba - -" SAS script -au BufNewFile,BufRead *.sas setf sas - -" Sather -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 - -" sed -au BufNewFile,BufRead *.sed setf sed - -" Sieve (RFC 3028) -au BufNewFile,BufRead *.siv setf sieve - -" Sendmail -au BufNewFile,BufRead sendmail.cf setf sm - -" Sendmail .mc files are actually m4. Could also be MS Message text file. -au BufNewFile,BufRead *.mc call s:McSetf() - -func! s:McSetf() - " Rely on the file to start with a comment. - " MS message text files use ';', Sendmail files use '#' or 'dnl' - for lnum in range(1, min([line("$"), 20])) - let line = getline(lnum) - if line =~ '^\s*\(#\|dnl\)' - setf m4 " Sendmail .mc file - return - elseif line =~ '^\s*;' - setf msmessages " MS Message text file - return - endif - endfor - setf m4 " Default: Sendmail .mc file -endfunc - -" Services -au BufNewFile,BufRead /etc/services setf services - -" Service Location config -au BufNewFile,BufRead /etc/slp.conf setf slpconf - -" Service Location registration -au BufNewFile,BufRead /etc/slp.reg setf slpreg - -" Service Location SPI -au BufNewFile,BufRead /etc/slp.spi setf slpspi - -" Setserial config -au BufNewFile,BufRead /etc/serial.conf setf setserial - -" SGML -au BufNewFile,BufRead *.sgm,*.sgml - \ if getline(1).getline(2).getline(3).getline(4).getline(5) =~? 'linuxdoc' | - \ setf sgmllnx | - \ elseif getline(1) =~ '") =~ g:ft_ignore_pat - return - endif - if a:name =~ '\' - let b:is_kornshell = 1 - if exists("b:is_bash") - unlet b:is_bash - endif - if exists("b:is_sh") - unlet b:is_sh - endif - elseif exists("g:bash_is_sh") || a:name =~ '\' || a:name =~ '\' - let b:is_bash = 1 - if exists("b:is_kornshell") - unlet b:is_kornshell - endif - if exists("b:is_sh") - unlet b:is_sh - endif - elseif a:name =~ '\' - let b:is_sh = 1 - if exists("b:is_kornshell") - unlet b:is_kornshell - endif - if exists("b:is_bash") - unlet b:is_bash - endif - endif - call SetFileTypeShell("sh") -endfunc - -" For shell-like file types, check for an "exec" command hidden in a comment, -" as used for Tcl. -" Also called from scripts.vim, thus can't be local to this script. -func! SetFileTypeShell(name) - if expand("") =~ g:ft_ignore_pat - return - endif - let l = 2 - while l < 20 && l < line("$") && getline(l) =~ '^\s*\(#\|$\)' - " Skip empty and comment lines. - let l = l + 1 - endwhile - if l < line("$") && getline(l) =~ '\s*exec\s' && getline(l - 1) =~ '^\s*#.*\\$' - " Found an "exec" line after a comment with continuation - let n = substitute(getline(l),'\s*exec\s\+\([^ ]*/\)\=', '', '') - if n =~ '\' | - \ setf xml | - \ else | - \ setf smil | - \ endif - -" SMIL or SNMP MIB file -au BufNewFile,BufRead *.smi - \ if getline(1) =~ '\' | - \ setf smil | - \ else | - \ setf mib | - \ endif - -" SMITH -au BufNewFile,BufRead *.smt,*.smith setf smith - -" Snobol4 and spitbol -au BufNewFile,BufRead *.sno,*.spt setf snobol4 - -" SNMP MIB files -au BufNewFile,BufRead *.mib,*.my setf mib - -" Snort Configuration -au BufNewFile,BufRead *.hog,snort.conf,vision.conf setf hog -au BufNewFile,BufRead *.rules call s:FTRules() - -let s:ft_rules_udev_rules_pattern = '^\s*\cudev_rules\s*=\s*"\([^"]\{-1,}\)/*".*' -func! s:FTRules() - if expand(':p') =~ '^/etc/udev/rules\.d/.*\.rules$' - setf udevrules - return - endif - try - let config_lines = readfile('/etc/udev/udev.conf') - catch /^Vim\%((\a\+)\)\=:E484/ - setf hog - return - endtry - let dir = expand(':p:h') - for line in config_lines - if line =~ s:ft_rules_udev_rules_pattern - let udev_rules = substitute(line, s:ft_rules_udev_rules_pattern, '\1', "") - if dir == udev_rules - setf udevrules - endif - break - endif - endfor - setf hog -endfunc - - -" Spec (Linux RPM) -au BufNewFile,BufRead *.spec setf spec - -" Speedup (AspenTech plant simulator) -au BufNewFile,BufRead *.speedup,*.spdata,*.spd setf spup - -" Slice -au BufNewFile,BufRead *.ice setf slice - -" Spice -au BufNewFile,BufRead *.sp,*.spice setf spice - -" Spyce -au BufNewFile,BufRead *.spy,*.spi setf spyce - -" Squid -au BufNewFile,BufRead squid.conf setf squid - -" SQL for Oracle Designer -au BufNewFile,BufRead *.tyb,*.typ,*.tyc,*.pkb,*.pks setf sql - -" SQL -au BufNewFile,BufRead *.sql call s:SQL() - -func! s:SQL() - if exists("g:filetype_sql") - exe "setf " . g:filetype_sql - else - setf sql - endif -endfunc - -" SQLJ -au BufNewFile,BufRead *.sqlj setf sqlj - -" SQR -au BufNewFile,BufRead *.sqr,*.sqi setf sqr - -" OpenSSH configuration -au BufNewFile,BufRead ssh_config,*/.ssh/config setf sshconfig - -" OpenSSH server configuration -au BufNewFile,BufRead sshd_config setf sshdconfig - -" Stata -au BufNewFile,BufRead *.ado,*.class,*.do,*.imata,*.mata setf stata - -" SMCL -au BufNewFile,BufRead *.hlp,*.ihlp,*.smcl setf smcl - -" Stored Procedures -au BufNewFile,BufRead *.stp setf stp - -" Standard ML -au BufNewFile,BufRead *.sml setf sml - -" Sratus VOS command macro -au BufNewFile,BufRead *.cm setf voscm - -" Sysctl -au BufNewFile,BufRead /etc/sysctl.conf setf sysctl - -" Sudoers -au BufNewFile,BufRead /etc/sudoers,sudoers.tmp setf sudoers - -" If the file has an extension of 't' and is in a directory 't' then it is -" almost certainly a Perl test file. -" If the first line starts with '#' and contains 'perl' it's probably a Perl -" file. -" (Slow test) If a file contains a 'use' statement then it is almost certainly -" a Perl file. -func! s:FTperl() - if expand("%:e") == 't' && expand("%:p:h:t") == 't' - setf perl - return 1 - endif - if getline(1)[0] == '#' && getline(1) =~ 'perl' - setf perl - return 1 - endif - if search('^use\s\s*\k', 'nc', 30) - setf perl - return 1 - endif - return 0 -endfunc - -" Tads (or Nroff or Perl test file) -au BufNewFile,BufRead *.t - \ if !s:FTnroff() && !s:FTperl() | setf tads | endif - -" Tags -au BufNewFile,BufRead tags setf tags - -" TAK -au BufNewFile,BufRead *.tak setf tak - -" Tcl (JACL too) -au BufNewFile,BufRead *.tcl,*.tk,*.itcl,*.itk,*.jacl setf tcl - -" TealInfo -au BufNewFile,BufRead *.tli setf tli - -" Telix Salt -au BufNewFile,BufRead *.slt setf tsalt - -" Terminfo -au BufNewFile,BufRead *.ti setf terminfo - -" TeX -au BufNewFile,BufRead *.latex,*.sty,*.dtx,*.ltx,*.bbl setf tex -au BufNewFile,BufRead *.tex call s:FTtex() - -" Choose context, plaintex, or tex (LaTeX) based on these rules: -" 1. Check the first line of the file for "%&". -" 2. Check the first 1000 non-comment lines for LaTeX or ConTeXt keywords. -" 3. Default to "latex" or to g:tex_flavor, can be set in user's vimrc. -func! s:FTtex() - let firstline = getline(1) - if firstline =~ '^%&\s*\a\+' - let format = tolower(matchstr(firstline, '\a\+')) - let format = substitute(format, 'pdf', '', '') - if format == 'tex' - let format = 'plain' - endif - else - " Default value, may be changed later: - let format = exists("g:tex_flavor") ? g:tex_flavor : 'plain' - " Save position, go to the top of the file, find first non-comment line. - let save_cursor = getpos('.') - call cursor(1,1) - let firstNC = search('^\s*[^[:space:]%]', 'c', 1000) - if firstNC " Check the next thousand lines for a LaTeX or ConTeXt keyword. - let lpat = 'documentclass\>\|usepackage\>\|begin{\|newcommand\>\|renewcommand\>' - let cpat = 'start\a\+\|setup\a\+\|usemodule\|enablemode\|enableregime\|setvariables\|useencoding\|usesymbols\|stelle\a\+\|verwende\a\+\|stel\a\+\|gebruik\a\+\|usa\a\+\|imposta\a\+\|regle\a\+\|utilisemodule\>' - let kwline = search('^\s*\\\%(' . lpat . '\)\|^\s*\\\(' . cpat . '\)', - \ 'cnp', firstNC + 1000) - if kwline == 1 " lpat matched - let format = 'latex' - elseif kwline == 2 " cpat matched - let format = 'context' - endif " If neither matched, keep default set above. - " let lline = search('^\s*\\\%(' . lpat . '\)', 'cn', firstNC + 1000) - " let cline = search('^\s*\\\%(' . cpat . '\)', 'cn', firstNC + 1000) - " if cline > 0 - " let format = 'context' - " endif - " if lline > 0 && (cline == 0 || cline > lline) - " let format = 'tex' - " endif - endif " firstNC - call setpos('.', save_cursor) - endif " firstline =~ '^%&\s*\a\+' - - " Translation from formats to file types. TODO: add AMSTeX, RevTex, others? - if format == 'plain' - setf plaintex - elseif format == 'context' - setf context - else " probably LaTeX - setf tex - endif - return -endfunc - -" ConTeXt -au BufNewFile,BufRead tex/context/*/*.tex,*.mkii,*.mkiv setf context - -" Texinfo -au BufNewFile,BufRead *.texinfo,*.texi,*.txi setf texinfo - -" TeX configuration -au BufNewFile,BufRead texmf.cnf setf texmf - -" Tidy config -au BufNewFile,BufRead .tidyrc,tidyrc setf tidy - -" TF mud client -au BufNewFile,BufRead *.tf,.tfrc,tfrc setf tf - -" TPP - Text Presentation Program -au BufNewFile,BufReadPost *.tpp setf tpp - -" Trustees -au BufNewFile,BufRead trustees.conf setf trustees - -" TSS - Geometry -au BufNewFile,BufReadPost *.tssgm setf tssgm - -" TSS - Optics -au BufNewFile,BufReadPost *.tssop setf tssop - -" TSS - Command Line (temporary) -au BufNewFile,BufReadPost *.tsscl setf tsscl - -" Motif UIT/UIL files -au BufNewFile,BufRead *.uit,*.uil setf uil - -" Udev conf -au BufNewFile,BufRead /etc/udev/udev.conf setf udevconf - -" Udev permissions -au BufNewFile,BufRead /etc/udev/permissions.d/*.permissions setf udevperm -" -" Udev symlinks config -au BufNewFile,BufRead /etc/udev/cdsymlinks.conf setf sh - -" UnrealScript -au BufNewFile,BufRead *.uc setf uc - -" Updatedb -au BufNewFile,BufRead /etc/updatedb.conf setf updatedb - -" Vera -au BufNewFile,BufRead *.vr,*.vri,*.vrh setf vera - -" Verilog HDL -au BufNewFile,BufRead *.v setf verilog - -" Verilog-AMS HDL -au BufNewFile,BufRead *.va,*.vams setf verilogams - -" VHDL -au BufNewFile,BufRead *.hdl,*.vhd,*.vhdl,*.vbe,*.vst setf vhdl -au BufNewFile,BufRead *.vhdl_[0-9]* call s:StarSetf('vhdl') - -" Vim script -au BufNewFile,BufRead *.vim,*.vba,.exrc,_exrc setf vim - -" Viminfo file -au BufNewFile,BufRead .viminfo,_viminfo setf viminfo - -" Virata Config Script File -au BufRead,BufNewFile *.hw,*.module,*.pkg setf virata - -" Visual Basic (also uses *.bas) or FORM -au BufNewFile,BufRead *.frm call s:FTVB("form") - -" SaxBasic is close to Visual Basic -au BufNewFile,BufRead *.sba setf vb - -" Vgrindefs file -au BufNewFile,BufRead vgrindefs setf vgrindefs - -" VRML V1.0c -au BufNewFile,BufRead *.wrl setf vrml - -" Webmacro -au BufNewFile,BufRead *.wm setf webmacro - -" Wget config -au BufNewFile,BufRead .wgetrc,wgetrc setf wget - -" Website MetaLanguage -au BufNewFile,BufRead *.wml setf wml - -" Winbatch -au BufNewFile,BufRead *.wbt setf winbatch - -" WSML -au BufNewFile,BufRead *.wsml setf wsml - -" WvDial -au BufNewFile,BufRead wvdial.conf,.wvdialrc setf wvdial - -" CVS RC file -au BufNewFile,BufRead .cvsrc setf cvsrc - -" CVS commit file -au BufNewFile,BufRead cvs\d\+ setf cvs - -" WEB (*.web is also used for Winbatch: Guess, based on expecting "%" comment -" lines in a WEB file). -au BufNewFile,BufRead *.web - \ if getline(1)[0].getline(2)[0].getline(3)[0].getline(4)[0].getline(5)[0] =~ "%" | - \ setf web | - \ else | - \ setf winbatch | - \ endif - -" 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" | - \ setf xpm2 | - \ else | - \ setf xpm | - \ endif -au BufEnter *.xpm2 setf xpm2 - -" XFree86 config -au BufNewFile,BufRead XF86Config - \ if getline(1) =~ '\' | - \ let b:xf86c_xfree86_version = 3 | - \ endif | - \ setf xf86conf - -" Xorg config -au BufNewFile,BufRead xorg.conf,xorg.conf-4 let b:xf86c_xfree86_version = 4 | setf xf86conf - -" Xinetd conf -au BufNewFile,BufRead /etc/xinetd.conf setf xinetd - -" XS Perl extension interface language -au BufNewFile,BufRead *.xs setf xs - -" X resources file -au BufNewFile,BufRead .Xdefaults,.Xpdefaults,.Xresources,xdm-config,*.ad setf xdefaults - -" Xmath -au BufNewFile,BufRead *.msc,*.msf setf xmath -au BufNewFile,BufRead *.ms - \ if !s:FTnroff() | setf xmath | endif - -" XML specific variants: docbk and xbl -au BufNewFile,BufRead *.xml call s:FTxml() - -func! s:FTxml() - let n = 1 - while n < 100 && n < line("$") - let line = getline(n) - if line =~ '\)' && getline(n) !~ '^\s*#\s*include' - setf racc - return - endif - let n = n + 1 - endwhile - setf yacc -endfunc - - -" Yaml -au BufNewFile,BufRead *.yaml,*.yml setf yaml - -" Zope -" dtml (zope dynamic template markup language), pt (zope page template), -" cpt (zope form controller page template) -au BufNewFile,BufRead *.dtml,*.pt,*.cpt call s:FThtml() -" zsql (zope sql method) -au BufNewFile,BufRead *.zsql call s:SQL() - -" Z80 assembler asz80 -au BufNewFile,BufRead *.z8a setf z8a - -augroup END - - -" Source the user-specified filetype file, for backwards compatibility with -" Vim 5.x. -if exists("myfiletypefile") && filereadable(expand(myfiletypefile)) - execute "source " . myfiletypefile -endif - - -" Check for "*" after loading myfiletypefile, so that scripts.vim is only used -" when there are no matching file name extensions. -" Don't do this for compressed files. -augroup filetypedetect -au BufNewFile,BufRead * - \ if !did_filetype() && expand("") !~ g:ft_ignore_pat - \ | runtime! scripts.vim | endif -au StdinReadPost * if !did_filetype() | runtime! scripts.vim | endif - - -" Extra checks for when no filetype has been detected now. Mostly used for -" patterns that end in "*". E.g., "zsh*" matches "zsh.vim", but that's a Vim -" script file. -" Most of these should call s:StarSetf() to avoid names ending in .gz and the -" like are used. - -" Asterisk config file -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') - -" Changelog -au BufNewFile,BufRead [cC]hange[lL]og* - \ if getline(1) =~ '; urgency=' - \| call s:StarSetf('debchangelog') - \|else - \| call s:StarSetf('changelog') - \|endif - -" Crontab -au BufNewFile,BufRead crontab,crontab.* call s:StarSetf('crontab') - -" Debian Sources.list -au BufNewFile,BufRead /etc/apt/sources.list.d/* call s:StarSetf('debsources') - -" Dracula -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* - \ if expand(":e") == "m4" - \| call s:StarSetf('fvwm2m4') - \|else - \| let b:fvwm_version = 2 | call s:StarSetf('fvwm') - \|endif - -" GTK RC -au BufNewFile,BufRead .gtkrc*,gtkrc* call s:StarSetf('gtkrc') - -" Jam -au BufNewFile,BufRead Prl*.*,JAM*.* call s:StarSetf('jam') - -" Jargon -au! BufNewFile,BufRead *jarg* - \ if getline(1).getline(2).getline(3).getline(4).getline(5) =~? 'THIS IS THE JARGON FILE' - \| call s:StarSetf('jargon') - \|endif - -" Kconfig -au BufNewFile,BufRead Kconfig.* call s:StarSetf('kconfig') - -" Makefile -au BufNewFile,BufRead [mM]akefile* call s:StarSetf('make') - -" Ruby Makefile -au BufNewFile,BufRead [rR]akefile* call s:StarSetf('ruby') - -" Mail (also matches muttrc.vim, so this is below the other checks) -au BufNewFile,BufRead mutt[[:alnum:]._-]\{6\} setf mail - -" Modconf -au BufNewFile,BufRead /etc/modprobe.* call s:StarSetf('modconf') - -" Mutt setup file -au BufNewFile,BufRead .mutt{ng,}rc*,*/.mutt{ng,}/mutt{ng,}rc* call s:StarSetf('muttrc') -au BufNewFile,BufRead mutt{ng,}rc*,Mutt{ng,}rc* call s:StarSetf('muttrc') - -" Nroff macros -au BufNewFile,BufRead tmac.* call s:StarSetf('nroff') - -" Pam conf -au BufNewFile,BufRead /etc/pam.d/* call s:StarSetf('pamconf') - -" Printcap and Termcap -au BufNewFile,BufRead *printcap* - \ if !did_filetype() - \| let b:ptcap_type = "print" | call s:StarSetf('ptcap') - \|endif -au BufNewFile,BufRead *termcap* - \ if !did_filetype() - \| let b:ptcap_type = "term" | call s:StarSetf('ptcap') - \|endif - -" Vim script -au BufNewFile,BufRead *vimrc* call s:StarSetf('vim') - -" Subversion commit file -au BufNewFile,BufRead svn-commit*.tmp setf svn - -" X resources file -au BufNewFile,BufRead Xresources*,*/app-defaults/*,*/Xresources/* call s:StarSetf('xdefaults') - -" XFree86 config -au BufNewFile,BufRead XF86Config-4* - \ let b:xf86c_xfree86_version = 4 | call s:StarSetf('xf86conf') -au BufNewFile,BufRead XF86Config* - \ if getline(1) =~ '\' - \| let b:xf86c_xfree86_version = 3 - \|endif - \|call s:StarSetf('xf86conf') - -" X11 xmodmap -au BufNewFile,BufRead *xmodmap* call s:StarSetf('xmodmap') - -" Xinetd conf -au BufNewFile,BufRead /etc/xinetd.d/* call s:StarSetf('xinetd') - -" Z-Shell script -au BufNewFile,BufRead zsh*,zlog* call s:StarSetf('zsh') - - -" Generic configuration file (check this last, it's just guessing!) -au BufNewFile,BufRead,StdinReadPost * - \ if !did_filetype() && expand("") !~ g:ft_ignore_pat - \ && (getline(1) =~ '^#' || getline(2) =~ '^#' || getline(3) =~ '^#' - \ || getline(4) =~ '^#' || getline(5) =~ '^#') | - \ setf conf | - \ endif - -" Use the plugin-filetype checks last, they may overrule any of the previously -" detected filetypes. -runtime! ftdetect/*.vim - -augroup END - - -" If the GUI is already running, may still need to install the Syntax menu. -" Don't do it when the 'M' flag is included in 'guioptions'. -if has("menu") && has("gui_running") - \ && !exists("did_install_syntax_menu") && &guioptions !~# "M" - source :p:h/menu.vim -endif - -" Function called for testing all functions defined here. These are -" script-local, thus need to be executed here. -" Returns a string with error messages (hopefully empty). -func! TestFiletypeFuncs(testlist) - let output = '' - for f in a:testlist - try - exe f - catch - let output = output . "\n" . f . ": " . v:exception - endtry - endfor - return output -endfunc - -" Restore 'cpoptions' -let &cpo = s:cpo_save -unlet s:cpo_save diff --git a/runtime/tutor/runtime/ftoff.vim b/runtime/tutor/runtime/ftoff.vim deleted file mode 100644 --- a/runtime/tutor/runtime/ftoff.vim +++ /dev/null @@ -1,11 +0,0 @@ -" Vim support file to switch off detection of file types -" -" Maintainer: Bram Moolenaar -" Last change: 2001 Jun 11 - -if exists("did_load_filetypes") - unlet did_load_filetypes -endif - -" Remove all autocommands in the filetypedetect group -silent! au! filetypedetect * diff --git a/runtime/tutor/runtime/ftplugin.vim b/runtime/tutor/runtime/ftplugin.vim deleted file mode 100644 --- a/runtime/tutor/runtime/ftplugin.vim +++ /dev/null @@ -1,35 +0,0 @@ -" Vim support file to switch on loading plugins for file types -" -" Maintainer: Bram Moolenaar -" Last change: 2006 Apr 30 - -if exists("did_load_ftplugin") - finish -endif -let did_load_ftplugin = 1 - -augroup filetypeplugin - au FileType * call s:LoadFTPlugin() - - func! s:LoadFTPlugin() - if exists("b:undo_ftplugin") - exe b:undo_ftplugin - unlet! b:undo_ftplugin b:did_ftplugin - endif - - let s = expand("") - if s != "" - if &cpo =~# "S" && exists("b:did_ftplugin") - " In compatible mode options are reset to the global values, need to - " set the local values also when a plugin was already used. - unlet b:did_ftplugin - endif - - " When there is a dot it is used to separate filetype names. Thus for - " "aaa.bbb" load "aaa" and then "bbb". - for name in split(s, '\.') - exe 'runtime! ftplugin/' . name . '.vim ftplugin/' . name . '_*.vim ftplugin/' . name . '/*.vim' - endfor - endif - endfunc -augroup END diff --git a/runtime/tutor/runtime/ftplugof.vim b/runtime/tutor/runtime/ftplugof.vim deleted file mode 100644 --- a/runtime/tutor/runtime/ftplugof.vim +++ /dev/null @@ -1,11 +0,0 @@ -" Vim support file to switch off loading plugins for file types -" -" Maintainer: Bram Moolenaar -" Last Change: 2002 Apr 04 - -if exists("did_load_ftplugin") - unlet did_load_ftplugin -endif - -" Remove all autocommands in the filetypeplugin group -silent! au! filetypeplugin * diff --git a/runtime/tutor/runtime/gvimrc_example.vim b/runtime/tutor/runtime/gvimrc_example.vim deleted file mode 100644 --- a/runtime/tutor/runtime/gvimrc_example.vim +++ /dev/null @@ -1,59 +0,0 @@ -" An example for a gvimrc file. -" The commands in this are executed when the GUI is started. -" -" Maintainer: Bram Moolenaar -" Last change: 2001 Sep 02 -" -" To use it, copy it to -" for Unix and OS/2: ~/.gvimrc -" for Amiga: s:.gvimrc -" for MS-DOS and Win32: $VIM\_gvimrc -" for OpenVMS: sys$login:.gvimrc - -" Make external commands work through a pipe instead of a pseudo-tty -"set noguipty - -" set the X11 font to use -" set guifont=-misc-fixed-medium-r-normal--14-130-75-75-c-70-iso8859-1 - -set ch=2 " Make command line two lines high - -set mousehide " Hide the mouse when typing text - -" Make shift-insert work like in Xterm -map -map! - -" Only do this for Vim version 5.0 and later. -if version >= 500 - - " I like highlighting strings inside C comments - let c_comment_strings=1 - - " Switch on syntax highlighting if it wasn't on yet. - if !exists("syntax_on") - syntax on - endif - - " Switch on search pattern highlighting. - set hlsearch - - " For Win32 version, have "K" lookup the keyword in a help file - "if has("win32") - " let winhelpfile='windows.hlp' - " map K :execute "!start winhlp32 -k " . winhelpfile - "endif - - " Set nice colors - " background for normal text is light grey - " Text below the last line is darker grey - " Cursor is green, Cyan when ":lmap" mappings are active - " Constants are not underlined but have a slightly lighter background - highlight Normal guibg=grey90 - highlight Cursor guibg=Green guifg=NONE - highlight lCursor guibg=Cyan guifg=NONE - highlight NonText guibg=grey80 - highlight Constant gui=NONE guibg=grey95 - highlight Special gui=NONE guibg=grey95 - -endif diff --git a/runtime/tutor/runtime/hi16-action-make.png b/runtime/tutor/runtime/hi16-action-make.png deleted file mode 100644 index 824c7580e40f0205fa26257cca2ce8c3e30be5c2..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 GIT binary patch literal 0 Hc$@ -" Last Change: 2008 Feb 22 - -if exists("did_indent_on") - finish -endif -let did_indent_on = 1 - -augroup filetypeindent - au FileType * call s:LoadIndent() - func! s:LoadIndent() - if exists("b:undo_indent") - exe b:undo_indent - unlet! b:undo_indent b:did_indent - endif - let s = expand("") - if s != "" - if exists("b:did_indent") - unlet b:did_indent - endif - - " When there is a dot it is used to separate filetype names. Thus for - " "aaa.bbb" load "indent/aaa.vim" and then "indent/bbb.vim". - for name in split(s, '\.') - exe 'runtime! indent/' . name . '.vim' - endfor - endif - endfunc -augroup END diff --git a/runtime/tutor/runtime/indoff.vim b/runtime/tutor/runtime/indoff.vim deleted file mode 100644 --- a/runtime/tutor/runtime/indoff.vim +++ /dev/null @@ -1,11 +0,0 @@ -" Vim support file to switch off loading indent files for file types -" -" Maintainer: Bram Moolenaar -" Last Change: 2001 Jun 11 - -if exists("did_indent_on") - unlet did_indent_on -endif - -" Remove all autocommands in the filetypeindent group -silent! au! filetypeindent * diff --git a/runtime/tutor/runtime/macmap.vim b/runtime/tutor/runtime/macmap.vim deleted file mode 100644 --- a/runtime/tutor/runtime/macmap.vim +++ /dev/null @@ -1,75 +0,0 @@ -" System gvimrc file for Mac OS X -" Author: Benji Fisher -" Last Change: Thu Mar 09 09:00 AM 2006 EST -" -" Define Mac-standard keyboard shortcuts. - -" We don't change 'cpoptions' here, because it would not be set properly when -" a .vimrc file is found later. Thus don't use line continuation and use -" in mappings. - -nnoremap :confirm enew -vmap gv -imap -cmap -omap - -nnoremap :browse confirm e -vmap gv -imap -cmap -omap - -nnoremap :if winheight(2) < 0 confirm enew else confirm close endif -vmap gv -imap -cmap -omap - -nnoremap :if expand("%") == ""browse confirm w elseconfirm wendif -vmap gv -imap -cmap -omap - -nnoremap :browse confirm saveas -vmap gv -imap -cmap -omap - -" From the Edit menu of SimpleText: -nnoremap u -vmap gv -imap -cmap -omap - -vnoremap "+x - -vnoremap "+y - -cnoremap - -nnoremap "+gP -cnoremap + -execute 'vnoremap