inital checkin using existing vim and preparing for use of bash_magic

This commit is contained in:
2012-05-06 12:17:04 -07:00
commit 064a074ddf
1555 changed files with 361845 additions and 0 deletions

View File

@@ -0,0 +1,125 @@
" Vim filetype plugin file utility
" Language: * (various)
" Maintainer: Dave Silvia <dsilvia@mchsi.com>
" Date: 6/30/2004
" The start of match (b:SOM) default is:
" '\<'
" The end of match (b:EOM) default is:
" '\>'
"
" If you want to use some other start/end of match, just assign the
" value to the b:SOM|EOM variable in your filetype script.
"
" SEE: :h pattern.txt
" :h pattern-searches
" :h regular-expression
" :h matchit
let s:myName=expand("<sfile>:t")
" matchit.vim not loaded -- don't do anyting
if !exists("loaded_matchit")
echomsg s:myName.": matchit.vim not loaded -- finishing without loading"
finish
endif
" already been here -- don't redefine
if exists("*AppendMatchGroup")
finish
endif
" Function To Build b:match_words
" The following function, 'AppendMatchGroup', helps to increase
" readability of your filetype script if you choose to use matchit.
" It also precludes many construction errors, reducing the
" construction to simply invoking the function with the match words.
" As an example, let's take the ubiquitous if/then/else/endif type
" of construct. This is how the entry in your filetype script would look.
"
" " source the AppendMatchGroup function file
" runtime ftplugin/AppendMatchGroup.vim
"
" " fill b:match_words
" call AppendMatchGroup('if,then,else,endif')
"
" And the b:match_words constructed would look like:
"
" \<if\>:\<then\>:\<else\>:\<endif\>
"
" Use of AppendMatchGroup makes your filetype script is a little
" less busy and a lot more readable. Additionally, it
" checks three critical things:
"
" 1) Do you have at least 2 entries in your match group.
"
" 2) Does the buffer variable 'b:match_words' exist? if not, create it.
"
" 3) If the buffer variable 'b:match_words' does exist, is the last
" character a ','? If not, add it before appending.
"
" You should now be able to match 'if/then/else/endif' in succession
" in your source file, in just about any construction you may have
" chosen for them.
"
" To add another group, simply call 'AppendMatchGroup again. E.G.:
"
" call AppendMatchGroup('while,do,endwhile')
function AppendMatchGroup(mwordList)
let List=a:mwordList
let Comma=match(List,',')
if Comma == -1 || Comma == strlen(List)-1
echoerr "Must supply a comma separated list of at least 2 entries."
echoerr "Supplied list: <".List.">"
return
endif
let listEntryBegin=0
let listEntryEnd=Comma
let listEntry=strpart(List,listEntryBegin,listEntryEnd-listEntryBegin)
let List=strpart(List,Comma+1)
let Comma=match(List,',')
" if listEntry is all spaces || List is empty || List is all spaces
if (match(listEntry,'\s\+') == 0 && match(listEntry,'\S\+') == -1)
\ || List == '' || (match(List,'\s\+') == 0 && match(List,'\S\+') == -1)
echoerr "Can't use all spaces for an entry <".listEntry.">"
echoerr "Remaining supplied list: <".List.">"
return
endif
if !exists("b:SOM")
let b:SOM='\<'
endif
if !exists("b:EOM")
let b:EOM='\>'
endif
if !exists("b:match_words")
let b:match_words=''
endif
if b:match_words != '' && match(b:match_words,',$') == -1
let b:match_words=b:match_words.','
endif
" okay, all set add first entry in this list
let b:match_words=b:match_words.b:SOM.listEntry.b:EOM.':'
while Comma != -1
let listEntryEnd=Comma
let listEntry=strpart(List,listEntryBegin,listEntryEnd-listEntryBegin)
let List=strpart(List,Comma+1)
let Comma=match(List,',')
" if listEntry is all spaces
if match(listEntry,'\s\+') == 0 && match(listEntry,'\S\+') == -1
echoerr "Can't use all spaces for an entry <".listEntry."> - skipping"
echoerr "Remaining supplied list: <".List.">"
continue
endif
let b:match_words=b:match_words.b:SOM.listEntry.b:EOM.':'
endwhile
let listEntry=List
let b:match_words=b:match_words.b:SOM.listEntry.b:EOM
endfunction
" TODO: Write a wrapper to handle multiple groups in one function call.
" Don't see a lot of utility in this as it would undoubtedly warrant
" continuation lines in the filetype script and it would be a toss
" up as to which is more readable: individual calls one to a line or
" a single call with continuation lines. I vote for the former.

View File

@@ -0,0 +1,24 @@
The ftplugin directory is for Vim plugin scripts that are only used for a
specific filetype.
All files ending in .vim in this directory and subdirectories will be sourced
by Vim when it detects the filetype that matches the name of the file or
subdirectory.
For example, these are all loaded for the "c" filetype:
c.vim
c_extra.vim
c/settings.vim
Note that the "_" in "c_extra.vim" is required to separate the filetype name
from the following arbitrary name.
The filetype plugins are only loaded when the ":filetype plugin" command has
been used.
The default filetype plugin files contain settings that 95% of the users will
want to use. They do not contain personal preferences, like the value of
'shiftwidth'.
If you want to do additional settings, or overrule the default filetype
plugin, you can create your own plugin file. See ":help ftplugin" in Vim.

View File

@@ -0,0 +1,20 @@
" Vim filetype plugin file
" Language: a2ps(1) configuration file
" Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
let s:cpo_save = &cpo
set cpo&vim
let b:undo_ftplugin = "setl com< cms< inc< fo<"
setlocal comments=:# commentstring=#\ %s include=^\\s*Include:
setlocal formatoptions-=t formatoptions+=croql
let &cpo = s:cpo_save
unlet s:cpo_save

View File

@@ -0,0 +1,25 @@
" Vim filetype plugin file
" Language: Aap recipe
" Maintainer: Bram Moolenaar <Bram@vim.org>
" Last Change: 2003 Nov 04
" Only do this when not done yet for this buffer
if exists("b:did_ftplugin")
finish
endif
" Don't load another plugin for this buffer
let b:did_ftplugin = 1
" Reset 'formatoptions', 'comments' and 'expandtab' to undo this plugin.
let b:undo_ftplugin = "setl fo< com< et<"
" Set 'formatoptions' to break comment lines but not other lines,
" and insert the comment leader when hitting <CR> or using "o".
setlocal fo-=t fo+=croql
" Set 'comments' to format dashed lists in comments.
setlocal comments=s:#\ -,m:#\ \,e:#,n:#,fb:-
" Expand tabs to spaces to avoid trouble.
setlocal expandtab

View File

@@ -0,0 +1,89 @@
" Vim filetype plugin file
" Language: Abaqus finite element input file (www.abaqus.com)
" Maintainer: Carl Osterwisch <osterwischc@asme.org>
" Last Change: 2008 Oct 5
" Only do this when not done yet for this buffer
if exists("b:did_ftplugin") | finish | endif
" Don't load another plugin for this buffer
let b:did_ftplugin = 1
" Save the compatibility options and temporarily switch to vim defaults
let s:cpo_save = &cpoptions
set cpoptions&vim
" Set the format of the include file specification for Abaqus
" Used in :check gf ^wf [i and other commands
setlocal include=\\<\\cINPUT\\s*=
" Remove characters up to the first = when evaluating filenames
setlocal includeexpr=substitute(v:fname,'.\\{-}=','','')
" Remove comma from valid filename characters since it is used to
" separate keyword parameters
setlocal isfname-=,
" Define format of comment lines (see 'formatoptions' for uses)
setlocal comments=:**
setlocal commentstring=**%s
" Definitions start with a * and assign a NAME, NSET, or ELSET
" Used in [d ^wd and other commands
setlocal define=^\\*\\a.*\\c\\(NAME\\\|NSET\\\|ELSET\\)\\s*=
" Abaqus keywords and identifiers may include a - character
setlocal iskeyword+=-
let b:undo_ftplugin = "setlocal include< includeexpr< isfname<"
\ . " comments< commentstring< define< iskeyword<"
if has("folding")
" Fold all lines that do not begin with *
setlocal foldexpr=getline(v:lnum)[0]!=\"\*\"
setlocal foldmethod=expr
let b:undo_ftplugin .= " foldexpr< foldmethod<"
endif
" Set the file browse filter (currently only supported under Win32 gui)
if has("gui_win32") && !exists("b:browsefilter")
let b:browsefilter = "Abaqus Input Files (*.inp *.inc)\t*.inp;*.inc\n" .
\ "Abaqus Results (*.dat)\t*.dat\n" .
\ "Abaqus Messages (*.pre *.msg *.sta)\t*.pre;*.msg;*.sta\n" .
\ "All Files (*.*)\t*.*\n"
let b:undo_ftplugin .= "|unlet b:browsefilter"
endif
" Define patterns for the matchit plugin
if exists("loaded_matchit") && !exists("b:match_words")
let b:match_ignorecase = 1
let b:match_words =
\ '\*part:\*end\s*part,' .
\ '\*assembly:\*end\s*assembly,' .
\ '\*instance:\*end\s*instance,' .
\ '\*step:\*end\s*step'
let b:undo_ftplugin .= "|unlet b:match_ignorecase b:match_words"
endif
" Define keys used to move [count] keywords backward or forward.
noremap <silent><buffer> [[ ?^\*\a<CR>:nohlsearch<CR>
noremap <silent><buffer> ]] /^\*\a<CR>:nohlsearch<CR>
" Define key to toggle commenting of the current line or range
noremap <silent><buffer> <LocalLeader><LocalLeader>
\ :call <SID>Abaqus_ToggleComment()<CR>j
function! <SID>Abaqus_ToggleComment() range
if strpart(getline(a:firstline), 0, 2) == "**"
" Un-comment all lines in range
silent execute a:firstline . ',' . a:lastline . 's/^\*\*//'
else
" Comment all lines in range
silent execute a:firstline . ',' . a:lastline . 's/^/**/'
endif
endfunction
let b:undo_ftplugin .= "|unmap <buffer> [[|unmap <buffer> ]]"
\ . "|unmap <buffer> <LocalLeader><LocalLeader>"
" Restore saved compatibility options
let &cpoptions = s:cpo_save

View File

@@ -0,0 +1,210 @@
"------------------------------------------------------------------------------
" Description: Perform Ada specific completion & tagging.
" Language: Ada (2005)
" $Id: ada.vim 887 2008-07-08 14:29:01Z krischik $
" Maintainer: Martin Krischik <krischik@users.sourceforge.net>
" Taylor Venable <taylor@metasyntax.net>
" Neil Bird <neil@fnxweb.com>
" $Author: krischik $
" $Date: 2008-07-08 16:29:01 +0200 (Di, 08 Jul 2008) $
" Version: 4.6
" $Revision: 887 $
" $HeadURL: https://gnuada.svn.sourceforge.net/svnroot/gnuada/trunk/tools/vim/ftplugin/ada.vim $
" History: 24.05.2006 MK Unified Headers
" 26.05.2006 MK ' should not be in iskeyword.
" 16.07.2006 MK Ada-Mode as vim-ball
" 02.10.2006 MK Better folding.
" 15.10.2006 MK Bram's suggestion for runtime integration
" 05.11.2006 MK Bram suggested not to use include protection for
" autoload
" 05.11.2006 MK Bram suggested to save on spaces
" 08.07.2007 TV fix default compiler problems.
" Help Page: ft-ada-plugin
"------------------------------------------------------------------------------
" Provides mapping overrides for tag jumping that figure out the current
" Ada object and tag jump to that, not the 'simple' vim word.
" Similarly allows <Ctrl-N> matching of full-length ada entities from tags.
"------------------------------------------------------------------------------
" Only do this when not done yet for this buffer
if exists ("b:did_ftplugin") || version < 700
finish
endif
" Don't load another plugin for this buffer
let b:did_ftplugin = 45
"
" Temporarily set cpoptions to ensure the script loads OK
"
let s:cpoptions = &cpoptions
set cpoptions-=C
" Section: Comments {{{1
"
setlocal comments=O:--,:--\ \
setlocal commentstring=--\ \ %s
setlocal complete=.,w,b,u,t,i
" Section: case {{{1
"
setlocal nosmartcase
setlocal ignorecase
" Section: formatoptions {{{1
"
setlocal formatoptions+=ron
" Section: Tagging {{{1
"
if exists ("g:ada_extended_tagging")
" Make local tag mappings for this buffer (if not already set)
if g:ada_extended_tagging == 'jump'
if mapcheck('<C-]>','n') == ''
nnoremap <unique> <buffer> <C-]> :call ada#Jump_Tag ('', 'tjump')<cr>
endif
if mapcheck('g<C-]>','n') == ''
nnoremap <unique> <buffer> g<C-]> :call ada#Jump_Tag ('','stjump')<cr>
endif
elseif g:ada_extended_tagging == 'list'
if mapcheck('<C-]>','n') == ''
nnoremap <unique> <buffer> <C-]> :call ada#List_Tag ()<cr>
endif
if mapcheck('g<C-]>','n') == ''
nnoremap <unique> <buffer> g<C-]> :call ada#List_Tag ()<cr>
endif
endif
endif
" Section: Completion {{{1
"
setlocal completefunc=ada#User_Complete
setlocal omnifunc=adacomplete#Complete
if exists ("g:ada_extended_completion")
if mapcheck ('<C-N>','i') == ''
inoremap <unique> <buffer> <C-N> <C-R>=ada#Completion("\<lt>C-N>")<cr>
endif
if mapcheck ('<C-P>','i') == ''
inoremap <unique> <buffer> <C-P> <C-R>=ada#Completion("\<lt>C-P>")<cr>
endif
if mapcheck ('<C-X><C-]>','i') == ''
inoremap <unique> <buffer> <C-X><C-]> <C-R>=<SID>ada#Completion("\<lt>C-X>\<lt>C-]>")<cr>
endif
if mapcheck ('<bs>','i') == ''
inoremap <silent> <unique> <buffer> <bs> <C-R>=ada#Insert_Backspace ()<cr>
endif
endif
" Section: Matchit {{{1
"
" Only do this when not done yet for this buffer & matchit is used
"
if !exists ("b:match_words") &&
\ exists ("loaded_matchit")
"
" The following lines enable the macros/matchit.vim plugin for
" Ada-specific extended matching with the % key.
"
let s:notend = '\%(\<end\s\+\)\@<!'
let b:match_words =
\ s:notend . '\<if\>:\<elsif\>:\<else\>:\<end\>\s\+\<if\>,' .
\ s:notend . '\<case\>:\<when\>:\<end\>\s\+\<case\>,' .
\ '\%(\<while\>.*\|\<for\>.*\|'.s:notend.'\)\<loop\>:\<end\>\s\+\<loop\>,' .
\ '\%(\<do\>\|\<begin\>\):\<exception\>:\<end\>\s*\%($\|[;A-Z]\),' .
\ s:notend . '\<record\>:\<end\>\s\+\<record\>'
endif
" Section: Compiler {{{1
"
if ! exists("g:ada_default_compiler")
if has("vms")
let g:ada_default_compiler = 'decada'
else
let g:ada_default_compiler = 'gnat'
endif
endif
if ! exists("current_compiler") ||
\ current_compiler != g:ada_default_compiler
execute "compiler " . g:ada_default_compiler
endif
" Section: Folding {{{1
"
if exists("g:ada_folding")
if g:ada_folding[0] == 'i'
setlocal foldmethod=indent
setlocal foldignore=--
setlocal foldnestmax=5
elseif g:ada_folding[0] == 'g'
setlocal foldmethod=expr
setlocal foldexpr=ada#Pretty_Print_Folding(v:lnum)
elseif g:ada_folding[0] == 's'
setlocal foldmethod=syntax
endif
setlocal tabstop=8
setlocal softtabstop=3
setlocal shiftwidth=3
endif
" Section: Abbrev {{{1
"
if exists("g:ada_abbrev")
iabbrev ret return
iabbrev proc procedure
iabbrev pack package
iabbrev func function
endif
" Section: Commands, Mapping, Menus {{{1
"
call ada#Map_Popup (
\ 'Tag.List',
\ 'l',
\ 'call ada#List_Tag ()')
call ada#Map_Popup (
\'Tag.Jump',
\'j',
\'call ada#Jump_Tag ()')
call ada#Map_Menu (
\'Tag.Create File',
\':AdaTagFile',
\'call ada#Create_Tags (''file'')')
call ada#Map_Menu (
\'Tag.Create Dir',
\':AdaTagDir',
\'call ada#Create_Tags (''dir'')')
call ada#Map_Menu (
\'Highlight.Toggle Space Errors',
\ ':AdaSpaces',
\'call ada#Switch_Syntax_Option (''space_errors'')')
call ada#Map_Menu (
\'Highlight.Toggle Lines Errors',
\ ':AdaLines',
\'call ada#Switch_Syntax_Option (''line_errors'')')
call ada#Map_Menu (
\'Highlight.Toggle Rainbow Color',
\ ':AdaRainbow',
\'call ada#Switch_Syntax_Option (''rainbow_color'')')
call ada#Map_Menu (
\'Highlight.Toggle Standard Types',
\ ':AdaTypes',
\'call ada#Switch_Syntax_Option (''standard_types'')')
" 1}}}
" Reset cpoptions
let &cpoptions = s:cpoptions
unlet s:cpoptions
finish " 1}}}
"------------------------------------------------------------------------------
" Copyright (C) 2006 Martin Krischik
"
" Vim is Charityware - see ":help license" or uganda.txt for licence details.
"------------------------------------------------------------------------------
" vim: textwidth=78 nowrap tabstop=8 shiftwidth=3 softtabstop=3 noexpandtab
" vim: foldmethod=marker

