mirror of
https://github.com/neovim/neovim.git
synced 2024-12-23 20:55:18 -07:00
parent
60179b8a3b
commit
78223bc97f
@ -711,6 +711,12 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
< Vim will guess the value. In the GUI this should work correctly,
|
< Vim will guess the value. In the GUI this should work correctly,
|
||||||
in other cases Vim might not be able to guess the right value.
|
in other cases Vim might not be able to guess the right value.
|
||||||
|
|
||||||
|
When the t_BG option is set, Vim will use it to request the background
|
||||||
|
color from the terminal. If the returned RGB value is dark/light and
|
||||||
|
'background' is not dark/light, 'background' will be set and the
|
||||||
|
screen is redrawn. This may have side effects, make t_BG empty in
|
||||||
|
your .vimrc if you suspect this problem.
|
||||||
|
|
||||||
When starting the GUI, the default value for 'background' will be
|
When starting the GUI, the default value for 'background' will be
|
||||||
"light". When the value is not set in the gvimrc, and Vim detects
|
"light". When the value is not set in the gvimrc, and Vim detects
|
||||||
that the background is actually quite dark, 'background' is set to
|
that the background is actually quite dark, 'background' is set to
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
*pi_matchit.txt* Extended "%" matching
|
*pi_matchit.txt* Extended "%" matching
|
||||||
|
|
||||||
For Vim version 6.3. Last change: 2015 May 21
|
For Vim version 6.3. Last change: 2017 May 14
|
||||||
|
|
||||||
*matchit* *matchit.vim*
|
*matchit* *matchit.vim*
|
||||||
|
|
||||||
@ -211,7 +211,7 @@ Examples:
|
|||||||
In LaTeX, since "%" is used as the comment character, you can >
|
In LaTeX, since "%" is used as the comment character, you can >
|
||||||
:let b:match_skip = 'r:%'
|
:let b:match_skip = 'r:%'
|
||||||
< Unfortunately, this will skip anything after "\%", an escaped "%". To
|
< Unfortunately, this will skip anything after "\%", an escaped "%". To
|
||||||
allow for this, and also "\\%" (an excaped backslash followed by the
|
allow for this, and also "\\%" (an escaped backslash followed by the
|
||||||
comment character) you can >
|
comment character) you can >
|
||||||
:let b:match_skip = 'r:\(^\|[^\\]\)\(\\\\\)*%'
|
:let b:match_skip = 'r:\(^\|[^\\]\)\(\\\\\)*%'
|
||||||
<
|
<
|
||||||
@ -356,7 +356,8 @@ The back reference '\'.d refers to the same thing as '\'.b:match_table[d] in
|
|||||||
The various |:vmap|s defined in the script (%, |g%|, |[%|, |]%|, |a%|) may
|
The various |:vmap|s defined in the script (%, |g%|, |[%|, |]%|, |a%|) may
|
||||||
have undesired effects in Select mode |Select-mode-mapping|. At least, if you
|
have undesired effects in Select mode |Select-mode-mapping|. At least, if you
|
||||||
want to replace the selection with any character in "ag%[]" there will be a
|
want to replace the selection with any character in "ag%[]" there will be a
|
||||||
pause of |'updatetime'| first.
|
pause of |'updatetime'| first. E.g., "yV%" would normally work linewise, but
|
||||||
|
the plugin mapping makes it characterwise.
|
||||||
|
|
||||||
It would be nice if "\0" were recognized as the entire pattern. That is, it
|
It would be nice if "\0" were recognized as the entire pattern. That is, it
|
||||||
would be nice if "foo:\end\0" had the same effect as "\(foo\):\end\1".
|
would be nice if "foo:\end\0" had the same effect as "\(foo\):\end\1".
|
||||||
|
@ -686,7 +686,7 @@ that included files do this too, you might have to reset "b:current_syntax" if
|
|||||||
you include two files.
|
you include two files.
|
||||||
|
|
||||||
If you want your syntax file to work with Vim 5.x, add a check for v:version.
|
If you want your syntax file to work with Vim 5.x, add a check for v:version.
|
||||||
See yacc.vim for an example.
|
Find an syntax file in the Vim 7.2 distribution for an example.
|
||||||
|
|
||||||
Do not include anything that is a user preference. Don't set 'tabstop',
|
Do not include anything that is a user preference. Don't set 'tabstop',
|
||||||
'expandtab', etc. These belong in a filetype plugin.
|
'expandtab', etc. These belong in a filetype plugin.
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
" Vim support file to detect file types
|
" Vim support file to detect file types
|
||||||
"
|
"
|
||||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||||
" Last Change: 2017 Apr 20
|
" Last Change: 2017 May 27
|
||||||
|
|
||||||
" Listen very carefully, I will say this only once
|
" Listen very carefully, I will say this only once
|
||||||
if exists("did_load_filetypes")
|
if exists("did_load_filetypes")
|
||||||
@ -976,7 +976,7 @@ au BufNewFile,BufRead */etc/initng/*/*.i,*.ii setf initng
|
|||||||
|
|
||||||
" Innovation Data Processing
|
" Innovation Data Processing
|
||||||
au BufRead,BufNewFile upstream.dat\c,upstream.*.dat\c,*.upstream.dat\c setf upstreamdat
|
au BufRead,BufNewFile upstream.dat\c,upstream.*.dat\c,*.upstream.dat\c setf upstreamdat
|
||||||
au BufRead,BufNewFile upstream.log\c,upstream.*.log\c,*.upstream.log\c setf upstreamlog
|
au BufRead,BufNewFile fdrupstream.log,upstream.log\c,upstream.*.log\c,*.upstream.log\c,UPSTREAM-*.log\c setf upstreamlog
|
||||||
au BufRead,BufNewFile upstreaminstall.log\c,upstreaminstall.*.log\c,*.upstreaminstall.log\c setf upstreaminstalllog
|
au BufRead,BufNewFile upstreaminstall.log\c,upstreaminstall.*.log\c,*.upstreaminstall.log\c setf upstreaminstalllog
|
||||||
au BufRead,BufNewFile usserver.log\c,usserver.*.log\c,*.usserver.log\c setf usserverlog
|
au BufRead,BufNewFile usserver.log\c,usserver.*.log\c,*.usserver.log\c setf usserverlog
|
||||||
au BufRead,BufNewFile usw2kagt.log\c,usw2kagt.*.log\c,*.usw2kagt.log\c setf usw2kagtlog
|
au BufRead,BufNewFile usw2kagt.log\c,usw2kagt.*.log\c,*.usw2kagt.log\c setf usw2kagtlog
|
||||||
@ -1414,8 +1414,8 @@ if has("fname_case")
|
|||||||
else
|
else
|
||||||
au BufNewFile,BufRead *.pl call s:FTpl()
|
au BufNewFile,BufRead *.pl call s:FTpl()
|
||||||
endif
|
endif
|
||||||
au BufNewFile,BufRead *.plx,*.al setf perl
|
au BufNewFile,BufRead *.plx,*.al,*.psgi setf perl
|
||||||
au BufNewFile,BufRead *.p6,*.pm6,*.pl6 setf perl6
|
au BufNewFile,BufRead *.p6,*.pm6,*.pl6 setf perl6
|
||||||
|
|
||||||
func! s:FTpl()
|
func! s:FTpl()
|
||||||
if exists("g:filetype_pl")
|
if exists("g:filetype_pl")
|
||||||
@ -1802,6 +1802,9 @@ au BufNewFile,BufRead *.sa setf sather
|
|||||||
" Scala
|
" Scala
|
||||||
au BufNewFile,BufRead *.scala setf scala
|
au BufNewFile,BufRead *.scala setf scala
|
||||||
|
|
||||||
|
" SBT - Scala Build Tool
|
||||||
|
au BufNewFile,BufRead *.sbt setf sbt
|
||||||
|
|
||||||
" Scilab
|
" Scilab
|
||||||
au BufNewFile,BufRead *.sci,*.sce setf scilab
|
au BufNewFile,BufRead *.sci,*.sce setf scilab
|
||||||
|
|
||||||
|
15
runtime/ftplugin/sbt.vim
Normal file
15
runtime/ftplugin/sbt.vim
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
" Vim filetype plugin file
|
||||||
|
" Language: sbt
|
||||||
|
" Maintainer: Steven Dobay <stevendobay at protonmail.com>
|
||||||
|
" License: Same as Vim
|
||||||
|
" Last Change: 2017.04.30
|
||||||
|
" ----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
if exists('b:did_ftplugin') || &cp
|
||||||
|
finish
|
||||||
|
endif
|
||||||
|
|
||||||
|
let b:did_ftplugin = 1
|
||||||
|
|
||||||
|
runtime! ftplugin/scala.vim
|
||||||
|
|
@ -3,10 +3,12 @@
|
|||||||
" Maintainer: Christian Brabandt <cb@256bit.org>
|
" Maintainer: Christian Brabandt <cb@256bit.org>
|
||||||
" Previous Maintainer: Peter Aronoff <telemachus@arpinum.org>
|
" Previous Maintainer: Peter Aronoff <telemachus@arpinum.org>
|
||||||
" Original Author: Nikolai Weibull <now@bitwi.se>
|
" Original Author: Nikolai Weibull <now@bitwi.se>
|
||||||
" Latest Revision: 2016-06-27
|
" Latest Revision: 2017-05-02
|
||||||
" License: Vim (see :h license)
|
" License: Vim (see :h license)
|
||||||
" Repository: https://github.com/chrisbra/vim-sh-indent
|
" Repository: https://github.com/chrisbra/vim-sh-indent
|
||||||
" Changelog:
|
" Changelog:
|
||||||
|
" 20170502: - get rid of buffer-shiftwidth function
|
||||||
|
" 20160912: - preserve indentation of here-doc blocks
|
||||||
" 20160627: - detect heredocs correctly
|
" 20160627: - detect heredocs correctly
|
||||||
" 20160213: - detect function definition correctly
|
" 20160213: - detect function definition correctly
|
||||||
" 20160202: - use shiftwidth() function
|
" 20160202: - use shiftwidth() function
|
||||||
@ -33,15 +35,11 @@ endif
|
|||||||
let s:cpo_save = &cpo
|
let s:cpo_save = &cpo
|
||||||
set cpo&vim
|
set cpo&vim
|
||||||
|
|
||||||
function s:buffer_shiftwidth()
|
|
||||||
return shiftwidth()
|
|
||||||
endfunction
|
|
||||||
|
|
||||||
let s:sh_indent_defaults = {
|
let s:sh_indent_defaults = {
|
||||||
\ 'default': function('s:buffer_shiftwidth'),
|
\ 'default': function('shiftwidth'),
|
||||||
\ 'continuation-line': function('s:buffer_shiftwidth'),
|
\ 'continuation-line': function('shiftwidth'),
|
||||||
\ 'case-labels': function('s:buffer_shiftwidth'),
|
\ 'case-labels': function('shiftwidth'),
|
||||||
\ 'case-statements': function('s:buffer_shiftwidth'),
|
\ 'case-statements': function('shiftwidth'),
|
||||||
\ 'case-breaks': 0 }
|
\ 'case-breaks': 0 }
|
||||||
|
|
||||||
function! s:indent_value(option)
|
function! s:indent_value(option)
|
||||||
@ -110,6 +108,9 @@ function! GetShIndent()
|
|||||||
let ind -= s:indent_value('case-breaks')
|
let ind -= s:indent_value('case-breaks')
|
||||||
elseif s:is_here_doc(line)
|
elseif s:is_here_doc(line)
|
||||||
let ind = 0
|
let ind = 0
|
||||||
|
" statements, executed within a here document. Keep the current indent
|
||||||
|
elseif match(map(synstack(v:lnum, 1), 'synIDattr(v:val, "name")'), '\c\mheredoc') > -1
|
||||||
|
return indent(v:lnum)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
return ind
|
return ind
|
||||||
|
@ -1,8 +1,8 @@
|
|||||||
" Vim indent file
|
" Vim indent file
|
||||||
" Language: LaTeX
|
" Language: LaTeX
|
||||||
" Maintainer: YiChao Zhou <broken.zhou AT gmail.com>
|
" Maintainer: Yichao Zhou <broken.zhou AT gmail.com>
|
||||||
" Created: Sat, 16 Feb 2002 16:50:19 +0100
|
" Created: Sat, 16 Feb 2002 16:50:19 +0100
|
||||||
" Version: 0.9.2
|
" Version: 0.9.4
|
||||||
" Please email me if you found something I can do. Comments, bug report and
|
" Please email me if you found something I can do. Comments, bug report and
|
||||||
" feature request are welcome.
|
" feature request are welcome.
|
||||||
|
|
||||||
@ -15,49 +15,53 @@
|
|||||||
" 2005/06/15, Moshe Kaminsky <kaminsky AT math.huji.ac.il>
|
" 2005/06/15, Moshe Kaminsky <kaminsky AT math.huji.ac.il>
|
||||||
" (*) New variables:
|
" (*) New variables:
|
||||||
" g:tex_items, g:tex_itemize_env, g:tex_noindent_env
|
" g:tex_items, g:tex_itemize_env, g:tex_noindent_env
|
||||||
" 2011/3/6, by Zhou YiChao <broken.zhou AT gmail.com>
|
" 2011/3/6, by Yichao Zhou <broken.zhou AT gmail.com>
|
||||||
" (*) Don't change indentation of lines starting with '%'
|
" (*) Don't change indentation of lines starting with '%'
|
||||||
" I don't see any code with '%' and it doesn't work properly
|
" I don't see any code with '%' and it doesn't work properly
|
||||||
" so I add some code.
|
" so I add some code.
|
||||||
" (*) New features: Add smartindent-like indent for "{}" and "[]".
|
" (*) New features: Add smartindent-like indent for "{}" and "[]".
|
||||||
" (*) New variables: g:tex_indent_brace
|
" (*) New variables: g:tex_indent_brace
|
||||||
" 2011/9/25, by Zhou Yichao <broken.zhou AT gmail.com>
|
" 2011/9/25, by Yichao Zhou <broken.zhou AT gmail.com>
|
||||||
" (*) Bug fix: smartindent-like indent for "[]"
|
" (*) Bug fix: smartindent-like indent for "[]"
|
||||||
" (*) New features: Align with "&".
|
" (*) New features: Align with "&".
|
||||||
" (*) New variable: g:tex_indent_and.
|
" (*) New variable: g:tex_indent_and.
|
||||||
" 2011/10/23 by Zhou Yichao <broken.zhou AT gmail.com>
|
" 2011/10/23 by Yichao Zhou <broken.zhou AT gmail.com>
|
||||||
" (*) Bug fix: improve the smartindent-like indent for "{}" and
|
" (*) Bug fix: improve the smartindent-like indent for "{}" and
|
||||||
" "[]".
|
" "[]".
|
||||||
" 2012/02/27 by Zhou Yichao <broken.zhou AT gmail.com>
|
" 2012/02/27 by Yichao Zhou <broken.zhou AT gmail.com>
|
||||||
" (*) Bug fix: support default folding marker.
|
" (*) Bug fix: support default folding marker.
|
||||||
" (*) Indent with "&" is not very handy. Make it not enable by
|
" (*) Indent with "&" is not very handy. Make it not enable by
|
||||||
" default.
|
" default.
|
||||||
" 2012/03/06 by Zhou Yichao <broken.zhou AT gmail.com>
|
" 2012/03/06 by Yichao Zhou <broken.zhou AT gmail.com>
|
||||||
" (*) Modify "&" behavior and make it default again. Now "&"
|
" (*) Modify "&" behavior and make it default again. Now "&"
|
||||||
" won't align when there are more then one "&" in the previous
|
" won't align when there are more then one "&" in the previous
|
||||||
" line.
|
" line.
|
||||||
" (*) Add indent "\left(" and "\right)"
|
" (*) Add indent "\left(" and "\right)"
|
||||||
" (*) Trust user when in "verbatim" and "lstlisting"
|
" (*) Trust user when in "verbatim" and "lstlisting"
|
||||||
" 2012/03/11 by Zhou Yichao <broken.zhou AT gmail.com>
|
" 2012/03/11 by Yichao Zhou <broken.zhou AT gmail.com>
|
||||||
" (*) Modify "&" so that only indent when current line start with
|
" (*) Modify "&" so that only indent when current line start with
|
||||||
" "&".
|
" "&".
|
||||||
" 2012/03/12 by Zhou Yichao <broken.zhou AT gmail.com>
|
" 2012/03/12 by Yichao Zhou <broken.zhou AT gmail.com>
|
||||||
" (*) Modify indentkeys.
|
" (*) Modify indentkeys.
|
||||||
" 2012/03/18 by Zhou Yichao <broken.zhou AT gmail.com>
|
" 2012/03/18 by Yichao Zhou <broken.zhou AT gmail.com>
|
||||||
" (*) Add &cpo
|
" (*) Add &cpo
|
||||||
" 2013/05/02 by Zhou Yichao <broken.zhou AT gmail.com>
|
" 2013/05/02 by Yichao Zhou <broken.zhou AT gmail.com>
|
||||||
" (*) Fix problem about GetTeXIndent checker. Thank Albert Netymk
|
" (*) Fix problem about GetTeXIndent checker. Thank Albert Netymk
|
||||||
" for reporting this.
|
" for reporting this.
|
||||||
" 2014/06/23 by Zhou Yichao <broken.zhou AT gmail.com>
|
" 2014/06/23 by Yichao Zhou <broken.zhou AT gmail.com>
|
||||||
" (*) Remove the feature g:tex_indent_and because it is buggy.
|
" (*) Remove the feature g:tex_indent_and because it is buggy.
|
||||||
" (*) If there is not any obvious indentation hints, we do not
|
" (*) If there is not any obvious indentation hints, we do not
|
||||||
" alert our user's current indentation.
|
" alert our user's current indentation.
|
||||||
" (*) g:tex_indent_brace now only works if the open brace is the
|
" (*) g:tex_indent_brace now only works if the open brace is the
|
||||||
" last character of that line.
|
" last character of that line.
|
||||||
" 2014/08/03 by Zhou Yichao <broken.zhou AT gmail.com>
|
" 2014/08/03 by Yichao Zhou <broken.zhou AT gmail.com>
|
||||||
" (*) Indent current line if last line has larger indentation
|
" (*) Indent current line if last line has larger indentation
|
||||||
" 2014/08/09 by Zhou Yichao <broken.zhou AT gmail.com>
|
" 2016/11/08 by Yichao Zhou <broken.zhou AT gmail.com>
|
||||||
" (*) Add missing return value for s:GetEndIndentation(...)
|
" (*) Fix problems for \[ and \]. Thanks Bruno for reporting.
|
||||||
|
" 2017/04/30 by Yichao Zhou <broken.zhou AT gmail.com>
|
||||||
|
" (*) Fix a bug between g:tex_noindent_env and g:tex_indent_items
|
||||||
|
" Now g:tex_noindent_env='document\|verbatim\|itemize' (Emacs
|
||||||
|
" style) is supported. Thanks Miles Wheeler for reporting.
|
||||||
"
|
"
|
||||||
" }}}
|
" }}}
|
||||||
|
|
||||||
@ -81,44 +85,44 @@
|
|||||||
" % Example 2
|
" % Example 2
|
||||||
" \tikzexternalize[
|
" \tikzexternalize[
|
||||||
" prefix=tikz]
|
" prefix=tikz]
|
||||||
"
|
"
|
||||||
" * g:tex_indent_items
|
" * g:tex_indent_items
|
||||||
"
|
"
|
||||||
" If this variable is set, item-environments are indented like Emacs does
|
" If this variable is set, item-environments are indented like Emacs does
|
||||||
" it, i.e., continuation lines are indented with a shiftwidth.
|
" it, i.e., continuation lines are indented with a shiftwidth.
|
||||||
"
|
"
|
||||||
" NOTE: I've already set the variable below; delete the corresponding line
|
" NOTE: I've already set the variable below; delete the corresponding line
|
||||||
" if you don't like this behaviour.
|
" if you don't like this behaviour.
|
||||||
"
|
"
|
||||||
" Per default, it is unset.
|
" Per default, it is unset.
|
||||||
"
|
"
|
||||||
" set unset
|
" set unset
|
||||||
" ----------------------------------------------------------------
|
" ----------------------------------------------------------------
|
||||||
" \begin{itemize} \begin{itemize}
|
" \begin{itemize} \begin{itemize}
|
||||||
" \item blablabla \item blablabla
|
" \item blablabla \item blablabla
|
||||||
" bla bla bla bla bla bla
|
" bla bla bla bla bla bla
|
||||||
" \item blablabla \item blablabla
|
" \item blablabla \item blablabla
|
||||||
" bla bla bla bla bla bla
|
" bla bla bla bla bla bla
|
||||||
" \end{itemize} \end{itemize}
|
" \end{itemize} \end{itemize}
|
||||||
"
|
"
|
||||||
"
|
"
|
||||||
" * g:tex_items
|
" * g:tex_items
|
||||||
"
|
"
|
||||||
" A list of tokens to be considered as commands for the beginning of an item
|
" A list of tokens to be considered as commands for the beginning of an item
|
||||||
" command. The tokens should be separated with '\|'. The initial '\' should
|
" command. The tokens should be separated with '\|'. The initial '\' should
|
||||||
" be escaped. The default is '\\bibitem\|\\item'.
|
" be escaped. The default is '\\bibitem\|\\item'.
|
||||||
"
|
"
|
||||||
" * g:tex_itemize_env
|
" * g:tex_itemize_env
|
||||||
"
|
"
|
||||||
" A list of environment names, separated with '\|', where the items (item
|
" A list of environment names, separated with '\|', where the items (item
|
||||||
" commands matching g:tex_items) may appear. The default is
|
" commands matching g:tex_items) may appear. The default is
|
||||||
" 'itemize\|description\|enumerate\|thebibliography'.
|
" 'itemize\|description\|enumerate\|thebibliography'.
|
||||||
"
|
"
|
||||||
" * g:tex_noindent_env
|
" * g:tex_noindent_env
|
||||||
"
|
"
|
||||||
" A list of environment names. separated with '\|', where no indentation is
|
" A list of environment names. separated with '\|', where no indentation is
|
||||||
" required. The default is 'document\|verbatim'.
|
" required. The default is 'document\|verbatim'.
|
||||||
" }}}
|
" }}}
|
||||||
|
|
||||||
" Only define the function once
|
" Only define the function once
|
||||||
if exists("b:did_indent")
|
if exists("b:did_indent")
|
||||||
@ -146,7 +150,7 @@ if g:tex_indent_items
|
|||||||
let g:tex_itemize_env = 'itemize\|description\|enumerate\|thebibliography'
|
let g:tex_itemize_env = 'itemize\|description\|enumerate\|thebibliography'
|
||||||
endif
|
endif
|
||||||
if !exists('g:tex_items')
|
if !exists('g:tex_items')
|
||||||
let g:tex_items = '\\bibitem\|\\item'
|
let g:tex_items = '\\bibitem\|\\item'
|
||||||
endif
|
endif
|
||||||
else
|
else
|
||||||
let g:tex_items = ''
|
let g:tex_items = ''
|
||||||
@ -177,7 +181,7 @@ function! GetTeXIndent() " {{{
|
|||||||
|
|
||||||
" At the start of the file use zero indent.
|
" At the start of the file use zero indent.
|
||||||
if lnum == 0
|
if lnum == 0
|
||||||
return 0
|
return 0
|
||||||
endif
|
endif
|
||||||
|
|
||||||
let line = substitute(getline(lnum), '\s*%.*', '','g') " last line
|
let line = substitute(getline(lnum), '\s*%.*', '','g') " last line
|
||||||
@ -191,9 +195,9 @@ function! GetTeXIndent() " {{{
|
|||||||
return indent(v:lnum)
|
return indent(v:lnum)
|
||||||
end
|
end
|
||||||
endif
|
endif
|
||||||
|
|
||||||
if lnum == 0
|
if lnum == 0
|
||||||
return 0
|
return 0
|
||||||
endif
|
endif
|
||||||
|
|
||||||
let ind = indent(lnum)
|
let ind = indent(lnum)
|
||||||
@ -206,12 +210,14 @@ function! GetTeXIndent() " {{{
|
|||||||
|
|
||||||
" Add a 'shiftwidth' after beginning of environments.
|
" Add a 'shiftwidth' after beginning of environments.
|
||||||
" Don't add it for \begin{document} and \begin{verbatim}
|
" Don't add it for \begin{document} and \begin{verbatim}
|
||||||
""if line =~ '^\s*\\begin{\(.*\)}' && line !~ 'verbatim'
|
" if line =~ '^\s*\\begin{\(.*\)}' && line !~ 'verbatim'
|
||||||
" LH modification : \begin does not always start a line
|
" LH modification : \begin does not always start a line
|
||||||
" ZYC modification : \end after \begin won't cause wrong indent anymore
|
" ZYC modification : \end after \begin won't cause wrong indent anymore
|
||||||
if line =~ '\\begin{.*}' && line !~ g:tex_noindent_env
|
if line =~ '\\begin{.*}'
|
||||||
let ind = ind + &sw
|
if line !~ g:tex_noindent_env
|
||||||
let stay = 0
|
let ind = ind + &sw
|
||||||
|
let stay = 0
|
||||||
|
endif
|
||||||
|
|
||||||
if g:tex_indent_items
|
if g:tex_indent_items
|
||||||
" Add another sw for item-environments
|
" Add another sw for item-environments
|
||||||
@ -245,29 +251,27 @@ function! GetTeXIndent() " {{{
|
|||||||
endif
|
endif
|
||||||
|
|
||||||
if g:tex_indent_brace
|
if g:tex_indent_brace
|
||||||
let char = line[strlen(line)-1]
|
if line =~ '[[{]$'
|
||||||
if char == '[' || char == '{'
|
|
||||||
let ind += &sw
|
let ind += &sw
|
||||||
let stay = 0
|
let stay = 0
|
||||||
endif
|
endif
|
||||||
|
|
||||||
let cind = indent(v:lnum)
|
if cline =~ '^\s*\\\?[\]}]' && s:CheckPairedIsLastCharacter(v:lnum, indent(v:lnum))
|
||||||
let char = cline[cind]
|
|
||||||
if (char == ']' || char == '}') &&
|
|
||||||
\ s:CheckPairedIsLastCharacter(v:lnum, cind)
|
|
||||||
let ind -= &sw
|
let ind -= &sw
|
||||||
let stay = 0
|
let stay = 0
|
||||||
endif
|
endif
|
||||||
|
|
||||||
for i in range(indent(lnum)+1, strlen(line)-1)
|
if line !~ '^\s*\\\?[\]}]'
|
||||||
let char = line[i]
|
for i in range(indent(lnum)+1, strlen(line)-1)
|
||||||
if char == ']' || char == '}'
|
let char = line[i]
|
||||||
if s:CheckPairedIsLastCharacter(lnum, i)
|
if char == ']' || char == '}'
|
||||||
let ind -= &sw
|
if s:CheckPairedIsLastCharacter(lnum, i)
|
||||||
let stay = 0
|
let ind -= &sw
|
||||||
|
let stay = 0
|
||||||
|
endif
|
||||||
endif
|
endif
|
||||||
endif
|
endfor
|
||||||
endfor
|
endif
|
||||||
endif
|
endif
|
||||||
|
|
||||||
" Special treatment for 'item'
|
" Special treatment for 'item'
|
||||||
@ -309,12 +313,12 @@ function! s:GetLastBeginIndentation(lnum) " {{{
|
|||||||
let matchend -= 1
|
let matchend -= 1
|
||||||
endif
|
endif
|
||||||
if matchend == 0
|
if matchend == 0
|
||||||
if line =~ g:tex_itemize_env
|
|
||||||
return indent(lnum) + 2 * &sw
|
|
||||||
endif
|
|
||||||
if line =~ g:tex_noindent_env
|
if line =~ g:tex_noindent_env
|
||||||
return indent(lnum)
|
return indent(lnum)
|
||||||
endif
|
endif
|
||||||
|
if line =~ g:tex_itemize_env
|
||||||
|
return indent(lnum) + 2 * &sw
|
||||||
|
endif
|
||||||
return indent(lnum) + &sw
|
return indent(lnum) + &sw
|
||||||
endif
|
endif
|
||||||
endfor
|
endfor
|
||||||
@ -348,12 +352,15 @@ endfunction
|
|||||||
|
|
||||||
" Most of the code is from matchparen.vim
|
" Most of the code is from matchparen.vim
|
||||||
function! s:CheckPairedIsLastCharacter(lnum, col) "{{{
|
function! s:CheckPairedIsLastCharacter(lnum, col) "{{{
|
||||||
" Get the character under the cursor and check if it's in 'matchpairs'.
|
|
||||||
let c_lnum = a:lnum
|
let c_lnum = a:lnum
|
||||||
let c_col = a:col+1
|
let c_col = a:col+1
|
||||||
|
|
||||||
|
let line = getline(c_lnum)
|
||||||
|
if line[c_col-1] == '\'
|
||||||
|
let c_col = c_col + 1
|
||||||
|
endif
|
||||||
|
let c = line[c_col-1]
|
||||||
|
|
||||||
let c = getline(c_lnum)[c_col-1]
|
|
||||||
let plist = split(&matchpairs, '.\zs[:,]')
|
let plist = split(&matchpairs, '.\zs[:,]')
|
||||||
let i = index(plist, c)
|
let i = index(plist, c)
|
||||||
if i < 0
|
if i < 0
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
" Vim syntax file
|
" Vim syntax file
|
||||||
" Language: C
|
" Language: C
|
||||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||||
" Last Change: 2016 Nov 18
|
" Last Change: 2017 Apr 30
|
||||||
|
|
||||||
" Quit when a (custom) syntax file was already loaded
|
" Quit when a (custom) syntax file was already loaded
|
||||||
if exists("b:current_syntax")
|
if exists("b:current_syntax")
|
||||||
@ -311,44 +311,32 @@ if !exists("c_no_ansi") || exists("c_ansi_constants") || exists("c_gnu")
|
|||||||
syn keyword cConstant PTRDIFF_MIN PTRDIFF_MAX SIG_ATOMIC_MIN SIG_ATOMIC_MAX
|
syn keyword cConstant PTRDIFF_MIN PTRDIFF_MAX SIG_ATOMIC_MIN SIG_ATOMIC_MAX
|
||||||
syn keyword cConstant SIZE_MAX WCHAR_MIN WCHAR_MAX WINT_MIN WINT_MAX
|
syn keyword cConstant SIZE_MAX WCHAR_MIN WCHAR_MAX WINT_MIN WINT_MAX
|
||||||
endif
|
endif
|
||||||
syn keyword cConstant FLT_RADIX FLT_ROUNDS
|
syn keyword cConstant FLT_RADIX FLT_ROUNDS FLT_DIG FLT_MANT_DIG FLT_EPSILON DBL_DIG DBL_MANT_DIG DBL_EPSILON
|
||||||
syn keyword cConstant FLT_DIG FLT_MANT_DIG FLT_EPSILON
|
syn keyword cConstant LDBL_DIG LDBL_MANT_DIG LDBL_EPSILON FLT_MIN FLT_MAX FLT_MIN_EXP FLT_MAX_EXP FLT_MIN_10_EXP FLT_MAX_10_EXP
|
||||||
syn keyword cConstant DBL_DIG DBL_MANT_DIG DBL_EPSILON
|
syn keyword cConstant DBL_MIN DBL_MAX DBL_MIN_EXP DBL_MAX_EXP DBL_MIN_10_EXP DBL_MAX_10_EXP LDBL_MIN LDBL_MAX LDBL_MIN_EXP LDBL_MAX_EXP
|
||||||
syn keyword cConstant LDBL_DIG LDBL_MANT_DIG LDBL_EPSILON
|
syn keyword cConstant LDBL_MIN_10_EXP LDBL_MAX_10_EXP HUGE_VAL CLOCKS_PER_SEC NULL LC_ALL LC_COLLATE LC_CTYPE LC_MONETARY
|
||||||
syn keyword cConstant FLT_MIN FLT_MAX FLT_MIN_EXP FLT_MAX_EXP
|
syn keyword cConstant LC_NUMERIC LC_TIME SIG_DFL SIG_ERR SIG_IGN SIGABRT SIGFPE SIGILL SIGHUP SIGINT SIGSEGV SIGTERM
|
||||||
syn keyword cConstant FLT_MIN_10_EXP FLT_MAX_10_EXP
|
|
||||||
syn keyword cConstant DBL_MIN DBL_MAX DBL_MIN_EXP DBL_MAX_EXP
|
|
||||||
syn keyword cConstant DBL_MIN_10_EXP DBL_MAX_10_EXP
|
|
||||||
syn keyword cConstant LDBL_MIN LDBL_MAX LDBL_MIN_EXP LDBL_MAX_EXP
|
|
||||||
syn keyword cConstant LDBL_MIN_10_EXP LDBL_MAX_10_EXP
|
|
||||||
syn keyword cConstant HUGE_VAL CLOCKS_PER_SEC NULL
|
|
||||||
syn keyword cConstant LC_ALL LC_COLLATE LC_CTYPE LC_MONETARY
|
|
||||||
syn keyword cConstant LC_NUMERIC LC_TIME
|
|
||||||
syn keyword cConstant SIG_DFL SIG_ERR SIG_IGN
|
|
||||||
syn keyword cConstant SIGABRT SIGFPE SIGILL SIGHUP SIGINT SIGSEGV SIGTERM
|
|
||||||
" Add POSIX signals as well...
|
" Add POSIX signals as well...
|
||||||
syn keyword cConstant SIGABRT SIGALRM SIGCHLD SIGCONT SIGFPE SIGHUP
|
syn keyword cConstant SIGABRT SIGALRM SIGCHLD SIGCONT SIGFPE SIGHUP SIGILL SIGINT SIGKILL SIGPIPE SIGQUIT SIGSEGV
|
||||||
syn keyword cConstant SIGILL SIGINT SIGKILL SIGPIPE SIGQUIT SIGSEGV
|
syn keyword cConstant SIGSTOP SIGTERM SIGTRAP SIGTSTP SIGTTIN SIGTTOU SIGUSR1 SIGUSR2
|
||||||
syn keyword cConstant SIGSTOP SIGTERM SIGTRAP SIGTSTP SIGTTIN SIGTTOU
|
syn keyword cConstant _IOFBF _IOLBF _IONBF BUFSIZ EOF WEOF FOPEN_MAX FILENAME_MAX L_tmpnam
|
||||||
syn keyword cConstant SIGUSR1 SIGUSR2
|
syn keyword cConstant SEEK_CUR SEEK_END SEEK_SET TMP_MAX stderr stdin stdout EXIT_FAILURE EXIT_SUCCESS RAND_MAX
|
||||||
syn keyword cConstant _IOFBF _IOLBF _IONBF BUFSIZ EOF WEOF
|
|
||||||
syn keyword cConstant FOPEN_MAX FILENAME_MAX L_tmpnam
|
|
||||||
syn keyword cConstant SEEK_CUR SEEK_END SEEK_SET
|
|
||||||
syn keyword cConstant TMP_MAX stderr stdin stdout
|
|
||||||
syn keyword cConstant EXIT_FAILURE EXIT_SUCCESS RAND_MAX
|
|
||||||
" POSIX 2001
|
" POSIX 2001
|
||||||
syn keyword cConstant SIGBUS SIGPOLL SIGPROF SIGSYS SIGURG
|
syn keyword cConstant SIGBUS SIGPOLL SIGPROF SIGSYS SIGURG SIGVTALRM SIGXCPU SIGXFSZ
|
||||||
syn keyword cConstant SIGVTALRM SIGXCPU SIGXFSZ
|
|
||||||
" non-POSIX signals
|
" non-POSIX signals
|
||||||
syn keyword cConstant SIGWINCH SIGINFO
|
syn keyword cConstant SIGWINCH SIGINFO
|
||||||
" Add POSIX errors as well
|
" Add POSIX errors as well. List comes from:
|
||||||
syn keyword cConstant E2BIG EACCES EAGAIN EBADF EBADMSG EBUSY
|
" http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/errno.h.html
|
||||||
syn keyword cConstant ECANCELED ECHILD EDEADLK EDOM EEXIST EFAULT
|
syn keyword cConstant E2BIG EACCES EADDRINUSE EADDRNOTAVAIL EAFNOSUPPORT EAGAIN EALREADY EBADF
|
||||||
syn keyword cConstant EFBIG EILSEQ EINPROGRESS EINTR EINVAL EIO EISDIR
|
syn keyword cConstant EBADMSG EBUSY ECANCELED ECHILD ECONNABORTED ECONNREFUSED ECONNRESET EDEADLK
|
||||||
syn keyword cConstant EMFILE EMLINK EMSGSIZE ENAMETOOLONG ENFILE ENODEV
|
syn keyword cConstant EDESTADDRREQ EDOM EDQUOT EEXIST EFAULT EFBIG EHOSTUNREACH EIDRM EILSEQ
|
||||||
syn keyword cConstant ENOENT ENOEXEC ENOLCK ENOMEM ENOSPC ENOSYS
|
syn keyword cConstant EINPROGRESS EINTR EINVAL EIO EISCONN EISDIR ELOOP EMFILE EMLINK EMSGSIZE
|
||||||
syn keyword cConstant ENOTDIR ENOTEMPTY ENOTSUP ENOTTY ENXIO EPERM
|
syn keyword cConstant EMULTIHOP ENAMETOOLONG ENETDOWN ENETRESET ENETUNREACH ENFILE ENOBUFS ENODATA
|
||||||
syn keyword cConstant EPIPE ERANGE EROFS ESPIPE ESRCH ETIMEDOUT EXDEV
|
syn keyword cConstant ENODEV ENOENT ENOEXEC ENOLCK ENOLINK ENOMEM ENOMSG ENOPROTOOPT ENOSPC ENOSR
|
||||||
|
syn keyword cConstant ENOSTR ENOSYS ENOTCONN ENOTDIR ENOTEMPTY ENOTRECOVERABLE ENOTSOCK ENOTSUP
|
||||||
|
syn keyword cConstant ENOTTY ENXIO EOPNOTSUPP EOVERFLOW EOWNERDEAD EPERM EPIPE EPROTO
|
||||||
|
syn keyword cConstant EPROTONOSUPPORT EPROTOTYPE ERANGE EROFS ESPIPE ESRCH ESTALE ETIME ETIMEDOUT
|
||||||
|
syn keyword cConstant ETXTBSY EWOULDBLOCK EXDEV
|
||||||
" math.h
|
" math.h
|
||||||
syn keyword cConstant M_E M_LOG2E M_LOG10E M_LN2 M_LN10 M_PI M_PI_2 M_PI_4
|
syn keyword cConstant M_E M_LOG2E M_LOG10E M_LN2 M_LN10 M_PI M_PI_2 M_PI_4
|
||||||
syn keyword cConstant M_1_PI M_2_PI M_2_SQRTPI M_SQRT2 M_SQRT1_2
|
syn keyword cConstant M_1_PI M_2_PI M_2_SQRTPI M_SQRT2 M_SQRT1_2
|
||||||
|
32
runtime/syntax/sbt.vim
Normal file
32
runtime/syntax/sbt.vim
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
" Vim syntax file
|
||||||
|
" Language: sbt
|
||||||
|
" Maintainer: Steven Dobay <stevendobay at protonmail.com>
|
||||||
|
" Last Change: 2017.04.30
|
||||||
|
|
||||||
|
if exists("b:current_syntax")
|
||||||
|
finish
|
||||||
|
endif
|
||||||
|
|
||||||
|
runtime! syntax/scala.vim
|
||||||
|
|
||||||
|
syn region sbtString start="\"[^"]" skip="\\\"" end="\"" contains=sbtStringEscape
|
||||||
|
syn match sbtStringEscape "\\u[0-9a-fA-F]\{4}" contained
|
||||||
|
syn match sbtStringEscape "\\[nrfvb\\\"]" contained
|
||||||
|
|
||||||
|
syn match sbtIdentitifer "^\S\+\ze\s*\(:=\|++=\|+=\|<<=\|<+=\)"
|
||||||
|
syn match sbtBeginningSeq "^[Ss]eq\>"
|
||||||
|
|
||||||
|
syn match sbtSpecial "\(:=\|++=\|+=\|<<=\|<+=\)"
|
||||||
|
|
||||||
|
syn match sbtLineComment "//.*"
|
||||||
|
syn region sbtComment start="/\*" end="\*/"
|
||||||
|
syn region sbtDocComment start="/\*\*" end="\*/" keepend
|
||||||
|
|
||||||
|
hi link sbtString String
|
||||||
|
hi link sbtIdentitifer Keyword
|
||||||
|
hi link sbtBeginningSeq Keyword
|
||||||
|
hi link sbtSpecial Special
|
||||||
|
hi link sbtComment Comment
|
||||||
|
hi link sbtLineComment Comment
|
||||||
|
hi link sbtDocComment Comment
|
||||||
|
|
Loading…
Reference in New Issue
Block a user