mirror of
https://github.com/sheerun/vim-polyglot.git
synced 2025-11-12 13:33:49 -05:00
Run a build and commit the results
This commit is contained in:
@@ -1,31 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), '8th', 'ftplugin/8th.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" Vim ftplugin file
|
||||
" Language: 8th
|
||||
" Version: any
|
||||
" Last Change: 2021 Sep 20
|
||||
" Last Change: 2021/09/20
|
||||
" Maintainer: Ron Aaron <ron@aaron-tech.com>
|
||||
" URL: https://8th-dev.com/
|
||||
" Filetypes: *.8th
|
||||
" NOTE: 8th allows any non-whitespace in a name, so you need to do:
|
||||
" setlocal iskeyword=!,@,33-35,%,$,38-64,A-Z,91-96,a-z,123-126,128-255
|
||||
" This goes with the syntax/8th.vim file.
|
||||
|
||||
" Only do this when not done yet for this buffer
|
||||
if exists("b:did_8thplugin")
|
||||
finish
|
||||
endif
|
||||
|
||||
" Don't load another 8th plugin for this buffer
|
||||
let b:did_8thplugin = 1
|
||||
|
||||
setlocal ts=2 sts=2 sw=2 et
|
||||
setlocal com=s1:/*,mb:*,ex:*/,b:--,be:\\
|
||||
setlocal fo=tcrqol
|
||||
setlocal matchpairs+=\::;
|
||||
setlocal iskeyword=!,@,33-35,%,$,38-64,A-Z,91-96,a-z,123-126,128-255
|
||||
setlocal suffixesadd=.8th
|
||||
let b:undo_ftplugin = "setlocal ts< sts< sw< et< com< fo< mps< isk< sua<"
|
||||
@@ -1,24 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'a2ps', 'ftplugin/a2ps.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" Vim filetype plugin file
|
||||
" Language: a2ps(1) configuration file
|
||||
" Previous 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
|
||||
@@ -1,36 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'aap', 'ftplugin/aap.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" Vim filetype plugin file
|
||||
" Language: Aap recipe
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2021 Nov 14
|
||||
|
||||
" 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', 'commentstring' and 'expandtab' to undo
|
||||
" this plugin.
|
||||
let b:undo_ftplugin = "setl fo< com< cms< 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:-
|
||||
setlocal commentstring=#\ %s
|
||||
|
||||
" Expand tabs to spaces to avoid trouble.
|
||||
setlocal expandtab
|
||||
|
||||
if (has("gui_win32") || has("gui_gtk")) && !exists("b:browsefilter")
|
||||
let b:browsefilter = "Aap Recipe Files (*.aap)\t*.aap\nAll Files (*.*)\t*.*\n"
|
||||
let b:undo_ftplugin .= " | unlet! b:browsefilter"
|
||||
endif
|
||||
@@ -1,33 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'abap', 'ftplugin/abap.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" Vim filetype plugin file
|
||||
" Language: ABAP
|
||||
" Author: Steven Oliver <oliver.steven@gmail.com>
|
||||
" Copyright: Copyright (c) 2013 Steven Oliver
|
||||
" License: You may redistribute this under the same terms as Vim itself
|
||||
" --------------------------------------------------------------------------
|
||||
|
||||
" Only do this when not done yet for this buffer
|
||||
if (exists("b:did_ftplugin"))
|
||||
finish
|
||||
endif
|
||||
let b:did_ftplugin = 1
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
setlocal softtabstop=2 shiftwidth=2
|
||||
setlocal suffixesadd=.abap
|
||||
|
||||
" Windows allows you to filter the open file dialog
|
||||
if has("gui_win32") && !exists("b:browsefilter")
|
||||
let b:browsefilter = "ABAP Source Files (*.abap)\t*.abap\n" .
|
||||
\ "All Files (*.*)\t*.*\n"
|
||||
endif
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
|
||||
" vim: set sw=4 sts=4 et tw=80 :
|
||||
@@ -1,101 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'abaqus', 'ftplugin/abaqus.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" Vim filetype plugin file
|
||||
" Language: Abaqus finite element input file (www.abaqus.com)
|
||||
" Maintainer: Carl Osterwisch <osterwischc@asme.org>
|
||||
" Last Change: 2012 Apr 30
|
||||
|
||||
" 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>"
|
||||
|
||||
" Undo must be done in nocompatible mode for <LocalLeader>.
|
||||
let b:undo_ftplugin = "let s:cpo_save = &cpoptions|"
|
||||
\ . "set cpoptions&vim|"
|
||||
\ . b:undo_ftplugin
|
||||
\ . "|let &cpoptions = s:cpo_save"
|
||||
\ . "|unlet s:cpo_save"
|
||||
|
||||
" Restore saved compatibility options
|
||||
let &cpoptions = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
215
ftplugin/ada.vim
215
ftplugin/ada.vim
@@ -1,215 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'ada', 'ftplugin/ada.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
"------------------------------------------------------------------------------
|
||||
" 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 with patch from David Bürgin
|
||||
" $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
|
||||
if !exists(':AdaTagFile')
|
||||
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'')')
|
||||
endif
|
||||
|
||||
" 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
|
||||
@@ -1,23 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'alsaconf', 'ftplugin/alsaconf.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" Vim filetype plugin file
|
||||
" Language: alsaconf(8) configuration file
|
||||
" Previous 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
|
||||
@@ -1,48 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'ant', 'ftplugin/ant.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" 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
|
||||
unlet s:save_cpo
|
||||
@@ -1,23 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'arch', 'ftplugin/arch.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" Vim filetype plugin file
|
||||
" Language: GNU Arch inventory file
|
||||
" Previous 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
|
||||
@@ -1,19 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'art', 'ftplugin/art.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" 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
|
||||
@@ -1,64 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'aspvbs', 'ftplugin/aspvbs.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" 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
|
||||
unlet s:save_cpo
|
||||
@@ -1,20 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'automake', 'ftplugin/automake.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" Vim filetype plugin file
|
||||
" Language: Automake
|
||||
" Previous 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
|
||||
@@ -1,60 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'awk', 'ftplugin/awk.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" Vim filetype plugin
|
||||
" Language: awk, nawk, gawk, mawk
|
||||
" Maintainer: Doug Kearns <dougkearns@gmail.com>
|
||||
" Previous Maintainer: Antonio Colombo <azc100@gmail.com>
|
||||
" Last Change: 2020 Sep 28
|
||||
|
||||
" This plugin was prepared by Mark Sikora
|
||||
" This plugin was updated as proposed by Doug Kearns
|
||||
|
||||
" 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 s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
setlocal comments=:#
|
||||
setlocal commentstring=#\ %s
|
||||
setlocal formatoptions-=t formatoptions+=croql
|
||||
|
||||
setlocal define=function
|
||||
setlocal suffixesadd+=.awk
|
||||
|
||||
let b:undo_ftplugin = "setl fo< com< cms< def< sua<" .
|
||||
\ " | unlet! b:browsefilter"
|
||||
|
||||
" TODO: set this in scripts.vim?
|
||||
if exists("g:awk_is_gawk")
|
||||
setlocal include=@include
|
||||
setlocal suffixesadd+=.gawk
|
||||
if has("unix") || has("win32unix")
|
||||
setlocal formatprg=gawk\ -f-\ -o/dev/stdout
|
||||
let b:undo_ftplugin .= " | setl fp<"
|
||||
endif
|
||||
|
||||
let path = system("gawk 'BEGIN { printf ENVIRON[\"AWKPATH\"] }'")
|
||||
let path = substitute(path, '^\.\=:\|:\.\=$\|:\.\=:', ',,', 'g') " POSIX cwd
|
||||
let path = substitute(path, ':', ',', 'g')
|
||||
|
||||
let &l:path = path
|
||||
let b:undo_ftplugin .= " | setl inc< path<"
|
||||
endif
|
||||
|
||||
if (has("gui_win32") || has("gui_gtk")) && !exists("b:browsefilter")
|
||||
let b:browsefilter = "Awk Source Files (*.awk,*.gawk)\t*.awk;*.gawk\n" .
|
||||
\ "All Files (*.*)\t*.*\n"
|
||||
endif
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
|
||||
" vim: nowrap sw=2 sts=2 ts=8
|
||||
@@ -1,60 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'basic', 'ftplugin/basic.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" Vim filetype plugin file
|
||||
" Language: BASIC (QuickBASIC 4.5)
|
||||
" Maintainer: Doug Kearns <dougkearns@gmail.com>
|
||||
" Last Change: 2021 Mar 16
|
||||
|
||||
if exists("b:did_ftplugin")
|
||||
finish
|
||||
endif
|
||||
let b:did_ftplugin = 1
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
setlocal comments=:REM\ ,:Rem\ ,:rem\ ,:'
|
||||
setlocal commentstring='\ %s
|
||||
setlocal formatoptions-=t formatoptions+=croql
|
||||
|
||||
" TODO: support exit ... as middle matches?
|
||||
if exists("loaded_matchit") && !exists("b:match_words")
|
||||
let s:line_start = '\%(^\s*\)\@<='
|
||||
let s:not_end = '\%(end\s\+\)\@<!'
|
||||
let s:not_end_or_exit = '\%(\%(end\|exit\)\s\+\)\@<!'
|
||||
|
||||
let b:match_ignorecase = 1
|
||||
let b:match_words =
|
||||
\ s:not_end_or_exit .. '\<def\s\+fn:\<end\s\+def\>,' ..
|
||||
\ s:not_end_or_exit .. '\<function\>:\<end\s\+function\>,' ..
|
||||
\ s:not_end_or_exit .. '\<sub\>:\<end\s\+sub\>,' ..
|
||||
\ s:not_end .. '\<type\>:\<end\s\+type\>,' ..
|
||||
\ s:not_end .. '\<select\>:\%(select\s\+\)\@<!\<case\%(\s\+\%(else\|is\)\)\=\>:\<end\s\+select\>,' ..
|
||||
\ '\<do\>:\<loop\>,' ..
|
||||
\ '\<for\>\%(\s\+\%(input\|output\|random\|append\|binary\)\)\@!:\<next\>,' ..
|
||||
\ '\<while\>:\<wend\>,' ..
|
||||
\ s:line_start .. 'if\%(.*\<then\s*\%($\|''\)\)\@=:\<\%(' .. s:line_start .. 'else\|elseif\)\>:\<end\s\+if\>,' ..
|
||||
\ '\<lock\>:\<unlock\>'
|
||||
|
||||
let b:match_skip = 'synIDattr(synID(line("."),col("."),1),"name") =~? "comment\\|string" || ' ..
|
||||
\ 'strpart(getline("."), 0, col(".") ) =~? "\\<exit\\s\\+"'
|
||||
|
||||
unlet s:line_start s:not_end s:not_end_or_exit
|
||||
endif
|
||||
|
||||
if (has("gui_win32") || has("gui_gtk")) && !exists("b:browsefilter")
|
||||
let b:browsefilter = "BASIC Source Files (*.bas)\t*.bas\n" ..
|
||||
\ "BASIC Include Files (*.bi, *.bm)\t*.bi;*.bm\n" ..
|
||||
\ "All Files (*.*)\t*.*\n"
|
||||
endif
|
||||
|
||||
let b:undo_ftplugin = "setl fo< com< cms<" ..
|
||||
\ " | unlet! b:match_ignorecase b:match_skip b:match_words" ..
|
||||
\ " | unlet! b:browsefilter"
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
|
||||
" vim: nowrap sw=2 sts=2 ts=8 noet fdm=marker:
|
||||
@@ -1,24 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'bdf', 'ftplugin/bdf.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" Vim filetype plugin file
|
||||
" Language: BDF font definition
|
||||
" Previous 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
|
||||
@@ -1,19 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'bst', 'ftplugin/bst.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" 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<"
|
||||
100
ftplugin/bzl.vim
100
ftplugin/bzl.vim
@@ -1,100 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'bzl', 'ftplugin/bzl.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" Vim filetype plugin file
|
||||
" Language: Bazel (http://bazel.io)
|
||||
" Maintainer: David Barnett (https://github.com/google/vim-ft-bzl)
|
||||
" Last Change: 2021 Jan 19
|
||||
|
||||
""
|
||||
" @section Introduction, intro
|
||||
" Core settings for the bzl filetype, used for BUILD and *.bzl files for the
|
||||
" Bazel build system (http://bazel.io/).
|
||||
|
||||
if exists('b:did_ftplugin')
|
||||
finish
|
||||
endif
|
||||
|
||||
|
||||
" Vim 7.4.051 has opinionated settings in ftplugin/python.vim that try to force
|
||||
" PEP8 conventions on every python file, but these conflict with Google's
|
||||
" indentation guidelines. As a workaround, we explicitly source the system
|
||||
" ftplugin, but save indentation settings beforehand and restore them after.
|
||||
let s:save_expandtab = &l:expandtab
|
||||
let s:save_shiftwidth = &l:shiftwidth
|
||||
let s:save_softtabstop = &l:softtabstop
|
||||
let s:save_tabstop = &l:tabstop
|
||||
|
||||
" NOTE: Vim versions before 7.3.511 had a ftplugin/python.vim that was broken
|
||||
" for compatible mode.
|
||||
let s:save_cpo = &cpo
|
||||
set cpo&vim
|
||||
|
||||
" Load base python ftplugin (also defines b:did_ftplugin).
|
||||
source $VIMRUNTIME/ftplugin/python.vim
|
||||
|
||||
" NOTE: Vim versions before 7.4.104 and later set this in ftplugin/python.vim.
|
||||
setlocal comments=b:#,fb:-
|
||||
|
||||
" Restore pre-existing indentation settings.
|
||||
let &l:expandtab = s:save_expandtab
|
||||
let &l:shiftwidth = s:save_shiftwidth
|
||||
let &l:softtabstop = s:save_softtabstop
|
||||
let &l:tabstop = s:save_tabstop
|
||||
|
||||
setlocal formatoptions-=t
|
||||
|
||||
" Make gf work with imports in BUILD files.
|
||||
setlocal includeexpr=substitute(v:fname,'//','','')
|
||||
|
||||
" Enable syntax-based folding, if specified.
|
||||
if get(g:, 'ft_bzl_fold', 0)
|
||||
setlocal foldmethod=syntax
|
||||
setlocal foldtext=BzlFoldText()
|
||||
endif
|
||||
|
||||
if exists('*BzlFoldText')
|
||||
let &cpo = s:save_cpo
|
||||
unlet s:save_cpo
|
||||
finish
|
||||
endif
|
||||
|
||||
function BzlFoldText() abort
|
||||
let l:start_num = nextnonblank(v:foldstart)
|
||||
let l:end_num = prevnonblank(v:foldend)
|
||||
|
||||
if l:end_num <= l:start_num + 1
|
||||
" If the fold is empty, don't print anything for the contents.
|
||||
let l:content = ''
|
||||
else
|
||||
" Otherwise look for something matching the content regex.
|
||||
" And if nothing matches, print an ellipsis.
|
||||
let l:content = '...'
|
||||
for l:line in getline(l:start_num + 1, l:end_num - 1)
|
||||
let l:content_match = matchstr(l:line, '\m\C^\s*name = \zs.*\ze,$')
|
||||
if !empty(l:content_match)
|
||||
let l:content = l:content_match
|
||||
break
|
||||
endif
|
||||
endfor
|
||||
endif
|
||||
|
||||
" Enclose content with start and end
|
||||
let l:start_text = getline(l:start_num)
|
||||
let l:end_text = substitute(getline(l:end_num), '^\s*', '', '')
|
||||
let l:text = l:start_text . ' ' . l:content . ' ' . l:end_text
|
||||
|
||||
" Compute the available width for the displayed text.
|
||||
let l:width = winwidth(0) - &foldcolumn - (&number ? &numberwidth : 0)
|
||||
let l:lines_folded = ' ' . string(1 + v:foldend - v:foldstart) . ' lines'
|
||||
|
||||
" Expand tabs, truncate, pad, and concatenate
|
||||
let l:text = substitute(l:text, '\t', repeat(' ', &tabstop), 'g')
|
||||
let l:text = strpart(l:text, 0, l:width - len(l:lines_folded))
|
||||
let l:padding = repeat(' ', l:width - len(l:lines_folded) - len(l:text))
|
||||
return l:text . l:padding . l:lines_folded
|
||||
endfunction
|
||||
|
||||
let &cpo = s:save_cpo
|
||||
unlet s:save_cpo
|
||||
@@ -1,24 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'calendar', 'ftplugin/calendar.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" Vim filetype plugin file
|
||||
" Language: calendar(1) input file
|
||||
" Previous 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
|
||||
@@ -1,22 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'cdrdaoconf', 'ftplugin/cdrdaoconf.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" Vim filetype plugin file
|
||||
" Previous 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
|
||||
@@ -1,23 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'cfg', 'ftplugin/cfg.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" Vim filetype plugin file
|
||||
" Language: Configuration File
|
||||
" Maintainer: Christian Brabandt <cb@256bit.org>
|
||||
" Latest Revision: 2018-12-24
|
||||
|
||||
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 cms< fo<"
|
||||
|
||||
setlocal commentstring=#\ %s formatoptions-=t formatoptions+=croql
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
@@ -1,21 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'ch', 'ftplugin/ch.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" 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
|
||||
@@ -1,273 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'cobol', 'ftplugin/cobol.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" Vim filetype plugin file
|
||||
" Language: cobol
|
||||
" Maintainer: Ankit Jain <ajatkj@yahoo.co.in>
|
||||
" (formerly Tim Pope <vimNOSPAM@tpope.info>)
|
||||
" Last Update: By Ankit Jain (add gtk support) on 15.08.2020
|
||||
|
||||
" 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
|
||||
|
||||
" add gtk support
|
||||
if (has("gui_win32") || has("gui_gtk")) && !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()
|
||||
" &softtabstop < 0: &softtabstop follows &shiftwidth
|
||||
elseif (&sts < 0 || &sts == shiftwidth()) && &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
|
||||
@@ -1,23 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'conf', 'ftplugin/conf.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" Vim filetype plugin file
|
||||
" Language: generic configuration file
|
||||
" Previous 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
|
||||
@@ -1,46 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'config', 'ftplugin/config.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" 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
|
||||
unlet s:save_cpo
|
||||
@@ -1,23 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'crm', 'ftplugin/crm.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" Vim filetype plugin file
|
||||
" Language: CRM114
|
||||
" Previous 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
|
||||
@@ -62,7 +62,7 @@ if exists('g:loaded_matchit') && !exists('b:match_words')
|
||||
let b:match_ignorecase = 0
|
||||
|
||||
let b:match_words =
|
||||
\ '\<\%(if\|unless\|case\|while\|until\|for\|do\|class\|module\|struct\|lib\|macro\|ifdef\|def\|begin\|enum\|annotation\)\>=\@!' .
|
||||
\ '\<\%(if\|unless\|case\|while\|until\|for\|do\|class\|module\|struct\|lib\|macro\|ifdef\|\%(abstract\s\+\)\@<!def\|begin\|enum\|annotation\)\>=\@!' .
|
||||
\ ':' .
|
||||
\ '\<\%(else\|elsif\|ensure\|when\|in\|rescue\|break\|next\)\>' .
|
||||
\ ':' .
|
||||
|
||||
@@ -1,33 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'cs', 'ftplugin/cs.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" 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
|
||||
let s:keepcpo= &cpo
|
||||
set cpo&vim
|
||||
|
||||
" 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
|
||||
|
||||
let &cpo = s:keepcpo
|
||||
unlet s:keepcpo
|
||||
@@ -1,31 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'csc', 'ftplugin/csc.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" 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
|
||||
unlet s:save_cpo
|
||||
@@ -1,29 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'css', 'ftplugin/css.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" Vim filetype plugin file
|
||||
" Language: CSS
|
||||
" Maintainer: Doug Kearns <dougkearns@gmail.com>
|
||||
" Previous Maintainer: Nikolai Weibull <now@bitwi.se>
|
||||
" Last Change: 2020 Dec 21
|
||||
|
||||
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< isk<"
|
||||
|
||||
setlocal comments=s1:/*,mb:*,ex:*/ commentstring&
|
||||
setlocal formatoptions-=t formatoptions+=croql
|
||||
setlocal omnifunc=csscomplete#CompleteCSS
|
||||
setlocal iskeyword+=-
|
||||
|
||||
let &l:include = '^\s*@import\s\+\%(url(\)\='
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
@@ -1,23 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'cvsrc', 'ftplugin/cvsrc.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" Vim filetype plugin file
|
||||
" Language: cvs(1) RC file
|
||||
" Previous 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
|
||||
@@ -1,387 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'debchangelog', 'ftplugin/debchangelog.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" Vim filetype plugin file (GUI menu, folding and completion)
|
||||
" Language: Debian Changelog
|
||||
" Maintainer: Debian Vim Maintainers
|
||||
" Former Maintainers: Michael Piefel <piefel@informatik.hu-berlin.de>
|
||||
" Stefano Zacchiroli <zack@debian.org>
|
||||
" Last Change: 2018-01-28
|
||||
" License: Vim License
|
||||
" URL: https://salsa.debian.org/vim-team/vim-debian/blob/master/ftplugin/debchangelog.vim
|
||||
|
||||
" Bug completion requires apt-listbugs installed for Debian packages or
|
||||
" python-launchpadlib 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('.')
|
||||
1
|
||||
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()
|
||||
1
|
||||
call search('^ -- ')
|
||||
.-2
|
||||
call append('.', ' * ')
|
||||
.+3
|
||||
let warn=<SID>WarnIfNotUnfinalised()
|
||||
.-2
|
||||
if warn
|
||||
echohl MoreMsg
|
||||
call input('Hit ENTER')
|
||||
echohl None
|
||||
endif
|
||||
startinsert!
|
||||
endfunction
|
||||
|
||||
function CloseBug()
|
||||
1
|
||||
call search('^ -- ')
|
||||
let warn=<SID>WarnIfNotUnfinalised()
|
||||
.-2
|
||||
call append('.', ' * (closes: #' . input('Bug number to close: ') . ')')
|
||||
normal! j^ll
|
||||
startinsert
|
||||
endfunction
|
||||
|
||||
function Distribution(dist)
|
||||
call setline(1, substitute(getline(1), ') *\%(UNRELEASED\|\l\+\);', ') ' . 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()
|
||||
1
|
||||
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()
|
||||
1
|
||||
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" | silent! 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')
|
||||
ubuntu = lp.distributions['ubuntu']
|
||||
try:
|
||||
sp = ubuntu.getSourcePackage(name=vim.eval('pkgsrc'))
|
||||
status = ('New', 'Incomplete', 'Confirmed', 'Triaged',
|
||||
'In Progress', 'Fix Committed')
|
||||
tasklist = sp.searchTasks(status=status, 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:
|
||||
@@ -1,74 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'debcontrol', 'ftplugin/debcontrol.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" Vim filetype plugin file (GUI menu and folding)
|
||||
" Language: Debian control files
|
||||
" Maintainer: Debian Vim Maintainers
|
||||
" Former Maintainer: Pierre Habouzit <madcoder@debian.org>
|
||||
" Last Change: 2018-01-28
|
||||
" URL: https://salsa.debian.org/vim-team/vim-debian/blob/master/ftplugin/debcontrol.vim
|
||||
|
||||
" 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
|
||||
@@ -1,22 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'denyhosts', 'ftplugin/denyhosts.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" Vim filetype plugin file
|
||||
" Previous 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
|
||||
@@ -1,23 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'dictconf', 'ftplugin/dictconf.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" Vim filetype plugin file
|
||||
" Language: dict(1) configuration file
|
||||
" Previous 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
|
||||
@@ -1,23 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'dictdconf', 'ftplugin/dictdconf.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" Vim filetype plugin file
|
||||
" Language: dictd(8) configuration file
|
||||
" Previous 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
|
||||
@@ -1,27 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'diff', 'ftplugin/diff.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" Vim filetype plugin file
|
||||
" Language: Diff
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2021 Nov 14
|
||||
|
||||
" 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< commentstring<"
|
||||
|
||||
" Don't use modelines in a diff, they apply to the diffed file
|
||||
setlocal nomodeline
|
||||
|
||||
" If there are comments they start with #
|
||||
let &l:commentstring = "# %s"
|
||||
|
||||
if (has("gui_win32") || has("gui_gtk")) && !exists("b:browsefilter")
|
||||
let b:browsefilter = "Diff Files (*.diff)\t*.diff\nPatch Files (*.patch)\t*.h\nAll Files (*.*)\t*.*\n"
|
||||
let b:undo_ftplugin .= " | unlet! b:browsefilter"
|
||||
endif
|
||||
@@ -1,23 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'dircolors', 'ftplugin/dircolors.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" Vim filetype plugin file
|
||||
" Language: dircolors(1) input file
|
||||
" Previous 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
|
||||
@@ -1,20 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'dockerfile', 'ftplugin/dockerfile.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" Vim filetype plugin
|
||||
" Language: Dockerfile
|
||||
" Maintainer: Honza Pokorny <http://honza.ca>
|
||||
" Last Change: 2014 Aug 29
|
||||
|
||||
" 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 b:undo_ftplugin = "setl commentstring<"
|
||||
|
||||
setlocal commentstring=#\ %s
|
||||
@@ -1,44 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'dosbatch', 'ftplugin/dosbatch.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" Vim filetype plugin file
|
||||
" Language: MS-DOS .bat files
|
||||
" Maintainer: Mike Williams <mrw@eandem.co.uk>
|
||||
" Last Change: 7th May 2020
|
||||
|
||||
" 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 s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
" BAT comment formatting
|
||||
setlocal comments=b:rem,b:@rem,b:REM,b:@REM,:::
|
||||
setlocal commentstring=::\ %s
|
||||
setlocal formatoptions-=t formatoptions+=rol
|
||||
|
||||
" Lookup DOS keywords using Windows command help.
|
||||
if executable('help.exe')
|
||||
if has('terminal')
|
||||
setlocal keywordprg=:term\ help.exe
|
||||
else
|
||||
setlocal keywordprg=help.exe
|
||||
endif
|
||||
endif
|
||||
|
||||
" 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
|
||||
|
||||
let b:undo_ftplugin = "setlocal comments< formatoptions< keywordprg<"
|
||||
\ . "| unlet! b:browsefiler"
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
@@ -1,23 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'dosini', 'ftplugin/dosini.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" Vim filetype plugin file
|
||||
" Language: Configuration File (ini file) for MS-DOS/MS Windows
|
||||
" Previous 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
|
||||
@@ -1,44 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'dtd', 'ftplugin/dtd.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" 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
|
||||
unlet s:save_cpo
|
||||
@@ -1,23 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'elinks', 'ftplugin/elinks.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" Vim filetype plugin file
|
||||
" Language: elinks(1) configuration file
|
||||
" Previous 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
|
||||
@@ -6,7 +6,6 @@ endif
|
||||
" Language: eRuby
|
||||
" Maintainer: Tim Pope <vimNOSPAM@tpope.org>
|
||||
" URL: https://github.com/vim-ruby/vim-ruby
|
||||
" Release Coordinator: Doug Kearns <dougkearns@gmail.com>
|
||||
|
||||
" Only do this when not done yet for this buffer
|
||||
if exists("b:did_ftplugin")
|
||||
|
||||
@@ -1,24 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'eterm', 'ftplugin/eterm.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" Vim filetype plugin file
|
||||
" Language: eterm(1) configuration file
|
||||
" Previous 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
|
||||
@@ -1,53 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'falcon', 'ftplugin/falcon.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" Vim filetype plugin file
|
||||
" Language: Falcon
|
||||
" Author: Steven Oliver <oliver.steven@gmail.com>
|
||||
" Copyright: Copyright (c) 2009-2013 Steven Oliver
|
||||
" License: You may redistribute this under the same terms as Vim itself
|
||||
" Last Update: 2020 Oct 10
|
||||
" --------------------------------------------------------------------------
|
||||
|
||||
" Only do this when not done yet for this buffer
|
||||
if (exists("b:did_ftplugin"))
|
||||
finish
|
||||
endif
|
||||
let b:did_ftplugin = 1
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
setlocal softtabstop=4 shiftwidth=4
|
||||
setlocal suffixesadd=.fal,.ftd
|
||||
|
||||
" Matchit support
|
||||
if exists("loaded_matchit") && !exists("b:match_words")
|
||||
let b:match_ignorecase = 0
|
||||
|
||||
let b:match_words =
|
||||
\ '\<\%(if\|case\|while\|until\|for\|do\|class\)\>=\@!' .
|
||||
\ ':' .
|
||||
\ '\<\%(else\|elsif\|when\)\>' .
|
||||
\ ':' .
|
||||
\ '\<end\>' .
|
||||
\ ',{:},\[:\],(:)'
|
||||
endif
|
||||
|
||||
setlocal comments=sO:*\ -,mO:*\ \ ,exO:*/,s1:/*,mb:*,ex:*/,://
|
||||
|
||||
" Windows allows you to filter the open file dialog
|
||||
if has("gui_win32") && !exists("b:browsefilter")
|
||||
let b:browsefilter = "Falcon Source Files (*.fal *.ftd)\t*.fal;*.ftd\n" .
|
||||
\ "All Files (*.*)\t*.*\n"
|
||||
endif
|
||||
|
||||
let b:undo_ftplugin = "setlocal tabstop< shiftwidth< expandtab< fileencoding<"
|
||||
\ . " suffixesadd< comments<"
|
||||
\ . "| unlet! b:browsefiler"
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
|
||||
" vim: set sw=4 sts=4 et tw=80 :
|
||||
@@ -1,23 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'fetchmail', 'ftplugin/fetchmail.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" Vim filetype plugin file
|
||||
" Language: fetchmail(1) RC File
|
||||
" Previous 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
|
||||
@@ -1,144 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'fortran', 'ftplugin/fortran.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" Vim settings file
|
||||
" Language: Fortran 2008 (and older: Fortran 2003, 95, 90, 77, 66)
|
||||
" Version: (v53) 2021 April 06
|
||||
" Maintainer: Ajit J. Thakkar <ajit@unb.ca>; <http://www2.unb.ca/~ajit/>
|
||||
" Usage: For instructions, do :help fortran-plugin from Vim
|
||||
" Credits:
|
||||
" Version 0.1 was created in September 2000 by Ajit Thakkar.
|
||||
" Since then, useful suggestions and contributions have been made, in order, by:
|
||||
" Stefano Zacchiroli, Hendrik Merx, Ben Fritz, David Barnett, Eisuke Kawashima,
|
||||
" Doug Kearns, and Fritz Reese.
|
||||
|
||||
" Only do these settings when not done yet for this buffer
|
||||
if exists("b:did_ftplugin")
|
||||
finish
|
||||
endif
|
||||
|
||||
let s:cposet=&cpoptions
|
||||
set cpoptions&vim
|
||||
|
||||
" 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 using the priority:
|
||||
" buffer-local value
|
||||
" > global value
|
||||
" > file extension as in Intel ifort, gcc (gfortran), NAG, Pathscale, and Cray compilers
|
||||
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
|
||||
elseif expand("%:e") =~? '^f\%(90\|95\|03\|08\)$'
|
||||
" Free-form file extension defaults as in Intel ifort, gcc(gfortran), NAG, Pathscale, and Cray compilers
|
||||
let b:fortran_fixed_source = 0
|
||||
elseif expand("%:e") =~? '^\%(f\|f77\|for\)$'
|
||||
" Fixed-form file extension defaults
|
||||
let b:fortran_fixed_source = 1
|
||||
else
|
||||
" Modern fortran still allows 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 s:lmax 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 = 500
|
||||
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 !~ '^[Cc*]' && s:test !~ '^ *[!#]' && s:test =~ '[^ 0-9\t]' && s:test !~ '^[ 0-9]*\t'
|
||||
let b:fortran_fixed_source = 0
|
||||
break
|
||||
endif
|
||||
let s:ln = s:ln + 1
|
||||
endwhile
|
||||
unlet! s:lmax s:ln s:test
|
||||
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,
|
||||
" but some vendor extensions allow longer lines
|
||||
if exists("fortran_extended_line_length")
|
||||
setlocal tw=132
|
||||
elseif exists("fortran_cardimage_line_length")
|
||||
setlocal tw=80
|
||||
else
|
||||
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
|
||||
endif
|
||||
else
|
||||
setlocal comments=:!
|
||||
" Free format allows a textwidth of 132
|
||||
setlocal tw=132
|
||||
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 text lines
|
||||
setlocal fo+=t
|
||||
|
||||
setlocal include=^\\c#\\=\\s*include\\s\\+
|
||||
setlocal suffixesadd+=.f08,.f03,.f95,.f90,.for,.f,.F,.f77,.ftn,.fpp
|
||||
|
||||
" 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 . '\<forall\>:\<end\s*forall\>,'.
|
||||
\ s:notend . '\<associate\>:\<end\s*associate\>,'.
|
||||
\ s:notend . '\<enum\>:\<end\s*enum\>,'.
|
||||
\ 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") || has("gui_gtk")) && !exists("b:browsefilter")
|
||||
let b:browsefilter = "Fortran Files (*.f;*.for;*.f77;*.f90;*.f95;*.f03;*.f08;*.fpp;*.ftn)\t*.f;*.for;*.f77;*.f90;*.f95;*.f03;*.f08;*.fpp;*.ftn\n" .
|
||||
\ "All Files (*.*)\t*.*\n"
|
||||
endif
|
||||
|
||||
let b:undo_ftplugin = "setl fo< com< tw< cms< et< inc< sua<"
|
||||
\ . "| unlet! b:match_ignorecase b:match_words b:browsefilter"
|
||||
|
||||
let &cpoptions=s:cposet
|
||||
unlet s:cposet
|
||||
|
||||
" vim:sw=2
|
||||
@@ -1,34 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'framescript', 'ftplugin/framescript.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" Vim ftplugin file
|
||||
" Language: FrameScript
|
||||
" Previous Maintainer: Nikolai Weibull <now@bitwi.se>
|
||||
" Latest Revision: 2008-07-19
|
||||
|
||||
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< 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
|
||||
@@ -1,69 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'freebasic', 'ftplugin/freebasic.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" Vim filetype plugin file
|
||||
" Language: FreeBASIC
|
||||
" Maintainer: Doug Kearns <dougkearns@gmail.com>
|
||||
" Last Change: 2021 Mar 16
|
||||
|
||||
" Setup {{{1
|
||||
if exists("b:did_ftplugin")
|
||||
finish
|
||||
endif
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
runtime! ftplugin/basic.vim
|
||||
|
||||
let s:dialect = freebasic#GetDialect()
|
||||
|
||||
" Comments {{{1
|
||||
" add ''comments before 'comments
|
||||
let &l:comments = "sO:*\ -,mO:*\ \ ,exO:*/,s1:/',mb:',ex:'/,:''," .. &l:comments
|
||||
|
||||
" Match words {{{1
|
||||
if exists("loaded_matchit")
|
||||
let s:not_end = '\%(end\s\+\)\@<!'
|
||||
|
||||
let b:match_words .= ','
|
||||
|
||||
if s:dialect == 'fb'
|
||||
let b:match_words .= s:not_end .. '\<constructor\>:\<end\s\+constructor\>,' ..
|
||||
\ s:not_end .. '\<destructor\>:\<end\s\+destructor\>,' ..
|
||||
\ s:not_end .. '\<property\>:\<end\s\+property\>,' ..
|
||||
\ s:not_end .. '\<operator\>:\<end\s\+operator\>,' ..
|
||||
\ s:not_end .. '\<extern\%(\s\+"\)\@=:\<end\s\+extern\>,'
|
||||
endif
|
||||
|
||||
if s:dialect == 'fb' || s:dialect == 'deprecated'
|
||||
let b:match_words .= s:not_end .. '\<scope\>:\<end\s\+scope\>,'
|
||||
endif
|
||||
|
||||
if s:dialect == 'qb'
|
||||
let b:match_words .= s:not_end .. '\<__asm\>:\<end\s\+__asm\>,' ..
|
||||
\ s:not_end .. '\<__union\>:\<end\s\+__union\>,' ..
|
||||
\ s:not_end .. '\<__with\>:\<end\s\+__with\>,'
|
||||
else
|
||||
let b:match_words .= s:not_end .. '\<asm\>:\<end\s\+asm\>,' ..
|
||||
\ s:not_end .. '\<namespace\>:\<end\s\+namespace\>,' ..
|
||||
\ s:not_end .. '\<union\>:\<end\s\+union\>,' ..
|
||||
\ s:not_end .. '\<with\>:\<end\s\+with\>,'
|
||||
endif
|
||||
|
||||
let b:match_words .= s:not_end .. '\<enum\>:\<end\s\+enum\>,' ..
|
||||
\ '^#\s*\%(if\|ifdef\|ifndef\)\>:^#\s*\%(else\|elseif\)\>:^#\s*endif\>,' ..
|
||||
\ '^#\s*macro\>:^#\s*endmacro\>'
|
||||
|
||||
" skip "function = <retval>"
|
||||
let b:match_skip .= '|| strpart(getline("."), col(".") - 1) =~? "^\\<function\\s\\+="'
|
||||
|
||||
unlet s:not_end
|
||||
endif
|
||||
|
||||
" Cleanup {{{1
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
|
||||
" vim: nowrap sw=2 sts=2 ts=8 noet fdm=marker:
|
||||
@@ -1,23 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'fstab', 'ftplugin/fstab.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" Vim ftplugin file
|
||||
" Language: fstab file
|
||||
" Maintainer: Radu Dineiu <radu.dineiu@gmail.com>
|
||||
" URL: https://raw.github.com/rid9/vim-fstab/master/ftplugin/fstab.vim
|
||||
" Last Change: 2021 Jan 02
|
||||
" Version: 1.0
|
||||
"
|
||||
" Credits:
|
||||
" Subhaditya Nath <sn03.general@gmail.com>
|
||||
|
||||
if exists("b:did_ftplugin")
|
||||
finish
|
||||
endif
|
||||
let b:did_ftplugin = 1
|
||||
|
||||
setlocal commentstring=#%s
|
||||
let b:undo_ftplugin = "setlocal commentstring<"
|
||||
|
||||
" vim: ts=8 ft=vim
|
||||
@@ -1,18 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'fvwm', 'ftplugin/fvwm.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" 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
|
||||
@@ -1,16 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'gdb', 'ftplugin/gdb.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" Vim filetype plugin file
|
||||
" Language: gdb
|
||||
" Maintainer: Michaël Peeters <NOSPAMm.vim@noekeon.org>
|
||||
" Last Changed: 26 Oct 2017
|
||||
|
||||
if exists("b:did_ftplugin") | finish | endif
|
||||
let b:did_ftplugin = 1
|
||||
|
||||
setlocal commentstring=#%s
|
||||
|
||||
" Undo the stuff we changed.
|
||||
let b:undo_ftplugin = "setlocal cms<"
|
||||
19
ftplugin/git.vim
Normal file
19
ftplugin/git.vim
Normal file
@@ -0,0 +1,19 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'git', 'ftplugin/git.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" Vim filetype plugin
|
||||
" Language: generic git output
|
||||
" Maintainer: Tim Pope <vimNOSPAM@tpope.org>
|
||||
" Last Change: 2023 Mar 26
|
||||
|
||||
" Only do this when not done yet for this buffer
|
||||
if (exists("b:did_ftplugin"))
|
||||
finish
|
||||
endif
|
||||
|
||||
let b:did_ftplugin = 1
|
||||
|
||||
setlocal nomodeline
|
||||
|
||||
let b:undo_ftplugin = "setl modeline<"
|
||||
@@ -1,23 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'gpg', 'ftplugin/gpg.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" Vim filetype plugin file
|
||||
" Language: gpg(1) configuration file
|
||||
" Previous 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
|
||||
@@ -2,7 +2,7 @@ if polyglot#init#is_disabled(expand('<sfile>:p'), 'graphql', 'ftplugin/graphql.v
|
||||
finish
|
||||
endif
|
||||
|
||||
" Copyright (c) 2016-2021 Jon Parise <jon@indelible.org>
|
||||
" Copyright (c) Jon Parise <jon@indelible.org>
|
||||
"
|
||||
" Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
" of this software and associated documentation files (the "Software"), to
|
||||
|
||||
@@ -1,23 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'groovy', 'ftplugin/groovy.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" Vim filetype plugin file
|
||||
" Language: groovy
|
||||
" Maintainer: Justin M. Keyes <justinkz@gmail.com>
|
||||
" Last Change: 2016 May 22
|
||||
|
||||
if exists('b:did_ftplugin')
|
||||
finish
|
||||
endif
|
||||
let b:did_ftplugin = 1
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo-=C
|
||||
|
||||
let b:undo_ftplugin = 'setlocal commentstring<'
|
||||
|
||||
setlocal commentstring=//%s
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
@@ -1,23 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'group', 'ftplugin/group.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" Vim filetype plugin file
|
||||
" Language: group(5) user group file
|
||||
" Previous 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
|
||||
@@ -1,23 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'grub', 'ftplugin/grub.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" Vim filetype plugin file
|
||||
" Language: grub(8) configuration file
|
||||
" Previous 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
|
||||
@@ -1,69 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'hamster', 'ftplugin/hamster.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" Vim filetype plugin
|
||||
" Language: Hamster Script
|
||||
" Version: 2.0.6.0
|
||||
" Maintainer: David Fishburn <dfishburn dot vim at gmail dot com>
|
||||
" Last Change: 2021 Jan 19
|
||||
|
||||
" 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 s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
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 = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
|
||||
" Disabled, 'cpo' is a global option.
|
||||
" setlocal cpo+=M " makes \%( match \)
|
||||
@@ -1,20 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'hgcommit', 'ftplugin/hgcommit.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" Vim filetype plugin file
|
||||
" Language: hg (Mercurial) commit file
|
||||
" Maintainer: Ken Takata <kentkt at csc dot jp>
|
||||
" Last Change: 2016 Jan 6
|
||||
" Filenames: hg-editor-*.txt
|
||||
" License: VIM License
|
||||
" URL: https://github.com/k-takata/hg-vim
|
||||
|
||||
if exists("b:did_ftplugin")
|
||||
finish
|
||||
endif
|
||||
let b:did_ftplugin = 1
|
||||
|
||||
setlocal nomodeline
|
||||
|
||||
let b:undo_ftplugin = 'setl modeline<'
|
||||
@@ -1,43 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'hog', 'ftplugin/hog.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" Vim filetype plugin
|
||||
" Language: hog (snort.conf)
|
||||
" Maintainer: . Victor Roemer, <vroemer@badsec.org>.
|
||||
" Last Change: Mar 1, 2013
|
||||
|
||||
if exists("b:did_ftplugin")
|
||||
finish
|
||||
endif
|
||||
let b:did_ftplugin = 1
|
||||
|
||||
let s:undo_ftplugin = "setl fo< com< cms< def< inc<"
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
setlocal formatoptions=croq
|
||||
setlocal comments=:#
|
||||
setlocal commentstring=\c#\ %s
|
||||
setlocal define=\c^\s\{-}var
|
||||
setlocal include=\c^\s\{-}include
|
||||
|
||||
" Move around configurations
|
||||
let s:hog_keyword_match = '\c^\s*\<\(preprocessor\\|config\\|output\\|include\\|ipvar\\|portvar\\|var\\|dynamicpreprocessor\\|' .
|
||||
\ 'dynamicengine\\|dynamicdetection\\|activate\\|alert\\|drop\\|block\\|dynamic\\|log\\|pass\\|reject\\|sdrop\\|sblock\)\>'
|
||||
|
||||
exec "nnoremap <buffer><silent> ]] :call search('" . s:hog_keyword_match . "', 'W' )<CR>"
|
||||
exec "nnoremap <buffer><silent> [[ :call search('" . s:hog_keyword_match . "', 'bW' )<CR>"
|
||||
|
||||
if exists("loaded_matchit")
|
||||
let b:match_words =
|
||||
\ '^\s*\<\%(preprocessor\|config\|output\|include\|ipvar\|portvar' .
|
||||
\ '\|var\|dynamicpreprocessor\|dynamicengine\|dynamicdetection' .
|
||||
\ '\|activate\|alert\|drop\|block\|dynamic\|log\|pass\|reject' .
|
||||
\ '\|sdrop\|sblock\>\):$,\::\,:;'
|
||||
let b:match_skip = 'r:\\.\{-}$\|^\s*#.\{-}$\|^\s*$'
|
||||
endif
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
@@ -1,22 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'hostconf', 'ftplugin/hostconf.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" Vim filetype plugin file
|
||||
" Previous 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
|
||||
@@ -1,23 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'hostsaccess', 'ftplugin/hostsaccess.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" Vim filetype plugin file
|
||||
" Language: hosts_access(5) control file
|
||||
" Previous 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
|
||||
@@ -1,17 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'htmldjango', 'ftplugin/htmldjango.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" 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
|
||||
@@ -1,25 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'indent', 'ftplugin/indent.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" Vim filetype plugin file
|
||||
" Language: indent(1) configuration file
|
||||
" Maintainer: Doug Kearns <dougkearns@gmail.com>
|
||||
" Previous 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
|
||||
@@ -1,85 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'j', 'ftplugin/j.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" Vim filetype plugin
|
||||
" Language: J
|
||||
" Maintainer: David Bürgin <dbuergin@gluet.ch>
|
||||
" URL: https://gitlab.com/glts/vim-j
|
||||
" Last Change: 2015-10-27
|
||||
|
||||
if exists('b:did_ftplugin')
|
||||
finish
|
||||
endif
|
||||
let b:did_ftplugin = 1
|
||||
|
||||
let s:save_cpo = &cpo
|
||||
set cpo&vim
|
||||
|
||||
setlocal iskeyword=48-57,A-Z,a-z,_
|
||||
setlocal comments=:NB.
|
||||
setlocal commentstring=NB.\ %s
|
||||
setlocal formatoptions-=t
|
||||
setlocal matchpairs=(:)
|
||||
setlocal path-=/usr/include
|
||||
|
||||
" Includes. To make the shorthand form "require 'web/cgi'" work, double the
|
||||
" last path component. Also strip off leading folder names like "~addons/".
|
||||
setlocal include=\\v^\\s*(load\|require)\\s*'\\zs\\f+\\ze'
|
||||
setlocal includeexpr=substitute(substitute(tr(v:fname,'\\','/'),'\\v^[^~][^/.]*(/[^/.]+)$','&\\1',''),'\\v^\\~[^/]+/','','')
|
||||
setlocal suffixesadd=.ijs
|
||||
|
||||
let b:undo_ftplugin = 'setlocal suffixesadd< includeexpr< include< path< matchpairs< formatoptions< commentstring< comments< iskeyword<'
|
||||
|
||||
" Section movement with ]] ][ [[ []. The start/end patterns below are amended
|
||||
" inside the function in order to avoid matching on the current cursor line.
|
||||
let s:sectionstart = '\%(\s*Note\|.\{-}\<\%([0-4]\|13\|noun\|adverb\|conjunction\|verb\|monad\|dyad\)\s\+\%(:\s*0\|def\s\+0\|define\)\)\>.*'
|
||||
let s:sectionend = '\s*)\s*'
|
||||
|
||||
function! s:SearchSection(end, backwards, visualmode) abort
|
||||
if a:visualmode !=# ''
|
||||
normal! gv
|
||||
endif
|
||||
let l:flags = a:backwards ? 'bsW' : 'sW'
|
||||
if a:end
|
||||
call search('^' . s:sectionend . (a:backwards ? '\n\_.\{-}\%#' : '$'), l:flags)
|
||||
else
|
||||
call search('^' . s:sectionstart . (a:backwards ? '\n\_.\{-}\%#' : '$'), l:flags)
|
||||
endif
|
||||
endfunction
|
||||
|
||||
noremap <buffer> <silent> ]] :<C-U>call <SID>SearchSection(0, 0, '')<CR>
|
||||
xnoremap <buffer> <silent> ]] :<C-U>call <SID>SearchSection(0, 0, visualmode())<CR>
|
||||
sunmap <buffer> ]]
|
||||
noremap <buffer> <silent> ][ :<C-U>call <SID>SearchSection(1, 0, '')<CR>
|
||||
xnoremap <buffer> <silent> ][ :<C-U>call <SID>SearchSection(1, 0, visualmode())<CR>
|
||||
sunmap <buffer> ][
|
||||
noremap <buffer> <silent> [[ :<C-U>call <SID>SearchSection(0, 1, '')<CR>
|
||||
xnoremap <buffer> <silent> [[ :<C-U>call <SID>SearchSection(0, 1, visualmode())<CR>
|
||||
sunmap <buffer> [[
|
||||
noremap <buffer> <silent> [] :<C-U>call <SID>SearchSection(1, 1, '')<CR>
|
||||
xnoremap <buffer> <silent> [] :<C-U>call <SID>SearchSection(1, 1, visualmode())<CR>
|
||||
sunmap <buffer> []
|
||||
|
||||
let b:undo_ftplugin .= ' | silent! execute "unmap <buffer> ]]"'
|
||||
\ . ' | silent! execute "unmap <buffer> ]["'
|
||||
\ . ' | silent! execute "unmap <buffer> [["'
|
||||
\ . ' | silent! execute "unmap <buffer> []"'
|
||||
|
||||
" Browse dialog filter on Windows (see ":help browsefilter")
|
||||
if has('gui_win32') && !exists('b:browsefilter')
|
||||
let b:browsefilter = "J Script Files (*.ijs)\t*.ijs\n"
|
||||
\ . "All Files (*.*)\t*.*\n"
|
||||
let b:undo_ftplugin .= ' | unlet! b:browsefilter'
|
||||
endif
|
||||
|
||||
" Enhanced "%" matching (see ":help matchit")
|
||||
if exists('loaded_matchit') && !exists('b:match_words')
|
||||
let b:match_ignorecase = 0
|
||||
let b:match_words = '^\%(\s*Note\|.\{-}\<\%([0-4]\|13\|noun\|adverb\|conjunction\|verb\|monad\|dyad\)\s\+\%(\:\s*0\|def\s\+0\|define\)\)\>:^\s*\:\s*$:^\s*)\s*$'
|
||||
\ . ',\<\%(for\%(_\a\k*\)\=\|if\|select\|try\|whil\%(e\|st\)\)\.:\<\%(case\|catch[dt]\=\|else\%(if\)\=\|fcase\)\.:\<end\.'
|
||||
let b:undo_ftplugin .= ' | unlet! b:match_ignorecase b:match_words'
|
||||
endif
|
||||
|
||||
let &cpo = s:save_cpo
|
||||
unlet s:save_cpo
|
||||
@@ -1,19 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'jproperties', 'ftplugin/jproperties.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" Vim filetype plugin
|
||||
" Language: Java properties file
|
||||
" Maintainer: None
|
||||
" Last Change: 2019 Dec 01
|
||||
|
||||
if exists("b:did_ftplugin")
|
||||
finish
|
||||
endif
|
||||
let b:did_ftplugin = 1
|
||||
|
||||
setlocal formatoptions-=t
|
||||
setlocal comments=:#,:!
|
||||
setlocal commentstring=#\ %s
|
||||
|
||||
let b:undo_ftplugin = "setl cms< com< fo<"
|
||||
@@ -2,4 +2,18 @@ if polyglot#init#is_disabled(expand('<sfile>:p'), 'jq', 'ftplugin/jq.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
if exists('b:did_ftplugin')
|
||||
finish
|
||||
endif
|
||||
let b:did_ftplugin = 1
|
||||
|
||||
let s:save_cpoptions = &cpoptions
|
||||
set cpoptions&vim
|
||||
|
||||
let b:undo_ftplugin = 'setl commentstring<'
|
||||
|
||||
setlocal commentstring=#%s
|
||||
compiler jq
|
||||
|
||||
let &cpoptions = s:save_cpoptions
|
||||
unlet s:save_cpoptions
|
||||
|
||||
@@ -8,6 +8,9 @@ endif
|
||||
" -- fmt
|
||||
command! -nargs=0 JsonnetFmt call jsonnet#Format()
|
||||
|
||||
" -- eval
|
||||
command! -nargs=0 JsonnetEval call jsonnet#Eval()
|
||||
|
||||
setlocal commentstring=//\ %s
|
||||
|
||||
|
||||
|
||||
@@ -1,71 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'jsp', 'ftplugin/jsp.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" 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
|
||||
unlet s:save_cpo
|
||||
21
ftplugin/just.vim
Normal file
21
ftplugin/just.vim
Normal file
@@ -0,0 +1,21 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'just', 'ftplugin/just.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" Vim ftplugin file
|
||||
" Language: Justfile
|
||||
" Maintainer: Noah Bogart <noah.bogart@hey.com>
|
||||
" URL: https://github.com/NoahTheDuke/vim-just.git
|
||||
" Last Change: 2023 Jul 08
|
||||
|
||||
" Only do this when not done yet for this buffer
|
||||
if exists("b:did_ftplugin")
|
||||
finish
|
||||
endif
|
||||
let b:did_ftplugin = 1
|
||||
|
||||
setlocal iskeyword+=-
|
||||
setlocal comments=n:#
|
||||
setlocal commentstring=#\ %s
|
||||
|
||||
let b:undo_ftplugin = "setlocal iskeyword< comments< commentstring<"
|
||||
@@ -1,31 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'kconfig', 'ftplugin/kconfig.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" Vim filetype plugin file
|
||||
" Vim syntax file
|
||||
" Maintainer: Christian Brabandt <cb@256bit.org>
|
||||
" Previous Maintainer: Nikolai Weibull <now@bitwi.se>
|
||||
" Latest Revision: 2015-05-29
|
||||
" License: Vim (see :h license)
|
||||
" Repository: https://github.com/chrisbra/vim-kconfig
|
||||
|
||||
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
|
||||
|
||||
" For matchit.vim
|
||||
if exists("loaded_matchit")
|
||||
let b:match_words = '^\<menu\>:\<endmenu\>,^\<if\>:\<endif\>,^\<choice\>:\<endchoice\>'
|
||||
endif
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
@@ -1,36 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'kwt', 'ftplugin/kwt.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" Vim filetype plugin file
|
||||
" Language: Kimwitu++
|
||||
" Maintainer: Michael Piefel <entwurf@piefel.de>
|
||||
" Last Change: 10 March 2012
|
||||
|
||||
" Behaves almost like C++
|
||||
runtime! ftplugin/cpp.vim ftplugin/cpp_*.vim ftplugin/cpp/*.vim
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
" 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
|
||||
|
||||
if exists("b:undo_ftplugin")
|
||||
let b:undo_ftplugin = b:undo_ftplugin . " | setlocal efm<"
|
||||
\ . "| unlet! b:browsefiler"
|
||||
else
|
||||
let b:undo_ftplugin = "setlocal efm<"
|
||||
\ . "| unlet! b:browsefiler"
|
||||
endif
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
@@ -1,24 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'ld', 'ftplugin/ld.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" Vim filetype plugin file
|
||||
" Language: ld(1) script
|
||||
" Previous 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
|
||||
532
ftplugin/ledger.vim
Normal file
532
ftplugin/ledger.vim
Normal file
@@ -0,0 +1,532 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'ledger', 'ftplugin/ledger.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" Vim filetype plugin file
|
||||
" filetype: ledger
|
||||
" by Johann Klähn; Use according to the terms of the GPL>=2.
|
||||
" vim:ts=2:sw=2:sts=2:foldmethod=marker
|
||||
|
||||
scriptencoding utf-8
|
||||
|
||||
if exists('b:did_ftplugin')
|
||||
finish
|
||||
endif
|
||||
|
||||
let b:did_ftplugin = 1
|
||||
|
||||
let b:undo_ftplugin = 'setlocal '.
|
||||
\ 'foldtext< '.
|
||||
\ 'include< comments< commentstring< omnifunc< formatprg<'
|
||||
|
||||
setl foldtext=LedgerFoldText()
|
||||
setl include=^!\\?include
|
||||
setl comments=b:;
|
||||
setl commentstring=;%s
|
||||
setl omnifunc=LedgerComplete
|
||||
setl formatexpr=ledger#align_formatexpr(v:lnum,v:count)
|
||||
|
||||
if !exists('g:ledger_main')
|
||||
let g:ledger_main = '%'
|
||||
endif
|
||||
|
||||
if exists('g:ledger_no_bin') && g:ledger_no_bin
|
||||
unlet! g:ledger_bin
|
||||
elseif !exists('g:ledger_bin') || empty(g:ledger_bin)
|
||||
if executable('hledger')
|
||||
let g:ledger_bin = 'hledger'
|
||||
elseif executable('ledger')
|
||||
let g:ledger_bin = 'ledger'
|
||||
else
|
||||
unlet! g:ledger_bin
|
||||
echohl WarningMsg
|
||||
echomsg 'No ledger command detected, set g:ledger_bin to enable more vim-ledger features.'
|
||||
echohl None
|
||||
endif
|
||||
elseif !executable(g:ledger_bin)
|
||||
unlet! g:ledger_bin
|
||||
echohl WarningMsg
|
||||
echomsg 'Command set in g:ledger_bin is not executable, fix to to enable more vim-ledger features.'
|
||||
echohl None
|
||||
endif
|
||||
|
||||
if exists('g:ledger_bin') && !exists('g:ledger_is_hledger')
|
||||
let g:ledger_is_hledger = g:ledger_bin =~# '.*hledger'
|
||||
endif
|
||||
|
||||
if exists('g:ledger_bin')
|
||||
exe 'setl formatprg='.substitute(g:ledger_bin, ' ', '\\ ', 'g').'\ -f\ -\ print'
|
||||
endif
|
||||
|
||||
if !exists('g:ledger_extra_options')
|
||||
let g:ledger_extra_options = ''
|
||||
endif
|
||||
|
||||
if !exists('g:ledger_date_format')
|
||||
let g:ledger_date_format = '%Y/%m/%d'
|
||||
endif
|
||||
|
||||
" You can set a maximal number of columns the fold text (excluding amount)
|
||||
" will use by overriding g:ledger_maxwidth in your .vimrc.
|
||||
" When maxwidth is zero, the amount will be displayed at the far right side
|
||||
" of the screen.
|
||||
if !exists('g:ledger_maxwidth')
|
||||
let g:ledger_maxwidth = 0
|
||||
endif
|
||||
|
||||
if !exists('g:ledger_fillstring')
|
||||
let g:ledger_fillstring = ' '
|
||||
endif
|
||||
|
||||
if !exists('g:ledger_accounts_cmd')
|
||||
if exists('g:ledger_bin')
|
||||
let g:ledger_accounts_cmd = g:ledger_bin . ' -f ' . shellescape(expand(g:ledger_main)) . ' accounts'
|
||||
endif
|
||||
endif
|
||||
|
||||
if !exists('g:ledger_descriptions_cmd')
|
||||
if exists('g:ledger_bin')
|
||||
if g:ledger_is_hledger
|
||||
let g:ledger_descriptions_cmd = g:ledger_bin . ' -f ' . shellescape(expand(g:ledger_main)) . ' descriptions'
|
||||
else
|
||||
let g:ledger_descriptions_cmd = g:ledger_bin . ' -f ' . shellescape(expand(g:ledger_main)) . ' payees'
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
|
||||
if !exists('g:ledger_decimal_sep')
|
||||
let g:ledger_decimal_sep = '.'
|
||||
endif
|
||||
|
||||
if !exists('g:ledger_align_last')
|
||||
let g:ledger_align_last = v:false
|
||||
endif
|
||||
|
||||
if !exists('g:ledger_align_at')
|
||||
let g:ledger_align_at = 60
|
||||
endif
|
||||
|
||||
if !exists('g:ledger_align_commodity')
|
||||
let g:ledger_align_commodity = 0
|
||||
endif
|
||||
|
||||
if !exists('g:ledger_default_commodity')
|
||||
let g:ledger_default_commodity = ''
|
||||
endif
|
||||
|
||||
if !exists('g:ledger_commodity_before')
|
||||
let g:ledger_commodity_before = 1
|
||||
endif
|
||||
|
||||
if !exists('g:ledger_commodity_sep')
|
||||
let g:ledger_commodity_sep = ''
|
||||
endif
|
||||
|
||||
" If enabled this will list the most detailed matches at the top {{{
|
||||
" of the completion list.
|
||||
" For example when you have some accounts like this:
|
||||
" A:Ba:Bu
|
||||
" A:Bu:Bu
|
||||
" and you complete on A:B:B normal behaviour may be the following
|
||||
" A:B:B
|
||||
" A:Bu:Bu
|
||||
" A:Bu
|
||||
" A:Ba:Bu
|
||||
" A:Ba
|
||||
" A
|
||||
" with this option turned on it will be
|
||||
" A:B:B
|
||||
" A:Bu:Bu
|
||||
" A:Ba:Bu
|
||||
" A:Bu
|
||||
" A:Ba
|
||||
" A
|
||||
" }}}
|
||||
if !exists('g:ledger_detailed_first')
|
||||
let g:ledger_detailed_first = 1
|
||||
endif
|
||||
|
||||
" only display exact matches (no parent accounts etc.)
|
||||
if !exists('g:ledger_exact_only')
|
||||
let g:ledger_exact_only = 0
|
||||
endif
|
||||
|
||||
" display original text / account name as completion
|
||||
if !exists('g:ledger_include_original')
|
||||
let g:ledger_include_original = 0
|
||||
endif
|
||||
|
||||
" Settings for Ledger reports {{{
|
||||
if !exists('g:ledger_winpos')
|
||||
let g:ledger_winpos = 'B' " Window position (see s:winpos_map)
|
||||
endif
|
||||
|
||||
if !exists('g:ledger_use_location_list')
|
||||
let g:ledger_use_location_list = 0 " Use quickfix list by default
|
||||
endif
|
||||
|
||||
if !exists('g:ledger_cleared_string')
|
||||
let g:ledger_cleared_string = 'Cleared: '
|
||||
endif
|
||||
|
||||
if !exists('g:ledger_pending_string')
|
||||
let g:ledger_pending_string = 'Cleared or pending: '
|
||||
endif
|
||||
|
||||
if !exists('g:ledger_target_string')
|
||||
let g:ledger_target_string = 'Difference from target: '
|
||||
endif
|
||||
" }}}
|
||||
|
||||
" Settings for the quickfix window {{{
|
||||
if !exists('g:ledger_qf_register_format')
|
||||
let g:ledger_qf_register_format =
|
||||
\ '%(date) %(justify(payee, 50)) '.
|
||||
\ '%(justify(account, 30)) %(justify(amount, 15, -1, true)) '.
|
||||
\ '%(justify(total, 15, -1, true))\n'
|
||||
endif
|
||||
|
||||
if !exists('g:ledger_qf_reconcile_format')
|
||||
let g:ledger_qf_reconcile_format =
|
||||
\ '%(date) %(justify(code, 4)) '.
|
||||
\ '%(justify(payee, 50)) %(justify(account, 30)) '.
|
||||
\ '%(justify(amount, 15, -1, true))\n'
|
||||
endif
|
||||
|
||||
if !exists('g:ledger_qf_size')
|
||||
let g:ledger_qf_size = 10 " Size of the quickfix window
|
||||
endif
|
||||
|
||||
if !exists('g:ledger_qf_vertical')
|
||||
let g:ledger_qf_vertical = 0
|
||||
endif
|
||||
|
||||
if !exists('g:ledger_qf_hide_file')
|
||||
let g:ledger_qf_hide_file = 1
|
||||
endif
|
||||
" }}}
|
||||
|
||||
if !exists('current_compiler')
|
||||
compiler ledger
|
||||
endif
|
||||
|
||||
" Highlight groups for Ledger reports {{{
|
||||
hi link LedgerNumber Number
|
||||
hi link LedgerNegativeNumber Special
|
||||
hi link LedgerCleared Constant
|
||||
hi link LedgerPending Todo
|
||||
hi link LedgerTarget Statement
|
||||
hi link LedgerImproperPerc Special
|
||||
" }}}
|
||||
|
||||
let s:rx_amount = '\('.
|
||||
\ '\%([0-9]\+\)'.
|
||||
\ '\%([,.][0-9]\+\)*'.
|
||||
\ '\|'.
|
||||
\ '[,.][0-9]\+'.
|
||||
\ '\)'.
|
||||
\ '\s*\%([[:alpha:]¢$€£]\+\s*\)\?'.
|
||||
\ '\%(\s*;.*\)\?$'
|
||||
|
||||
function! LedgerFoldText() "{{{1
|
||||
" find amount
|
||||
let amount = ''
|
||||
let lnum = v:foldstart + 1
|
||||
while lnum <= v:foldend
|
||||
let line = getline(lnum)
|
||||
|
||||
" Skip metadata/leading comment
|
||||
if line !~# '^\%(\s\+;\|\d\)'
|
||||
" No comment, look for amount...
|
||||
let groups = matchlist(line, s:rx_amount)
|
||||
if ! empty(groups)
|
||||
let amount = groups[1]
|
||||
break
|
||||
endif
|
||||
endif
|
||||
let lnum += 1
|
||||
endwhile
|
||||
|
||||
" strip whitespace at beginning and end of line
|
||||
let foldtext = substitute(getline(v:foldstart),
|
||||
\ '\(^\s\+\|\s\+$\)', '', 'g')
|
||||
|
||||
" number of columns foldtext can use
|
||||
let columns = s:get_columns()
|
||||
if g:ledger_maxwidth
|
||||
let columns = min([columns, g:ledger_maxwidth])
|
||||
endif
|
||||
|
||||
let amount = printf(' %s ', amount)
|
||||
" left cut-off if window is too narrow to display the amount
|
||||
while columns < strdisplaywidth(amount)
|
||||
let amount = substitute(amount, '^.', '', '')
|
||||
endwhile
|
||||
let columns -= strdisplaywidth(amount)
|
||||
|
||||
if columns <= 0
|
||||
return amount
|
||||
endif
|
||||
|
||||
" right cut-off if there is not sufficient space to display the description
|
||||
while columns < strdisplaywidth(foldtext)
|
||||
let foldtext = substitute(foldtext, '.$', '', '')
|
||||
endwhile
|
||||
let columns -= strdisplaywidth(foldtext)
|
||||
|
||||
if columns <= 0
|
||||
return foldtext . amount
|
||||
endif
|
||||
|
||||
" fill in the fillstring
|
||||
if strlen(g:ledger_fillstring)
|
||||
let fillstring = g:ledger_fillstring
|
||||
else
|
||||
let fillstring = ' '
|
||||
endif
|
||||
let fillstrlen = strdisplaywidth(fillstring)
|
||||
|
||||
let foldtext .= ' '
|
||||
let columns -= 1
|
||||
while columns >= fillstrlen
|
||||
let foldtext .= fillstring
|
||||
let columns -= fillstrlen
|
||||
endwhile
|
||||
|
||||
while columns < strdisplaywidth(fillstring)
|
||||
let fillstring = substitute(fillstring, '.$', '', '')
|
||||
endwhile
|
||||
let foldtext .= fillstring
|
||||
|
||||
return foldtext . amount
|
||||
endfunction "}}}
|
||||
|
||||
function! LedgerComplete(findstart, base) "{{{1
|
||||
if a:findstart
|
||||
let lnum = line('.')
|
||||
let line = getline('.')
|
||||
let b:compl_context = ''
|
||||
if line =~# '^\s\+[^[:blank:];]' "{{{2 (account)
|
||||
" only allow completion when in or at end of account name
|
||||
if matchend(line, '^\s\+\%(\S \S\|\S\)\+') >= col('.') - 1
|
||||
" the start of the first non-blank character
|
||||
" (excluding virtual-transaction and 'cleared' marks)
|
||||
" is the beginning of the account name
|
||||
let b:compl_context = 'account'
|
||||
return matchend(line, '^\s\+[*!]\?\s*[\[(]\?')
|
||||
endif
|
||||
elseif line =~# '^\d' "{{{2 (description)
|
||||
let pre = matchend(line, '^\d\S\+\%(([^)]*)\|[*?!]\|\s\)\+')
|
||||
if pre < col('.') - 1
|
||||
let b:compl_context = 'description'
|
||||
return pre
|
||||
endif
|
||||
elseif line =~# '^$' "{{{2 (new line)
|
||||
let b:compl_context = 'new'
|
||||
endif "}}}
|
||||
return -1
|
||||
else
|
||||
if ! exists('b:compl_cache')
|
||||
let b:compl_cache = s:collect_completion_data()
|
||||
let b:compl_cache['#'] = changenr()
|
||||
endif
|
||||
let update_cache = 0
|
||||
|
||||
let results = []
|
||||
if b:compl_context ==# 'account' "{{{2 (account)
|
||||
let hierarchy = split(a:base, ':')
|
||||
if a:base =~# ':$'
|
||||
call add(hierarchy, '')
|
||||
endif
|
||||
|
||||
let results = ledger#find_in_tree(b:compl_cache.accounts, hierarchy)
|
||||
let exacts = filter(copy(results), 'v:val[1]')
|
||||
|
||||
if len(exacts) < 1
|
||||
" update cache if we have no exact matches
|
||||
let update_cache = 1
|
||||
endif
|
||||
|
||||
if g:ledger_exact_only
|
||||
let results = exacts
|
||||
endif
|
||||
|
||||
call map(results, 'v:val[0]')
|
||||
|
||||
if g:ledger_detailed_first
|
||||
let results = reverse(sort(results, 's:sort_accounts_by_depth'))
|
||||
else
|
||||
let results = sort(results)
|
||||
endif
|
||||
elseif b:compl_context ==# 'description' "{{{2 (description)
|
||||
let results = ledger#filter_items(b:compl_cache.descriptions, a:base)
|
||||
|
||||
if len(results) < 1
|
||||
let update_cache = 1
|
||||
endif
|
||||
elseif b:compl_context ==# 'new' "{{{2 (new line)
|
||||
return [strftime(g:ledger_date_format)]
|
||||
endif "}}}
|
||||
|
||||
|
||||
if g:ledger_include_original
|
||||
call insert(results, a:base)
|
||||
endif
|
||||
|
||||
" no completion (apart from a:base) found. update cache if file has changed
|
||||
if update_cache && b:compl_cache['#'] != changenr()
|
||||
unlet b:compl_cache
|
||||
return LedgerComplete(a:findstart, a:base)
|
||||
else
|
||||
unlet! b:compl_context
|
||||
return results
|
||||
endif
|
||||
endif
|
||||
endf "}}}
|
||||
|
||||
" Deprecated functions {{{1
|
||||
let s:deprecated = {
|
||||
\ 'LedgerToggleTransactionState': 'ledger#transaction_state_toggle',
|
||||
\ 'LedgerSetTransactionState': 'ledger#transaction_state_set',
|
||||
\ 'LedgerSetDate': 'ledger#transaction_date_set'
|
||||
\ }
|
||||
|
||||
for [s:old, s:new] in items(s:deprecated)
|
||||
let s:fun = "function! {s:old}(...)\nechohl WarningMsg\necho '" . s:old .
|
||||
\ ' is deprecated. Use '.s:new." instead!'\nechohl None\n" .
|
||||
\ "call call('" . s:new . "', a:000)\nendf"
|
||||
exe s:fun
|
||||
endfor
|
||||
unlet s:old s:new s:fun
|
||||
" }}}1
|
||||
|
||||
function! s:collect_completion_data() "{{{1
|
||||
let transactions = ledger#transactions()
|
||||
let cache = {'descriptions': [], 'tags': {}, 'accounts': {}}
|
||||
if exists('g:ledger_accounts_cmd')
|
||||
let accounts = systemlist(g:ledger_accounts_cmd)
|
||||
else
|
||||
let accounts = ledger#declared_accounts()
|
||||
endif
|
||||
if exists('g:ledger_descriptions_cmd')
|
||||
let cache.descriptions = systemlist(g:ledger_descriptions_cmd)
|
||||
endif
|
||||
for xact in transactions
|
||||
if !exists('g:ledger_descriptions_cmd')
|
||||
" collect descriptions
|
||||
if has_key(xact, 'description') && index(cache.descriptions, xact['description']) < 0
|
||||
call add(cache.descriptions, xact['description'])
|
||||
endif
|
||||
endif
|
||||
let [t, postings] = xact.parse_body()
|
||||
let tagdicts = [t]
|
||||
|
||||
" collect account names
|
||||
if !exists('g:ledger_accounts_cmd')
|
||||
for posting in postings
|
||||
if has_key(posting, 'tags')
|
||||
call add(tagdicts, posting.tags)
|
||||
endif
|
||||
" remove virtual-transaction-marks
|
||||
let name = substitute(posting.account, '\%(^\s*[\[(]\?\|[\])]\?\s*$\)', '', 'g')
|
||||
if index(accounts, name) < 0
|
||||
call add(accounts, name)
|
||||
endif
|
||||
endfor
|
||||
endif
|
||||
|
||||
" collect tags
|
||||
for tags in tagdicts | for [tag, val] in items(tags)
|
||||
let values = get(cache.tags, tag, [])
|
||||
if index(values, val) < 0
|
||||
call add(values, val)
|
||||
endif
|
||||
let cache.tags[tag] = values
|
||||
endfor | endfor
|
||||
endfor
|
||||
|
||||
for account in accounts
|
||||
let last = cache.accounts
|
||||
for part in split(account, ':')
|
||||
let last[part] = get(last, part, {})
|
||||
let last = last[part]
|
||||
endfor
|
||||
endfor
|
||||
|
||||
return cache
|
||||
endf "}}}
|
||||
|
||||
" Helper functions {{{1
|
||||
|
||||
" return length of string with fix for multibyte characters
|
||||
function! s:multibyte_strlen(text) "{{{2
|
||||
return strlen(substitute(a:text, '.', 'x', 'g'))
|
||||
endfunction "}}}
|
||||
|
||||
" get # of visible/usable columns in current window
|
||||
function! s:get_columns() " {{{2
|
||||
" As long as vim doesn't provide a command natively,
|
||||
" we have to compute the available columns.
|
||||
" see :help todo.txt -> /Add argument to winwidth()/
|
||||
|
||||
let columns = (winwidth(0) == 0 ? 80 : winwidth(0)) - &foldcolumn
|
||||
if &number
|
||||
" line('w$') is the line number of the last line
|
||||
let columns -= max([len(line('w$'))+1, &numberwidth])
|
||||
endif
|
||||
|
||||
" are there any signs/is the sign column displayed?
|
||||
redir => signs
|
||||
silent execute 'sign place buffer='.string(bufnr('%'))
|
||||
redir END
|
||||
if signs =~# 'id='
|
||||
let columns -= 2
|
||||
endif
|
||||
|
||||
return columns
|
||||
endf "}}}
|
||||
|
||||
function! s:sort_accounts_by_depth(name1, name2) "{{{2
|
||||
let depth1 = s:count_expression(a:name1, ':')
|
||||
let depth2 = s:count_expression(a:name2, ':')
|
||||
return depth1 == depth2 ? 0 : depth1 > depth2 ? 1 : -1
|
||||
endf "}}}
|
||||
|
||||
function! s:count_expression(text, expression) "{{{2
|
||||
return len(split(a:text, a:expression, 1))-1
|
||||
endf "}}}
|
||||
|
||||
function! s:autocomplete_account_or_payee(argLead, cmdLine, cursorPos) "{{{2
|
||||
return (a:argLead =~# '^@') ?
|
||||
\ map(filter(systemlist(g:ledger_bin . ' -f ' . shellescape(expand(g:ledger_main)) . ' payees'),
|
||||
\ "v:val =~? '" . strpart(a:argLead, 1) . "' && v:val !~? '^Warning: '"), '"@" . escape(v:val, " ")')
|
||||
\ :
|
||||
\ map(filter(systemlist(g:ledger_bin . ' -f ' . shellescape(expand(g:ledger_main)) . ' accounts'),
|
||||
\ "v:val =~? '" . a:argLead . "' && v:val !~? '^Warning: '"), 'escape(v:val, " ")')
|
||||
endf "}}}
|
||||
|
||||
function! s:reconcile(file, account) "{{{2
|
||||
" call inputsave()
|
||||
let l:amount = input('Target amount' . (empty(g:ledger_default_commodity) ? ': ' : ' (' . g:ledger_default_commodity . '): '))
|
||||
" call inputrestore()
|
||||
call ledger#reconcile(a:file, a:account, str2float(l:amount))
|
||||
endf "}}}
|
||||
|
||||
" Commands {{{1
|
||||
command! -buffer -nargs=? -complete=customlist,s:autocomplete_account_or_payee
|
||||
\ Balance call ledger#show_balance(g:ledger_main, <q-args>)
|
||||
|
||||
command! -buffer -nargs=+ -complete=customlist,s:autocomplete_account_or_payee
|
||||
\ Ledger call ledger#output(ledger#report(g:ledger_main, <q-args>))
|
||||
|
||||
command! -buffer -range LedgerAlign <line1>,<line2>call ledger#align_commodity()
|
||||
|
||||
command! -buffer LedgerAlignBuffer call ledger#align_commodity_buffer()
|
||||
|
||||
command! -buffer -nargs=1 -complete=customlist,s:autocomplete_account_or_payee
|
||||
\ Reconcile call <sid>reconcile(g:ledger_main, <q-args>)
|
||||
|
||||
command! -buffer -complete=customlist,s:autocomplete_account_or_payee -nargs=*
|
||||
\ Register call ledger#register(g:ledger_main, <q-args>)
|
||||
" }}}
|
||||
|
||||
@@ -1,24 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'less', 'ftplugin/less.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" Vim filetype plugin
|
||||
" Language: less
|
||||
" Maintainer: Alessandro Vioni <jenoma@gmail.com>
|
||||
" URL: https://github.com/genoma/vim-less
|
||||
" Last Change: 2014 November 24
|
||||
|
||||
" 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 cms< def< inc< inex< ofu< sua<"
|
||||
|
||||
setlocal formatoptions-=t formatoptions+=croql
|
||||
|
||||
setlocal comments=:// commentstring=//\ %s
|
||||
|
||||
setlocal omnifunc=csscomplete#CompleteCSS
|
||||
setlocal suffixesadd=.less
|
||||
@@ -1,23 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'lftp', 'ftplugin/lftp.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" Vim filetype plugin file
|
||||
" Language: lftp(1) configuration file
|
||||
" Previous 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
|
||||
@@ -1,23 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'libao', 'ftplugin/libao.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" Vim filetype plugin file
|
||||
" Language: libao.conf(5) configuration file
|
||||
" Previous 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
|
||||
@@ -7,8 +7,7 @@ endif
|
||||
" Maintainer: Heikki Junes <hjunes@cc.hut.fi>
|
||||
" License: This file is part of LilyPond, the GNU music typesetter.
|
||||
"
|
||||
" Copyright (C) 1998, 2002, 2004, 2010, 2016
|
||||
" Han-Wen Nienhuys <hanwen@xs4all.nl>
|
||||
" Copyright (C) 1998--2022 Han-Wen Nienhuys <hanwen@xs4all.nl>
|
||||
"
|
||||
" LilyPond is free software: you can redistribute it and/or modify
|
||||
" it under the terms of the GNU General Public License as published by
|
||||
@@ -36,6 +35,9 @@ endif
|
||||
" Don't load another plugin for this buffer
|
||||
let b:did_ftplugin = 1
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
setlocal autoindent
|
||||
setlocal shiftwidth=2
|
||||
"
|
||||
@@ -77,3 +79,17 @@ setlocal dictionary-=$VIM/syntax/lilypond-words dictionary+=$VIM/syntax/lilypond
|
||||
setlocal complete-=k complete+=k
|
||||
"
|
||||
setlocal showmatch
|
||||
|
||||
let b:undo_ftplugin = "setlocal autoindent< cpoptions< complete< dictionary< showmatch< shiftwidth< wildcharm< wildmenu<" .
|
||||
\ " | silent! execute 'unmap <buffer> <F4>'" .
|
||||
\ " | silent! execute 'unmap <buffer> <F5>'" .
|
||||
\ " | silent! execute 'unmap <buffer> <F6>'" .
|
||||
\ " | silent! execute 'unmap <buffer> <F7>'" .
|
||||
\ " | silent! execute 'unmap <buffer> <F8>'" .
|
||||
\ " | silent! execute 'unmap <buffer> <F9>'" .
|
||||
\ " | silent! execute 'unmap <buffer> <F10>'" .
|
||||
\ " | silent! execute 'unmap <buffer> <F12>'" .
|
||||
\ " | silent! execute 'unmap <buffer> <S-F12>'"
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
|
||||
@@ -1,23 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'limits', 'ftplugin/limits.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" Vim filetype plugin file
|
||||
" Language: limits(5) configuration file
|
||||
" Previous 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
|
||||
@@ -1,65 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'liquid', 'ftplugin/liquid.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" Vim filetype plugin
|
||||
" Language: Liquid
|
||||
" Maintainer: Tim Pope <vimNOSPAM@tpope.org>
|
||||
" Last Change: 2010 May 21
|
||||
|
||||
if exists('b:did_ftplugin')
|
||||
finish
|
||||
endif
|
||||
|
||||
if !exists('g:liquid_default_subtype')
|
||||
let g:liquid_default_subtype = 'html'
|
||||
endif
|
||||
|
||||
if !exists('b:liquid_subtype')
|
||||
let s:lines = getline(1)."\n".getline(2)."\n".getline(3)."\n".getline(4)."\n".getline(5)."\n".getline("$")
|
||||
let b:liquid_subtype = matchstr(s:lines,'liquid_subtype=\zs\w\+')
|
||||
if b:liquid_subtype == ''
|
||||
let b:liquid_subtype = matchstr(&filetype,'^liquid\.\zs\w\+')
|
||||
endif
|
||||
if b:liquid_subtype == ''
|
||||
let b:liquid_subtype = matchstr(substitute(expand('%:t'),'\c\%(\.liquid\)\+$','',''),'\.\zs\w\+$')
|
||||
endif
|
||||
if b:liquid_subtype == ''
|
||||
let b:liquid_subtype = g:liquid_default_subtype
|
||||
endif
|
||||
endif
|
||||
|
||||
if exists('b:liquid_subtype') && b:liquid_subtype != ''
|
||||
exe 'runtime! ftplugin/'.b:liquid_subtype.'.vim ftplugin/'.b:liquid_subtype.'_*.vim ftplugin/'.b:liquid_subtype.'/*.vim'
|
||||
else
|
||||
runtime! ftplugin/html.vim ftplugin/html_*.vim ftplugin/html/*.vim
|
||||
endif
|
||||
let b:did_ftplugin = 1
|
||||
|
||||
if exists('b:undo_ftplugin')
|
||||
let b:undo_ftplugin .= '|'
|
||||
else
|
||||
let b:undo_ftplugin = ''
|
||||
endif
|
||||
if exists('b:browsefilter')
|
||||
let b:browsefilter = "\n".b:browsefilter
|
||||
else
|
||||
let b:browsefilter = ''
|
||||
endif
|
||||
if exists('b:match_words')
|
||||
let b:match_words .= ','
|
||||
elseif exists('loaded_matchit')
|
||||
let b:match_words = ''
|
||||
endif
|
||||
|
||||
if has('gui_win32')
|
||||
let b:browsefilter="Liquid Files (*.liquid)\t*.liquid" . b:browsefilter
|
||||
endif
|
||||
|
||||
if exists('loaded_matchit')
|
||||
let b:match_words .= '\<\%(if\w*\|unless\|case\)\>:\<\%(elsif\|else\|when\)\>:\<end\%(if\w*\|unless\|case\)\>,\<\%(for\|tablerow\)\>:\%({%\s*\)\@<=empty\>:\<end\%(for\|tablerow\)\>,<\(capture\|comment\|highlight\)\>:\<end\1\>'
|
||||
endif
|
||||
|
||||
setlocal commentstring={%\ comment\ %}%s{%\ endcomment\ %}
|
||||
|
||||
let b:undo_ftplugin .= 'setl cms< | unlet! b:browsefilter b:match_words'
|
||||
@@ -1,28 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'lisp', 'ftplugin/lisp.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" Vim filetype plugin
|
||||
" Language: Lisp
|
||||
" Maintainer: Sergey Khorev <sergey.khorev@gmail.com>
|
||||
" URL: http://sites.google.com/site/khorser/opensource/vim
|
||||
" Original author: Dorai Sitaram <ds26@gte.com>
|
||||
" Original URL: http://www.ccs.neu.edu/~dorai/vimplugins/vimplugins.html
|
||||
" Last Change: Mar 10, 2021
|
||||
|
||||
" 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=:;;;;,:;;;,:;;,:;,sr:#\|,mb:\|,ex:\|#
|
||||
setl define=^\\s*(def\\k*
|
||||
setl formatoptions-=t
|
||||
setl iskeyword+=+,-,*,/,%,<,=,>,:,$,?,!,@-@,94
|
||||
setl lisp
|
||||
setl commentstring=;%s
|
||||
|
||||
let b:undo_ftplugin = "setlocal comments< define< formatoptions< iskeyword< lisp< commentstring<"
|
||||
@@ -1,21 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'logcheck', 'ftplugin/logcheck.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" Vim filetype plugin file
|
||||
" Language: Logcheck
|
||||
" Maintainer: Debian Vim Maintainers
|
||||
" Last Change: 2018 Dec 27
|
||||
" License: Vim License
|
||||
" URL: https://salsa.debian.org/vim-team/vim-debian/blob/master/ftplugin/logcheck.vim
|
||||
|
||||
if exists('b:did_ftplugin')
|
||||
finish
|
||||
endif
|
||||
let b:did_ftplugin = 1
|
||||
|
||||
let b:undo_ftplugin = 'setl fo<'
|
||||
|
||||
" Do not hard-wrap non-comment lines since each line is a self-contained
|
||||
" regular expression
|
||||
setlocal formatoptions-=t
|
||||
@@ -1,23 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'loginaccess', 'ftplugin/loginaccess.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" Vim filetype plugin file
|
||||
" Language: login.access(5) configuration file
|
||||
" Previous 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
|
||||
@@ -1,23 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'logindefs', 'ftplugin/logindefs.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" Vim filetype plugin file
|
||||
" Language: login.defs(5) configuration file
|
||||
" Previous 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
|
||||
@@ -1,23 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'logtalk', 'ftplugin/logtalk.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" Logtalk filetype plugin file
|
||||
" Language: Logtalk
|
||||
" Maintainer: Paulo Moura <pmoura@logtalk.org>
|
||||
" Latest Revision: 2018-08-03
|
||||
|
||||
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 fdn=10
|
||||
setlocal fdc=2
|
||||
setlocal autoindent
|
||||
setlocal dict=$VIMRUNTIME/ftplugin/logtalk.dict
|
||||
@@ -1,41 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'lprolog', 'ftplugin/lprolog.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" 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
|
||||
@@ -1,24 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'm4', 'ftplugin/m4.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" Vim filetype plugin file
|
||||
" Language: m4
|
||||
" Previous 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
|
||||
@@ -1,50 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'mail', 'ftplugin/mail.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" Vim filetype plugin file
|
||||
" Language: Mail
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2021 Oct 23
|
||||
|
||||
" 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< comments<"
|
||||
|
||||
" 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 n:> to 'comments, in case it was removed elsewhere
|
||||
setlocal comments+=n:>
|
||||
|
||||
" .eml files are universally formatted with DOS line-endings, per RFC5322.
|
||||
" If the file was not DOS the it will be marked as changed, which is probably
|
||||
" a good thing.
|
||||
if expand('%:e') ==? 'eml'
|
||||
let b:undo_ftplugin .= " fileformat=" .. &fileformat
|
||||
setlocal fileformat=dos
|
||||
endif
|
||||
|
||||
" 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
|
||||
@@ -1,22 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'mailaliases', 'ftplugin/mailaliases.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" Vim filetype plugin file
|
||||
" Previous 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
|
||||
@@ -1,23 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'mailcap', 'ftplugin/mailcap.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" Vim filetype plugin file
|
||||
" Language: Mailcap configuration file
|
||||
" Previous 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
|
||||
@@ -1,37 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'make', 'ftplugin/make.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" Vim filetype plugin file
|
||||
" Language: Make
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2020 Oct 16
|
||||
|
||||
" 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< sw< fo< com< cms< inc<"
|
||||
|
||||
" Make sure a hard tab is used, required for most make programs
|
||||
setlocal noexpandtab softtabstop=0 shiftwidth=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'
|
||||
|
||||
" For matchit.vim, suggested by Albert Netymk and Ken Takata.
|
||||
if exists("loaded_matchit")
|
||||
let b:match_words = '^ *ifn\=\(eq\|def\)\>:^ *else\(\s\+ifn\=\(eq\|def\)\)\=\>:^ *endif\>,\<define\>:\<endef\>,^!\s*if\(n\=def\)\=\>:^!\s*else\(if\(n\=def\)\=\)\=\>:^!\s*endif\>'
|
||||
endif
|
||||
@@ -1,23 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'manconf', 'ftplugin/manconf.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" Vim filetype plugin file
|
||||
" Language: man.conf(5) - man configuration file
|
||||
" Previous 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
|
||||
@@ -4,7 +4,7 @@ endif
|
||||
|
||||
"TODO print messages when on visual mode. I only see VISUAL, not the messages.
|
||||
|
||||
" Function interface phylosophy:
|
||||
" Function interface philosophy:
|
||||
"
|
||||
" - functions take arbitrary line numbers as parameters.
|
||||
" Current cursor line is only a suitable default parameter.
|
||||
@@ -60,7 +60,7 @@ let s:levelRegexpDict = {
|
||||
\ 6: '\v^######[^#]@='
|
||||
\ }
|
||||
|
||||
" Maches any header level of any type.
|
||||
" Matches any header level of any type.
|
||||
"
|
||||
" This could be deduced from `s:levelRegexpDict`, but it is more
|
||||
" efficient to have a single regexp for this.
|
||||
@@ -498,7 +498,9 @@ endfunction
|
||||
function! s:SetexToAtx(line1, line2)
|
||||
let l:originalNumLines = line('$')
|
||||
execute 'silent! ' . a:line1 . ',' . a:line2 . 'substitute/\v(.*\S.*)\n\=+$/# \1/'
|
||||
execute 'silent! ' . a:line1 . ',' . a:line2 . 'substitute/\v(.*\S.*)\n-+$/## \1/'
|
||||
|
||||
let l:changed = l:originalNumLines - line('$')
|
||||
execute 'silent! ' . a:line1 . ',' . (a:line2 - l:changed) . 'substitute/\v(.*\S.*)\n-+$/## \1'
|
||||
return l:originalNumLines - line('$')
|
||||
endfunction
|
||||
|
||||
@@ -550,7 +552,7 @@ function! s:TableFormat()
|
||||
let l:flags = (&gdefault ? '' : 'g')
|
||||
execute 's/\(:\@<!-:\@!\|[^|:-]\)//e' . l:flags
|
||||
execute 's/--/-/e' . l:flags
|
||||
Tabularize /|
|
||||
Tabularize /\(\\\)\@<!|
|
||||
" Move colons for alignment to left or right side of the cell.
|
||||
execute 's/:\( \+\)|/\1:|/e' . l:flags
|
||||
execute 's/|\( \+\):/|:\1/e' . l:flags
|
||||
@@ -658,7 +660,12 @@ endfunction
|
||||
function! s:OpenUrlUnderCursor()
|
||||
let l:url = s:Markdown_GetUrlForPosition(line('.'), col('.'))
|
||||
if l:url !=# ''
|
||||
call s:VersionAwareNetrwBrowseX(l:url)
|
||||
if l:url =~? 'http[s]\?:\/\/[[:alnum:]%\/_#.-]*'
|
||||
"Do nothing
|
||||
else
|
||||
let l:url = expand(expand('%:h').'/'.l:url)
|
||||
endif
|
||||
call s:VersionAwareNetrwBrowseX(l:url)
|
||||
else
|
||||
echomsg 'The cursor is not on a link.'
|
||||
endif
|
||||
@@ -858,19 +865,23 @@ function! s:SyntaxInclude(filetype)
|
||||
return grouplistname
|
||||
endfunction
|
||||
|
||||
function! s:IsHighlightSourcesEnabledForBuffer()
|
||||
" Enable for markdown buffers, and for liquid buffers with markdown format
|
||||
return &filetype =~# 'markdown' || get(b:, 'liquid_subtype', '') =~# 'markdown'
|
||||
endfunction
|
||||
|
||||
function! s:MarkdownRefreshSyntax(force)
|
||||
" Use != to compare &syntax's value to use the same logic run on
|
||||
" $VIMRUNTIME/syntax/synload.vim.
|
||||
"
|
||||
" vint: next-line -ProhibitEqualTildeOperator
|
||||
if &filetype =~# 'markdown' && line('$') > 1 && &syntax != 'OFF'
|
||||
if s:IsHighlightSourcesEnabledForBuffer() && line('$') > 1 && &syntax != 'OFF'
|
||||
call s:MarkdownHighlightSources(a:force)
|
||||
endif
|
||||
endfunction
|
||||
|
||||
function! s:MarkdownClearSyntaxVariables()
|
||||
if &filetype =~# 'markdown'
|
||||
if s:IsHighlightSourcesEnabledForBuffer()
|
||||
unlet! b:mkd_included_filetypes
|
||||
endif
|
||||
endfunction
|
||||
|
||||
@@ -1,74 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'mf', 'ftplugin/mf.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" Vim filetype plugin file
|
||||
" Language: METAFONT
|
||||
" Maintainer: Nicola Vitacolonna <nvitacolonna@gmail.com>
|
||||
" Former Maintainers: Nikolai Weibull <now@bitwi.se>
|
||||
" Latest Revision: 2016 Oct 2
|
||||
|
||||
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< sua< inc< def< ofu<"
|
||||
\ . "| unlet! b:match_ignorecase b:match_words b:match_skip"
|
||||
|
||||
setlocal comments=:% commentstring=%\ %s formatoptions-=t formatoptions+=cjroql2
|
||||
setlocal suffixesadd=.mf
|
||||
let &l:include = '\<input\>'
|
||||
let &l:define = '\<\%(let\|newinternal\|interim\|def\|vardef\)\>\|\<\%(primary\|secondary\|tertiary\)def\>\s*[^ .]\+'
|
||||
setlocal omnifunc=syntaxcomplete#Complete
|
||||
let g:omni_syntax_group_include_mf = 'mf\w\+'
|
||||
let g:omni_syntax_group_exclude_mf = 'mfTodoComment'
|
||||
|
||||
let s:mp_regex = {
|
||||
\ 'beginsection' : '^\s*\%(\%(\|var\|primary\|secondary\|tertiary\)def\|beginchar\|beginlogochar\)\>',
|
||||
\ 'endsection' : '^\s*\%(enddef\|endchar\)\>',
|
||||
\ 'beginblock' : '^\s*\%(begingroup\|if\|for\%(\|suffixes\|ever\)\)\>',
|
||||
\ 'endblock' : '^\s*\%(endgroup\|fi\|endfor\)\>'
|
||||
\ }
|
||||
|
||||
function! s:move_around(count, what, flags, visual)
|
||||
if a:visual
|
||||
exe "normal! gv"
|
||||
endif
|
||||
call search(s:mp_regex[a:what], a:flags.'s') " 's' sets previous context mark
|
||||
call map(range(2, a:count), 'search(s:mp_regex[a:what], a:flags)')
|
||||
endfunction
|
||||
|
||||
|
||||
" Move around macros.
|
||||
nnoremap <silent><buffer> [[ :<C-U>call <SID>move_around(v:count1, "beginsection", "bW", v:false) <CR>
|
||||
vnoremap <silent><buffer> [[ :<C-U>call <SID>move_around(v:count1, "beginsection", "bW", v:true) <CR>
|
||||
nnoremap <silent><buffer> ]] :<C-U>call <SID>move_around(v:count1, "beginsection", "W", v:false) <CR>
|
||||
vnoremap <silent><buffer> ]] :<C-U>call <SID>move_around(v:count1, "beginsection", "W", v:true) <CR>
|
||||
nnoremap <silent><buffer> [] :<C-U>call <SID>move_around(v:count1, "endsection", "bW", v:false) <CR>
|
||||
vnoremap <silent><buffer> [] :<C-U>call <SID>move_around(v:count1, "endsection", "bW", v:true) <CR>
|
||||
nnoremap <silent><buffer> ][ :<C-U>call <SID>move_around(v:count1, "endsection", "W", v:false) <CR>
|
||||
vnoremap <silent><buffer> ][ :<C-U>call <SID>move_around(v:count1, "endsection", "W", v:true) <CR>
|
||||
nnoremap <silent><buffer> [{ :<C-U>call <SID>move_around(v:count1, "beginblock", "bW", v:false) <CR>
|
||||
vnoremap <silent><buffer> [{ :<C-U>call <SID>move_around(v:count1, "beginblock", "bW", v:true) <CR>
|
||||
nnoremap <silent><buffer> ]} :<C-U>call <SID>move_around(v:count1, "endblock", "W", v:false) <CR>
|
||||
vnoremap <silent><buffer> ]} :<C-U>call <SID>move_around(v:count1, "endblock", "W", v:true) <CR>
|
||||
|
||||
if exists("loaded_matchit")
|
||||
let b:match_ignorecase = 0
|
||||
let b:match_words =
|
||||
\ '\<if\>:\<else\%[if]\>:\<fi\>,' .
|
||||
\ '\<for\%(\|suffixes\|ever\)\>:\<exit\%(if\|unless\)\>:\<endfor\>,' .
|
||||
\ '\<\%(\|var\|primary\|secondary\|tertiary\)def\>:\<enddef\>,' .
|
||||
\ '\<begingroup\>:\<endgroup\>,' .
|
||||
\ '\<begin\%(logo\)\?char\>:\<endchar\>'
|
||||
" Ignore comments and strings
|
||||
let b:match_skip = 'synIDattr(synID(line("."), col("."), 1), "name")
|
||||
\ =~# "mf\\(Comment\\|String\\)$"'
|
||||
endif
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
@@ -1,24 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'modconf', 'ftplugin/modconf.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" Vim filetype plugin file
|
||||
" Language: modules.conf(5) configuration file
|
||||
" Previous 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
|
||||
@@ -1,43 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'modula2', 'ftplugin/modula2.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" Vim filetype plugin file
|
||||
" Language: Modula-2
|
||||
" Maintainer: Doug Kearns <dougkearns@gmail.com>
|
||||
" Last Change: 2021 Apr 08
|
||||
|
||||
if exists("b:did_ftplugin")
|
||||
finish
|
||||
endif
|
||||
let b:did_ftplugin = 1
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
setlocal comments=s0:(*,mb:\ ,ex:*)
|
||||
setlocal commentstring=(*%s*)
|
||||
setlocal formatoptions-=t formatoptions+=croql
|
||||
|
||||
if exists("loaded_matchit") && !exists("b:match_words")
|
||||
" The second branch of the middle pattern is intended to match CASE labels
|
||||
let b:match_words = '\<REPEAT\>:\<UNTIL\>,' ..
|
||||
\ '\<\%(BEGIN\|CASE\|FOR\|IF\|LOOP\|WHILE\|WITH\)\>' ..
|
||||
\ ':' ..
|
||||
\ '\<\%(ELSIF\|ELSE\)\>\|\%(^\s*\)\@<=\w\+\%(\s*\,\s*\w\+\)\=\s*\:=\@!' ..
|
||||
\ ':' ..
|
||||
\ '\<END\>'
|
||||
endif
|
||||
|
||||
if (has("gui_win32") || has("gui_gtk")) && !exists("b:browsefilter")
|
||||
let b:browsefilter = "Modula-2 Source Files (*.def *.mod)\t*.def;*.mod\n" ..
|
||||
\ "All Files (*.*)\t*.*\n"
|
||||
endif
|
||||
|
||||
let b:undo_ftplugin = "setl com< cms< fo< " ..
|
||||
\ "| unlet! b:browsefilter b:match_words"
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
|
||||
" vim: nowrap sw=2 sts=2 ts=8 noet:
|
||||
@@ -1,42 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'modula3', 'ftplugin/modula3.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" Vim filetype plugin file
|
||||
" Language: Modula-3
|
||||
" Maintainer: Doug Kearns <dougkearns@gmail.com>
|
||||
" Last Change: 2021 Apr 08
|
||||
|
||||
if exists("b:did_ftplugin")
|
||||
finish
|
||||
endif
|
||||
let b:did_ftplugin = 1
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
setlocal comments=s0:(*,mb:\ ,ex:*)
|
||||
setlocal commentstring=(*%s*)
|
||||
setlocal formatoptions-=t formatoptions+=croql
|
||||
|
||||
if exists("loaded_matchit") && !exists("b:match_words")
|
||||
let b:match_words = '\<REPEAT\>:\<UNTIL\>,' ..
|
||||
\ '\<\%(BEGIN\|CASE\|FOR\|IF\|LOCK\|LOOP\|TRY\|TYPECASE\|WHILE\|WITH\)\>' ..
|
||||
\ ':' ..
|
||||
\ '\<\%(ELSIF\|ELSE\|EXCEPT\|FINALLY\)\>\|\%(^\s*\)\@<=\S.*=>' ..
|
||||
\ ':' ..
|
||||
\ '\<END\>'
|
||||
endif
|
||||
|
||||
if (has("gui_win32") || has("gui_gtk")) && !exists("b:browsefilter")
|
||||
let b:browsefilter = "Modula-3 Source Files (*.m3)\t*.m3\n" ..
|
||||
\ "All Files (*.*)\t*.*\n"
|
||||
endif
|
||||
|
||||
let b:undo_ftplugin = "setl com< cms< fo< " ..
|
||||
\ "| unlet! b:browsefilter b:match_words"
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
|
||||
" vim: nowrap sw=2 sts=2 ts=8 noet:
|
||||
@@ -1,86 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'mp', 'ftplugin/mp.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" Vim filetype plugin file
|
||||
" Language: MetaPost
|
||||
" Maintainer: Nicola Vitacolonna <nvitacolonna@gmail.com>
|
||||
" Former Maintainers: Nikolai Weibull <now@bitwi.se>
|
||||
" Latest Revision: 2016 Oct 2
|
||||
|
||||
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< sua< inc< def< ofu<"
|
||||
\ . "| unlet! b:match_ignorecase b:match_words b:match_skip"
|
||||
|
||||
setlocal comments=:% commentstring=%\ %s formatoptions-=t formatoptions+=cjroql2
|
||||
setlocal suffixesadd=.mp,.mpiv
|
||||
let &l:include = '\<\%(input\|loadmodule\)\>' " loadmodule is in MetaFun
|
||||
let &l:define = '\<\%(let\|newinternal\|interim\|def\|vardef\)\>\|\<\%(primary\|secondary\|tertiary\)def\>\s*[^ .]\+'
|
||||
setlocal omnifunc=syntaxcomplete#Complete
|
||||
let g:omni_syntax_group_include_mp = 'mf\w\+,mp\w\+'
|
||||
let g:omni_syntax_group_exclude_mp = 'mfTodoComment'
|
||||
|
||||
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 s:mp_regex = {
|
||||
\ 'beginsection' : '^\s*\%(\%(\|var\|primary\|secondary\|tertiary\)def\|begin\%(fig\|char\|logochar\|glyph\|graph\)\)\>',
|
||||
\ 'endsection' : '^\s*\%(enddef\|end\%(fig\|char\|glyph\|graph\)\)\>',
|
||||
\ 'beginblock' : '^\s*\%(begingroup\|if\|for\%(\|suffixes\|ever\)\)\>',
|
||||
\ 'endblock' : '^\s*\%(endgroup\|fi\|endfor\)\>'
|
||||
\ }
|
||||
|
||||
function! s:move_around(count, what, flags, visual)
|
||||
if a:visual
|
||||
exe "normal! gv"
|
||||
endif
|
||||
call search(s:mp_regex[a:what], a:flags.'s') " 's' sets previous context mark
|
||||
call map(range(2, a:count), 'search(s:mp_regex[a:what], a:flags)')
|
||||
endfunction
|
||||
|
||||
|
||||
" Move around macros.
|
||||
nnoremap <silent><buffer> [[ :<C-U>call <SID>move_around(v:count1, "beginsection", "bW", v:false) <CR>
|
||||
vnoremap <silent><buffer> [[ :<C-U>call <SID>move_around(v:count1, "beginsection", "bW", v:true) <CR>
|
||||
nnoremap <silent><buffer> ]] :<C-U>call <SID>move_around(v:count1, "beginsection", "W", v:false) <CR>
|
||||
vnoremap <silent><buffer> ]] :<C-U>call <SID>move_around(v:count1, "beginsection", "W", v:true) <CR>
|
||||
nnoremap <silent><buffer> [] :<C-U>call <SID>move_around(v:count1, "endsection", "bW", v:false) <CR>
|
||||
vnoremap <silent><buffer> [] :<C-U>call <SID>move_around(v:count1, "endsection", "bW", v:true) <CR>
|
||||
nnoremap <silent><buffer> ][ :<C-U>call <SID>move_around(v:count1, "endsection", "W", v:false) <CR>
|
||||
vnoremap <silent><buffer> ][ :<C-U>call <SID>move_around(v:count1, "endsection", "W", v:true) <CR>
|
||||
nnoremap <silent><buffer> [{ :<C-U>call <SID>move_around(v:count1, "beginblock", "bW", v:false) <CR>
|
||||
vnoremap <silent><buffer> [{ :<C-U>call <SID>move_around(v:count1, "beginblock", "bW", v:true) <CR>
|
||||
nnoremap <silent><buffer> ]} :<C-U>call <SID>move_around(v:count1, "endblock", "W", v:false) <CR>
|
||||
vnoremap <silent><buffer> ]} :<C-U>call <SID>move_around(v:count1, "endblock", "W", v:true) <CR>
|
||||
|
||||
if exists("loaded_matchit")
|
||||
let b:match_ignorecase = 0
|
||||
let b:match_words =
|
||||
\ '\<if\>:\<else\%[if]\>:\<fi\>,' .
|
||||
\ '\<for\%(\|suffixes\|ever\)\>:\<exit\%(if\|unless\)\>:\<endfor\>,' .
|
||||
\ '\<\%(\|var\|primary\|secondary\|tertiary\)def\>:\<enddef\>,' .
|
||||
\ '\<beginfig\>:\<endfig\>,' .
|
||||
\ '\<begingroup\>:\<endgroup\>,' .
|
||||
\ '\<begin\%(logo\)\?char\>:\<endchar\>,' .
|
||||
\ '\<beginglyph\>:\<endglyph\>,' .
|
||||
\ '\<begingraph\>:\<endgraph\>'
|
||||
" Ignore comments and strings
|
||||
let b:match_skip = 'synIDattr(synID(line("."), col("."), 1), "name")
|
||||
\ =~# "^mf\\%(Comment\\|String\\|\\)$\\|^mpTeXinsert$"'
|
||||
endif
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
@@ -1,24 +0,0 @@
|
||||
if polyglot#init#is_disabled(expand('<sfile>:p'), 'mplayerconf', 'ftplugin/mplayerconf.vim')
|
||||
finish
|
||||
endif
|
||||
|
||||
" Vim filetype plugin file
|
||||
" Language: mplayer(1) configuration file
|
||||
" Previous 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
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user