View File

@@ -0,0 +1,19 @@
" Vim filetype plugin file
" Language: alsaconf(8) configuration file
" Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
let s:cpo_save = &cpo
set cpo&vim
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=:# commentstring=#\ %s formatoptions-=t formatoptions+=croql
let &cpo = s:cpo_save
unlet s:cpo_save

View File

@@ -0,0 +1,43 @@
" Vim filetype plugin file
" Language: ant
" Maintainer: Dan Sharp <dwsharp at users dot sourceforge dot net>
" Last Changed: 20 Jan 2009
" URL: http://dwsharp.users.sourceforge.net/vim/ftplugin
if exists("b:did_ftplugin") | finish | endif
" Make sure the continuation lines below do not cause problems in
" compatibility mode.
let s:save_cpo = &cpo
set cpo-=C
" Define some defaults in case the included ftplugins don't set them.
let s:undo_ftplugin = ""
let s:browsefilter = "XML Files (*.xml)\t*.xml\n" .
\ "All Files (*.*)\t*.*\n"
runtime! ftplugin/xml.vim ftplugin/xml_*.vim ftplugin/xml/*.vim
let b:did_ftplugin = 1
" Override our defaults if these were set by an included ftplugin.
if exists("b:undo_ftplugin")
let s:undo_ftplugin = b:undo_ftplugin
endif
if exists("b:browsefilter")
let s:browsefilter = b:browsefilter
endif
" Change the :browse e filter to primarily show Ant-related files.
if has("gui_win32")
let b:browsefilter = "Build Files (build.xml)\tbuild.xml\n" .
\ "Java Files (*.java)\t*.java\n" .
\ "Properties Files (*.prop*)\t*.prop*\n" .
\ "Manifest Files (*.mf)\t*.mf\n" .
\ s:browsefilter
endif
" Undo the stuff we changed.
let b:undo_ftplugin = "unlet! b:browsefilter | " . s:undo_ftplugin
" Restore the saved compatibility options.
let &cpo = s:save_cpo

View File

@@ -0,0 +1,19 @@
" Vim filetype plugin file
" Language: GNU Arch inventory file
" Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
let s:cpo_save = &cpo
set cpo&vim
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=:# commentstring=#\ %s formatoptions-=t formatoptions+=croql
let &cpo = s:cpo_save
unlet s:cpo_save

View File

@@ -0,0 +1,16 @@
" Vim filetype plugin
" Language: ART-IM and ART*Enterprise
" Maintainer: Dorai Sitaram <ds26@gte.com>
" URL: http://www.ccs.neu.edu/~dorai/vimplugins/vimplugins.html
" Last Change: Apr 2, 2003
" Only do this when not done yet for this buffer
if exists("b:did_ftplugin")
finish
endif
run ftplugin/lisp.vim
setl lw-=if
setl lw+=def-art-fun,deffacts,defglobal,defrule,defschema,
\for,schema,while

View File

@@ -0,0 +1,59 @@
" Vim filetype plugin file
" Language: aspvbs
" Maintainer: Dan Sharp <dwsharp at users dot sourceforge dot net>
" Last Changed: 20 Jan 2009
" URL: http://dwsharp.users.sourceforge.net/vim/ftplugin
if exists("b:did_ftplugin") | finish | endif
" Make sure the continuation lines below do not cause problems in
" compatibility mode.
let s:save_cpo = &cpo
set cpo-=C
" Define some defaults in case the included ftplugins don't set them.
let s:undo_ftplugin = ""
let s:browsefilter = "HTML Files (*.html, *.htm)\t*.htm*\n" .
\ "All Files (*.*)\t*.*\n"
let s:match_words = ""
runtime! ftplugin/html.vim ftplugin/html_*.vim ftplugin/html/*.vim
let b:did_ftplugin = 1
" Override our defaults if these were set by an included ftplugin.
if exists("b:undo_ftplugin")
let s:undo_ftplugin = b:undo_ftplugin
endif
if exists("b:browsefilter")
let s:browsefilter = b:browsefilter
endif
if exists("b:match_words")
let s:match_words = b:match_words
endif
" ASP: Active Server Pages (with Visual Basic Script)
" thanks to Gontran BAERTS
if exists("loaded_matchit")
let s:notend = '\%(\<end\s\+\)\@<!'
let b:match_ignorecase = 1
let b:match_words =
\ s:notend . '\<if\>\%(.\{-}then\s\+\w\)\@!:\<elseif\>:^\s*\<else\>:\<end\s\+\<if\>,' .
\ s:notend . '\<select\s\+case\>:\<case\>:\<case\s\+else\>:\<end\s\+select\>,' .
\ '^\s*\<sub\>:\<end\s\+sub\>,' .
\ '^\s*\<function\>:\<end\s\+function\>,' .
\ '\<class\>:\<end\s\+class\>,' .
\ '^\s*\<do\>:\<loop\>,' .
\ '^\s*\<for\>:\<next\>,' .
\ '\<while\>:\<wend\>,' .
\ s:match_words
endif
" Change the :browse e filter to primarily show ASP-related files.
if has("gui_win32")
let b:browsefilter="ASP Files (*.asp)\t*.asp\n" . s:browsefilter
endif
let b:undo_ftplugin = "unlet! b:match_words b:match_ignorecase b:browsefilter | " . s:undo_ftplugin
" Restore the saved compatibility options.
let &cpo = s:save_cpo

View File

@@ -0,0 +1,16 @@
" Vim filetype plugin file
" Language: Automake
" Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let s:cpo_save = &cpo
set cpo&vim
runtime! ftplugin/make.vim ftplugin/make_*.vim ftplugin/make/*.vim
let &cpo = s:cpo_save
unlet s:cpo_save

View File

@@ -0,0 +1,20 @@
" Vim filetype plugin file
" Language: BDF font definition
" Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
let s:cpo_save = &cpo
set cpo&vim
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=b:COMMENT commentstring=COMMENT\ %s
setlocal formatoptions-=t formatoptions+=croql
let &cpo = s:cpo_save
unlet s:cpo_save

View File

@@ -0,0 +1,15 @@
" Vim filetype plugin file
" Language: bst
" Author: Tim Pope <vimNOSPAM@tpope.info>
" $Id: bst.vim,v 1.1 2007/05/05 17:37:57 vimboss Exp $
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
setlocal commentstring=%\ %s
setlocal comments=:%
setlocal fo-=t fo+=croql
let b:undo_ftplugin = "setlocal com< cms< fo<"

View File

@@ -0,0 +1,12 @@
" Vim filetype plugin file
" Language: BTM
" Maintainer: Bram Moolenaar <Bram@vim.org>
" Last Change: 2004 Jul 06
" Only do this when not done yet for this buffer
if exists("b:did_ftplugin")
finish
endif
" Behaves just like dosbatch
runtime! ftplugin/dosbatch.vim ftplugin/dosbatch_*.vim ftplugin/dosbatch/*.vim

View File

@@ -0,0 +1,64 @@
" Vim filetype plugin file
" Language: C
" Maintainer: Bram Moolenaar <Bram@vim.org>
" Last Change: 2007 Sep 25
" Only do this when not done yet for this buffer
if exists("b:did_ftplugin")
finish
endif
" Don't load another plugin for this buffer
let b:did_ftplugin = 1
" Using line continuation here.
let s:cpo_save = &cpo
set cpo-=C
let b:undo_ftplugin = "setl fo< com< ofu< | if has('vms') | setl isk< | endif"
" Set 'formatoptions' to break comment lines but not other lines,
" and insert the comment leader when hitting <CR> or using "o".
setlocal fo-=t fo+=croql
" Set completion with CTRL-X CTRL-O to autoloaded function.
if exists('&ofu')
setlocal ofu=ccomplete#Complete
endif
" Set 'comments' to format dashed lists in comments.
setlocal comments=sO:*\ -,mO:*\ \ ,exO:*/,s1:/*,mb:*,ex:*/,://
" In VMS C keywords contain '$' characters.
if has("vms")
setlocal iskeyword+=$
endif
" When the matchit plugin is loaded, this makes the % command skip parens and
" braces in comments.
let b:match_words = &matchpairs
let b:match_skip = 's:comment\|string\|character'
" Win32 can filter files in the browse dialog
if has("gui_win32") && !exists("b:browsefilter")
if &ft == "cpp"
let b:browsefilter = "C++ Source Files (*.cpp *.c++)\t*.cpp;*.c++\n" .
\ "C Header Files (*.h)\t*.h\n" .
\ "C Source Files (*.c)\t*.c\n" .
\ "All Files (*.*)\t*.*\n"
elseif &ft == "ch"
let b:browsefilter = "Ch Source Files (*.ch *.chf)\t*.ch;*.chf\n" .
\ "C Header Files (*.h)\t*.h\n" .
\ "C Source Files (*.c)\t*.c\n" .
\ "All Files (*.*)\t*.*\n"
else
let b:browsefilter = "C Source Files (*.c)\t*.c\n" .
\ "C Header Files (*.h)\t*.h\n" .
\ "Ch Source Files (*.ch *.chf)\t*.ch;*.chf\n" .
\ "C++ Source Files (*.cpp *.c++)\t*.cpp;*.c++\n" .
\ "All Files (*.*)\t*.*\n"
endif
endif
let &cpo = s:cpo_save
unlet s:cpo_save

View File

@@ -0,0 +1,20 @@
" Vim filetype plugin file
" Language: calendar(1) input file
" Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
let s:cpo_save = &cpo
set cpo&vim
let b:undo_ftplugin = "setl com< cms< inc< fo<"
setlocal comments=s1:/*,mb:*,ex:*/ commentstring& include&
setlocal formatoptions-=t formatoptions+=croql
let &cpo = s:cpo_save
unlet s:cpo_save

View File

@@ -0,0 +1,18 @@
" Vim filetype plugin file
" Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2007-12-04
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
let s:cpo_save = &cpo
set cpo&vim
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=:# commentstring=#\ %s formatoptions-=t formatoptions+=croql
let &cpo = s:cpo_save
unlet s:cpo_save

View File

@@ -0,0 +1,17 @@
" Vim filetype plugin file
" Language: Ch
" Maintainer: SoftIntegration, Inc. <info@softintegration.com>
" URL: http://www.softintegration.com/download/vim/ftplugin/ch.vim
" Last change: 2004 May 16
" Created based on cpp.vim
"
" Ch is a C/C++ interpreter with many high level extensions
"
" Only do this when not done yet for this buffer
if exists("b:did_ftplugin")
finish
endif
" Behaves just like C
runtime! ftplugin/c.vim ftplugin/c_*.vim ftplugin/c/*.vim

View File

@@ -0,0 +1,301 @@
" Vim filetype plugin file
" Language: generic Changelog file
" Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2009-05-25
" Variables:
" g:changelog_timeformat (deprecated: use g:changelog_dateformat instead) -
" description: the timeformat used in ChangeLog entries.
" default: "%Y-%m-%d".
" g:changelog_dateformat -
" description: the format sent to strftime() to generate a date string.
" default: "%Y-%m-%d".
" g:changelog_username -
" description: the username to use in ChangeLog entries
" default: try to deduce it from environment variables and system files.
" Local Mappings:
" <Leader>o -
" adds a new changelog entry for the current user for the current date.
" Global Mappings:
" <Leader>o -
" switches to the ChangeLog buffer opened for the current directory, or
" opens it in a new buffer if it exists in the current directory. Then
" it does the same as the local <Leader>o described above.
" Notes:
" run 'runtime ftplugin/changelog.vim' to enable the global mapping for
" changelog files.
" TODO:
" should we perhaps open the ChangeLog file even if it doesn't exist already?
" Problem is that you might end up with ChangeLog files all over the place.
" If 'filetype' isn't "changelog", we must have been to add ChangeLog opener
if &filetype == 'changelog'
if exists('b:did_ftplugin')
finish
endif
let b:did_ftplugin = 1
let s:cpo_save = &cpo
set cpo&vim
" Set up the format used for dates.
if !exists('g:changelog_dateformat')
if exists('g:changelog_timeformat')
let g:changelog_dateformat = g:changelog_timeformat
else
let g:changelog_dateformat = "%Y-%m-%d"
endif
endif
function! s:username()
if exists('g:changelog_username')
return g:changelog_username
elseif $EMAIL != ""
return $EMAIL
elseif $EMAIL_ADDRESS != ""
return $EMAIL_ADDRESS
endif
let login = s:login()
return printf('%s <%s@%s>', s:name(login), login, s:hostname())
endfunction
function! s:login()
return s:trimmed_system_with_default('whoami', 'unknown')
endfunction
function! s:trimmed_system_with_default(command, default)
return s:first_line(s:system_with_default(a:command, a:default))
endfunction
function! s:system_with_default(command, default)
let output = system(a:command)
if v:shell_error
return default
endif
return output
endfunction
function! s:first_line(string)
return substitute(a:string, '\n.*$', "", "")
endfunction
function! s:name(login)
for name in [s:gecos_name(a:login), $NAME, s:capitalize(a:login)]
if name != ""
return name
endif
endfor
endfunction
function! s:gecos_name(login)
for line in s:try_reading_file('/etc/passwd')
if line =~ '^' . a:login . ':'
return substitute(s:passwd_field(line, 5), '&', s:capitalize(a:login), "")
endif
endfor
return ""
endfunction
function! s:try_reading_file(path)
try
return readfile(a:path)
endtry
return []
endfunction
function! s:passwd_field(line, field)
let fields = split(a:line, ':', 1)
if len(fields) < field
return ""
endif
return fields[field - 1]
endfunction
function! s:capitalize(word)
return toupper(a:word[0]) . strpart(a:word, 1)
endfunction
function! s:hostname()
return s:trimmed_system_with_default('hostname', 'localhost')
endfunction
" Format used for new date entries.
if !exists('g:changelog_new_date_format')
let g:changelog_new_date_format = "%d %u\n\n\t* %c\n\n"
endif
" Format used for new entries to current date entry.
if !exists('g:changelog_new_entry_format')
let g:changelog_new_entry_format = "\t* %c"
endif
" Regular expression used to find a given date entry.
if !exists('g:changelog_date_entry_search')
let g:changelog_date_entry_search = '^\s*%d\_s*%u'
endif
" Regular expression used to find the end of a date entry
if !exists('g:changelog_date_end_entry_search')
let g:changelog_date_end_entry_search = '^\s*$'
endif
" Substitutes specific items in new date-entry formats and search strings.
" Can be done with substitute of course, but unclean, and need \@! then.
function! s:substitute_items(str, date, user)
let str = a:str
let middles = {'%': '%', 'd': a:date, 'u': a:user, 'c': '{cursor}'}
let i = stridx(str, '%')
while i != -1
let inc = 0
if has_key(middles, str[i + 1])
let mid = middles[str[i + 1]]
let str = strpart(str, 0, i) . mid . strpart(str, i + 2)
let inc = strlen(mid)
endif
let i = stridx(str, '%', i + 1 + inc)
endwhile
return str
endfunction
" Position the cursor once we've done all the funky substitution.
function! s:position_cursor()
if search('{cursor}') > 0
let lnum = line('.')
let line = getline(lnum)
let cursor = stridx(line, '{cursor}')
call setline(lnum, substitute(line, '{cursor}', '', ''))
endif
startinsert!
endfunction
" Internal function to create a new entry in the ChangeLog.
function! s:new_changelog_entry()
" Deal with 'paste' option.
let save_paste = &paste
let &paste = 1
call cursor(1, 1)
" Look for an entry for today by our user.
let date = strftime(g:changelog_dateformat)
let search = s:substitute_items(g:changelog_date_entry_search, date,
\ g:changelog_username)
if search(search) > 0
" Ok, now we look for the end of the date entry, and add an entry.
call cursor(nextnonblank(line('.') + 1), 1)
if search(g:changelog_date_end_entry_search, 'W') > 0
let p = (line('.') == line('$')) ? line('.') : line('.') - 1
else
let p = line('.')
endif
let ls = split(s:substitute_items(g:changelog_new_entry_format, '', ''),
\ '\n')
call append(p, ls)
call cursor(p + 1, 1)
else
" Flag for removing empty lines at end of new ChangeLogs.
let remove_empty = line('$') == 1
" No entry today, so create a date-user header and insert an entry.
let todays_entry = s:substitute_items(g:changelog_new_date_format,
\ date, g:changelog_username)
" Make sure we have a cursor positioning.
if stridx(todays_entry, '{cursor}') == -1
let todays_entry = todays_entry . '{cursor}'
endif
" Now do the work.
call append(0, split(todays_entry, '\n'))
" Remove empty lines at end of file.
if remove_empty
$-/^\s*$/-1,$delete
endif
" Reposition cursor once we're done.
call cursor(1, 1)
endif
call s:position_cursor()
" And reset 'paste' option
let &paste = save_paste
endfunction
if exists(":NewChangelogEntry") != 2
noremap <buffer> <silent> <Leader>o <Esc>:call <SID>new_changelog_entry()<CR>
command! -nargs=0 NewChangelogEntry call s:new_changelog_entry()
endif
let b:undo_ftplugin = "setl com< fo< et< ai<"
setlocal comments=
setlocal formatoptions+=t
setlocal noexpandtab
setlocal autoindent
if &textwidth == 0
setlocal textwidth=78
let b:undo_ftplugin .= " tw<"
endif
let &cpo = s:cpo_save
unlet s:cpo_save
else
let s:cpo_save = &cpo
set cpo&vim
" Add the Changelog opening mapping
nnoremap <silent> <Leader>o :call <SID>open_changelog()<CR>
function! s:open_changelog()
let path = expand('%:p:h')
if exists('b:changelog_path')
let changelog = b:changelog_path
else
if exists('b:changelog_name')
let name = b:changelog_name
else
let name = 'ChangeLog'
endif
while isdirectory(path)
let changelog = path . '/' . name
if filereadable(changelog)
break
endif
let parent = substitute(path, '/\+[^/]*$', "", "")
if path == parent
break
endif
let path = parent
endwhile
endif
if !filereadable(changelog)
return
endif
if exists('b:changelog_entry_prefix')
let prefix = call(b:changelog_entry_prefix, [])
else
let prefix = substitute(strpart(expand('%:p'), strlen(path)), '^/\+', "", "") . ':'
endif
if !empty(prefix)
let prefix = ' ' . prefix
endif
let buf = bufnr(changelog)
if buf != -1
if bufwinnr(buf) != -1
execute bufwinnr(buf) . 'wincmd w'
else
execute 'sbuffer' buf
endif
else
execute 'split' fnameescape(changelog)
endif
call s:new_changelog_entry(prefix)
endfunction
let &cpo = s:cpo_save
unlet s:cpo_save
endif

View File

@@ -0,0 +1,266 @@
" Vim filetype plugin file
" Language: cobol
" Author: Tim Pope <vimNOSPAM@tpope.info>
" $Id: cobol.vim,v 1.1 2007/05/05 17:24:38 vimboss Exp $
" Insert mode mappings: <C-T> <C-D> <Tab>
" Normal mode mappings: < > << >> [[ ]] [] ][
" Visual mode mappings: < >
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
let s:cpo_save = &cpo
set cpo&vim
setlocal commentstring=\ \ \ \ \ \ *%s
setlocal comments=:*
setlocal fo+=croqlt
setlocal expandtab
setlocal textwidth=72
" matchit support
if exists("loaded_matchit")
let s:ordot = '\|\ze\.\%( \@=\|$\)'
let b:match_ignorecase=1
"let b:match_skip = 'getline(".") =~ "^.\\{6\\}[*/C]"'
let b:match_words=
\ '\$if\>:$else\>:\$endif\>,' .
\ '[$-]\@<!\<if\>:\<\%(then\|else\)\>:\<end-if\>'.s:ordot.',' .
\ '-\@<!\<perform\s\+\%(\d\+\s\+times\|until\|varying\|with\s\+test\)\>:\<end-perform\>'.s:ordot . ',' .
\ '-\@<!\<\%(search\|evaluate\)\>:\<\%(when\)\>:\<end-\%(search\|evaluate\)\>' .s:ordot . ',' .
\ '-\@<!\<\%(add\|compute\|divide\|multiply\|subtract\)\>\%(.*\(\%$\|\%(\n\%(\%(\s*\|.\{6\}\)[*/].*\n\)*\)\=\s*\%(not\s\+\)\=on\s\+size\s\+error\>\)\)\@=:\%(\<not\s\+\)\@<!\<\%(not\s\+\)\=on\s\+size\s\+error\>:\<end-\%(add\|compute\|divide\|multiply\|subtract\)\>' .s:ordot . ',' .
\ '-\@<!\<\%(string\|unstring\|accept\|display\|call\)\>\%(.*\(\%$\|\%(\n\%(\%(\s*\|.\{6\}\)[*/].*\n\)*\)\=\s*\%(not\s\+\)\=on\s\+\%(overflow\|exception\)\>\)\)\@=:\%(\<not\s\+\)\@<!\<\%(not\s\+\)\=on\s\+\%(overflow\|exception\)\>:\<end-\%(string\|unstring\|accept\|display\|call\)\>' .s:ordot . ',' .
\ '-\@<!\<\%(delete\|rewrite\|start\|write\|read\)\>\%(.*\(\%$\|\%(\n\%(\%(\s*\|.\{6\}\)[*/].*\n\)*\)\=\s*\%(invalid\s\+key\|at\s\+end\|no\s\+data\|at\s\+end-of-page\)\>\)\)\@=:\%(\<not\s\+\)\@<!\<\%(not\s\+\)\=\%(invalid\s\+key\|at\s\+end\|no\s\+data\|at\s\+end-of-page\)\>:\<end-\%(delete\|rewrite\|start\|write\|read\)\>' .s:ordot
endif
if has("gui_win32") && !exists("b:browsefilter")
let b:browsefilter = "COBOL Source Files (*.cbl, *.cob)\t*.cbl;*.cob;*.lib\n".
\ "All Files (*.*)\t*.*\n"
endif
let b:undo_ftplugin = "setlocal com< cms< fo< et< tw<" .
\ " | unlet! b:browsefilter b:match_words b:match_ignorecase b:match_skip"
if !exists("g:no_plugin_maps") && !exists("g:no_cobol_maps")
let b:undo_ftplugin = b:undo_ftplugin .
\ " | sil! exe 'nunmap <buffer> <'" .
\ " | sil! exe 'nunmap <buffer> >'" .
\ " | sil! exe 'nunmap <buffer> <<'" .
\ " | sil! exe 'nunmap <buffer> >>'" .
\ " | sil! exe 'vunmap <buffer> <'" .
\ " | sil! exe 'vunmap <buffer> >'" .
\ " | sil! exe 'iunmap <buffer> <C-D>'" .
\ " | sil! exe 'iunmap <buffer> <C-T>'" .
\ " | sil! exe 'iunmap <buffer> <Tab>'" .
\ " | sil! exe 'nunmap <buffer> <Plug>Traditional'" .
\ " | sil! exe 'nunmap <buffer> <Plug>Comment'" .
\ " | sil! exe 'nunmap <buffer> <Plug>DeComment'" .
\ " | sil! exe 'vunmap <buffer> <Plug>VisualTraditional'" .
\ " | sil! exe 'vunmap <buffer> <Plug>VisualComment'" .
\ " | sil! exe 'iunmap <buffer> <Plug>VisualDeComment'" .
\ " | sil! exe 'unmap <buffer> [['" .
\ " | sil! exe 'unmap <buffer> ]]'" .
\ " | sil! exe 'unmap <buffer> []'" .
\ " | sil! exe 'unmap <buffer> ]['"
endif
if !exists("g:no_plugin_maps") && !exists("g:no_cobol_maps")
if version >= 700
nnoremap <silent> <buffer> > :set opfunc=<SID>IncreaseFunc<CR>g@
nnoremap <silent> <buffer> < :set opfunc=<SID>DecreaseFunc<CR>g@
endif
nnoremap <silent> <buffer> >> :call CobolIndentBlock(1)<CR>
nnoremap <silent> <buffer> << :call CobolIndentBlock(-1)<CR>
vnoremap <silent> <buffer> > :call CobolIndentBlock(v:count1)<CR>
vnoremap <silent> <buffer> < :call CobolIndentBlock(-v:count1)<CR>
inoremap <silent> <buffer> <C-T> <C-R>=<SID>IncreaseIndent()<CR><C-R>=<SID>RestoreShiftwidth()<CR>
inoremap <silent> <buffer> <C-D> <C-R>=<SID>DecreaseIndent()<CR><C-R>=<SID>RestoreShiftwidth()<CR>
if !maparg("<Tab>","i")
inoremap <silent> <buffer> <Tab> <C-R>=<SID>Tab()<CR><C-R>=<SID>RestoreShiftwidth()<CR>
endif
noremap <silent> <buffer> [[ m':call search('\c^\%(\s*\<Bar>.\{6\}\s\+\)\zs[A-Za-z0-9-]\+\s\+\%(division\<Bar>section\)\s*\.','bW')<CR>
noremap <silent> <buffer> ]] m':call search('\c^\%(\s*\<Bar>.\{6\}\s\+\)\zs[A-Za-z0-9-]\+\s\+\%(division\<Bar>section\)\.','W')<CR>
noremap <silent> <buffer> [] m':call <SID>toend('b')<CR>
noremap <silent> <buffer> ][ m':call <SID>toend('')<CR>
" For EnhancedCommentify
noremap <silent> <buffer> <Plug>Traditional :call <SID>Comment('t')<CR>
noremap <silent> <buffer> <Plug>Comment :call <SID>Comment('c')<CR>
noremap <silent> <buffer> <Plug>DeComment :call <SID>Comment('u')<CR>
noremap <silent> <buffer> <Plug>VisualTraditional :'<,'>call <SID>Comment('t')<CR>
noremap <silent> <buffer> <Plug>VisualComment :'<,'>call <SID>Comment('c')<CR>
noremap <silent> <buffer> <Plug>VisualDeComment :'<,'>call <SID>Comment('u')<CR>
endif
let &cpo = s:cpo_save
unlet s:cpo_save
if exists("g:did_cobol_ftplugin_functions")
finish
endif
let g:did_cobol_ftplugin_functions = 1
function! s:repeat(str,count)
let i = 0
let ret = ""
while i < a:count
let ret = ret . a:str
let i = i + 1
endwhile
return ret
endfunction
function! s:increase(...)
let lnum = '.'
let sw = &shiftwidth
let i = a:0 ? a:1 : indent(lnum)
if i >= 11
return sw - (i - 11) % sw
elseif i >= 7
return 11-i
elseif i == 6
return 1
else
return 6-i
endif
endfunction
function! s:decrease(...)
let lnum = '.'
let sw = &shiftwidth
let i = indent(a:0 ? a:1 : lnum)
if i >= 11 + sw
return 1 + (i + 12) % sw
elseif i > 11
return i-11
elseif i > 7
return i-7
elseif i == 7
return 1
else
return i
endif
endfunction
function! CobolIndentBlock(shift)
let head = strpart(getline('.'),0,7)
let tail = strpart(getline('.'),7)
let indent = match(tail,'[^ ]')
let sw = &shiftwidth
let shift = a:shift
if shift > 0
if indent < 4
let tail = s:repeat(" ",4-indent).tail
let shift = shift - 1
endif
let tail = s:repeat(" ",shift*sw).tail
let shift = 0
elseif shift < 0
if (indent-4) > -shift * sw
let tail = strpart(tail,-shift * sw)
elseif (indent-4) > (-shift-1) * sw
let tail = strpart(tail,indent - 4)
else
let tail = strpart(tail,indent)
endif
endif
call setline('.',head.tail)
endfunction
function! s:IncreaseFunc(type)
'[,']call CobolIndentBlock(1)
endfunction
function! s:DecreaseFunc(type)
'[,']call CobolIndentBlock(-1)
endfunction
function! s:IncreaseIndent()
let c = "\<C-T>"
if exists("*InsertCtrlTWrapper")
let key = InsertCtrlTWrapper()
if key != c
return key
endif
endif
let interval = s:increase()
let b:cobol_shiftwidth = &shiftwidth
let &shiftwidth = 1
let lastchar = strpart(getline('.'),col('.')-2,1)
if lastchar == '0' || lastchar == '^'
return "\<BS>".lastchar.c
else
return s:repeat(c,interval)
endif
endfunction
function! s:DecreaseIndent()
let c = "\<C-D>"
if exists("*InsertCtrlDWrapper")
" I hack Ctrl-D to delete when not at the end of the line.
let key = InsertCtrlDWrapper()
if key != c
return key
endif
endif
let interval = s:decrease()
let b:cobol_shiftwidth = &shiftwidth
let &shiftwidth = 1
return s:repeat(c,interval)
endfunction
function! s:RestoreShiftwidth()
if exists("b:cobol_shiftwidth")
let &shiftwidth=b:cobol_shiftwidth
unlet b:cobol_shiftwidth
endif
return ""
endfunction
function! s:Tab()
if (strpart(getline('.'),0,col('.')-1) =~ '^\s*$' && &sta)
return s:IncreaseIndent()
elseif &sts == &sw && &sts != 8 && &et
return s:repeat(" ",s:increase(col('.')-1))
else
return "\<Tab>"
endif
endfunction
function! s:Comment(arg)
" For EnhancedCommentify
let line = getline('.')
if (line =~ '^.\{6\}[*/C]' || a:arg == 'c') && a:arg != 'u'
let line = substitute(line,'^.\{6\}\zs.',' ','')
else
let line = substitute(line,'^.\{6\}\zs.','*','')
endif
call setline('.',line)
endfunction
function! s:toend(direction)
let ignore = '^\(\s*\|.\{6\}\)\%([*/]\|\s*$\)'
let keep = line('.')
keepjumps +
while line('.') < line('$') && getline('.') =~ ignore
keepjumps +
endwhile
let res = search('\c^\%(\s*\|.\{6\}\s\+\)\zs[A-Za-z0-9-]\+\s\+\%(division\|section\)\s*\.',a:direction.'W')
if a:direction != 'b' && !res
let res = line('$')
keepjumps $
elseif res
keepjumps -
endif
if res
while line('.') > 1 && getline('.') =~ ignore
keepjumps -
endwhile
if line('.') == 1 && getline('.') =~ ignore
exe "keepjumps ".keep
endif
else
exe "keepjumps ".keep
endif
endfunction

View File

@@ -0,0 +1,19 @@
" Vim filetype plugin file
" Language: generic configuration file
" Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
let s:cpo_save = &cpo
set cpo&vim
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=:# commentstring=#\ %s formatoptions-=t formatoptions+=croql
let &cpo = s:cpo_save
unlet s:cpo_save

View File

@@ -0,0 +1,41 @@
" Vim filetype plugin file
" Language: config
" Maintainer: Dan Sharp <dwsharp at users dot sourceforge dot net>
" Last Changed: 20 Jan 2009
" URL: http://dwsharp.users.sourceforge.net/vim/ftplugin
if exists("b:did_ftplugin") | finish | endif
" Make sure the continuation lines below do not cause problems in
" compatibility mode.
let s:save_cpo = &cpo
set cpo-=C
" Define some defaults in case the included ftplugins don't set them.
let s:undo_ftplugin = ""
let s:browsefilter = "Bourne Shell Files (*.sh)\t*.sh\n" .
\ "All Files (*.*)\t*.*\n"
let s:match_words = ""
runtime! ftplugin/sh.vim ftplugin/sh_*.vim ftplugin/sh/*.vim
let b:did_ftplugin = 1
" Override our defaults if these were set by an included ftplugin.
if exists("b:undo_ftplugin")
let s:undo_ftplugin = b:undo_ftplugin
endif
if exists("b:browsefilter")
let s:browsefilter = b:browsefilter
endif
" Change the :browse e filter to primarily show configure-related files.
if has("gui_win32")
let b:browsefilter="Configure Scripts (configure.*, config.*)\tconfigure*;config.*\n" .
\ s:browsefilter
endif
" Undo the stuff we changed.
let b:undo_ftplugin = "unlet! b:browsefilter | " . b:undo_ftplugin
" Restore the saved compatibility options.
let &cpo = s:save_cpo

View File

@@ -0,0 +1,35 @@
" Vim filetype plugin file
" Language: ConTeXt typesetting engine
" Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
let s:cpo_save = &cpo
set cpo&vim
let b:undo_ftplugin = "setl com< cms< def< inc< sua< fo<"
setlocal comments=b:%D,b:%C,b:%M,:% commentstring=%\ %s formatoptions+=tcroql
let &l:define='\\\%([egx]\|char\|mathchar\|count\|dimen\|muskip\|skip\|toks\)\='
\ . 'def\|\\font\|\\\%(future\)\=let'
\ . '\|\\new\%(count\|dimen\|skip\|muskip\|box\|toks\|read\|write'
\ . '\|fam\|insert\|if\)'
let &l:include = '^\s*\%(input\|component\)'
setlocal suffixesadd=.tex
if exists("loaded_matchit")
let b:match_ignorecase = 0
let b:match_skip = 'r:\\\@<!\%(\\\\\)*%'
let b:match_words = '(:),\[:],{:},\\(:\\),\\\[:\\],' .
\ '\\start\(\a\+\):\\stop\1'
endif
let &cpo = s:cpo_save
unlet s:cpo_save

View File

@@ -0,0 +1,12 @@
" Vim filetype plugin file
" Language: C++
" Maintainer: Bram Moolenaar <Bram@vim.org>
" Last Change: 2001 Jan 15
" Only do this when not done yet for this buffer
if exists("b:did_ftplugin")
finish
endif
" Behaves just like C
runtime! ftplugin/c.vim ftplugin/c_*.vim ftplugin/c/*.vim

View File

@@ -0,0 +1,19 @@
" Vim filetype plugin file
" Language: CRM114
" Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
let s:cpo_save = &cpo
set cpo&vim
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=:# commentstring=#\ %s formatoptions-=t formatoptions+=croql
let &cpo = s:cpo_save
unlet s:cpo_save

View File

@@ -0,0 +1,24 @@
" Vim filetype plugin file
" Language: C#
" Maintainer: Johannes Zellner <johannes@zellner.org>
" Last Change: Tue, 09 Mar 2004 14:09:33 CET
" Only do this when not done yet for this buffer
if exists("b:did_ftplugin")
finish
endif
" Don't load another plugin for this buffer
let b:did_ftplugin = 1
" Set 'formatoptions' to break comment lines but not other lines,
" and insert the comment leader when hitting <CR> or using "o".
setlocal fo-=t fo+=croql
" Set 'comments' to format dashed lists in comments.
setlocal comments=sO:*\ -,mO:*\ \ ,exO:*/,s1:/*,mb:*,ex:*/,:///,://
if has("gui_win32") && !exists("b:browsefilter")
let b:browsefilter = "C# Source Files (*.cs)\t*.cs\n" .
\ "All Files (*.*)\t*.*\n"
endif

View File

@@ -0,0 +1,26 @@
" Vim filetype plugin file
" Language: csc
" Maintainer: Dan Sharp <dwsharp at users dot sourceforge dot net>
" Last Changed: 20 Jan 2009
" URL: http://dwsharp.users.sourceforge.net/vim/ftplugin
if exists("b:did_ftplugin") | finish | endif
let b:did_ftplugin = 1
" Make sure the continuation lines below do not cause problems in
" compatibility mode.
let s:save_cpo = &cpo
set cpo-=C
if exists("loaded_matchit")
let b:match_words=
\ '\<fix\>:\<endfix\>,' .
\ '\<if\>:\<else\%(if\)\=\>:\<endif\>,' .
\ '\<!loopondimensions\>\|\<!looponselected\>:\<!endloop\>'
endif
" Undo the stuff we changed.
let b:undo_ftplugin = "unlet! b:match_words"
" Restore the saved compatibility options.
let &cpo = s:save_cpo

View File

@@ -0,0 +1,47 @@
" Vim filetype plugin file
" Language: csh
" Maintainer: Dan Sharp <dwsharp at users dot sourceforge dot net>
" Last Changed: 20 Jan 2009
" URL: http://dwsharp.users.sourceforge.net/vim/ftplugin
if exists("b:did_ftplugin") | finish | endif
let b:did_ftplugin = 1
" Make sure the continuation lines below do not cause problems in
" compatibility mode.
let s:save_cpo = &cpo
set cpo-=C
setlocal commentstring=#%s
setlocal formatoptions-=t
setlocal formatoptions+=crql
" Csh: thanks to Johannes Zellner
" - Both foreach and end must appear alone on separate lines.
" - The words else and endif must appear at the beginning of input lines;
" the if must appear alone on its input line or after an else.
" - Each case label and the default label must appear at the start of a
" line.
" - while and end must appear alone on their input lines.
if exists("loaded_matchit")
let b:match_words =
\ '^\s*\<if\>.*(.*).*\<then\>:'.
\ '^\s*\<else\>\s\+\<if\>.*(.*).*\<then\>:^\s*\<else\>:'.
\ '^\s*\<endif\>,'.
\ '\%(^\s*\<foreach\>\s\+\S\+\|^s*\<while\>\).*(.*):'.
\ '\<break\>:\<continue\>:^\s*\<end\>,'.
\ '^\s*\<switch\>.*(.*):^\s*\<case\>\s\+:^\s*\<default\>:^\s*\<endsw\>'
endif
" Change the :browse e filter to primarily show csh-related files.
if has("gui_win32")
let b:browsefilter="csh Scripts (*.csh)\t*.csh\n" .
\ "All Files (*.*)\t*.*\n"
endif
" Undo the stuff we changed.
let b:undo_ftplugin = "setlocal commentstring< formatoptions<" .
\ " | unlet! b:match_words b:browsefilter"
" Restore the saved compatibility options.
let &cpo = s:save_cpo

View File

@@ -0,0 +1,23 @@
" Vim filetype plugin file
" Language: CSS
" Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
let s:cpo_save = &cpo
set cpo&vim
let b:undo_ftplugin = "setl com< cms< inc< fo< ofu<"
setlocal comments=s1:/*,mb:*,ex:*/ commentstring&
setlocal formatoptions-=t formatoptions+=croql
setlocal omnifunc=csscomplete#CompleteCSS
let &l:include = '^\s*@import\s\+\%(url(\)\='
let &cpo = s:cpo_save
unlet s:cpo_save

View File

@@ -0,0 +1,19 @@
" Vim filetype plugin file
" Language: cvs(1) RC file
" Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
let s:cpo_save = &cpo
set cpo&vim
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments= commentstring= formatoptions-=tcroql
let &cpo = s:cpo_save
unlet s:cpo_save

View File

@@ -0,0 +1,380 @@
" Vim filetype plugin file (GUI menu, folding and completion)
" Language: Debian Changelog
" Maintainer: Debian Vim Maintainers <pkg-vim-maintainers@lists.alioth.debian.org>
" Former Maintainers: Michael Piefel <piefel@informatik.hu-berlin.de>
" Stefano Zacchiroli <zack@debian.org>
" Last Change: 2008-03-08
" License: GNU GPL, version 2.0 or later
" URL: http://git.debian.org/?p=pkg-vim/vim.git;a=blob_plain;f=runtime/ftplugin/debchangelog.vim;hb=debian
" Bug completion requires apt-listbugs installed for Debian packages or
" python-launchpadlib >= 1.5.4 installed for Ubuntu packages
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin=1
" {{{1 Local settings (do on every load)
if exists("g:debchangelog_fold_enable")
setlocal foldmethod=expr
setlocal foldexpr=DebGetChangelogFold(v:lnum)
setlocal foldtext=DebChangelogFoldText()
endif
" Debian changelogs are not supposed to have any other text width,
" so the user cannot override this setting
setlocal tw=78
setlocal comments=f:*
" Clean unloading
let b:undo_ftplugin = "setlocal tw< comments< foldmethod< foldexpr< foldtext<"
" }}}1
if exists("g:did_changelog_ftplugin")
finish
endif
" Don't load another plugin (this is global)
let g:did_changelog_ftplugin = 1
" {{{1 GUI menu
" Helper functions returning various data.
" Returns full name, either from $DEBFULLNAME or debianfullname.
" TODO Is there a way to determine name from anywhere else?
function <SID>FullName()
if exists("$DEBFULLNAME")
return $DEBFULLNAME
elseif exists("g:debianfullname")
return g:debianfullname
else
return "Your Name"
endif
endfunction
" Returns email address, from $DEBEMAIL, $EMAIL or debianemail.
function <SID>Email()
if exists("$DEBEMAIL")
return $DEBEMAIL
elseif exists("$EMAIL")
return $EMAIL
elseif exists("g:debianemail")
return g:debianemail
else
return "your@email.address"
endif
endfunction
" Returns date in RFC822 format.
function <SID>Date()
let savelang = v:lc_time
execute "language time C"
let dateandtime = strftime("%a, %d %b %Y %X %z")
execute "language time " . savelang
return dateandtime
endfunction
function <SID>WarnIfNotUnfinalised()
if match(getline("."), " -- [[:alpha:]][[:alnum:].]")!=-1
echohl WarningMsg
echo "The entry has not been unfinalised before editing."
echohl None
return 1
endif
return 0
endfunction
function <SID>Finalised()
let savelinenum = line(".")
normal 1G
call search("^ -- ")
if match(getline("."), " -- [[:alpha:]][[:alnum:].]")!=-1
let returnvalue = 1
else
let returnvalue = 0
endif
execute savelinenum
return returnvalue
endfunction
" These functions implement the menus
function NewVersion()
" The new entry is unfinalised and shall be changed
amenu disable Changelog.New\ Version
amenu enable Changelog.Add\ Entry
amenu enable Changelog.Close\ Bug
amenu enable Changelog.Set\ Distribution
amenu enable Changelog.Set\ Urgency
amenu disable Changelog.Unfinalise
amenu enable Changelog.Finalise
call append(0, substitute(getline(1), '-\([[:digit:]]\+\))', '-$$\1)', ''))
call append(1, "")
call append(2, "")
call append(3, " -- ")
call append(4, "")
call Urgency("low")
normal 1G0
call search(")")
normal h
normal 
call setline(1, substitute(getline(1), '-\$\$', '-', ''))
if exists("g:debchangelog_fold_enable")
foldopen
endif
call AddEntry()
endfunction
function AddEntry()
normal 1G
call search("^ -- ")
normal kk
call append(".", " * ")
normal jjj
let warn=<SID>WarnIfNotUnfinalised()
normal kk
if warn
echohl MoreMsg
call input("Hit ENTER")
echohl None
endif
startinsert!
endfunction
function CloseBug()
normal 1G
call search("^ -- ")
let warn=<SID>WarnIfNotUnfinalised()
normal kk
call append(".", " * (closes: #" . input("Bug number to close: ") . ")")
normal j^ll
startinsert
endfunction
function Distribution(dist)
call setline(1, substitute(getline(1), ") [[:lower:] ]*;", ") " . a:dist . ";", ""))
endfunction
function Urgency(urg)
call setline(1, substitute(getline(1), "urgency=.*$", "urgency=" . a:urg, ""))
endfunction
function <SID>UnfinaliseMenu()
" This means the entry shall be changed
amenu disable Changelog.New\ Version
amenu enable Changelog.Add\ Entry
amenu enable Changelog.Close\ Bug
amenu enable Changelog.Set\ Distribution
amenu enable Changelog.Set\ Urgency
amenu disable Changelog.Unfinalise
amenu enable Changelog.Finalise
endfunction
function Unfinalise()
call <SID>UnfinaliseMenu()
normal 1G
call search("^ -- ")
call setline(".", " -- ")
endfunction
function <SID>FinaliseMenu()
" This means the entry should not be changed anymore
amenu enable Changelog.New\ Version
amenu disable Changelog.Add\ Entry
amenu disable Changelog.Close\ Bug
amenu disable Changelog.Set\ Distribution
amenu disable Changelog.Set\ Urgency
amenu enable Changelog.Unfinalise
amenu disable Changelog.Finalise
endfunction
function Finalise()
call <SID>FinaliseMenu()
normal 1G
call search("^ -- ")
call setline(".", " -- " . <SID>FullName() . " <" . <SID>Email() . "> " . <SID>Date())
endfunction
function <SID>MakeMenu()
amenu &Changelog.&New\ Version :call NewVersion()<CR>
amenu Changelog.&Add\ Entry :call AddEntry()<CR>
amenu Changelog.&Close\ Bug :call CloseBug()<CR>
menu Changelog.-sep- <nul>
amenu Changelog.Set\ &Distribution.&unstable :call Distribution("unstable")<CR>
amenu Changelog.Set\ Distribution.&frozen :call Distribution("frozen")<CR>
amenu Changelog.Set\ Distribution.&stable :call Distribution("stable")<CR>
menu Changelog.Set\ Distribution.-sep- <nul>
amenu Changelog.Set\ Distribution.frozen\ unstable :call Distribution("frozen unstable")<CR>
amenu Changelog.Set\ Distribution.stable\ unstable :call Distribution("stable unstable")<CR>
amenu Changelog.Set\ Distribution.stable\ frozen :call Distribution("stable frozen")<CR>
amenu Changelog.Set\ Distribution.stable\ frozen\ unstable :call Distribution("stable frozen unstable")<CR>
amenu Changelog.Set\ &Urgency.&low :call Urgency("low")<CR>
amenu Changelog.Set\ Urgency.&medium :call Urgency("medium")<CR>
amenu Changelog.Set\ Urgency.&high :call Urgency("high")<CR>
menu Changelog.-sep- <nul>
amenu Changelog.U&nfinalise :call Unfinalise()<CR>
amenu Changelog.&Finalise :call Finalise()<CR>
if <SID>Finalised()
call <SID>FinaliseMenu()
else
call <SID>UnfinaliseMenu()
endif
endfunction
augroup changelogMenu
au BufEnter * if &filetype == "debchangelog" | call <SID>MakeMenu() | endif
au BufLeave * if &filetype == "debchangelog" | aunmenu Changelog | endif
augroup END
" }}}
" {{{1 folding
" look for an author name in the [zonestart zoneend] lines searching backward
function! s:getAuthor(zonestart, zoneend)
let linepos = a:zoneend
while linepos >= a:zonestart
let line = getline(linepos)
if line =~ '^ --'
return substitute(line, '^ --\s*\([^<]\+\)\s*.*', '\1', '')
endif
let linepos -= 1
endwhile
return '[unknown]'
endfunction
" Look for a package source name searching backward from the givenline and
" returns it. Return the empty string if the package name can't be found
function! DebGetPkgSrcName(lineno)
let lineidx = a:lineno
let pkgname = ''
while lineidx > 0
let curline = getline(lineidx)
if curline =~ '^\S'
let pkgname = matchlist(curline, '^\(\S\+\).*$')[1]
break
endif
let lineidx = lineidx - 1
endwhile
return pkgname
endfunction
function! DebChangelogFoldText()
if v:folddashes == '-' " changelog entry fold
return foldtext() . ' -- ' . s:getAuthor(v:foldstart, v:foldend) . ' '
endif
return foldtext()
endfunction
function! DebGetChangelogFold(lnum)
let line = getline(a:lnum)
if line =~ '^\w\+'
return '>1' " beginning of a changelog entry
endif
if line =~ '^\s\+\[.*\]'
return '>2' " beginning of an author-specific chunk
endif
if line =~ '^ --'
return '1'
endif
return '='
endfunction
if exists("g:debchangelog_fold_enable")
silent! foldopen! " unfold the entry the cursor is on (usually the first one)
endif
" }}}
" {{{1 omnicompletion for Closes: #
if !exists('g:debchangelog_listbugs_severities')
let g:debchangelog_listbugs_severities = 'critical,grave,serious,important,normal,minor,wishlist'
endif
fun! DebCompleteBugs(findstart, base)
if a:findstart
let line = getline('.')
" try to detect whether this is closes: or lp:
let g:debchangelog_complete_mode = 'debbugs'
let try_colidx = col('.') - 1
let colidx = -1 " default to no-completion-possible
while try_colidx > 0 && line[try_colidx - 1] =~ '\s\|\d\|#\|,\|:'
let try_colidx = try_colidx - 1
if line[try_colidx] == '#' && colidx == -1
" found hash, where we complete from:
let colidx = try_colidx
elseif line[try_colidx] == ':'
if try_colidx > 1 && strpart(line, try_colidx - 2, 3) =~ '\clp:'
let g:debchangelog_complete_mode = 'lp'
endif
break
endif
endwhile
return colidx
else " return matches:
let bug_lines = []
if g:debchangelog_complete_mode == 'lp'
if ! has('python')
echoerr 'vim must be built with Python support to use LP bug completion'
return
endif
let pkgsrc = DebGetPkgSrcName(line('.'))
python << EOF
import vim
try:
from launchpadlib.launchpad import Launchpad
from lazr.restfulclient.errors import HTTPError
# login anonymously
lp = Launchpad.login_anonymously('debchangelog.vim', 'production')
try:
dsp = lp.load('%s/ubuntu/+source/%s' % (lp._root_uri, vim.eval('pkgsrc')))
tasklist = dsp.searchTasks(status = ('New', 'Incomplete', 'Confirmed', 'Triaged', 'In Progress', 'Fix Committed'), order_by='id')
liststr = '['
for task in tasklist:
bug = task.bug
liststr += "'#%d - %s'," % (bug.id, bug.title.replace('\'', '\'\''))
liststr += ']'
vim.command('silent let bug_lines = %s' % liststr.encode('utf-8'))
except HTTPError:
pass
except ImportError:
vim.command('echoerr \'python-launchpadlib >= 1.5.4 needs to be installed to use Launchpad bug completion\'')
EOF
else
if ! filereadable('/usr/sbin/apt-listbugs')
echoerr 'apt-listbugs not found, you should install it to use Closes bug completion'
return
endif
let pkgsrc = DebGetPkgSrcName(line('.'))
let listbugs_output = system('/usr/sbin/apt-listbugs -s ' . g:debchangelog_listbugs_severities . ' list ' . pkgsrc . ' | grep "^ #" 2> /dev/null')
let bug_lines = split(listbugs_output, '\n')
endif
let completions = []
for line in bug_lines
let parts = matchlist(line, '^\s*\(#\S\+\)\s*-\s*\(.*\)$')
" filter only those which match a:base:
if parts[1] !~ "^" . a:base
continue
endif
let completion = {}
let completion['word'] = parts[1]
let completion['menu'] = parts[2]
let completion['info'] = parts[0]
let completions += [completion]
endfor
return completions
endif
endfun
setlocal omnifunc=DebCompleteBugs
" }}}
" vim: set foldmethod=marker:

View File

@@ -0,0 +1,70 @@
" Vim filetype plugin file (GUI menu and folding)
" Language: Debian control files
" Maintainer: Debian Vim Maintainers <pkg-vim-maintainers@lists.alioth.debian.org>
" Former Maintainer: Pierre Habouzit <madcoder@debian.org>
" Last Change: 2008-03-08
" URL: http://git.debian.org/?p=pkg-vim/vim.git;a=blob_plain;f=runtime/ftplugin/debcontrol.vim;hb=debian
" Do these settings once per buffer
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin=1
" {{{1 Local settings (do on every load)
if exists("g:debcontrol_fold_enable")
setlocal foldmethod=expr
setlocal foldexpr=DebControlFold(v:lnum)
setlocal foldtext=DebControlFoldText()
endif
setlocal textwidth=0
" Clean unloading
let b:undo_ftplugin = "setlocal tw< foldmethod< foldexpr< foldtext<"
" }}}1
" {{{1 folding
function! s:getField(f, lnum)
let line = getline(a:lnum)
let fwdsteps = 0
while line !~ '^'.a:f.':'
let fwdsteps += 1
let line = getline(a:lnum + fwdsteps)
if line == ''
return 'unknown'
endif
endwhile
return substitute(line, '^'.a:f.': *', '', '')
endfunction
function! DebControlFoldText()
if v:folddashes == '-' " debcontrol entry fold
let type = substitute(getline(v:foldstart), ':.*', '', '')
if type == 'Source'
let ftext = substitute(foldtext(), ' *Source: *', ' ', '')
return ftext . ' -- ' . s:getField('Maintainer', v:foldstart) . ' '
endif
let arch = s:getField('Architecture', v:foldstart)
let ftext = substitute(foldtext(), ' *Package: *', ' [' . arch . '] ', '')
return ftext . ': ' . s:getField('Description', v:foldstart) . ' '
endif
return foldtext()
endfunction
function! DebControlFold(l)
" This is for not merging blank lines around folds to them
if getline(a:l) =~ '^Source:'
return '>1'
endif
if getline(a:l) =~ '^Package:'
return '>1'
endif
return '='
endfunction
" }}}1

View File

@@ -0,0 +1,18 @@
" Vim filetype plugin file
" Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2007-12-04
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
let s:cpo_save = &cpo
set cpo&vim
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=:# commentstring=#\ %s formatoptions-=t formatoptions+=croql
let &cpo = s:cpo_save
unlet s:cpo_save

View File

@@ -0,0 +1,19 @@
" Vim filetype plugin file
" Language: dict(1) configuration file
" Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
let s:cpo_save = &cpo
set cpo&vim
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=:# commentstring=#\ %s formatoptions-=t formatoptions+=croql
let &cpo = s:cpo_save
unlet s:cpo_save

View File

@@ -0,0 +1,19 @@
" Vim filetype plugin file
" Language: dictd(8) configuration file
" Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
let s:cpo_save = &cpo
set cpo&vim
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=:# commentstring=#\ %s formatoptions-=t formatoptions+=croql
let &cpo = s:cpo_save
unlet s:cpo_save

View File

@@ -0,0 +1,15 @@
" Vim filetype plugin file
" Language: Diff
" Maintainer: Bram Moolenaar <Bram@vim.org>
" Last Change: 2005 Jul 27
" Only do this when not done yet for this buffer
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
let b:undo_ftplugin = "setl modeline<"
" Don't use modelines in a diff, they apply to the diffed file
setlocal nomodeline

View File

@@ -0,0 +1,19 @@
" Vim filetype plugin file
" Language: dircolors(1) input file
" Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
let s:cpo_save = &cpo
set cpo&vim
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=:# commentstring=#\ %s formatoptions-=t formatoptions+=croql
let &cpo = s:cpo_save
unlet s:cpo_save

View File

@@ -0,0 +1,21 @@
" Vim filetype plugin file
" Language: MS-DOS .bat files
" Maintainer: Mike Williams <mrw@eandem.co.uk>
" Last Change: 27th May 2009
" Only do this when not done yet for this buffer
if exists("b:did_ftplugin")
finish
endif
" Don't load another plugin for this buffer
let b:did_ftplugin = 1
" BAT comment formatting
setlocal comments=b:rem,b:@rem,b:REM,b:@REM,:::
setlocal formatoptions-=t formatoptions+=rol
" Define patterns for the browse file filter
if has("gui_win32") && !exists("b:browsefilter")
let b:browsefilter = "DOS Batch Files (*.bat, *.cmd)\t*.bat;*.cmd\nAll Files (*.*)\t*.*\n"
endif

View File

@@ -0,0 +1,19 @@
" Vim filetype plugin file
" Language: Configuration File (ini file) for MSDOS/MS Windows
" Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
let s:cpo_save = &cpo
set cpo&vim
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=:; commentstring=;\ %s formatoptions-=t formatoptions+=croql
let &cpo = s:cpo_save
unlet s:cpo_save

View File

@@ -0,0 +1,39 @@
" Vim filetype plugin file
" Language: dtd
" Maintainer: Dan Sharp <dwsharp at users dot sourceforge dot net>
" Last Changed: 20 Jan 2009
" URL: http://dwsharp.users.sourceforge.net/vim/ftplugin
if exists("b:did_ftplugin") | finish | endif
let b:did_ftplugin = 1
" Make sure the continuation lines below do not cause problems in
" compatibility mode.
let s:save_cpo = &cpo
set cpo-=C
setlocal commentstring=<!--%s-->
setlocal comments=s:<!--,m:\ \ \ \ \ ,e:-->
setlocal formatoptions-=t
if !exists("g:ft_dtd_autocomment") || (g:ft_dtd_autocomment == 1)
setlocal formatoptions+=croql
endif
if exists("loaded_matchit")
let b:match_words = '<!--:-->,<!:>'
endif
" Change the :browse e filter to primarily show Java-related files.
if has("gui_win32")
let b:browsefilter="DTD Files (*.dtd)\t*.dtd\n" .
\ "XML Files (*.xml)\t*.xml\n" .
\ "All Files (*.*)\t*.*\n"
endif
" Undo the stuff we changed.
let b:undo_ftplugin = "setlocal commentstring< comments< formatoptions<" .
\ " | unlet! b:matchwords b:browsefilter"
" Restore the saved compatibility options.
let &cpo = s:save_cpo

View File

@@ -0,0 +1,40 @@
" Language: D script as described in "Solaris Dynamic Tracing Guide",
" http://docs.sun.com/app/docs/doc/817-6223
" Last Change: 2008/03/20
" Version: 1.2
" Maintainer: Nicolas Weber <nicolasweber@gmx.de>
" Only do this when not done yet for this buffer
if exists("b:did_ftplugin")
finish
endif
" Don't load another plugin for this buffer
let b:did_ftplugin = 1
" Using line continuation here.
let s:cpo_save = &cpo
set cpo-=C
let b:undo_ftplugin = "setl fo< com< cms< isk<"
" Set 'formatoptions' to break comment lines but not other lines,
" and insert the comment leader when hitting <CR> or using "o".
setlocal fo-=t fo+=croql
" Set 'comments' to format dashed lists in comments.
setlocal comments=sO:*\ -,mO:*\ \ ,exO:*/,s1:/*,mb:*,ex:*/
" dtrace uses /* */ comments. Set this explicitly, just in case the user
" changed this (/*%s*/ is the default)
setlocal commentstring=/*%s*/
setlocal iskeyword+=@,$
" When the matchit plugin is loaded, this makes the % command skip parens and
" braces in comments.
let b:match_words = &matchpairs
let b:match_skip = 's:comment\|string\|character'
let &cpo = s:cpo_save
unlet s:cpo_save

View File

@@ -0,0 +1,19 @@
" Vim filetype plugin file
" Language: elinks(1) configuration file
" Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
let s:cpo_save = &cpo
set cpo&vim
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=:# commentstring=#\ %s formatoptions-=t formatoptions+=croql
let &cpo = s:cpo_save
unlet s:cpo_save

View File

@@ -0,0 +1,101 @@
" Vim filetype plugin
" Language: eRuby
" Maintainer: Tim Pope <vimNOSPAM@tpope.info>
" Info: $Id: eruby.vim,v 1.12 2008/06/29 04:18:43 tpope Exp $
" URL: http://vim-ruby.rubyforge.org
" Anon CVS: See above site
" Release Coordinator: Doug Kearns <dougkearns@gmail.com>
" Only do this when not done yet for this buffer
if exists("b:did_ftplugin")
finish
endif
let s:save_cpo = &cpo
set cpo-=C
" Define some defaults in case the included ftplugins don't set them.
let s:undo_ftplugin = ""
let s:browsefilter = "All Files (*.*)\t*.*\n"
let s:match_words = ""
if !exists("g:eruby_default_subtype")
let g:eruby_default_subtype = "html"
endif
if !exists("b:eruby_subtype")
let s:lines = getline(1)."\n".getline(2)."\n".getline(3)."\n".getline(4)."\n".getline(5)."\n".getline("$")
let b:eruby_subtype = matchstr(s:lines,'eruby_subtype=\zs\w\+')
if b:eruby_subtype == ''
let b:eruby_subtype = matchstr(substitute(expand("%:t"),'\c\%(\.erb\|\.eruby\)\+$','',''),'\.\zs\w\+$')
endif
if b:eruby_subtype == 'rhtml'
let b:eruby_subtype = 'html'
elseif b:eruby_subtype == 'rb'
let b:eruby_subtype = 'ruby'
elseif b:eruby_subtype == 'yml'
let b:eruby_subtype = 'yaml'
elseif b:eruby_subtype == 'js'
let b:eruby_subtype = 'javascript'
elseif b:eruby_subtype == 'txt'
" Conventional; not a real file type
let b:eruby_subtype = 'text'
elseif b:eruby_subtype == ''
let b:eruby_subtype = g:eruby_default_subtype
endif
endif
if exists("b:eruby_subtype") && b:eruby_subtype != ''
exe "runtime! ftplugin/".b:eruby_subtype.".vim ftplugin/".b:eruby_subtype."_*.vim ftplugin/".b:eruby_subtype."/*.vim"
else
runtime! ftplugin/html.vim ftplugin/html_*.vim ftplugin/html/*.vim
endif
unlet! b:did_ftplugin
" Override our defaults if these were set by an included ftplugin.
if exists("b:undo_ftplugin")
let s:undo_ftplugin = b:undo_ftplugin
unlet b:undo_ftplugin
endif
if exists("b:browsefilter")
let s:browsefilter = b:browsefilter
unlet b:browsefilter
endif
if exists("b:match_words")
let s:match_words = b:match_words
unlet b:match_words
endif
runtime! ftplugin/ruby.vim ftplugin/ruby_*.vim ftplugin/ruby/*.vim
let b:did_ftplugin = 1
" Combine the new set of values with those previously included.
if exists("b:undo_ftplugin")
let s:undo_ftplugin = b:undo_ftplugin . " | " . s:undo_ftplugin
endif
if exists ("b:browsefilter")
let s:browsefilter = substitute(b:browsefilter,'\cAll Files (\*\.\*)\t\*\.\*\n','','') . s:browsefilter
endif
if exists("b:match_words")
let s:match_words = b:match_words . ',' . s:match_words
endif
" Change the browse dialog on Win32 to show mainly eRuby-related files
if has("gui_win32")
let b:browsefilter="eRuby Files (*.erb, *.rhtml)\t*.erb;*.rhtml\n" . s:browsefilter
endif
" Load the combined list of match_words for matchit.vim
if exists("loaded_matchit")
let b:match_words = s:match_words
endif
" TODO: comments=
setlocal commentstring=<%#%s%>
let b:undo_ftplugin = "setl cms< "
\ " | unlet! b:browsefilter b:match_words | " . s:undo_ftplugin
let &cpo = s:save_cpo
" vim: nowrap sw=2 sts=2 ts=8:

View File

@@ -0,0 +1,20 @@
" Vim filetype plugin file
" Language: eterm(1) configuration file
" Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
let s:cpo_save = &cpo
set cpo&vim
let b:undo_ftplugin = "setl com< cms< inc< fo<"
setlocal comments=:# commentstring=#\ %s include=^\\s*include
setlocal formatoptions-=t formatoptions+=croql
let &cpo = s:cpo_save
unlet s:cpo_save

View File

@@ -0,0 +1,19 @@
" Vim filetype plugin file
" Language: fetchmail(1) RC File
" Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
let s:cpo_save = &cpo
set cpo&vim
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=:# commentstring=#\ %s formatoptions-=t formatoptions+=croql
let &cpo = s:cpo_save
unlet s:cpo_save

View File

@@ -0,0 +1,59 @@
" Vim filetype plugin file
" Language: FlexWiki, http://www.flexwiki.com/
" Maintainer: George V. Reilly <george@reilly.org>
" Home: http://www.georgevreilly.com/vim/flexwiki/
" Other Home: http://www.vim.org/scripts/script.php?script_id=1529
" Author: George V. Reilly
" Filenames: *.wiki
" Last Change: Wed Apr 26 11:00 PM 2006 P
" Version: 0.3
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1 " Don't load another plugin for this buffer
" Reset the following options to undo this plugin.
let b:undo_ftplugin = "setl tw< wrap< lbr< et< ts< fenc< bomb< ff<"
" Allow lines of unlimited length. Do NOT want automatic linebreaks,
" as a newline starts a new paragraph in FlexWiki.
setlocal textwidth=0
" Wrap long lines, rather than using horizontal scrolling.
setlocal wrap
" Wrap at a character in 'breakat' rather than at last char on screen
setlocal linebreak
" Don't transform <TAB> characters into spaces, as they are significant
" at the beginning of the line for numbered and bulleted lists.
setlocal noexpandtab
" 4-char tabstops, per flexwiki.el
setlocal tabstop=4
" Save *.wiki files in UTF-8
setlocal fileencoding=utf-8
" Add the UTF-8 Byte Order Mark to the beginning of the file
setlocal bomb
" Save <EOL>s as \n, not \r\n
setlocal fileformat=unix
if exists("g:flexwiki_maps")
" Move up and down by display lines, to account for screen wrapping
" of very long lines
nmap <buffer> <Up> gk
nmap <buffer> k gk
vmap <buffer> <Up> gk
vmap <buffer> k gk
nmap <buffer> <Down> gj
nmap <buffer> j gj
vmap <buffer> <Down> gj
vmap <buffer> j gj
" for earlier versions - for when 'wrap' is set
imap <buffer> <S-Down> <C-o>gj
imap <buffer> <S-Up> <C-o>gk
if v:version >= 700
imap <buffer> <Down> <C-o>gj
imap <buffer> <Up> <C-o>gk
endif
endif

View File

@@ -0,0 +1,117 @@
" Vim settings file
" Language: Fortran90 (and Fortran95, Fortran77, F and elf90)
" Version: 0.45
" Last Change: 2006 Apr. 03
" URL: http://www.unb.ca/chem/ajit/ftplugin/fortran.vim
" Maintainer: Ajit J. Thakkar <ajit@unb.ca>; <http://www.unb.ca/chem/ajit/>
" Usage: Do :help fortran-plugin from Vim
" Credits: Useful suggestions were made by Stefano Zacchiroli
" Only do these settings when not done yet for this buffer
if exists("b:did_ftplugin")
finish
endif
" Don't do other file type settings for this buffer
let b:did_ftplugin = 1
" Determine whether this is a fixed or free format source file
" if this hasn't been done yet
if !exists("b:fortran_fixed_source")
if exists("fortran_free_source")
" User guarantees free source form
let b:fortran_fixed_source = 0
elseif exists("fortran_fixed_source")
" User guarantees fixed source form
let b:fortran_fixed_source = 1
else
" f90 and f95 allow both fixed and free source form
" assume fixed source form unless signs of free source form
" are detected in the first five columns of the first 250 lines
" Detection becomes more accurate and time-consuming if more lines
" are checked. Increase the limit below if you keep lots of comments at
" the very top of each file and you have a fast computer
let s:lmax = 250
if ( s:lmax > line("$") )
let s:lmax = line("$")
endif
let b:fortran_fixed_source = 1
let s:ln=1
while s:ln <= s:lmax
let s:test = strpart(getline(s:ln),0,5)
if s:test[0] !~ '[Cc*!#]' && s:test !~ '^ \+[!#]' && s:test =~ '[^ 0-9\t]'
let b:fortran_fixed_source = 0
break
endif
let s:ln = s:ln + 1
endwhile
endif
endif
" Set comments and textwidth according to source type
if (b:fortran_fixed_source == 1)
setlocal comments=:!,:*,:C
" Fixed format requires a textwidth of 72 for code
setlocal tw=72
" If you need to add "&" on continued lines so that the code is
" compatible with both free and fixed format, then you should do so
" in column 73 and uncomment the next line
" setlocal tw=73
else
setlocal comments=:!
" Free format allows a textwidth of 132 for code but 80 is more usual
setlocal tw=80
endif
" Set commentstring for foldmethod=marker
setlocal cms=!%s
" Tabs are not a good idea in Fortran so the default is to expand tabs
if !exists("fortran_have_tabs")
setlocal expandtab
endif
" Set 'formatoptions' to break comment and text lines but allow long lines
setlocal fo+=tcql
setlocal include=^\\c#\\=\\s*include\\s\\+
setlocal suffixesadd+=.f95,.f90,.for,.f,.F,.f77,.ftn,.fpp
let s:cposet=&cpoptions
set cpoptions-=C
" Define patterns for the matchit plugin
if !exists("b:match_words")
let s:notend = '\%(\<end\s\+\)\@<!'
let s:notselect = '\%(\<select\s\+\)\@<!'
let s:notelse = '\%(\<end\s\+\|\<else\s\+\)\@<!'
let s:notprocedure = '\%(\s\+procedure\>\)\@!'
let b:match_ignorecase = 1
let b:match_words =
\ '\<select\s*case\>:' . s:notselect. '\<case\>:\<end\s*select\>,' .
\ s:notelse . '\<if\s*(.\+)\s*then\>:' .
\ '\<else\s*\%(if\s*(.\+)\s*then\)\=\>:\<end\s*if\>,'.
\ 'do\s\+\(\d\+\):\%(^\s*\)\@<=\1\s,'.
\ s:notend . '\<do\>:\<end\s*do\>,'.
\ s:notelse . '\<where\>:\<elsewhere\>:\<end\s*where\>,'.
\ s:notend . '\<type\s*[^(]:\<end\s*type\>,'.
\ s:notend . '\<interface\>:\<end\s*interface\>,'.
\ s:notend . '\<subroutine\>:\<end\s*subroutine\>,'.
\ s:notend . '\<function\>:\<end\s*function\>,'.
\ s:notend . '\<module\>' . s:notprocedure . ':\<end\s*module\>,'.
\ s:notend . '\<program\>:\<end\s*program\>'
endif
" File filters for :browse e
if has("gui_win32") && !exists("b:browsefilter")
let b:browsefilter = "Fortran Files (*.f;*.F;*.for;*.f77;*.f90;*.f95;*.fpp;*.ftn)\t*.f;*.F;*.for;*.f77;*.f90;*.f95;*.fpp;*.ftn\n" .
\ "All Files (*.*)\t*.*\n"
endif
let b:undo_ftplugin = "setl fo< com< tw< cms< et< inc<"
\ . "| unlet! b:match_ignorecase b:match_words b:browsefilter"
let &cpoptions=s:cposet
unlet s:cposet
" vim:sw=2

View File

@@ -0,0 +1,30 @@
" Vim ftplugin file
" Language: FrameScript
" Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2008-07-19
let s:cpo_save = &cpo
set cpo&vim
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
let b:undo_ftplugin = "setl com< cms< fo< inc< | unlet! b:matchwords"
setlocal comments=s1:/*,mb:*,ex:*/,:// commentstring=/*\ %s\ */
setlocal formatoptions-=t formatoptions+=croql
setlocal include=^\\s*<#Include
if exists("loaded_matchit")
let s:not_end = '\c\%(\<End\)\@<!'
let b:match_words =
\ s:not_end . '\<If\>:\c\<ElseIf\>:\c\<Else\>:\c\<EndIf\>,' .
\ s:not_end . '\<Loop\>:\c\<EndLoop\>' .
\ s:not_end . '\<Sub\>:\c\<EndSub\>'
unlet s:not_end
endif
let &cpo = s:cpo_save
unlet s:cpo_save

View File

@@ -0,0 +1,14 @@
" Created : Tue 09 May 2006 02:07:31 PM CDT
" Modified : Tue 09 May 2006 02:07:31 PM CDT
" Author : Gautam Iyer <gi1242@users.sourceforge.net>
" Description : ftplugin for fvwm config files
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=:# commentstring=#\ %s
setlocal formatoptions-=t formatoptions+=croql

View File

@@ -0,0 +1,37 @@
" Vim filetype plugin
" Language: generic git output
" Maintainer: Tim Pope <vimNOSPAM@tpope.org>
" Last Change: 2009 Dec 24
" Only do this when not done yet for this buffer
if (exists("b:did_ftplugin"))
finish
endif
let b:did_ftplugin = 1
if !exists('b:git_dir')
if expand('%:p') =~# '\.git\>'
let b:git_dir = matchstr(expand('%:p'),'.*\.git\>')
elseif $GIT_DIR != ''
let b:git_dir = $GIT_DIR
endif
if (has('win32') || has('win64')) && exists('b:git_dir')
let b:git_dir = substitute(b:git_dir,'\\','/','g')
endif
endif
if exists('*shellescape') && exists('b:git_dir') && b:git_dir != ''
if b:git_dir =~# '/\.git$' " Not a bare repository
let &l:path = escape(fnamemodify(b:git_dir,':h'),'\, ').','.&l:path
endif
let &l:path = escape(b:git_dir,'\, ').','.&l:path
let &l:keywordprg = 'git --git-dir='.shellescape(b:git_dir).' show'
else
setlocal keywordprg=git\ show
endif
if has('gui_running')
let &l:keywordprg = substitute(&l:keywordprg,'^git\>','git --no-pager','')
endif
setlocal includeexpr=substitute(v:fname,'^[^/]\\+/','','')
let b:undo_ftplugin = "setl keywordprg< path< includeexpr<"

View File

@@ -0,0 +1,68 @@
" Vim filetype plugin
" Language: git commit file
" Maintainer: Tim Pope <vimNOSPAM@tpope.org>
" Last Change: 2009 Dec 24
" Only do this when not done yet for this buffer
if (exists("b:did_ftplugin"))
finish
endif
runtime! ftplugin/git.vim
let b:did_ftplugin = 1
if &textwidth == 0
" make sure that log messages play nice with git-log on standard terminals
setlocal textwidth=72
if !exists("b:undo_ftplugin")
let b:undo_ftplugin = ""
endif
let b:undo_ftplugin = b:undo_ftplugin . "|setl tw<"
endif
if exists("g:no_gitcommit_commands") || v:version < 700
finish
endif
if !exists("b:git_dir")
let b:git_dir = expand("%:p:h")
endif
" Automatically diffing can be done with:
" autocmd FileType gitcommit DiffGitCached | wincmd p
command! -bang -bar -buffer -complete=custom,s:diffcomplete -nargs=* DiffGitCached :call s:gitdiffcached(<bang>0,b:git_dir,<f-args>)
function! s:diffcomplete(A,L,P)
let args = ""
if a:P <= match(a:L." -- "," -- ")+3
let args = args . "-p\n--stat\n--shortstat\n--summary\n--patch-with-stat\n--no-renames\n-B\n-M\n-C\n"
end
if exists("b:git_dir") && a:A !~ '^-'
let tree = fnamemodify(b:git_dir,':h')
if strpart(getcwd(),0,strlen(tree)) == tree
let args = args."\n".system("git diff --cached --name-only")
endif
endif
return args
endfunction
function! s:gitdiffcached(bang,gitdir,...)
let tree = fnamemodify(a:gitdir,':h')
let name = tempname()
let git = "git"
if strpart(getcwd(),0,strlen(tree)) != tree
let git .= " --git-dir=".(exists("*shellescape") ? shellescape(a:gitdir) : '"'.a:gitdir.'"')
endif
if a:0
let extra = join(map(copy(a:000),exists("*shellescape") ? 'shellescape(v:val)' : "'\"'.v:val.'\"'"))
else
let extra = "-p --stat=".&columns
endif
call system(git." diff --cached --no-color ".extra." > ".(exists("*shellescape") ? shellescape(name) : name))
exe "pedit ".(exists("*fnameescape") ? fnameescape(name) : name)
wincmd P
let b:git_dir = a:gitdir
command! -bang -bar -buffer -complete=custom,s:diffcomplete -nargs=* DiffGitCached :call s:gitdiffcached(<bang>0,b:git_dir,<f-args>)
nnoremap <silent> q :q<CR>
setlocal buftype=nowrite nobuflisted noswapfile nomodifiable filetype=git
endfunction

View File

@@ -0,0 +1,15 @@
" Vim filetype plugin
" Language: git config file
" Maintainer: Tim Pope <vimNOSPAM@tpope.org>
" Last Change: 2009 Dec 24
" Only do this when not done yet for this buffer
if (exists("b:did_ftplugin"))
finish
endif
let b:did_ftplugin = 1
setlocal formatoptions-=t formatoptions+=croql
setlocal comments=:#,:; commentstring=;\ %s
let b:undo_ftplugin = "setl fo< com< cms<"

View File

@@ -0,0 +1,42 @@
" Vim filetype plugin
" Language: git rebase --interactive
" Maintainer: Tim Pope <vimNOSPAM@tpope.org>
" Last Change: 2009 Dec 24
" Only do this when not done yet for this buffer
if (exists("b:did_ftplugin"))
finish
endif
runtime! ftplugin/git.vim
let b:did_ftplugin = 1
setlocal comments=:# commentstring=#\ %s formatoptions-=t
if !exists("b:undo_ftplugin")
let b:undo_ftplugin = ""
endif
let b:undo_ftplugin = b:undo_ftplugin."|setl com< cms< fo<"
function! s:choose(word)
s/^\(\w\+\>\)\=\(\s*\)\ze\x\{4,40\}\>/\=(strlen(submatch(1)) == 1 ? a:word[0] : a:word) . substitute(submatch(2),'^$',' ','')/e
endfunction
function! s:cycle()
call s:choose(get({'s':'edit','p':'squash','e':'reword'},getline('.')[0],'pick'))
endfunction
command! -buffer -bar Pick :call s:choose('pick')
command! -buffer -bar Squash :call s:choose('squash')
command! -buffer -bar Edit :call s:choose('edit')
command! -buffer -bar Reword :call s:choose('reword')
command! -buffer -bar Cycle :call s:cycle()
" The above are more useful when they are mapped; for example:
"nnoremap <buffer> <silent> S :Cycle<CR>
if exists("g:no_plugin_maps") || exists("g:no_gitrebase_maps")
finish
endif
nnoremap <buffer> <expr> K col('.') < 7 && expand('<Lt>cword>') =~ '\X' && getline('.') =~ '^\w\+\s\+\x\+\>' ? 'wK' : 'K'
let b:undo_ftplugin = b:undo_ftplugin . "|nunmap <buffer> K"

View File

@@ -0,0 +1,6 @@
" Vim filetype plugin
" Language: git send-email message
" Maintainer: Tim Pope <vimNOSPAM@tpope.org>
" Last Change: 2009 Dec 24
runtime! ftplugin/mail.vim

View File

@@ -0,0 +1,19 @@
" Vim filetype plugin file
" Language: gpg(1) configuration file
" Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
let s:cpo_save = &cpo
set cpo&vim
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=:# commentstring=#\ %s formatoptions-=t formatoptions+=croql
let &cpo = s:cpo_save
unlet s:cpo_save

View File

@@ -0,0 +1,19 @@
" Vim filetype plugin file
" Language: group(5) user group file
" Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
let s:cpo_save = &cpo
set cpo&vim
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments= commentstring= formatoptions-=tcroq formatoptions+=l
let &cpo = s:cpo_save
unlet s:cpo_save

View File

@@ -0,0 +1,19 @@
" Vim filetype plugin file
" Language: grub(8) configuration file
" Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
let s:cpo_save = &cpo
set cpo&vim
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=:# commentstring=#\ %s formatoptions-=t formatoptions+=croql
let &cpo = s:cpo_save
unlet s:cpo_save

View File

@@ -0,0 +1,66 @@
" Vim filetype plugin
" Language: Haml
" Maintainer: Tim Pope <vimNOSPAM@tpope.info>
" Only do this when not done yet for this buffer
if exists("b:did_ftplugin")
finish
endif
let s:save_cpo = &cpo
set cpo-=C
" Define some defaults in case the included ftplugins don't set them.
let s:undo_ftplugin = ""
let s:browsefilter = "All Files (*.*)\t*.*\n"
let s:match_words = ""
runtime! ftplugin/html.vim ftplugin/html_*.vim ftplugin/html/*.vim
unlet! b:did_ftplugin
" Override our defaults if these were set by an included ftplugin.
if exists("b:undo_ftplugin")
let s:undo_ftplugin = b:undo_ftplugin
unlet b:undo_ftplugin
endif
if exists("b:browsefilter")
let s:browsefilter = b:browsefilter
unlet b:browsefilter
endif
if exists("b:match_words")
let s:match_words = b:match_words
unlet b:match_words
endif
runtime! ftplugin/ruby.vim ftplugin/ruby_*.vim ftplugin/ruby/*.vim
let b:did_ftplugin = 1
" Combine the new set of values with those previously included.
if exists("b:undo_ftplugin")
let s:undo_ftplugin = b:undo_ftplugin . " | " . s:undo_ftplugin
endif
if exists ("b:browsefilter")
let s:browsefilter = substitute(b:browsefilter,'\cAll Files (\*\.\*)\t\*\.\*\n','','') . s:browsefilter
endif
if exists("b:match_words")
let s:match_words = b:match_words . ',' . s:match_words
endif
" Change the browse dialog on Win32 to show mainly Haml-related files
if has("gui_win32")
let b:browsefilter="Haml Files (*.haml)\t*.haml\nSass Files (*.sass)\t*.sass\n" . s:browsefilter
endif
" Load the combined list of match_words for matchit.vim
if exists("loaded_matchit")
let b:match_words = s:match_words
endif
setlocal commentstring=-#\ %s
let b:undo_ftplugin = "setl cms< com< "
\ " | unlet! b:browsefilter b:match_words | " . s:undo_ftplugin
let &cpo = s:save_cpo
" vim:set sw=2:

View File

@@ -0,0 +1,61 @@
" Vim filetype plugin
" Language: Hamster Script
" Version: 2.0.6.0
" Maintainer: David Fishburn <fishburn@ianywhere.com>
" Last Change: Wed Nov 08 2006 12:03:09 PM
" Only do this when not done yet for this buffer
if exists("b:did_ftplugin")
finish
endif
" Don't load another plugin for this buffer
let b:did_ftplugin = 1
let cpo_save = &cpo
set cpo-=C
let b:undo_ftplugin = "setl fo< com< tw< commentstring<"
\ . "| unlet! b:match_ignorecase b:match_words b:match_skip"
" Set 'formatoptions' to break comment lines but not other lines,
" and insert the comment leader when hitting <CR> or using "o".
setlocal fo-=t fo+=croql
" Use the # sign for comments
setlocal comments=:#
" Format comments to be up to 78 characters long
if &tw == 0
setlocal tw=78
endif
" Comments start with a double quote
setlocal commentstring=#%s
" Move around functions.
noremap <silent><buffer> [[ :call search('^\s*sub\>', "bW")<CR>
noremap <silent><buffer> ]] :call search('^\s*sub\>', "W")<CR>
noremap <silent><buffer> [] :call search('^\s*endsub\>', "bW")<CR>
noremap <silent><buffer> ][ :call search('^\s*endsub\>', "W")<CR>
" Move around comments
noremap <silent><buffer> ]# :call search('^\s*#\@!', "W")<CR>
noremap <silent><buffer> [# :call search('^\s*#\@!', "bW")<CR>
" Let the matchit plugin know what items can be matched.
if exists("loaded_matchit")
let b:match_ignorecase = 0
let b:match_words =
\ '\<sub\>:\<return\>:\<endsub\>,' .
\ '\<do\|while\|repeat\|for\>:\<break\>:\<continue\>:\<loop\|endwhile\|until\|endfor\>,' .
\ '\<if\>:\<else\%[if]\>:\<endif\>'
" Ignore ":syntax region" commands, the 'end' argument clobbers if-endif
" let b:match_skip = 'getline(".") =~ "^\\s*sy\\%[ntax]\\s\\+region" ||
" \ synIDattr(synID(line("."),col("."),1),"name") =~? "comment\\|string"'
endif
setlocal ignorecase
let &cpo = cpo_save
setlocal cpo+=M " makes \%( match \)

View File

@@ -0,0 +1,20 @@
" Vim filetype plugin file
" Language: Haskell
" Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
let s:cpo_save = &cpo
set cpo&vim
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=s1fl:{-,mb:-,ex:-},:-- commentstring=--\ %s
setlocal formatoptions-=t formatoptions+=croql
let &cpo = s:cpo_save
unlet s:cpo_save

View File

@@ -0,0 +1,19 @@
" Vim filetype plugin file
" Language: Vim help file
" Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
let s:cpo_save = &cpo
set cpo&vim
let b:undo_ftplugin = "setl fo< tw<"
setlocal formatoptions+=tcroql textwidth=78
let &cpo = s:cpo_save
unlet s:cpo_save

View File

@@ -0,0 +1,18 @@
" Vim filetype plugin file
" Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2007-12-04
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
let s:cpo_save = &cpo
set cpo&vim
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=:# commentstring=#\ %s formatoptions-=t formatoptions+=croql
let &cpo = s:cpo_save
unlet s:cpo_save

View File

@@ -0,0 +1,19 @@
" Vim filetype plugin file
" Language: hosts_access(5) control file
" Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
let s:cpo_save = &cpo
set cpo&vim
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=:# commentstring=#\ %s formatoptions-=t formatoptions+=croql
let &cpo = s:cpo_save
unlet s:cpo_save

View File

@@ -0,0 +1,90 @@
" Vim filetype plugin file
" Language: html
" Maintainer: Dan Sharp <dwsharp at users dot sourceforge dot net>
" Last Changed: 20 Jan 2009
" URL: http://dwsharp.users.sourceforge.net/vim/ftplugin
if exists("b:did_ftplugin") | finish | endif
let b:did_ftplugin = 1
" Make sure the continuation lines below do not cause problems in
" compatibility mode.
let s:save_cpo = &cpo
set cpo-=C
setlocal matchpairs+=<:>
setlocal commentstring=<!--%s-->
setlocal comments=s:<!--,m:\ \ \ \ ,e:-->
if exists("g:ft_html_autocomment") && (g:ft_html_autocomment == 1)
setlocal formatoptions-=t formatoptions+=croql
endif
if exists('&omnifunc')
" Distinguish between HTML versions
" To use with other HTML versions add another
" elseif condition to match proper DOCTYPE
setlocal omnifunc=htmlcomplete#CompleteTags
if &filetype == 'xhtml'
let b:html_omni_flavor = 'xhtml10s'
else
let b:html_omni_flavor = 'html401t'
endif
let i = 1
let line = ""
while i < 10 && i < line("$")
let line = getline(i)
if line =~ '<!DOCTYPE.*\<DTD '
break
endif
let i += 1
endwhile
if line =~ '<!DOCTYPE.*\<DTD ' " doctype line found above
if line =~ ' HTML 3\.2'
let b:html_omni_flavor = 'html32'
elseif line =~ ' XHTML 1\.1'
let b:html_omni_flavor = 'xhtml11'
else " two-step detection with strict/frameset/transitional
if line =~ ' XHTML 1\.0'
let b:html_omni_flavor = 'xhtml10'
elseif line =~ ' HTML 4\.01'
let b:html_omni_flavor = 'html401'
elseif line =~ ' HTML 4.0\>'
let b:html_omni_flavor = 'html40'
endif
if line =~ '\<Transitional\>'
let b:html_omni_flavor .= 't'
elseif line =~ '\<Frameset\>'
let b:html_omni_flavor .= 'f'
else
let b:html_omni_flavor .= 's'
endif
endif
endif
endif
" HTML: thanks to Johannes Zellner and Benji Fisher.
if exists("loaded_matchit")
let b:match_ignorecase = 1
let b:match_words = '<:>,' .
\ '<\@<=[ou]l\>[^>]*\%(>\|$\):<\@<=li\>:<\@<=/[ou]l>,' .
\ '<\@<=dl\>[^>]*\%(>\|$\):<\@<=d[td]\>:<\@<=/dl>,' .
\ '<\@<=\([^/][^ \t>]*\)[^>]*\%(>\|$\):<\@<=/\1>'
endif
" Change the :browse e filter to primarily show HTML-related files.
if has("gui_win32")
let b:browsefilter="HTML Files (*.html,*.htm)\t*.htm;*.html\n" .
\ "JavaScript Files (*.js)\t*.js\n" .
\ "Cascading StyleSheets (*.css)\t*.css\n" .
\ "All Files (*.*)\t*.*\n"
endif
" Undo the stuff we changed.
let b:undo_ftplugin = "setlocal commentstring< matchpairs< omnifunc< comments< formatoptions<" .
\ " | unlet! b:match_ignorecase b:match_skip b:match_words b:browsefilter"
" Restore the saved compatibility options.
let &cpo = s:save_cpo

View File

@@ -0,0 +1,13 @@
" Vim filetype plugin file
" Language: Django HTML template
" Maintainer: Dave Hodder <dmh@dmh.org.uk>
" Last Change: 2007 Jan 25
" Only use this filetype plugin when no other was loaded.
if exists("b:did_ftplugin")
finish
endif
" Use HTML and Django template ftplugins.
runtime! ftplugin/html.vim
runtime! ftplugin/django.vim

View File

@@ -0,0 +1,20 @@
" Vim filetype plugin file
" Language: indent(1) configuration file
" Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
let s:cpo_save = &cpo
set cpo&vim
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=s1:/*,mb:*,ex:*/ commentstring&
setlocal formatoptions-=t formatoptions+=croql
let &cpo = s:cpo_save
unlet s:cpo_save

View File

@@ -0,0 +1,38 @@
" filetype plugin for TeX and variants
" Language: TeX (ft=initex)
" Maintainer: Benji Fisher, Ph.D. <benji@member.AMS.org>
" Version: 1.0
" Last Change: Wed 19 Apr 2006
" Only do this when not done yet for this buffer.
if exists("b:did_ftplugin")
finish
endif
" Don't load another plugin for this buffer.
let b:did_ftplugin = 1
" Avoid problems if running in 'compatible' mode.
let s:save_cpo = &cpo
set cpo&vim
let b:undo_ftplugin = "setl com< cms< define< include< sua<"
" Set 'comments' to format dashed lists in comments
setlocal com=sO:%\ -,mO:%\ \ ,eO:%%,:%
" Set 'commentstring' to recognize the % comment character:
" (Thanks to Ajit Thakkar.)
setlocal cms=%%s
" Allow "[d" to be used to find a macro definition:
let &l:define='\\\([egx]\|char\|mathchar\|count\|dimen\|muskip\|skip\|toks\)\='
\ . 'def\|\\font\|\\\(future\)\=let'
" Tell Vim to recognize \input bar :
let &l:include = '\\input'
setlocal suffixesadd=.tex
let &cpo = s:save_cpo
" vim:sts=2:sw=2:

View File

@@ -0,0 +1,28 @@
" Vim filetype plugin file
" Language: InstallShield (ft=ishd)
" Maintainer: Johannes Zellner <johannes@zellner.org>
" Last Change: Sat, 24 May 2003 11:55:36 CEST
if exists("b:did_ftplugin") | finish | endif
let b:did_ftplugin = 1
setlocal foldmethod=syntax
set cpo-=C
" matchit support
if exists("loaded_matchit")
let b:match_ignorecase=0
let b:match_words=
\ '\%(^\s*\)\@<=\<function\>\s\+[^()]\+\s*(:\%(^\s*\)\@<=\<begin\>\s*$:\%(^\s*\)\@<=\<return\>:\%(^\s*\)\@<=\<end\>\s*;\s*$,' .
\ '\%(^\s*\)\@<=\<repeat\>\s*$:\%(^\s*\)\@<=\<until\>\s\+.\{-}\s*;\s*$,' .
\ '\%(^\s*\)\@<=\<switch\>\s*(.\{-}):\%(^\s*\)\@<=\<\%(case\|default\)\>:\%(^\s*\)\@<=\<endswitch\>\s*;\s*$,' .
\ '\%(^\s*\)\@<=\<while\>\s*(.\{-}):\%(^\s*\)\@<=\<endwhile\>\s*;\s*$,' .
\ '\%(^\s*\)\@<=\<for\>.\{-}\<\%(to\|downto\)\>:\%(^\s*\)\@<=\<endfor\>\s*;\s*$,' .
\ '\%(^\s*\)\@<=\<if\>\s*(.\{-})\s*then:\%(^\s*\)\@<=\<else\s*if\>\s*([^)]*)\s*then:\%(^\s*\)\@<=\<else\>:\%(^\s*\)\@<=\<endif\>\s*;\s*$'
endif
if has("gui_win32") && !exists("b:browsefilter")
let b:browsefilter = "InstallShield Files (*.rul)\t*.rul\n" .
\ "All Files (*.*)\t*.*\n"
endif

View File

@@ -0,0 +1,50 @@
" Vim filetype plugin file
" Language: Java
" Maintainer: Dan Sharp <dwsharp at users dot sourceforge dot net>
" Last Change: 20 Jan 2009
" URL: http://dwsharp.users.sourceforge.net/vim/ftplugin
if exists("b:did_ftplugin") | finish | endif
let b:did_ftplugin = 1
" Make sure the continuation lines below do not cause problems in
" compatibility mode.
let s:save_cpo = &cpo
set cpo-=C
" For filename completion, prefer the .java extension over the .class
" extension.
set suffixes+=.class
" Enable gf on import statements. Convert . in the package
" name to / and append .java to the name, then search the path.
setlocal includeexpr=substitute(v:fname,'\\.','/','g')
setlocal suffixesadd=.java
if exists("g:ftplugin_java_source_path")
let &l:path=g:ftplugin_java_source_path . ',' . &l:path
endif
" Set 'formatoptions' to break comment lines but not other lines,
" and insert the comment leader when hitting <CR> or using "o".
setlocal formatoptions-=t formatoptions+=croql
" Set 'comments' to format dashed lists in comments. Behaves just like C.
setlocal comments& comments^=sO:*\ -,mO:*\ \ ,exO:*/
setlocal commentstring=//%s
" Change the :browse e filter to primarily show Java-related files.
if has("gui_win32")
let b:browsefilter="Java Files (*.java)\t*.java\n" .
\ "Properties Files (*.prop*)\t*.prop*\n" .
\ "Manifest Files (*.mf)\t*.mf\n" .
\ "All Files (*.*)\t*.*\n"
endif
" Undo the stuff we changed.
let b:undo_ftplugin = "setlocal suffixes< suffixesadd<" .
\ " formatoptions< comments< commentstring< path< includeexpr<" .
\ " | unlet! b:browsefilter"
" Restore the saved compatibility options.
let &cpo = s:save_cpo

View File

@@ -0,0 +1,38 @@
" Vim filetype plugin file
" Language: Javascript
" Maintainer: Doug Kearns <dougkearns@gmail.com>
" Last Change: 2008 Jun 15
" URL: http://gus.gscit.monash.edu.au/~djkea2/vim/ftplugin/javascript.vim
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
let s:cpo_save = &cpo
set cpo-=C
" Set 'formatoptions' to break comment lines but not other lines,
" " and insert the comment leader when hitting <CR> or using "o".
setlocal formatoptions-=t formatoptions+=croql
" Set completion with CTRL-X CTRL-O to autoloaded function.
if exists('&ofu')
setlocal omnifunc=javascriptcomplete#CompleteJS
endif
" Set 'comments' to format dashed lists in comments.
setlocal comments=sO:*\ -,mO:*\ \ ,exO:*/,s1:/*,mb:*,ex:*/,://
setlocal commentstring=//%s
" Change the :browse e filter to primarily show Java-related files.
if has("gui_win32")
let b:browsefilter="Javascript Files (*.js)\t*.js\n" .
\ "All Files (*.*)\t*.*\n"
endif
let b:undo_ftplugin = "setl fo< ofu< com< cms<"
let &cpo = s:cpo_save
unlet s:cpo_save

View File

@@ -0,0 +1,66 @@
" Vim filetype plugin file
" Language: jsp
" Maintainer: Dan Sharp <dwsharp at users dot sourceforge dot net>
" Last Changed: 20 Jan 2009
" URL: http://dwsharp.users.sourceforge.net/vim/ftplugin
if exists("b:did_ftplugin") | finish | endif
" Make sure the continuation lines below do not cause problems in
" compatibility mode.
let s:save_cpo = &cpo
set cpo-=C
" Define some defaults in case the included ftplugins don't set them.
let s:undo_ftplugin = ""
let s:browsefilter = "Java Files (*.java)\t*.java\n" .
\ "HTML Files (*.html, *.htm)\t*.html;*.htm\n" .
\ "All Files (*.*)\t*.*\n"
let s:match_words = ""
runtime! ftplugin/html.vim ftplugin/html_*.vim ftplugin/html/*.vim
unlet b:did_ftplugin
" Override our defaults if these were set by an included ftplugin.
if exists("b:undo_ftplugin")
let s:undo_ftplugin = b:undo_ftplugin
unlet b:undo_ftplugin
endif
if exists("b:browsefilter")
let s:browsefilter = b:browsefilter
unlet b:browsefilter
endif
if exists("b:match_words")
let s:match_words = b:match_words
unlet b:match_words
endif
runtime! ftplugin/java.vim ftplugin/java_*.vim ftplugin/java/*.vim
let b:did_ftplugin = 1
" Combine the new set of values with those previously included.
if exists("b:undo_ftplugin")
let s:undo_ftplugin = b:undo_ftplugin . " | " . s:undo_ftplugin
endif
if exists ("b:browsefilter")
let s:browsefilter = b:browsefilter . s:browsefilter
endif
if exists("b:match_words")
let s:match_words = b:match_words . ',' . s:match_words
endif
" Load the combined list of match_words for matchit.vim
if exists("loaded_matchit")
let b:match_words = s:match_words
endif
" Change the :browse e filter to primarily show JSP-related files.
if has("gui_win32")
let b:browsefilter="JSP Files (*.jsp)\t*.jsp\n" . s:browsefilter
endif
" Undo the stuff we changed.
let b:undo_ftplugin = "unlet! b:browsefilter b:match_words | " . s:undo_ftplugin
" Restore the saved compatibility options.
let &cpo = s:save_cpo

View File

@@ -0,0 +1,18 @@
" Vim filetype plugin file
" Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
let s:cpo_save = &cpo
set cpo&vim
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=:# commentstring=#\ %s formatoptions-=t formatoptions+=croql
let &cpo = s:cpo_save
unlet s:cpo_save

View File

@@ -0,0 +1,20 @@
" Vim filetype plugin file
" Language: Kimwitu++
" Maintainer: Michael Piefel <piefel@informatik.hu-berlin.de>
" Last Change: 16 August 2001
" Behaves almost like C++
runtime! ftplugin/cpp.vim ftplugin/cpp_*.vim ftplugin/cpp/*.vim
set cpo-=C
" Limit the browser to related files
if has("gui_win32") && !exists("b:browsefilter")
let b:browsefilter = "Kimwitu/Kimwitu++ Files (*.k)\t*.k\n" .
\ "Lex/Flex Files (*.l)\t*.l\n" .
\ "Yacc/Bison Files (*.y)\t*.y\n" .
\ "All Files (*.*)\t*.*\n"
endif
" Set the errorformat for the Kimwitu++ compiler
set efm+=kc%.%#:\ error\ at\ %f:%l:\ %m

View File

@@ -0,0 +1,20 @@
" Vim filetype plugin file
" Language: ld(1) script
" Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
let s:cpo_save = &cpo
set cpo&vim
let b:undo_ftplugin = "setl com< cms< inc< fo<"
setlocal comments=s1:/*,mb:*,ex:*/ commentstring=/*%s*/ include=^\\s*INCLUDE
setlocal formatoptions-=t formatoptions+=croql
let &cpo = s:cpo_save
unlet s:cpo_save

View File

@@ -0,0 +1,19 @@
" Vim filetype plugin file
" Language: lftp(1) configuration file
" Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
let s:cpo_save = &cpo
set cpo&vim
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=:# commentstring=#\ %s formatoptions-=t formatoptions+=croql
let &cpo = s:cpo_save
unlet s:cpo_save

View File

@@ -0,0 +1,19 @@
" Vim filetype plugin file
" Language: libao.conf(5) configuration file
" Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
let s:cpo_save = &cpo
set cpo&vim
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=:# commentstring=#\ %s formatoptions-=t formatoptions+=croql
let &cpo = s:cpo_save
unlet s:cpo_save

View File

@@ -0,0 +1,19 @@
" Vim filetype plugin file
" Language: limits(5) configuration file
" Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
let s:cpo_save = &cpo
set cpo&vim
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=:# commentstring=#\ %s formatoptions-=t formatoptions+=croql
let &cpo = s:cpo_save
unlet s:cpo_save

View File

@@ -0,0 +1,26 @@
" Vim filetype plugin
" Language: Lisp
" Maintainer: Sergey Khorev <sergey.khorev@gmail.com>
" URL: http://iamphet.nm.ru/vim
" Original author: Dorai Sitaram <ds26@gte.com>
" Original URL: http://www.ccs.neu.edu/~dorai/vimplugins/vimplugins.html
" Last Change: Nov 8, 2004
" Only do this when not done yet for this buffer
if exists("b:did_ftplugin")
finish
endif
" Don't load another plugin for this buffer
let b:did_ftplugin = 1
setl comments=:;
setl define=^\\s*(def\\k*
setl formatoptions-=t
setl iskeyword+=+,-,*,/,%,<,=,>,:,$,?,!,@-@,94
setl lisp
" make comments behaviour like in c.vim
" e.g. insertion of ;;; and ;; on normal "O" or "o" when staying in comment
setl comments^=:;;;,:;;,sr:#\|,mb:\|,ex:\|#
setl formatoptions+=croql

View File

@@ -0,0 +1,15 @@
" Vim filetype plugin file
" Language: Logcheck
" Maintainer: Debian Vim Maintainers <pkg-vim-maintainers@lists.alioth.debian.org>
" Last Change: 2008-08-30
" License: GNU GPL, version 2.0
" URL: http://git.debian.org/?p=pkg-vim/vim.git;a=blob_plain;f=runtime/ftplugin/logcheck.vim;hb=debian
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
" Do not hard-wrap lines since logcheck requires one line per regex
setlocal textwidth=0

View File

@@ -0,0 +1,19 @@
" Vim filetype plugin file
" Language: login.access(5) configuration file
" Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
let s:cpo_save = &cpo
set cpo&vim
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=:# commentstring=#\ %s formatoptions-=t formatoptions+=croql
let &cpo = s:cpo_save
unlet s:cpo_save

View File

@@ -0,0 +1,19 @@
" Vim filetype plugin file
" Language: login.defs(5) configuration file
" Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
let s:cpo_save = &cpo
set cpo&vim
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=:# commentstring=#\ %s formatoptions-=t formatoptions+=croql
let &cpo = s:cpo_save
unlet s:cpo_save

View File

@@ -0,0 +1,18 @@
" Logtalk filetype plugin file
" Language: Logtalk
" Maintainer: Paulo Moura <pmoura@logtalk.org>
" Latest Revision: 2007-07-06
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
let b:undo_ftplugin = "setl ts< sw< fdm< fdc< ai< dict<"
"setlocal ts=4
setlocal sw=4
setlocal fdm=syntax
setlocal fdc=2
setlocal autoindent
setlocal dict=$VIMRUNTIME/ftplugin/logtalk.dict

View File

@@ -0,0 +1,37 @@
" Vim settings file
" Language: LambdaProlog (Teyjus)
" Maintainer: Markus Mottl <markus.mottl@gmail.com>
" URL: http://www.ocaml.info/vim/ftplugin/lprolog.vim
" Last Change: 2006 Feb 05
" 2001 Sep 16 - fixed 'no_mail_maps'-bug (MM)
" 2001 Sep 02 - initial release (MM)
" Only do these settings when not done yet for this buffer
if exists("b:did_ftplugin")
finish
endif
" Don't do other file type settings for this buffer
let b:did_ftplugin = 1
" Error format
setlocal efm=%+A./%f:%l.%c:\ %m formatprg=fmt\ -w75\ -p\\%
" Formatting of comments
setlocal formatprg=fmt\ -w75\ -p\\%
" Add mappings, unless the user didn't want this.
if !exists("no_plugin_maps") && !exists("no_lprolog_maps")
" Uncommenting
if !hasmapto('<Plug>Comment')
nmap <buffer> <LocalLeader>c <Plug>LUncomOn
vmap <buffer> <LocalLeader>c <Plug>BUncomOn
nmap <buffer> <LocalLeader>C <Plug>LUncomOff
vmap <buffer> <LocalLeader>C <Plug>BUncomOff
endif
nnoremap <buffer> <Plug>LUncomOn mz0i/* <ESC>$A */<ESC>`z
nnoremap <buffer> <Plug>LUncomOff <ESC>:s/^\/\* \(.*\) \*\//\1/<CR>
vnoremap <buffer> <Plug>BUncomOn <ESC>:'<,'><CR>`<O<ESC>0i/*<ESC>`>o<ESC>0i*/<ESC>`<
vnoremap <buffer> <Plug>BUncomOff <ESC>:'<,'><CR>`<dd`>dd`<
endif

View File

@@ -0,0 +1,36 @@
" Vim filetype plugin file.
" Language: Lua 4.0+
" Maintainer: Max Ischenko <mfi@ukr.net>
" Last Change: 2008 Mar 25
" Only do this when not done yet for this buffer
if exists("b:did_ftplugin")
finish
endif
" Don't load another plugin for this buffer
let b:did_ftplugin = 1
" Set 'formatoptions' to break comment lines but not other lines, and insert
" the comment leader when hitting <CR> or using "o".
setlocal fo-=t fo+=croql
setlocal com=:--
setlocal cms=--%s
setlocal suffixesadd=.lua
" The following lines enable the macros/matchit.vim plugin for
" extended matching with the % key.
set cpo-=C
if exists("loaded_matchit")
let b:match_ignorecase = 0
let b:match_words =
\ '\<\%(do\|function\|if\)\>:' .
\ '\<\%(return\|else\|elseif\)\>:' .
\ '\<end\>,' .
\ '\<repeat\>:\<until\>'
endif " exists("loaded_matchit")

View File

@@ -0,0 +1,20 @@
" Vim filetype plugin file
" Language: m4
" Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
let s:cpo_save = &cpo
set cpo&vim
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=:#,:dnl commentstring=dnl\ %s
setlocal formatoptions-=t formatoptions+=croql
let &cpo = s:cpo_save
unlet s:cpo_save

View File

@@ -0,0 +1,35 @@
" Vim filetype plugin file
" Language: Mail
" Maintainer: Bram Moolenaar <Bram@vim.org>
" Last Change: 2009 Jun 03
" Only do this when not done yet for this buffer
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
let b:undo_ftplugin = "setl modeline< tw< fo<"
" Don't use modelines in e-mail messages, avoid trojan horses and nasty
" "jokes" (e.g., setting 'textwidth' to 5).
setlocal nomodeline
" many people recommend keeping e-mail messages 72 chars wide
if &tw == 0
setlocal tw=72
endif
" Set 'formatoptions' to break text lines and keep the comment leader ">".
setlocal fo+=tcql
" Add mappings, unless the user doesn't want this.
if !exists("no_plugin_maps") && !exists("no_mail_maps")
" Quote text by inserting "> "
if !hasmapto('<Plug>MailQuote')
vmap <buffer> <LocalLeader>q <Plug>MailQuote
nmap <buffer> <LocalLeader>q <Plug>MailQuote
endif
vnoremap <buffer> <Plug>MailQuote :s/^/> /<CR>:noh<CR>``
nnoremap <buffer> <Plug>MailQuote :.,$s/^/> /<CR>:noh<CR>``
endif

View File

@@ -0,0 +1,18 @@
" Vim filetype plugin file
" Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
let s:cpo_save = &cpo
set cpo&vim
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=:# commentstring=#\ %s formatoptions-=t formatoptions+=croql
let &cpo = s:cpo_save
unlet s:cpo_save

View File

@@ -0,0 +1,19 @@
" Vim filetype plugin file
" Language: Mailcap configuration file
" Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
let s:cpo_save = &cpo
set cpo&vim
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=:# commentstring=#\ %s formatoptions-=t formatoptions+=croql
let &cpo = s:cpo_save
unlet s:cpo_save

View File

@@ -0,0 +1,28 @@
" Vim filetype plugin file
" Language: Make
" Maintainer: Bram Moolenaar <Bram@vim.org>
" Last Change: 2006 Jun 17
" Only do this when not done yet for this buffer
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
let b:undo_ftplugin = "setl et< sts< fo< com< cms< inc<"
" Make sure a hard tab is used, required for most make programs
setlocal noexpandtab softtabstop=0
" Set 'formatoptions' to break comment lines but not other lines,
" and insert the comment leader when hitting <CR> or using "o".
setlocal fo-=t fo+=croql
" Set 'comments' to format dashed lists in comments
setlocal com=sO:#\ -,mO:#\ \ ,b:#
" Set 'commentstring' to put the marker after a #.
setlocal commentstring=#\ %s
" Including files.
let &l:include = '^\s*include'

View File

@@ -0,0 +1,181 @@
" Vim filetype plugin file
" Language: man
" Maintainer: SungHyun Nam <goweol@gmail.com>
" Last Change: 2008 Sep 17
" To make the ":Man" command available before editing a manual page, source
" this script from your startup vimrc file.
" If 'filetype' isn't "man", we must have been called to only define ":Man".
if &filetype == "man"
" Only do this when not done yet for this buffer
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
" allow dot and dash in manual page name.
setlocal iskeyword+=\.,-
" Add mappings, unless the user didn't want this.
if !exists("no_plugin_maps") && !exists("no_man_maps")
if !hasmapto('<Plug>ManBS')
nmap <buffer> <LocalLeader>h <Plug>ManBS
endif
nnoremap <buffer> <Plug>ManBS :%s/.\b//g<CR>:setl nomod<CR>''
nnoremap <buffer> <c-]> :call <SID>PreGetPage(v:count)<CR>
nnoremap <buffer> <c-t> :call <SID>PopPage()<CR>
endif
endif
if exists(":Man") != 2
com -nargs=+ Man call s:GetPage(<f-args>)
nmap <Leader>K :call <SID>PreGetPage(0)<CR>
endif
" Define functions only once.
if !exists("s:man_tag_depth")
let s:man_tag_depth = 0
let s:man_sect_arg = ""
let s:man_find_arg = "-w"
try
if !has("win32") && $OSTYPE !~ 'cygwin\|linux' && system('uname -s') =~ "SunOS" && system('uname -r') =~ "^5"
let s:man_sect_arg = "-s"
let s:man_find_arg = "-l"
endif
catch /E145:/
" Ignore the error in restricted mode
endtry
func <SID>PreGetPage(cnt)
if a:cnt == 0
let old_isk = &iskeyword
setl iskeyword+=(,)
let str = expand("<cword>")
let &l:iskeyword = old_isk
let page = substitute(str, '(*\(\k\+\).*', '\1', '')
let sect = substitute(str, '\(\k\+\)(\([^()]*\)).*', '\2', '')
if match(sect, '^[0-9 ]\+$') == -1
let sect = ""
endif
if sect == page
let sect = ""
endif
else
let sect = a:cnt
let page = expand("<cword>")
endif
call s:GetPage(sect, page)
endfunc
func <SID>GetCmdArg(sect, page)
if a:sect == ''
return a:page
endif
return s:man_sect_arg.' '.a:sect.' '.a:page
endfunc
func <SID>FindPage(sect, page)
let where = system("/usr/bin/man ".s:man_find_arg.' '.s:GetCmdArg(a:sect, a:page))
if where !~ "^/"
if matchstr(where, " [^ ]*$") !~ "^ /"
return 0
endif
endif
return 1
endfunc
func <SID>GetPage(...)
if a:0 >= 2
let sect = a:1
let page = a:2
elseif a:0 >= 1
let sect = ""
let page = a:1
else
return
endif
" To support: nmap K :Man <cword>
if page == '<cword>'
let page = expand('<cword>')
endif
if sect != "" && s:FindPage(sect, page) == 0
let sect = ""
endif
if s:FindPage(sect, page) == 0
echo "\nCannot find a '".page."'."
return
endif
exec "let s:man_tag_buf_".s:man_tag_depth." = ".bufnr("%")
exec "let s:man_tag_lin_".s:man_tag_depth." = ".line(".")
exec "let s:man_tag_col_".s:man_tag_depth." = ".col(".")
let s:man_tag_depth = s:man_tag_depth + 1
" Use an existing "man" window if it exists, otherwise open a new one.
if &filetype != "man"
let thiswin = winnr()
exe "norm! \<C-W>b"
if winnr() > 1
exe "norm! " . thiswin . "\<C-W>w"
while 1
if &filetype == "man"
break
endif
exe "norm! \<C-W>w"
if thiswin == winnr()
break
endif
endwhile
endif
if &filetype != "man"
new
setl nonu fdc=0
endif
endif
silent exec "edit $HOME/".page.".".sect."~"
" Avoid warning for editing the dummy file twice
setl buftype=nofile noswapfile
setl ma
silent exec "norm 1GdG"
let $MANWIDTH = winwidth(0)
silent exec "r!/usr/bin/man ".s:GetCmdArg(sect, page)." | col -b"
" Remove blank lines from top and bottom.
while getline(1) =~ '^\s*$'
silent norm ggdd
endwhile
while getline('$') =~ '^\s*$'
silent norm Gdd
endwhile
1
setl ft=man nomod
setl bufhidden=hide
setl nobuflisted
endfunc
func <SID>PopPage()
if s:man_tag_depth > 0
let s:man_tag_depth = s:man_tag_depth - 1
exec "let s:man_tag_buf=s:man_tag_buf_".s:man_tag_depth
exec "let s:man_tag_lin=s:man_tag_lin_".s:man_tag_depth
exec "let s:man_tag_col=s:man_tag_col_".s:man_tag_depth
exec s:man_tag_buf."b"
exec s:man_tag_lin
exec "norm ".s:man_tag_col."|"
exec "unlet s:man_tag_buf_".s:man_tag_depth
exec "unlet s:man_tag_lin_".s:man_tag_depth
exec "unlet s:man_tag_col_".s:man_tag_depth
unlet s:man_tag_buf s:man_tag_lin s:man_tag_col
endif
endfunc
endif
" vim: set sw=2:

View File

@@ -0,0 +1,19 @@
" Vim filetype plugin file
" Language: man.conf(5) - man configuration file
" Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
let s:cpo_save = &cpo
set cpo&vim
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=:# commentstring=#\ %s formatoptions-=t formatoptions+=croql
let &cpo = s:cpo_save
unlet s:cpo_save

View File

@@ -0,0 +1,30 @@
" Vim filetype plugin file
" Language: matlab
" Maintainer: Jake Wasserman <jwasserman at gmail dot com>
" Last Changed: 2006 Jan 12
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
let s:save_cpo = &cpo
set cpo-=C
if exists("loaded_matchit")
let s:conditionalEnd = '\(([^()]*\)\@!\<end\>\([^()]*)\)\@!'
let b:match_words = '\<if\>\|\<while\>\|\<for\>\|\<switch\>:' .
\ s:conditionalEnd . ',\<if\>:\<elseif\>:\<else\>:' .
\ s:conditionalEnd
endif
setlocal suffixesadd=.m
setlocal suffixes+=.asv
let b:undo_ftplugin = "setlocal suffixesadd< suffixes< "
\ . "| unlet! b:match_words"
let &cpo = s:save_cpo

View File

@@ -0,0 +1,19 @@
" Vim filetype plugin file
" Language: MetaFont
" Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
let s:cpo_save = &cpo
set cpo&vim
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=:% commentstring=%\ %s formatoptions-=t formatoptions+=croql
let &cpo = s:cpo_save
unlet s:cpo_save

View File

@@ -0,0 +1,20 @@
" Vim filetype plugin file
" Language: modules.conf(5) configuration file
" Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
let s:cpo_save = &cpo
set cpo&vim
let b:undo_ftplugin = "setl com< cms< inc< fo<"
setlocal comments=:# commentstring=#\ %s include=^\\s*include
setlocal formatoptions-=t formatoptions+=croql
let &cpo = s:cpo_save
unlet s:cpo_save

View File

@@ -0,0 +1,28 @@
" Vim filetype plugin file
" Language: MetaPost
" Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
let s:cpo_save = &cpo
set cpo&vim
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=:% commentstring=%\ %s formatoptions-=t formatoptions+=croql
if exists(":FixBeginfigs") != 2
command -nargs=0 FixBeginfigs call s:fix_beginfigs()
function! s:fix_beginfigs()
let i = 1
g/^beginfig(\d*);$/s//\='beginfig('.i.');'/ | let i = i + 1
endfunction
endif
let &cpo = s:cpo_save
unlet s:cpo_save

View File

@@ -0,0 +1,20 @@
" Vim filetype plugin file
" Language: mplayer(1) configuration file
" Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
let s:cpo_save = &cpo
set cpo&vim
let b:undo_ftplugin = "setl com< cms< inc< fo<"
setlocal comments=:# commentstring=#\ %s include=^\\s*include
setlocal formatoptions-=t formatoptions+=croql
let &cpo = s:cpo_save
unlet s:cpo_save

View File

@@ -0,0 +1,22 @@
" Created : Wed 26 Apr 2006 01:20:53 AM CDT
" Modified : Fri 28 Apr 2006 03:24:01 AM CDT
" Author : Gautam Iyer <gi1242@users.sourceforge.net>
" Description : ftplugin for mrxvtrc
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
let b:undo_ftplugin = "setl com< cms< fo<"
" Really any line that does not match an option is a comment. But use '!' for
" compatibility with x-defaults files, and "#" (preferred) for compatibility
" with all other config files.
"
" Comments beginning with "#" are preferred because Vim will not flag the
" first word as a spelling error if it is not capitalised. The '!' used as
" comment leaders makes Vim think that every comment line is a new sentence.
setlocal comments=:!,:# commentstring=#\ %s
setlocal formatoptions-=t formatoptions+=croql

View File

@@ -0,0 +1,40 @@
" Vim filetype plugin file
" Language: MS Message files (*.mc)
" Maintainer: Kevin Locke <kwl7@cornell.edu>
" Last Change: 2008 April 09
" Location: http://kevinlocke.name/programs/vim/syntax/msmessages.vim
" Based on c.vim
" Only do this when not done yet for this buffer
if exists("b:did_ftplugin")
finish
endif
" Don't load another plugin for this buffer
let b:did_ftplugin = 1
" Using line continuation here.
let s:cpo_save = &cpo
set cpo-=C
let b:undo_ftplugin = "setl fo< com< cms< | unlet! b:browsefilter"
" Set 'formatoptions' to format all lines, including comments
setlocal fo-=ct fo+=roql
" Comments includes both ";" which describes a "comment" which will be
" converted to C code and variants on "; //" which will remain comments
" in the generated C code
setlocal comments=:;,:;//,:;\ //,s:;\ /*\ ,m:;\ \ *\ ,e:;\ \ */
setlocal commentstring=;\ //\ %s
" Win32 can filter files in the browse dialog
if has("gui_win32") && !exists("b:browsefilter")
let b:browsefilter = "MS Message Files (*.mc)\t*.mc\n" .
\ "Resource Files (*.rc)\t*.rc\n" .
\ "All Files (*.*)\t*.*\n"
endif
let &cpo = s:cpo_save
unlet s:cpo_save

View File

@@ -0,0 +1,30 @@
" Vim filetype plugin file
" Language: MuPAD source files
" Maintainer: Dave Silvia <dsilvia@mchsi.com>
" Filenames: *.mu
" Date: 6/30/2004
if exists("b:did_ftplugin") | finish | endif
let b:did_ftplugin = 1
" Change the :browse e filter to primarily show MuPAD source files.
if has("gui_win32")
let b:browsefilter=
\ "MuPAD source (*.mu)\t*.mu\n" .
\ "All Files (*.*)\t*.*\n"
endif
" matchit.vim not loaded -- don't do anyting below
if !exists("loaded_matchit")
" echomsg "matchit.vim not loaded -- finishing"
finish
endif
" source the AppendMatchGroup function file
runtime ftplugin/AppendMatchGroup.vim
" fill b:match_words for MuPAD
call AppendMatchGroup('domain,end_domain')
call AppendMatchGroup('proc,begin,end_proc')
call AppendMatchGroup('if,then,elif,else,end_if')
call AppendMatchGroup('\%(for\|while\|repeat\|case\),of,do,break,next,until,\%(end_for\|end_while\|end_repeat\|end_case\)')

Some files were not shown because too many files have changed in this diff Show More