mirror of
https://github.com/zoriya/vim.git
synced 2025-12-31 11:28:24 +00:00
Compare commits
68 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
fb7df7be2f | ||
|
|
6b707b4b82 | ||
|
|
f66b3fcf6c | ||
|
|
034b115568 | ||
|
|
5dc6252d33 | ||
|
|
61c3519b78 | ||
|
|
a64ba220f0 | ||
|
|
60542ac9fd | ||
|
|
bbc98db7c4 | ||
|
|
efcb54b78c | ||
|
|
be74734429 | ||
|
|
a61d5fbf7a | ||
|
|
28f2908d95 | ||
|
|
68ba0dd633 | ||
|
|
c047b9a49f | ||
|
|
3fe37d62d1 | ||
|
|
b3a6bbc7b6 | ||
|
|
8d462f9666 | ||
|
|
a8c8a688ac | ||
|
|
73b2470896 | ||
|
|
be094a1579 | ||
|
|
e37c611012 | ||
|
|
a489e1d9d6 | ||
|
|
76b9b3696c | ||
|
|
d87fbc2b1c | ||
|
|
fbe323d854 | ||
|
|
b8ff1fb5eb | ||
|
|
7f85d297dc | ||
|
|
3c70f33440 | ||
|
|
16c31fe1b7 | ||
|
|
7d550fbde5 | ||
|
|
6110a006d5 | ||
|
|
8e808d2b4d | ||
|
|
975261e8a0 | ||
|
|
f44cfb88f6 | ||
|
|
abe838b099 | ||
|
|
06af60244e | ||
|
|
38f5f9529a | ||
|
|
2b04b19455 | ||
|
|
53748fcb7b | ||
|
|
33c1b198c6 | ||
|
|
7474c7c3d6 | ||
|
|
6be7f8733f | ||
|
|
90b280059f | ||
|
|
f31b764c23 | ||
|
|
3ef7cdf0fd | ||
|
|
5af7d71276 | ||
|
|
6d6cec8375 | ||
|
|
73633f84d6 | ||
|
|
8f55d103db | ||
|
|
309cbc3840 | ||
|
|
70b2a56d5a | ||
|
|
1f5965b3c4 | ||
|
|
a0f299b4e8 | ||
|
|
10b7b39b3d | ||
|
|
6ee8d89cf9 | ||
|
|
64a72303f8 | ||
|
|
66accae339 | ||
|
|
738f8fc8ed | ||
|
|
6ef47c223e | ||
|
|
374d32d70f | ||
|
|
79a2a49c5a | ||
|
|
fc57380c3f | ||
|
|
5d6f75e17e | ||
|
|
83bac4c31a | ||
|
|
b6b046b281 | ||
|
|
deaf7b7397 | ||
|
|
ff0a4809e3 |
@@ -1,8 +1,10 @@
|
||||
" Vim completion script
|
||||
" Language: C
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2010 Mar 23
|
||||
" Last Change: 2011 Dec 30
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
" This function is used for the 'omnifunc' option.
|
||||
function! ccomplete#Complete(findstart, base)
|
||||
@@ -603,3 +605,6 @@ function! s:SearchMembers(matches, items, all)
|
||||
endfor
|
||||
return res
|
||||
endfunc
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
" ---------------------------------------------------------------------
|
||||
" getscript.vim
|
||||
" Author: Charles E. Campbell, Jr.
|
||||
" Date: May 31, 2011
|
||||
" Version: 33
|
||||
" Date: Jan 17, 2012
|
||||
" Version: 34
|
||||
" Installing: :help glvs-install
|
||||
" Usage: :help glvs
|
||||
"
|
||||
@@ -15,7 +15,7 @@
|
||||
if exists("g:loaded_getscript")
|
||||
finish
|
||||
endif
|
||||
let g:loaded_getscript= "v33"
|
||||
let g:loaded_getscript= "v34"
|
||||
if &cp
|
||||
echoerr "GetLatestVimScripts is not vi-compatible; not loaded (you need to set nocp)"
|
||||
finish
|
||||
@@ -550,30 +550,42 @@ fun! s:GetOneScript(...)
|
||||
" decompress
|
||||
if sname =~ '\.bz2$'
|
||||
" call Decho("decompress: attempt to bunzip2 ".sname)
|
||||
exe "silent !bunzip2 ".shellescape(sname)
|
||||
exe "sil !bunzip2 ".shellescape(sname)
|
||||
let sname= substitute(sname,'\.bz2$','','')
|
||||
" call Decho("decompress: new sname<".sname."> after bunzip2")
|
||||
elseif sname =~ '\.gz$'
|
||||
" call Decho("decompress: attempt to gunzip ".sname)
|
||||
exe "silent !gunzip ".shellescape(sname)
|
||||
exe "sil !gunzip ".shellescape(sname)
|
||||
let sname= substitute(sname,'\.gz$','','')
|
||||
" call Decho("decompress: new sname<".sname."> after gunzip")
|
||||
elseif sname =~ '\.xz$'
|
||||
" call Decho("decompress: attempt to unxz ".sname)
|
||||
exe "silent !unxz ".shellescape(sname)
|
||||
exe "sil !unxz ".shellescape(sname)
|
||||
let sname= substitute(sname,'\.xz$','','')
|
||||
" call Decho("decompress: new sname<".sname."> after unxz")
|
||||
else
|
||||
" call Decho("no decompression needed")
|
||||
endif
|
||||
|
||||
" distribute archive(.zip, .tar, .vba) contents
|
||||
" distribute archive(.zip, .tar, .vba, ...) contents
|
||||
if sname =~ '\.zip$'
|
||||
" call Decho("dearchive: attempt to unzip ".sname)
|
||||
exe "silent !unzip -o ".shellescape(sname)
|
||||
elseif sname =~ '\.tar$'
|
||||
" call Decho("dearchive: attempt to untar ".sname)
|
||||
exe "silent !tar -xvf ".shellescape(sname)
|
||||
elseif sname =~ '\.tgz$'
|
||||
" call Decho("dearchive: attempt to untar+gunzip ".sname)
|
||||
exe "silent !tar -zxvf ".shellescape(sname)
|
||||
elseif sname =~ '\.taz$'
|
||||
" call Decho("dearchive: attempt to untar+uncompress ".sname)
|
||||
exe "silent !tar -Zxvf ".shellescape(sname)
|
||||
elseif sname =~ '\.tbz$'
|
||||
" call Decho("dearchive: attempt to untar+bunzip2 ".sname)
|
||||
exe "silent !tar -jxvf ".shellescape(sname)
|
||||
elseif sname =~ '\.txz$'
|
||||
" call Decho("dearchive: attempt to untar+xz ".sname)
|
||||
exe "silent !tar -Jxvf ".shellescape(sname)
|
||||
elseif sname =~ '\.vba$'
|
||||
" call Decho("dearchive: attempt to handle a vimball: ".sname)
|
||||
silent 1split
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
" Vim script to download a missing spell file
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2008 Nov 29
|
||||
" Last Change: 2012 Jan 08
|
||||
|
||||
if !exists('g:spellfile_URL')
|
||||
" Prefer using http:// when netrw should be able to use it, since
|
||||
@@ -70,7 +70,7 @@ function! spellfile#LoadFile(lang)
|
||||
" Remember the buffer number, we check it below.
|
||||
new
|
||||
let newbufnr = winbufnr(0)
|
||||
setlocal bin
|
||||
setlocal bin fenc=
|
||||
echo 'Downloading ' . fname . '...'
|
||||
call spellfile#Nread(fname)
|
||||
if getline(2) !~ 'VIMspell'
|
||||
@@ -83,7 +83,7 @@ function! spellfile#LoadFile(lang)
|
||||
" Our buffer has vanished!? Open a new window.
|
||||
echomsg "download buffer disappeared, opening a new one"
|
||||
new
|
||||
setlocal bin
|
||||
setlocal bin fenc=
|
||||
else
|
||||
exe winnr . "wincmd w"
|
||||
endif
|
||||
@@ -120,6 +120,7 @@ function! spellfile#LoadFile(lang)
|
||||
else
|
||||
let dirname = escape(dirlist[dirchoice], ' ')
|
||||
endif
|
||||
setlocal fenc=
|
||||
exe "write " . dirname . '/' . fname
|
||||
|
||||
" Also download the .sug file, if the user wants to.
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" tar.vim: Handles browsing tarfiles
|
||||
" AUTOLOAD PORTION
|
||||
" Date: May 31, 2011
|
||||
" Version: 27
|
||||
" Date: Jan 17, 2012
|
||||
" Version: 28
|
||||
" Maintainer: Charles E Campbell, Jr <NdrOchip@ScampbellPfamily.AbizM-NOSPAM>
|
||||
" License: Vim License (see vim's :help license)
|
||||
"
|
||||
@@ -22,7 +22,7 @@
|
||||
if &cp || exists("g:loaded_tar")
|
||||
finish
|
||||
endif
|
||||
let g:loaded_tar= "v27"
|
||||
let g:loaded_tar= "v28"
|
||||
if v:version < 702
|
||||
echohl WarningMsg
|
||||
echo "***warning*** this version of tar needs vim 7.2"
|
||||
@@ -143,7 +143,7 @@ fun! tar#Browse(tarfile)
|
||||
call setline(lastline+2,'" Browsing tarfile '.a:tarfile)
|
||||
call setline(lastline+3,'" Select a file with cursor and press ENTER')
|
||||
keepj $put =''
|
||||
keepj 0d
|
||||
keepj sil! 0d
|
||||
keepj $
|
||||
|
||||
let tarfile= a:tarfile
|
||||
@@ -158,10 +158,10 @@ fun! tar#Browse(tarfile)
|
||||
elseif tarfile =~# '\.lrp'
|
||||
" call Decho("2: exe silent r! cat -- ".shellescape(tarfile,1)."|gzip -d -c -|".g:tar_cmd." -".g:tar_browseoptions." - ")
|
||||
exe "sil! r! cat -- ".shellescape(tarfile,1)."|gzip -d -c -|".g:tar_cmd." -".g:tar_browseoptions." - "
|
||||
elseif tarfile =~# '\.bz2$'
|
||||
elseif tarfile =~# '\.\(bz2\|tbz\|tb2\)$'
|
||||
" call Decho("3: exe silent r! bzip2 -d -c -- ".shellescape(tarfile,1)." | ".g:tar_cmd." -".g:tar_browseoptions." - ")
|
||||
exe "sil! r! bzip2 -d -c -- ".shellescape(tarfile,1)." | ".g:tar_cmd." -".g:tar_browseoptions." - "
|
||||
elseif tarfile =~# '\.lzma$'
|
||||
elseif tarfile =~# '\.\(lzma\|tlz\)$'
|
||||
" call Decho("3: exe silent r! lzma -d -c -- ".shellescape(tarfile,1)." | ".g:tar_cmd." -".g:tar_browseoptions." - ")
|
||||
exe "sil! r! lzma -d -c -- ".shellescape(tarfile,1)." | ".g:tar_cmd." -".g:tar_browseoptions." - "
|
||||
elseif tarfile =~# '\.\(xz\|txz\)$'
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" vimball.vim : construct a file containing both paths and files
|
||||
" Author: Charles E. Campbell, Jr.
|
||||
" Date: Sep 26, 2011
|
||||
" Version: 34
|
||||
" Date: Jan 17, 2012
|
||||
" Version: 35
|
||||
" GetLatestVimScripts: 1502 1 :AutoInstall: vimball.vim
|
||||
" Copyright: (c) 2004-2011 by Charles E. Campbell, Jr.
|
||||
" The VIM LICENSE applies to Vimball.vim, and Vimball.txt
|
||||
@@ -14,7 +14,7 @@
|
||||
if &cp || exists("g:loaded_vimball")
|
||||
finish
|
||||
endif
|
||||
let g:loaded_vimball = "v34"
|
||||
let g:loaded_vimball = "v35"
|
||||
if v:version < 702
|
||||
echohl WarningMsg
|
||||
echo "***warning*** this version of vimball needs vim 7.2"
|
||||
@@ -767,6 +767,9 @@ fun! vimball#RestoreSettings()
|
||||
" call Dret("RestoreSettings")
|
||||
endfun
|
||||
|
||||
let &cpo = s:keepcpo
|
||||
unlet s:keepcpo
|
||||
|
||||
" ---------------------------------------------------------------------
|
||||
" Modelines: {{{1
|
||||
" vim: fdm=marker
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
" zip.vim: Handles browsing zipfiles
|
||||
" AUTOLOAD PORTION
|
||||
" Date: May 24, 2011
|
||||
" Version: 24
|
||||
" Date: Jan 17, 2012
|
||||
" Version: 25
|
||||
" Maintainer: Charles E Campbell, Jr <NdrOchip@ScampbellPfamily.AbizM-NOSPAM>
|
||||
" License: Vim License (see vim's :help license)
|
||||
" Copyright: Copyright (C) 2005-2011 Charles E. Campbell, Jr. {{{1
|
||||
" Copyright: Copyright (C) 2005-2012 Charles E. Campbell, Jr. {{{1
|
||||
" Permission is hereby granted to use and distribute this code,
|
||||
" with or without modifications, provided that this copyright
|
||||
" notice is copied with it. Like anything else that's free,
|
||||
@@ -19,7 +19,7 @@
|
||||
if &cp || exists("g:loaded_zip")
|
||||
finish
|
||||
endif
|
||||
let g:loaded_zip= "v24"
|
||||
let g:loaded_zip= "v25"
|
||||
if v:version < 702
|
||||
echohl WarningMsg
|
||||
echo "***warning*** this version of zip needs vim 7.2"
|
||||
@@ -104,12 +104,12 @@ fun! zip#Browse(zipfile)
|
||||
|
||||
" give header
|
||||
call append(0, ['" zip.vim version '.g:loaded_zip,
|
||||
\ '" Browsing zipfile '.a:zipfile,
|
||||
\ '" Select a file with cursor and press ENTER'])
|
||||
\ '" Browsing zipfile '.a:zipfile,
|
||||
\ '" Select a file with cursor and press ENTER'])
|
||||
keepj $
|
||||
|
||||
" call Decho("exe silent r! ".g:zip_unzipcmd." -l -- ".s:Escape(a:zipfile,1))
|
||||
exe "silent r! ".g:zip_unzipcmd." -Z -1 -- ".s:Escape(a:zipfile,1)
|
||||
exe "keepj sil! r! ".g:zip_unzipcmd." -Z -1 -- ".s:Escape(a:zipfile,1)
|
||||
if v:shell_error != 0
|
||||
redraw!
|
||||
echohl WarningMsg | echo "***warning*** (zip#Browse) ".fnameescape(a:zipfile)." is not a zip file" | echohl None
|
||||
|
||||
11
runtime/compiler/erlang.vim
Normal file
11
runtime/compiler/erlang.vim
Normal file
@@ -0,0 +1,11 @@
|
||||
" Vim compiler file
|
||||
" Compiler: Erlang
|
||||
" Maintainer: none, please volunteer!
|
||||
" Last Change: 2012 Jan 20
|
||||
|
||||
if exists("current_compiler")
|
||||
finish
|
||||
endif
|
||||
let current_compiler = "erlang"
|
||||
|
||||
" TODO
|
||||
@@ -9,7 +9,7 @@ endif
|
||||
let current_compiler = "gcc"
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo-=C
|
||||
set cpo&vim
|
||||
|
||||
CompilerSet errorformat=
|
||||
\%*[^\"]\"%f\"%*\\D%l:%c:\ %m,
|
||||
|
||||
@@ -9,7 +9,7 @@ endif
|
||||
let current_compiler = "rst"
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo-=C
|
||||
set cpo&vim
|
||||
|
||||
setlocal errorformat=
|
||||
\%f:%l:\ (%tEBUG/0)\ %m,
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*autocmd.txt* For Vim version 7.3. Last change: 2011 Oct 26
|
||||
*autocmd.txt* For Vim version 7.3. Last change: 2012 Feb 12
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -699,7 +699,8 @@ MenuPopup Just before showing the popup menu (under the
|
||||
QuickFixCmdPre Before a quickfix command is run (|:make|,
|
||||
|:lmake|, |:grep|, |:lgrep|, |:grepadd|,
|
||||
|:lgrepadd|, |:vimgrep|, |:lvimgrep|,
|
||||
|:vimgrepadd|, |:lvimgrepadd|, |:cscope|).
|
||||
|:vimgrepadd|, |:lvimgrepadd|, |:cscope|,
|
||||
|:helpgrep|, |:lhelpgrep|).
|
||||
The pattern is matched against the command
|
||||
being run. When |:grep| is used but 'grepprg'
|
||||
is set to "internal" it still matches "grep".
|
||||
@@ -1052,7 +1053,7 @@ Note that the 'eventignore' option applies here too. Events listed in this
|
||||
option will not cause any commands to be executed.
|
||||
|
||||
*:do* *:doau* *:doautocmd* *E217*
|
||||
:do[autocmd] [group] {event} [fname]
|
||||
:do[autocmd] [<nomodeline>] [group] {event} [fname]
|
||||
Apply the autocommands matching [fname] (default:
|
||||
current file name) for {event} to the current buffer.
|
||||
You can use this when the current file name does not
|
||||
@@ -1071,14 +1072,17 @@ option will not cause any commands to be executed.
|
||||
argument is included, Vim executes only the matching
|
||||
autocommands for that group. Note: if you use an
|
||||
undefined group name, Vim gives you an error message.
|
||||
|
||||
*<nomodeline>*
|
||||
After applying the autocommands the modelines are
|
||||
processed, so that their settings overrule the
|
||||
settings from autocommands, like what happens when
|
||||
editing a file.
|
||||
editing a file. This is skipped when the <nomodeline>
|
||||
argument is present. You probably want to use
|
||||
<nomodeline> for events that are not used when loading
|
||||
a buffer, such as |User|.
|
||||
|
||||
*:doautoa* *:doautoall*
|
||||
:doautoa[ll] [group] {event} [fname]
|
||||
:doautoa[ll] [<nomodeline>] [group] {event} [fname]
|
||||
Like ":doautocmd", but apply the autocommands to each
|
||||
loaded buffer. Note that [fname] is used to select
|
||||
the autocommands, not the buffers to which they are
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*change.txt* For Vim version 7.3. Last change: 2011 Oct 28
|
||||
*change.txt* For Vim version 7.3. Last change: 2012 Jan 04
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -88,7 +88,8 @@ An exception for the d{motion} command: If the motion is not linewise, the
|
||||
start and end of the motion are not in the same line, and there are only
|
||||
blanks before the start and after the end of the motion, the delete becomes
|
||||
linewise. This means that the delete also removes the line of blanks that you
|
||||
might expect to remain.
|
||||
might expect to remain. Use the |o_v| operator to force the motion to be
|
||||
characterwise.
|
||||
|
||||
Trying to delete an empty region of text (e.g., "d0" in the first column)
|
||||
is an error when 'cpoptions' includes the 'E' flag.
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*cmdline.txt* For Vim version 7.3. Last change: 2011 Mar 27
|
||||
*cmdline.txt* For Vim version 7.3. Last change: 2012 Feb 05
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -426,6 +426,8 @@ a previous version <Esc> was used). In the pattern standard wildcards '*' and
|
||||
'?' are accepted when matching file names. '*' matches any string, '?'
|
||||
matches exactly one character.
|
||||
|
||||
The 'wildignorecase' option can be set to ignore case in filenames.
|
||||
|
||||
If you like tcsh's autolist completion, you can use this mapping:
|
||||
:cnoremap X <C-L><C-D>
|
||||
(Where X is the command key to use, <C-L> is CTRL-L and <C-D> is CTRL-D)
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*debug.txt* For Vim version 7.3. Last change: 2010 Dec 22
|
||||
*debug.txt* For Vim version 7.3. Last change: 2012 Feb 11
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -15,7 +15,7 @@ For debugging Vim scripts, functions, etc. see |debug-scripts|
|
||||
|
||||
==============================================================================
|
||||
|
||||
1. Location of a crash, using gcc and gdb *debug-gcc*
|
||||
1. Location of a crash, using gcc and gdb *debug-gcc* *gdb*
|
||||
|
||||
When Vim crashes in one of the test files, and you are using gcc for
|
||||
compilation, here is what you can do to find out exactly where Vim crashes.
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*develop.txt* For Vim version 7.3. Last change: 2008 Dec 17
|
||||
*develop.txt* For Vim version 7.3. Last change: 2012 Jan 10
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -232,6 +232,17 @@ time shadows global declaration
|
||||
new C++ reserved keyword
|
||||
try Borland C++ doesn't like it to be used as a variable.
|
||||
|
||||
clear Mac curses.h
|
||||
echo Mac curses.h
|
||||
instr Mac curses.h
|
||||
meta Mac curses.h
|
||||
newwin Mac curses.h
|
||||
nl Mac curses.h
|
||||
overwrite Mac curses.h
|
||||
refresh Mac curses.h
|
||||
scroll Mac curses.h
|
||||
typeahead Mac curses.h
|
||||
|
||||
basename() GNU string function
|
||||
dirname() GNU string function
|
||||
get_env_value() Linux system function
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*eval.txt* For Vim version 7.3. Last change: 2011 Dec 14
|
||||
*eval.txt* For Vim version 7.3. Last change: 2012 Jan 28
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -3941,11 +3941,12 @@ line2byte({lnum}) *line2byte()*
|
||||
Return the byte count from the start of the buffer for line
|
||||
{lnum}. This includes the end-of-line character, depending on
|
||||
the 'fileformat' option for the current buffer. The first
|
||||
line returns 1.
|
||||
line returns 1. 'encoding' matters, 'fileencoding' is ignored.
|
||||
This can also be used to get the byte count for the line just
|
||||
below the last line: >
|
||||
line2byte(line("$") + 1)
|
||||
< This is the file size plus one.
|
||||
< This is the buffer size plus one. If 'fileencoding' is empty
|
||||
it is the file size plus one.
|
||||
When {lnum} is invalid, or the |+byte_offset| feature has been
|
||||
disabled at compile time, -1 is returned.
|
||||
Also see |byte2line()|, |go| and |:goto|.
|
||||
@@ -4813,6 +4814,10 @@ search({pattern} [, {flags} [, {stopline} [, {timeout}]]]) *search()*
|
||||
Search for regexp pattern {pattern}. The search starts at the
|
||||
cursor position (you can use |cursor()| to set it).
|
||||
|
||||
If there is no match a 0 is returned and the cursor doesn't
|
||||
move. No error message is given.
|
||||
When a match has been found its line number is returned.
|
||||
|
||||
{flags} is a String, which can contain these character flags:
|
||||
'b' search backward instead of forward
|
||||
'c' accept a match at the cursor position
|
||||
@@ -4846,9 +4851,6 @@ search({pattern} [, {flags} [, {stopline} [, {timeout}]]]) *search()*
|
||||
giving the argument.
|
||||
{only available when compiled with the |+reltime| feature}
|
||||
|
||||
If there is no match a 0 is returned and the cursor doesn't
|
||||
move. No error message is given.
|
||||
When a match has been found its line number is returned.
|
||||
*search()-sub-match*
|
||||
With the 'p' flag the returned value is one more than the
|
||||
first sub-match in \(\). One if none of them matched but the
|
||||
@@ -5067,7 +5069,8 @@ setcmdpos({pos}) *setcmdpos()*
|
||||
line.
|
||||
|
||||
setline({lnum}, {text}) *setline()*
|
||||
Set line {lnum} of the current buffer to {text}.
|
||||
Set line {lnum} of the current buffer to {text}. To insert
|
||||
lines use |append()|.
|
||||
{lnum} is used like with |getline()|.
|
||||
When {lnum} is just below the last line the {text} will be
|
||||
added as a new line.
|
||||
@@ -6156,7 +6159,7 @@ xor({expr}, {expr}) *xor()*
|
||||
to a number. A List, Dict or Float argument causes an error.
|
||||
Example: >
|
||||
:let bits = xor(bits, 0x80)
|
||||
|
||||
<
|
||||
|
||||
|
||||
*feature-list*
|
||||
@@ -6339,6 +6342,7 @@ windows Compiled with support for more than one window.
|
||||
writebackup Compiled with 'writebackup' default on.
|
||||
xfontset Compiled with X fontset support |xfontset|.
|
||||
xim Compiled with X input method support |xim|.
|
||||
xpm_w32 Compiled with pixmap support for Win32.
|
||||
xsmp Compiled with X session management support.
|
||||
xsmp_interact Compiled with interactive X session management support.
|
||||
xterm_clipboard Compiled with support for xterm clipboard.
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*if_pyth.txt* For Vim version 7.3. Last change: 2011 Aug 19
|
||||
*if_pyth.txt* For Vim version 7.3. Last change: 2012 Feb 04
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Paul Moore
|
||||
@@ -222,8 +222,9 @@ Buffer objects represent vim buffers. You can obtain them in a number of ways:
|
||||
- from indexing vim.buffers (|python-buffers|)
|
||||
- from the "buffer" attribute of a window (|python-window|)
|
||||
|
||||
Buffer objects have one read-only attribute - name - the full file name for
|
||||
the buffer. They also have three methods (append, mark, and range; see below).
|
||||
Buffer objects have two read-only attributes - name - the full file name for
|
||||
the buffer, and number - the buffer number. They also have three methods
|
||||
(append, mark, and range; see below).
|
||||
|
||||
You can also treat buffer objects as sequence objects. In this context, they
|
||||
act as if they were lists (yes, they are mutable) of strings, with each
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*insert.txt* For Vim version 7.3. Last change: 2011 Sep 14
|
||||
*insert.txt* For Vim version 7.3. Last change: 2012 Jan 26
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -1010,7 +1010,8 @@ number between zero and the cursor column "col('.')". This involves looking
|
||||
at the characters just before the cursor and including those characters that
|
||||
could be part of the completed item. The text between this column and the
|
||||
cursor column will be replaced with the matches. Return -1 if no completion
|
||||
can be done.
|
||||
can be done, the completion will be cancelled with an error message. Return
|
||||
-2 to cancel silently.
|
||||
|
||||
On the second invocation the arguments are:
|
||||
a:findstart 0
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*map.txt* For Vim version 7.3. Last change: 2011 Oct 22
|
||||
*map.txt* For Vim version 7.3. Last change: 2012 Feb 02
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -527,7 +527,7 @@ mappings.
|
||||
<LocalLeader> is just like <Leader>, except that it uses "maplocalleader"
|
||||
instead of "mapleader". <LocalLeader> is to be used for mappings which are
|
||||
local to a buffer. Example: >
|
||||
:map <LocalLeader>q \DoItNow
|
||||
:map <buffer> <LocalLeader>A oanother line<Esc>
|
||||
<
|
||||
In a global plugin <Leader> should be used and in a filetype plugin
|
||||
<LocalLeader>. "mapleader" and "maplocalleader" can be equal. Although, if
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*mlang.txt* For Vim version 7.3. Last change: 2010 Dec 11
|
||||
*mlang.txt* For Vim version 7.3. Last change: 2012 Jan 15
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -59,7 +59,7 @@ use of "-" and "_".
|
||||
system. Some systems accept aliases like "en" or
|
||||
"en_US", but some only accept the full specification
|
||||
like "en_US.ISO_8859-1". On Unix systems you can use
|
||||
the this command to see what locales are supported: >
|
||||
this command to see what locales are supported: >
|
||||
:!locale -a
|
||||
< With the "messages" argument the language used for
|
||||
messages is set. This can be different when you want,
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*netbeans.txt* For Vim version 7.3. Last change: 2011 Oct 20
|
||||
*netbeans.txt* For Vim version 7.3. Last change: 2012 Jan 26
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Gordon Prieur et al.
|
||||
@@ -266,7 +266,7 @@ mechanism.
|
||||
Netbeans messages are processed when Vim is idle, waiting for user input.
|
||||
When Vim is run in non-interactive mode, for example when running an automated
|
||||
test case that sources a Vim script, the idle loop may not be called often
|
||||
enough. In that case, insert |sleep| commands in the Vim script. The |sleep|
|
||||
enough. In that case, insert |:sleep| commands in the Vim script. The |:sleep|
|
||||
command does invoke Netbeans messages processing.
|
||||
|
||||
6.1 Kinds of messages |nb-messages|
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*options.txt* For Vim version 7.3. Last change: 2011 Dec 14
|
||||
*options.txt* For Vim version 7.3. Last change: 2012 Feb 12
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -301,9 +301,8 @@ You will not get back the 'list' value as it was the last time you edited
|
||||
copying the value.
|
||||
{not in Vi}
|
||||
|
||||
:se[t] {option}< Set the local value of {option} to its global value by
|
||||
making it empty. Only makes sense for |global-local|
|
||||
options.
|
||||
:se[t] {option}< For |global-local| options: Remove the local value of
|
||||
{option}, so that the global value will be used.
|
||||
{not in Vi}
|
||||
|
||||
*:setg* *:setglobal*
|
||||
@@ -5059,7 +5058,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
respectively; see |CTRL-A| for more info on these commands.
|
||||
alpha If included, single alphabetical characters will be
|
||||
incremented or decremented. This is useful for a list with a
|
||||
letter index a), b), etc. *octal-number*
|
||||
letter index a), b), etc. *octal-nrformats*
|
||||
octal If included, numbers that start with a zero will be considered
|
||||
to be octal. Example: Using CTRL-A on "007" results in "010".
|
||||
hex If included, numbers starting with "0x" or "0X" will be
|
||||
@@ -5900,8 +5899,10 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
security reasons.
|
||||
|
||||
*'shellcmdflag'* *'shcf'*
|
||||
'shellcmdflag' 'shcf' string (default: "-c", MS-DOS and Win32, when 'shell'
|
||||
does not contain "sh" somewhere: "/c")
|
||||
'shellcmdflag' 'shcf' string (default: "-c";
|
||||
Win32, when 'shell' is cmd.exe: "/s /c";
|
||||
MS-DOS and Win32, when 'shell' neither is
|
||||
cmd.exe nor contains "sh" somewhere: "/c")
|
||||
global
|
||||
{not in Vi}
|
||||
Flag passed to the shell to execute "!" and ":!" commands; e.g.,
|
||||
@@ -6042,6 +6043,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
|
||||
*'shellxquote'* *'sxq'*
|
||||
'shellxquote' 'sxq' string (default: "";
|
||||
for Win32, when 'shell' is cmd.exe: "("
|
||||
for Win32, when 'shell' contains "sh"
|
||||
somewhere: "\""
|
||||
for Unix, when using system(): "\"")
|
||||
@@ -6051,14 +6053,28 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
the "!" and ":!" commands. Includes the redirection. See
|
||||
'shellquote' to exclude the redirection. It's probably not useful
|
||||
to set both options.
|
||||
This is an empty string by default. Known to be useful for
|
||||
third-party shells when using the Win32 version, such as the MKS Korn
|
||||
Shell or bash, where it should be "\"". The default is adjusted
|
||||
according the value of 'shell', to reduce the need to set this option
|
||||
by the user. See |dos-shell|.
|
||||
When the value is '(' then ')' is appended. When the value is '"('
|
||||
then ')"' is appended.
|
||||
When the value is '(' then also see 'shellxescape'.
|
||||
This is an empty string by default on most systems, but is known to be
|
||||
useful for on Win32 version, either for cmd.exe which automatically
|
||||
strips off the first and last quote on a command, or 3rd-party shells
|
||||
such as the MKS Korn Shell or bash, where it should be "\"". The
|
||||
default is adjusted according the value of 'shell', to reduce the need
|
||||
to set this option by the user. See |dos-shell|.
|
||||
This option cannot be set from a |modeline| or in the |sandbox|, for
|
||||
security reasons.
|
||||
|
||||
*'shellxescape'* *'sxe'*
|
||||
'shellxescape' 'sxe' string (default: "";
|
||||
for MS-DOS and MS-Windows: "\"&|<>()@^")
|
||||
global
|
||||
{not in Vi}
|
||||
When 'shellxquote' is set to "(" then the characters listed in this
|
||||
option will be escaped with a '^' character. This makes it possible
|
||||
to execute most external commands with cmd.exe.
|
||||
|
||||
|
||||
*'shiftround'* *'sr'* *'noshiftround'* *'nosr'*
|
||||
'shiftround' 'sr' boolean (default off)
|
||||
global
|
||||
|
||||
@@ -1,15 +1,21 @@
|
||||
*pi_getscript.txt* For Vim version 7.0. Last change: 2011 May 31
|
||||
*pi_getscript.txt* For Vim version 7.0. Last change: 2011 Jun 23
|
||||
>
|
||||
GETSCRIPT REFERENCE MANUAL by Charles E. Campbell, Jr.
|
||||
<
|
||||
Authors: Charles E. Campbell, Jr. <NdrOchip@ScampbellPfamilyA.Mbiz>
|
||||
(remove NOSPAM from the email address)
|
||||
*GetLatestVimScripts-copyright*
|
||||
Copyright: (c) 2004-2010 by Charles E. Campbell, Jr. *glvs-copyright*
|
||||
The VIM LICENSE applies to getscript.vim and
|
||||
pi_getscript.txt (see |copyright|) except use
|
||||
"getscript" instead of "Vim". No warranty, express or implied.
|
||||
Use At-Your-Own-Risk.
|
||||
Copyright: (c) 2004-2012 by Charles E. Campbell, Jr. *glvs-copyright*
|
||||
The VIM LICENSE (see |copyright|) applies to the files in this
|
||||
package, including getscriptPlugin.vim, getscript.vim,
|
||||
GetLatestVimScripts.dist, and pi_getscript.txt, except use "getscript"
|
||||
instead of "VIM". Like anything else that's free, getscript and its
|
||||
associated files are provided *as is* and comes with no warranty of
|
||||
any kind, either expressed or implied. No guarantees of
|
||||
merchantability. No guarantees of suitability for any purpose. By
|
||||
using this plugin, you agree that in no event will the copyright
|
||||
holder be liable for any damages resulting from the use of this
|
||||
software. Use at your own risk!
|
||||
|
||||
Getscript is a plugin that simplifies retrieval of the latest versions of the
|
||||
scripts that you yourself use! Typing |:GLVS| will invoke getscript; it will
|
||||
@@ -374,6 +380,8 @@ The AutoInstall process will:
|
||||
==============================================================================
|
||||
9. GetLatestVimScripts History *getscript-history* *glvs-hist* {{{1
|
||||
|
||||
v44 Jun 23, 2011 : * handles additional decompression options for tarballs
|
||||
(tgz taz tbz txz)
|
||||
v33 May 31, 2011 : * using fnameescape() instead of escape()
|
||||
* *.xz support
|
||||
v32 Jun 19, 2010 : * (Jan Steffens) added support for xz compression
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*pi_netrw.txt* For Vim version 7.3. Last change: 2011 Sep 26
|
||||
*pi_netrw.txt* For Vim version 7.3. Last change: 2012 Jan 26
|
||||
|
||||
-----------------------------------------------------
|
||||
NETRW REFERENCE MANUAL by Charles E. Campbell, Jr.
|
||||
@@ -43,7 +43,7 @@ Copyright: Copyright (C) 1999-2011 Charles E Campbell, Jr *netrw-copyright*
|
||||
5. Activation...........................................|netrw-activate|
|
||||
6. Transparent Remote File Editing......................|netrw-transparent|
|
||||
7. Ex Commands..........................................|netrw-ex|
|
||||
8. Variables and Options................................|netrw-var|
|
||||
8. Variables and Options................................|netrw-settings|
|
||||
9. Browsing.............................................|netrw-browse|
|
||||
Introduction To Browsing...........................|netrw-intro-browse|
|
||||
Quick Reference: Maps..............................|netrw-browse-maps|
|
||||
@@ -309,7 +309,7 @@ CHANGING USERID AND PASSWORD *netrw-chgup* *netrw-userpass* {{{2
|
||||
:call NetUserPass("uid","password") -- sets global uid and password
|
||||
|
||||
NETRW VARIABLES AND SETTINGS *netrw-variables* {{{2
|
||||
(also see: |netrw-browser-var| |netrw-protocol| |netrw-settings| |netrw-var|)
|
||||
(also see: |netrw-browser-var| |netrw-protocol| |netrw-settings|)
|
||||
|
||||
Netrw provides a lot of variables which allow you to customize netrw to your
|
||||
preferences. One way to look at them is via the command :NetrwSettings (see
|
||||
@@ -2354,7 +2354,7 @@ settings. You may change any of their values; when you save the file, the
|
||||
settings therein will be used. One may also press "?" on any of the lines for
|
||||
help on what each of the variables do.
|
||||
|
||||
(also see: |netrw-browser-var| |netrw-protocol| |netrw-var| |netrw-variables|)
|
||||
(also see: |netrw-browser-var| |netrw-protocol| |netrw-settings| |netrw-variables|)
|
||||
|
||||
|
||||
==============================================================================
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*pi_tar.txt* For Vim version 7.3. Last change: 2011 May 31
|
||||
*pi_tar.txt* For Vim version 7.3. Last change: 2012 Jan 17
|
||||
|
||||
+====================+
|
||||
| Tar File Interface |
|
||||
@@ -6,9 +6,16 @@
|
||||
|
||||
Author: Charles E. Campbell, Jr. <NdrOchip@ScampbellPfamily.AbizM>
|
||||
(remove NOSPAM from Campbell's email first)
|
||||
Copyright 2005-2010: The GPL (gnu public license) applies to *tar-copyright*
|
||||
tar.vim, tarPlugin.vim, and pi_tar.txt.
|
||||
No warranty, express or implied. Use At-Your-Own-Risk.
|
||||
Copyright 2005-2012: *tar-copyright*
|
||||
The VIM LICENSE (see |copyright|) applies to the files in this
|
||||
package, including tarPlugin.vim, tar.vim, and pi_tar.txt. Like
|
||||
anything else that's except use "tar.vim" instead of "VIM". Like
|
||||
anything else that's free, tar.vim and its associated files are
|
||||
provided *as is* and comes with no warranty of any kind, either
|
||||
expressed or implied. No guarantees of merchantability. No
|
||||
guarantees of suitability for any purpose. By using this plugin, you
|
||||
agree that in no event will the copyright holder be liable for any
|
||||
damages resulting from the use of this software. Use at your own risk!
|
||||
|
||||
==============================================================================
|
||||
1. Contents *tar* *tar-contents*
|
||||
@@ -83,6 +90,7 @@ Copyright 2005-2010: The GPL (gnu public license) applies to *tar-copyright*
|
||||
4. History *tar-history*
|
||||
|
||||
|
||||
v28 Jun 23, 2011 * a few more decompression options (tbz tb2 txz)
|
||||
v27 May 31, 2011 * moved cygwin detection before g:tar_copycmd handling
|
||||
* inserted additional |:keepj| modifiers
|
||||
* changed silent to sil! (|:silent|)
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*pi_vimball.txt* For Vim version 7.3. Last change: 2011 Sep 26
|
||||
*pi_vimball.txt* For Vim version 7.3. Last change: 2012 Jan 17
|
||||
|
||||
----------------
|
||||
Vimball Archiver
|
||||
@@ -6,11 +6,16 @@
|
||||
|
||||
Author: Charles E. Campbell, Jr. <NdrOchip@ScampbellPfamily.AbizM>
|
||||
(remove NOSPAM from Campbell's email first)
|
||||
Copyright: (c) 2004-2011 by Charles E. Campbell, Jr. *Vimball-copyright*
|
||||
The VIM LICENSE applies to Vimball.vim, and Vimball.txt
|
||||
(see |copyright|) except use "Vimball" instead of "Vim".
|
||||
No warranty, express or implied.
|
||||
Use At-Your-Own-Risk!
|
||||
Copyright: (c) 2004-2012 by Charles E. Campbell, Jr. *Vimball-copyright*
|
||||
The VIM LICENSE (see |copyright|) applies to the files in this
|
||||
package, including vimballPlugin.vim, vimball.vim, and pi_vimball.txt.
|
||||
except use "vimball" instead of "VIM". Like anything else that's free,
|
||||
vimball.vim and its associated files are provided *as is* and comes with
|
||||
no warranty of any kind, either expressed or implied. No guarantees
|
||||
of merchantability. No guarantees of suitability for any purpose. By
|
||||
using this plugin, you agree that in no event will the copyright
|
||||
holder be liable for any damages resulting from the use of this
|
||||
software. Use at your own risk!
|
||||
|
||||
==============================================================================
|
||||
1. Contents *vba* *vimball* *vimball-contents*
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*pi_zip.txt* For Vim version 7.3. Last change: 2011 Aug 14
|
||||
*pi_zip.txt* For Vim version 7.3. Last change: 2012 Jan 17
|
||||
|
||||
+====================+
|
||||
| Zip File Interface |
|
||||
@@ -7,14 +7,15 @@
|
||||
Author: Charles E. Campbell, Jr. <NdrOchip@ScampbellPfamily.AbizM>
|
||||
(remove NOSPAM from Campbell's email first)
|
||||
Copyright: Copyright (C) 2005-2011 Charles E Campbell, Jr *zip-copyright*
|
||||
Permission is hereby granted to use and distribute this code,
|
||||
with or without modifications, provided that this copyright
|
||||
notice is copied with it. Like anything else that's free,
|
||||
zip.vim, zipPlugin.vim, and pi_zip.txt are provided *as is*
|
||||
and it comes with no warranty of any kind, either expressed or
|
||||
implied. By using this plugin, you agree that in no event will
|
||||
the copyright holder be liable for any damages resulting from
|
||||
the use of this software.
|
||||
The VIM LICENSE (see |copyright|) applies to the files in this
|
||||
package, including zipPlugin.vim, zip.vim, and pi_zip.vim. except use
|
||||
"zip.vim" instead of "VIM". Like anything else that's free, zip.vim
|
||||
and its associated files are provided *as is* and comes with no
|
||||
warranty of any kind, either expressed or implied. No guarantees of
|
||||
merchantability. No guarantees of suitability for any purpose. By
|
||||
using this plugin, you agree that in no event will the copyright
|
||||
holder be liable for any damages resulting from the use of this
|
||||
software. Use at your own risk!
|
||||
|
||||
==============================================================================
|
||||
1. Contents *zip* *zip-contents*
|
||||
@@ -73,7 +74,7 @@ Copyright: Copyright (C) 2005-2011 Charles E Campbell, Jr *zip-copyright*
|
||||
==============================================================================
|
||||
3. Additional Extensions *zip-extension*
|
||||
|
||||
Apparently there are a number of archivers who generate zip files that
|
||||
Apparently there are a number of archivers which generate zip files that
|
||||
don't use the .zip extension (.jar, .xpi, etc). To handle such files,
|
||||
place a line in your <.vimrc> file: >
|
||||
|
||||
@@ -84,6 +85,8 @@ Copyright: Copyright (C) 2005-2011 Charles E Campbell, Jr *zip-copyright*
|
||||
|
||||
==============================================================================
|
||||
4. History *zip-history* {{{1
|
||||
v25 Jun 27, 2011 * using keepj with unzip -Z
|
||||
(consistent with the -p variant)
|
||||
v24 Jun 21, 2010 * (Cédric Bosdonnat) unzip seems to need its filenames
|
||||
fnameescape'd as well as shellquote'd
|
||||
* (Motoya Kurotsu) inserted keepj before 0d to protect
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*sign.txt* For Vim version 7.3. Last change: 2010 Oct 14
|
||||
*sign.txt* For Vim version 7.3. Last change: 2012 Jan 04
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Gordon Prieur
|
||||
@@ -76,7 +76,7 @@ DEFINING A SIGN. *:sign-define* *E255* *E160* *E612*
|
||||
|
||||
Accepted arguments:
|
||||
|
||||
icon={pixmap}
|
||||
icon={bitmap}
|
||||
Define the file name where the bitmap can be found. Should be
|
||||
a full path. The bitmap should fit in the place of two
|
||||
characters. This is not checked. If the bitmap is too big it
|
||||
@@ -86,6 +86,8 @@ DEFINING A SIGN. *:sign-define* *E255* *E160* *E612*
|
||||
GTK 1 pixmap (.xpm)
|
||||
GTK 2 many
|
||||
Motif pixmap (.xpm)
|
||||
Win32 .bmp, .ico, .cur
|
||||
pixmap (.xpm) |+xpm_w32|
|
||||
|
||||
linehl={group}
|
||||
Highlighting group used for the whole line the sign is placed
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*syntax.txt* For Vim version 7.3. Last change: 2011 Nov 26
|
||||
*syntax.txt* For Vim version 7.3. Last change: 2012 Feb 11
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -758,6 +758,7 @@ c_syntax_for_h use C syntax for *.h files, instead of C++
|
||||
c_no_if0 don't highlight "#if 0" blocks as comments
|
||||
c_no_cformat don't highlight %-formats in strings
|
||||
c_no_c99 don't highlight C99 standard items
|
||||
c_no_c11 don't highlight C11 standard items
|
||||
|
||||
When 'foldmethod' is set to "syntax" then /* */ comments and { } blocks will
|
||||
become a fold. If you don't want comments to become a fold use: >
|
||||
@@ -985,9 +986,9 @@ Example: >
|
||||
or >
|
||||
// vim:syntax=c.doxygen
|
||||
|
||||
It can also be done automatically for C, C++, C# and IDL files by setting the
|
||||
global or buffer-local variable load_doxygen_syntax. This is done by adding
|
||||
the following to your .vimrc. >
|
||||
It can also be done automatically for C, C++, C#, IDL and PHP files by setting
|
||||
the global or buffer-local variable load_doxygen_syntax. This is done by
|
||||
adding the following to your .vimrc. >
|
||||
:let g:load_doxygen_syntax=1
|
||||
|
||||
There are a couple of variables that have an effect on syntax highlighting, and
|
||||
@@ -1155,14 +1156,12 @@ conditionals are LightBlue for better distinction.
|
||||
FORTRAN *fortran.vim* *ft-fortran-syntax*
|
||||
|
||||
Default highlighting and dialect ~
|
||||
Highlighting appropriate for f95 (Fortran 95) is used by default. This choice
|
||||
should be appropriate for most users most of the time because Fortran 95 is a
|
||||
superset of Fortran 90 and almost a superset of Fortran 77. Support for
|
||||
Fortran 2003 and Fortran 2008 features has been introduced and is
|
||||
automatically available in the default (f95) highlighting.
|
||||
Highlighting appropriate for Fortran 2008 is used by default. This choice
|
||||
should be appropriate for most users most of the time because Fortran 2008 is
|
||||
almost a superset of previous versions (Fortran 2003, 95, 90, and 77).
|
||||
|
||||
Fortran source code form ~
|
||||
Fortran 9x code can be in either fixed or free source form. Note that the
|
||||
Fortran code can be in either fixed or free source form. Note that the
|
||||
syntax highlighting will not be correct if the form is incorrectly set.
|
||||
|
||||
When you create a new fortran file, the syntax script assumes fixed source
|
||||
@@ -1243,52 +1242,54 @@ recognized, as will construct names at the end of a do, if, select or forall
|
||||
construct.
|
||||
|
||||
Non-default fortran dialects ~
|
||||
The syntax script supports five Fortran dialects: f95, f90, f77, the Lahey
|
||||
subset elf90, and the Imagine1 subset F.
|
||||
The syntax script supports two Fortran dialects: f08 and F. You will probably
|
||||
find the default highlighting (f08) satisfactory. A few legacy constructs
|
||||
deleted or declared obsolescent in the 2008 standard are highlighted as todo
|
||||
items.
|
||||
|
||||
If you use f77 with extensions, even common ones like do/enddo loops, do/while
|
||||
loops and free source form that are supported by most f77 compilers including
|
||||
g77 (GNU Fortran), then you will probably find the default highlighting
|
||||
satisfactory. However, if you use strict f77 with no extensions, not even free
|
||||
source form or the MIL STD 1753 extensions, then the advantages of setting the
|
||||
dialect to f77 are that names such as SUM are recognized as user variable
|
||||
names and not highlighted as f9x intrinsic functions, that obsolete constructs
|
||||
such as ASSIGN statements are not highlighted as todo items, and that fixed
|
||||
source form will be assumed.
|
||||
If you use F, the advantage of setting the dialect appropriately is that
|
||||
other legacy features excluded from F will be highlighted as todo items and
|
||||
that free source form will be assumed.
|
||||
|
||||
If you use elf90 or F, the advantage of setting the dialect appropriately is
|
||||
that f90 features excluded from these dialects will be highlighted as todo
|
||||
items and that free source form will be assumed as required for these
|
||||
dialects.
|
||||
The dialect can be selected in various ways. If all your fortran files use
|
||||
the same dialect, set the global variable fortran_dialect in your .vimrc prior
|
||||
to your syntax on statement. The case-sensitive, permissible values of
|
||||
fortran_dialect are "f08" or "F". Invalid values of fortran_dialect are
|
||||
ignored.
|
||||
|
||||
The dialect can be selected by setting the variable fortran_dialect. The
|
||||
permissible values of fortran_dialect are case-sensitive and must be "f95",
|
||||
"f90", "f77", "elf" or "F". Invalid values of fortran_dialect are ignored.
|
||||
|
||||
If all your fortran files use the same dialect, set fortran_dialect in your
|
||||
.vimrc prior to your syntax on statement. If the dialect depends upon the file
|
||||
extension, then it is most convenient to set it in a ftplugin file. For more
|
||||
information on ftplugin files, see |ftplugin|. For example, if all your
|
||||
fortran files with an .f90 extension are written in the elf subset, your
|
||||
ftplugin file should contain the code >
|
||||
If the dialect depends upon the file extension, then it is most convenient to
|
||||
set a buffer-local variable in a ftplugin file. For more information on
|
||||
ftplugin files, see |ftplugin|. For example, if all your fortran files with
|
||||
an .f90 extension are written in the F subset, your ftplugin file should
|
||||
contain the code >
|
||||
let s:extfname = expand("%:e")
|
||||
if s:extfname ==? "f90"
|
||||
let fortran_dialect="elf"
|
||||
let b:fortran_dialect="F"
|
||||
else
|
||||
unlet! fortran_dialect
|
||||
unlet! b:fortran_dialect
|
||||
endif
|
||||
Note that this will work only if the "filetype plugin indent on" command
|
||||
precedes the "syntax on" command in your .vimrc file.
|
||||
|
||||
Finer control is necessary if the file extension does not uniquely identify
|
||||
the dialect. You can override the default dialect, on a file-by-file basis, by
|
||||
including a comment with the directive "fortran_dialect=xx" (where xx=f77 or
|
||||
elf or F or f90 or f95) in one of the first three lines in your file. For
|
||||
example, your older .f files may be written in extended f77 but your newer
|
||||
ones may be F codes, and you would identify the latter by including in the
|
||||
first three lines of those files a Fortran comment of the form >
|
||||
the dialect. You can override the default dialect, on a file-by-file basis,
|
||||
by including a comment with the directive "fortran_dialect=xx" (where xx=F or
|
||||
f08) in one of the first three lines in your file. For example, your older .f
|
||||
files may be legacy code but your newer ones may be F codes, and you would
|
||||
identify the latter by including in the first three lines of those files a
|
||||
Fortran comment of the form >
|
||||
! fortran_dialect=F
|
||||
F overrides elf if both directives are present.
|
||||
|
||||
For previous versions of the syntax, you may have set fortran_dialect to the
|
||||
now-obsolete values "f77", "f90", "f95", or "elf". Such settings will be
|
||||
silently handled as "f08". Users of "elf" may wish to experiment with "F"
|
||||
instead.
|
||||
|
||||
The syntax/fortran.vim script contains embedded comments that tell you how to
|
||||
comment and/or uncomment some lines to (a) activate recognition of some
|
||||
non-standard, vendor-supplied intrinsics and (b) to prevent features deleted
|
||||
or declared obsolescent in the 2008 standard from being highlighted as todo
|
||||
items.
|
||||
|
||||
Limitations ~
|
||||
Parenthesis checking does not catch too few closing parentheses. Hollerith
|
||||
@@ -1603,11 +1604,6 @@ which are used for the statement itself, special characters used in debug
|
||||
strings, strings, boolean constants and types (this, super) respectively. I
|
||||
have opted to chose another background for those statements.
|
||||
|
||||
In order to help you write code that can be easily ported between Java and
|
||||
C++, all C++ keywords can be marked as an error in a Java program. To
|
||||
have this add this line in your .vimrc file: >
|
||||
:let java_allow_cpp_keywords = 0
|
||||
|
||||
Javadoc is a program that takes special comments out of Java program files and
|
||||
creates HTML pages. The standard configuration will highlight this HTML code
|
||||
similarly to HTML files (see |html.vim|). You can even add Javascript
|
||||
@@ -1746,19 +1742,10 @@ instead, and the name of your source file should be *.pike
|
||||
|
||||
LUA *lua.vim* *ft-lua-syntax*
|
||||
|
||||
This syntax file may be used for Lua 4.0, Lua 5.0 or Lua 5.1 (the latter is
|
||||
The Lua syntax file can be used for versions 4.0, 5.0, 5.1 and 5.2 (5.2 is
|
||||
the default). You can select one of these versions using the global variables
|
||||
lua_version and lua_subversion. For example, to activate Lua
|
||||
4.0 syntax highlighting, use this command: >
|
||||
|
||||
:let lua_version = 4
|
||||
|
||||
If you are using Lua 5.0, use these commands: >
|
||||
|
||||
:let lua_version = 5
|
||||
:let lua_subversion = 0
|
||||
|
||||
To restore highlighting for Lua 5.1: >
|
||||
5.1 syntax highlighting, set the variables like this:
|
||||
|
||||
:let lua_version = 5
|
||||
:let lua_subversion = 1
|
||||
@@ -2775,7 +2762,9 @@ of specialized LaTeX commands, syntax, and fonts. If you're using such a
|
||||
package you'll often wish that the distributed syntax/tex.vim would support
|
||||
it. However, clearly this is impractical. So please consider using the
|
||||
techniques in |mysyntaxfile-add| to extend or modify the highlighting provided
|
||||
by syntax/tex.vim.
|
||||
by syntax/tex.vim. Please consider uploading any extensions that you write,
|
||||
which typically would go in $HOME/after/syntax/tex/[pkgname].vim, to
|
||||
http://vim.sf.net/.
|
||||
|
||||
*tex-error*
|
||||
Tex: Excessive Error Highlighting? ~
|
||||
|
||||
@@ -1243,6 +1243,7 @@ $VIMRUNTIME starting.txt /*$VIMRUNTIME*
|
||||
+writebackup various.txt /*+writebackup*
|
||||
+xfontset various.txt /*+xfontset*
|
||||
+xim various.txt /*+xim*
|
||||
+xpm_w32 various.txt /*+xpm_w32*
|
||||
+xsmp various.txt /*+xsmp*
|
||||
+xsmp_interact various.txt /*+xsmp_interact*
|
||||
+xterm_clipboard various.txt /*+xterm_clipboard*
|
||||
@@ -3205,6 +3206,7 @@ $VIMRUNTIME starting.txt /*$VIMRUNTIME*
|
||||
<line1> map.txt /*<line1>*
|
||||
<line2> map.txt /*<line2>*
|
||||
<lt> intro.txt /*<lt>*
|
||||
<nomodeline> autocmd.txt /*<nomodeline>*
|
||||
<q-args> map.txt /*<q-args>*
|
||||
<reg> map.txt /*<reg>*
|
||||
<register> map.txt /*<register>*
|
||||
@@ -4791,6 +4793,7 @@ beval_col-variable eval.txt /*beval_col-variable*
|
||||
beval_lnum-variable eval.txt /*beval_lnum-variable*
|
||||
beval_text-variable eval.txt /*beval_text-variable*
|
||||
beval_winnr-variable eval.txt /*beval_winnr-variable*
|
||||
bitwise-function usr_41.txt /*bitwise-function*
|
||||
blockwise-examples visual.txt /*blockwise-examples*
|
||||
blockwise-operators visual.txt /*blockwise-operators*
|
||||
blockwise-register change.txt /*blockwise-register*
|
||||
@@ -5946,6 +5949,7 @@ g`a motion.txt /*g`a*
|
||||
ga various.txt /*ga*
|
||||
garbagecollect() eval.txt /*garbagecollect()*
|
||||
gd pattern.txt /*gd*
|
||||
gdb debug.txt /*gdb*
|
||||
ge motion.txt /*ge*
|
||||
get() eval.txt /*get()*
|
||||
get-ms-debuggers debug.txt /*get-ms-debuggers*
|
||||
@@ -7041,8 +7045,8 @@ objects index.txt /*objects*
|
||||
obtaining-exted netbeans.txt /*obtaining-exted*
|
||||
ocaml.vim syntax.txt /*ocaml.vim*
|
||||
octal eval.txt /*octal*
|
||||
octal-nrformats options.txt /*octal-nrformats*
|
||||
octal-number eval.txt /*octal-number*
|
||||
octal-number options.txt /*octal-number*
|
||||
oldfiles-variable eval.txt /*oldfiles-variable*
|
||||
ole-activation if_ole.txt /*ole-activation*
|
||||
ole-eval if_ole.txt /*ole-eval*
|
||||
@@ -8357,13 +8361,27 @@ vimdev intro.txt /*vimdev*
|
||||
vimdiff diff.txt /*vimdiff*
|
||||
vimfiles options.txt /*vimfiles*
|
||||
viminfo starting.txt /*viminfo*
|
||||
viminfo-! options.txt /*viminfo-!*
|
||||
viminfo-% options.txt /*viminfo-%*
|
||||
viminfo-' options.txt /*viminfo-'*
|
||||
viminfo-/ options.txt /*viminfo-\/*
|
||||
viminfo-: options.txt /*viminfo-:*
|
||||
viminfo-< options.txt /*viminfo-<*
|
||||
viminfo-@ options.txt /*viminfo-@*
|
||||
viminfo-c options.txt /*viminfo-c*
|
||||
viminfo-encoding starting.txt /*viminfo-encoding*
|
||||
viminfo-errors starting.txt /*viminfo-errors*
|
||||
viminfo-f options.txt /*viminfo-f*
|
||||
viminfo-file starting.txt /*viminfo-file*
|
||||
viminfo-file-marks starting.txt /*viminfo-file-marks*
|
||||
viminfo-file-name starting.txt /*viminfo-file-name*
|
||||
viminfo-h options.txt /*viminfo-h*
|
||||
viminfo-n options.txt /*viminfo-n*
|
||||
viminfo-quote options.txt /*viminfo-quote*
|
||||
viminfo-r options.txt /*viminfo-r*
|
||||
viminfo-read starting.txt /*viminfo-read*
|
||||
viminfo-read-write starting.txt /*viminfo-read-write*
|
||||
viminfo-s options.txt /*viminfo-s*
|
||||
viminfo-write starting.txt /*viminfo-write*
|
||||
vimrc starting.txt /*vimrc*
|
||||
vimrc-filetype usr_05.txt /*vimrc-filetype*
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*todo.txt* For Vim version 7.3. Last change: 2011 Dec 14
|
||||
*todo.txt* For Vim version 7.3. Last change: 2012 Feb 12
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -38,35 +38,21 @@ Go through more coverity reports.
|
||||
|
||||
Discussion about canonicalization of Hebrew. (Ron Aaron, 2011 April 10)
|
||||
|
||||
Patch to fix "Console prompts fail to reset the console pager".
|
||||
Issue 14 on googlecode
|
||||
|
||||
Issue 33 on googlecode: feedkeys() leaks memory.
|
||||
|
||||
Patch to support UTF-8 for Hangul. (Shawn Y.H. Kim, 2011 May 1)
|
||||
Needs more work.
|
||||
|
||||
Once syntax and other runtime files have been fixed: add "set cp" to
|
||||
check.vim. Use a function to run both with 'cp' and 'nocp'.
|
||||
|
||||
Patch to make ":helpgrep" work with non-UTF-8 encoding. (Yasuhiro Matsumoto,
|
||||
2011 Nov 28, update later that day)
|
||||
GTK: problem with 'L' in 'guioptions' changing the window width.
|
||||
(Aaron Cornelius, 2012 Feb 6)
|
||||
|
||||
":doau" says it triggers modeline. Should this only happen for events used
|
||||
when loading a buffer? (Kana Natsuno, 2011 Nov 7)
|
||||
Win32: When a directory name contains an exclamation mark, completion doesn't
|
||||
complete the contents of the directory. No escaping for the "!"? (Jan
|
||||
Stocker, 2012 Jan 5)
|
||||
|
||||
Patch to fix "it" and "at" when there is a dash in the tag name.
|
||||
(Christian Brabandt, 2011 Nov 20)
|
||||
|
||||
Patch to make 'shcf' default work better. (Benjamin Fritz, 2011 Nov 18)
|
||||
Win32: When 'shell' is cmd.exe this command fails:
|
||||
echo system('"c:/path/echo.exe" "foo bar"')
|
||||
Should we set the default for 'shellxquote' to a double quote, when 'shell'
|
||||
contains "cmd" in the tail? (Benjamin Fritz, 2008 Oct 13)
|
||||
Also set 'shellcmdflag' to include /s.
|
||||
|
||||
Other way to start Mzscheme. Tim Brown, 2011 Oct 5: change main call.
|
||||
Later patch by Sergey Khorev, 2011 Oct 9.
|
||||
Patch for "tab drop hoge" moving current window. (Higashi, 2012 Jan 31)
|
||||
":tab drop buffer.c" always opens a new tab, also if buffer.c is already in an
|
||||
open window. (Herb Sitz, 2011 Nov 17)
|
||||
":tab drop filename" doesn't work nicely when "filename" is open in a window
|
||||
in another tab. (Tony Mechelynck, 2009 Feb 13)
|
||||
|
||||
Patch to make InsertCharPre work better. (Yasuhiro Matsumoto, 2011 Oct 21)
|
||||
|
||||
@@ -78,22 +64,49 @@ Or use expand('<sid>')?
|
||||
Patch for glob() returning a list. (Christian Brabandt, 2011 Aug 24, second
|
||||
one)
|
||||
|
||||
Win32: When the taskbar is at the top of the screen creating the tabbar causes
|
||||
the window to move unnecessarily. (William E. Skeith III, 2012 Jan 12)
|
||||
Patch: 2012 Jan 13 Needs more work (2012 Feb 2)
|
||||
|
||||
Patch to highlight cursor line number. (Howard Buchholz (lhb), 2011 Oct 18)
|
||||
|
||||
Patch for urxvt mouse support after shell command. (Issue 31)
|
||||
URXVT:
|
||||
- will get stuck if byte sequence does not containe expected semicolon.
|
||||
- Patch for urxvt mouse support after shell command. (Issue 31)
|
||||
- Use urxvt mouse support also in xterm. Explanations:
|
||||
http://www.midnight-commander.org/ticket/2662
|
||||
|
||||
Patch for using QuickFixCmdPre for more commands. (Marcin Szamotulski, 2012
|
||||
Feb 1, update Feb 2)
|
||||
|
||||
When running Vim in silent ex mode, an existing swapfile causes Vim to wait
|
||||
for a user action without a prompt. (Maarten Billemont, 2012 Feb 3)
|
||||
Do give the prompt? Quit with an error?
|
||||
|
||||
When exiting with unsaved changes, selecting an existing file in the file
|
||||
dialog, there is no dialog to ask whether the existing file should be
|
||||
overwritten. (Felipe G. Nievinski, 2011 Dec 22)
|
||||
|
||||
7 Setting an option always sets "w_set_curswant", while this is only
|
||||
required for a few options. Only do it for those options to avoid the
|
||||
side effect.
|
||||
Patch by Kana Natsuno, 2011 Nov 12.
|
||||
|
||||
Patch to fix member confusion in Lua interface. (Taro Muraoka, 2012 Jan 8)
|
||||
Update Jan 9.
|
||||
Carvalho merged the patch: New version 2012 Jan 19.
|
||||
|
||||
Patch for option in 'cino' to specify more indent for continued conditions.
|
||||
(Lech Lorens, 2011 Nov 27)
|
||||
Isn't this already possible?
|
||||
|
||||
Patch for using objcpp file type for headers files. Issue 44.
|
||||
|
||||
Docs fix for v:register. (Ingo Karkat, 2011 Sep 26, 27)
|
||||
v:register doesn't work exactly as expected. (David Fishburn, 2011 Sep 20)
|
||||
|
||||
Patch for: vimgrep fails when 'autochdir' is set. (Ben Fritz, 2012 Feb 4)
|
||||
|
||||
Patch for: (Christian Brabandt, 2011 Aug 22)
|
||||
- Make it possible to enter "r<C-E>" and "r<C-Y>" (get character from line
|
||||
below/above).
|
||||
@@ -103,9 +116,14 @@ Patch for: (Christian Brabandt, 2011 Aug 24, updated patch)
|
||||
buffer={bufnr}". So one can remove all signs for one file/buffer.
|
||||
|
||||
Patch to add "onselected" callback for completion. (Taro Muraoka, 2011 Sep 24)
|
||||
Another for CompleteFuncOk. (Florian Klein, 2012 Jan 31)
|
||||
Name it "CompleteFuncDone".
|
||||
|
||||
":tab drop buffer.c" always opens a new tab, also if buffer.c is already in an
|
||||
open window. (Herb Sitz, 2011 Nov 17)
|
||||
Patch for Make_mvc.mak and Make_ming.mak for Ruby support. (Yasuhiro
|
||||
Matsumoto, 2012 Jan 30)
|
||||
|
||||
Use a count before "v" and "V" to select that many characters or lines?
|
||||
(Kikyous)
|
||||
|
||||
Problem with winfixheight and resizing. (Yukihiro Nakadaira, 2011 Sep 17)
|
||||
Patch Sep 18.
|
||||
@@ -113,11 +131,19 @@ Patch Sep 18.
|
||||
Patch for has('unnamedplus') docs. (Tony Mechelynck, 2011 Sep 27)
|
||||
And one for gui_x11.txt.
|
||||
|
||||
":cd" doesn't work when current directory path contains "**".
|
||||
finddir() has the same problem. (Yukihiro Nakadaira, 2012 Jan 10)
|
||||
Requires a rewrite of the file_file_in_path code.
|
||||
|
||||
Problem with l: dictionary being locked in a function. (ZyX, 2011 Jul 21)
|
||||
|
||||
Issue 48: foldopen error can't be caught by try/catch
|
||||
|
||||
Patch to sort functions starting with '<' after others. Omit dict functions,
|
||||
they can't be called. (Yasuhiro Matsumoto, 2011 Oct 11)
|
||||
|
||||
Patch to pass list to or(), and() and xor(). (Yasuhiro Matsumoto, 2012 Feb 8)
|
||||
|
||||
Patch to improve "it" and "at" text object matching. (Christian Brabandt, 2011
|
||||
Nov 20)
|
||||
|
||||
@@ -135,6 +161,11 @@ characters. Patch by Christian Brabandt, 2011 Oct 11)
|
||||
Patch for 'transparency' option. (Sergiu Dotenco, 2011 Sep 17)
|
||||
Only for MS-Windows. No documentation. Do we want this?
|
||||
|
||||
Patch to support cursor shape in Cygwin console. (Ben bgold, 2011 Dec 27)
|
||||
|
||||
Patch to support UTF-8 for Hangul. (Shawn Y.H. Kim, 2011 May 1)
|
||||
Needs more work. Pinged 2012 Jan 4.
|
||||
|
||||
'cursorline' is displayed too short when there are concealed characters and
|
||||
'list' is set. (Dennis Preiser)
|
||||
Patch 7.3.116 was the wrong solution.
|
||||
@@ -154,6 +185,9 @@ New feature, requires testing. Made some remarks.
|
||||
Win32: Patch for alpha-blended icons and toolbar height. (Sergiu Dotenco, 2011
|
||||
Sep 17) Asked for feedback from others.
|
||||
|
||||
Win32: Cannot cd into a directory that starts with a space. (Andy Wokula, 2012
|
||||
Jan 19)
|
||||
|
||||
Need to escape $HOME on Windows? (ZyX, 2011 Jul 21)
|
||||
|
||||
"2" in 'formatopions' not working in comments. (Christian Corneliussen, 2011
|
||||
@@ -251,6 +285,8 @@ Patch to support sorting on floating point number. (Alex Jakushev, 2010 Oct
|
||||
Patch to addd TextDeletePost and TextYankPost events. (Philippe Vaucher, 2011
|
||||
May 24) Update May 26.
|
||||
|
||||
Patch for :tabrecently. (Hirokazu Yoshida, 2012 Jan 30)
|
||||
|
||||
When a script contains "redir => s:foo" but doesn't end redirection, a
|
||||
following "redir" command gives an error for not being able to access s:foo.
|
||||
(ZyX, 2011 Mar 27)
|
||||
@@ -381,6 +417,10 @@ mkdir().
|
||||
|
||||
'cindent' not correct when 'list' is set. (Zdravi Korusef, 2010 Apr 15)
|
||||
|
||||
C-indenting: A matching { in a comment is ignored, but intermediate { are not
|
||||
checked to be in a comment. Implement FM_SKIPCOMM flag of findmatchlimit().
|
||||
Issue 46.
|
||||
|
||||
When 'paste' is changed with 'pastetoggle', the ruler doesn't reflect this
|
||||
right away. (Samuel Ferencik, 2010 Dec 7)
|
||||
|
||||
@@ -472,10 +512,6 @@ Patch to support :undo absolute jump to file save number. (Christian Brabandt,
|
||||
Patch to use 'foldnextmax' also for "marker" foldmethod. (Arnaud Lacombe, 2011
|
||||
Jan 7)
|
||||
|
||||
When setting 'undofile' while the file is already loaded, but unchanged, try
|
||||
to read the undo file. Requires computing a checksum of the text. (Andy
|
||||
Wokula)
|
||||
|
||||
Bug with 'incsearch' going to wrong line. (Wolfram Kresse, 2009 Aug 17)
|
||||
Only with "vim -u NONE".
|
||||
|
||||
@@ -552,6 +588,8 @@ Win32: Expanding 'path' runs into a maximum size limit. (bgold12, 2009 Nov 15)
|
||||
Win32: Patch for enabling quick edit mode in console. (Craig Barkhouse, 2010
|
||||
Sep 1)
|
||||
|
||||
Win32: Patch for using .png files for icons. (Charles Peacech, 2012 Feb 5)
|
||||
|
||||
Putting a Visual block while 'visualedit' is "all" does not leave the cursor
|
||||
on the first character. (John Beckett, 2010 Aug 7)
|
||||
|
||||
@@ -777,8 +815,6 @@ the buffer to be unmodified.
|
||||
Unfinished patch by Ian Kelling, 2008 Jul 11. Followup Jul 14, need to have
|
||||
another look at it.
|
||||
|
||||
Patch for c.vim and cpp.vim syntax files. (Chung-chieh Shan, 2008 Nov 26)
|
||||
|
||||
c.vim: XXX in a comment is colored yellow, but not when it's after "#if 0".
|
||||
(Ilya Dogolazky, 2009 Aug 7)
|
||||
|
||||
@@ -913,9 +949,6 @@ try/catch not working when inside a for loop. (ZyX, 2011 Jan 25)
|
||||
":tab help" always opens a new tab, while ":help" re-uses an existing window.
|
||||
Would be more consistent when an existing tab is re-used. (Tony Mechelynck)
|
||||
|
||||
":tab drop filename" doesn't work nicely when "filename" is open in a window
|
||||
in another tab. (Tony Mechelynck, 2009 Feb 13)
|
||||
|
||||
Add ":nofold". Range will apply without expanding to closed fold.
|
||||
|
||||
Including NFA regexp code:
|
||||
@@ -1055,6 +1088,15 @@ Latest version: 2011 May 18
|
||||
http://nsis.sourceforge.net/Docs/Chapter4.html#4.12
|
||||
Version from Guopeng Wen that does this (2010 Dec 27)
|
||||
|
||||
Windows installer should install 32-bit version of right-click handler also on
|
||||
64-bit systems. (Brian Cunningham, 2011 Dec 28)
|
||||
|
||||
Windows installer could add a "open in new tab of existing Vim" menu entry.
|
||||
Gvimext: patch to add "Edit with single Vim &tabbed" menu entry.
|
||||
Just have two choices, always using one Vim and selecting between using an
|
||||
argument list or opening each file in a separate tab.
|
||||
(Erik Falor, 2008 May 21, 2008 Jun 26)
|
||||
|
||||
Windows installer: licence text should not use indent, causes bad word wrap.
|
||||
(Benjamin Fritz, 2010 Aug 16)
|
||||
|
||||
@@ -1215,12 +1257,6 @@ When unloading a buffer in a BufHidden autocommand the hidden flag is reset?
|
||||
Substituting an area with a line break with almost the same area does change
|
||||
the Visual area. Can this be fixed? (James Vega, 2006 Sept 15)
|
||||
|
||||
Windows installer could add a "open in new tab of existing Vim" menu entry.
|
||||
Gvimext: patch to add "Edit with single Vim &tabbed" menu entry.
|
||||
Just have two choices, always using one Vim and selecting between using an
|
||||
argument list or opening each file in a separate tab.
|
||||
(Erik Falor, 2008 May 21, 2008 Jun 26)
|
||||
|
||||
GUI: When combining fg en bg make sure they are not equal.
|
||||
|
||||
Spell checking: Add a way to specify punctuation characters. Add the
|
||||
@@ -1719,18 +1755,6 @@ Win32 GUI known bugs:
|
||||
the wide functions.
|
||||
8 On Windows 98 the unicows library is needed to support functions with UCS2
|
||||
file names. Can we load unicows.dll dynamically?
|
||||
8 Win32: With two monitors, gvim partly on both, and adding/removing a
|
||||
scrollbar Vim resizes and moves to one of the monitors. (Chris Monkiewicz,
|
||||
2008 Oct)
|
||||
8 When the primary monitor is below or right of the secondary monitor and
|
||||
Vim is on the secondary monitor it will often move to the primary monitor.
|
||||
Window position coordinates can be negative. (James Harvey)
|
||||
When the primary monitor is on the right, coordinates on the left monitor
|
||||
are negative. Clamping to zero means gvim jups to the primary monitor.
|
||||
(Michael Wookey, 2010 Aug 17)
|
||||
Probably the same issue: When the GUI tab pages line is displayed Vim
|
||||
jumps from the secondary to the primary monitor. (Afton Lewis, 2007 Mar 9)
|
||||
Possible solution using GetSystemMetrics() (Sergey Khorev, 2010 Aug 18)
|
||||
8 The -P argument doesn't work very well with many MDI applications.
|
||||
The last argument of CreateWindowEx() should be used, see MSDN docs.
|
||||
Tutorial: http://win32assembly.online.fr/tut32.html
|
||||
@@ -3201,10 +3225,6 @@ Performance:
|
||||
Add command to compile a vim script and add it to the file in-place.
|
||||
Split Ex command executing into a parsing and executing phase.
|
||||
Use compiled code for functions, while loops, etc.
|
||||
8 When editing a file with extremely long lines (e.g., an executable), the
|
||||
"linerest" in readfile() is allocated twice to be able to copy what was
|
||||
read so far. Use realloc() instead? Or split the line when allocating
|
||||
memory fails and "linerest" is big (> 100000)?
|
||||
8 When defining autocommands (e.g., from $VIMRUNTIME/filetype.vim), need to
|
||||
compare each pattern with all existing patterns. Use a hash code to avoid
|
||||
using strcmp() too often?
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*undo.txt* For Vim version 7.3. Last change: 2011 Aug 02
|
||||
*undo.txt* For Vim version 7.3. Last change: 2012 Jan 28
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -267,7 +267,12 @@ respectively:
|
||||
(the magic number at the start of the file is wrong), then
|
||||
this fails, unless the ! was added.
|
||||
If it exists and does look like an undo file it is
|
||||
overwritten.
|
||||
overwritten. If there is no undo-history, nothing will be
|
||||
written.
|
||||
Implementation detail: Overwriting happens by first deleting
|
||||
the existing file and then creating a new file with the same
|
||||
name. So it is not possible to overwrite an existing undofile
|
||||
in a write-protected directory.
|
||||
{not in Vi}
|
||||
|
||||
:rundo {file} Read undo history from {file}.
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*usr_41.txt* For Vim version 7.3. Last change: 2011 Jun 19
|
||||
*usr_41.txt* For Vim version 7.3. Last change: 2011 Dec 15
|
||||
|
||||
VIM USER MANUAL - by Bram Moolenaar
|
||||
|
||||
@@ -670,6 +670,12 @@ Floating point computation: *float-functions*
|
||||
cosh() hyperbolic cosine
|
||||
tanh() hyperbolic tangent
|
||||
|
||||
Other computation: *bitwise-function*
|
||||
and() bitwise AND
|
||||
invert() bitwise invert
|
||||
or() bitwise OR
|
||||
xor() bitwise XOR
|
||||
|
||||
Variables: *var-functions*
|
||||
type() type of a variable
|
||||
islocked() check if a variable is locked
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*various.txt* For Vim version 7.3. Last change: 2011 Nov 28
|
||||
*various.txt* For Vim version 7.3. Last change: 2012 Jan 15
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -136,6 +136,9 @@ g8 Print the hex values of the bytes used in the
|
||||
then twice the value of the 'scroll' option is used,
|
||||
otherwise the current window height minus 3 is used.
|
||||
|
||||
If there is a {count} the 'window' option is set to
|
||||
its value.
|
||||
|
||||
:z can be used either alone or followed by any of
|
||||
several punctuation marks. These have the following
|
||||
effect:
|
||||
@@ -360,63 +363,64 @@ N *+multi_lang* non-English language support |multi-lang|
|
||||
m *+mzscheme* Mzscheme interface |mzscheme|
|
||||
m *+mzscheme/dyn* Mzscheme interface |mzscheme-dynamic| |/dyn|
|
||||
m *+netbeans_intg* |netbeans|
|
||||
m *+ole* Win32 GUI only: |ole-interface|
|
||||
N *+path_extra* Up/downwards search in 'path' and 'tags'
|
||||
m *+ole* Win32 GUI only: |ole-interface|
|
||||
N *+path_extra* Up/downwards search in 'path' and 'tags'
|
||||
m *+perl* Perl interface |perl|
|
||||
m *+perl/dyn* Perl interface |perl-dynamic| |/dyn|
|
||||
N *+persistent_undo* Persistent undo |undo-persistence|
|
||||
*+postscript* |:hardcopy| writes a PostScript file
|
||||
*+postscript* |:hardcopy| writes a PostScript file
|
||||
N *+printer* |:hardcopy| command
|
||||
H *+profile* |:profile| command
|
||||
m *+python* Python 2 interface |python|
|
||||
m *+python/dyn* Python 2 interface |python-dynamic| |/dyn|
|
||||
m *+python/dyn* Python 2 interface |python-dynamic| |/dyn|
|
||||
m *+python3* Python 3 interface |python|
|
||||
m *+python3/dyn* Python 3 interface |python-dynamic| |/dyn|
|
||||
m *+python3/dyn* Python 3 interface |python-dynamic| |/dyn|
|
||||
N *+quickfix* |:make| and |quickfix| commands
|
||||
N *+reltime* |reltime()| function, 'hlsearch'/'incsearch' timeout,
|
||||
'redrawtime' option
|
||||
B *+rightleft* Right to left typing |'rightleft'|
|
||||
m *+ruby* Ruby interface |ruby|
|
||||
m *+ruby/dyn* Ruby interface |ruby-dynamic| |/dyn|
|
||||
N *+scrollbind* |'scrollbind'|
|
||||
N *+scrollbind* |'scrollbind'|
|
||||
B *+signs* |:sign|
|
||||
N *+smartindent* |'smartindent'|
|
||||
N *+smartindent* |'smartindent'|
|
||||
m *+sniff* SniFF interface |sniff|
|
||||
N *+startuptime* |--startuptime| argument
|
||||
N *+statusline* Options 'statusline', 'rulerformat' and special
|
||||
N *+startuptime* |--startuptime| argument
|
||||
N *+statusline* Options 'statusline', 'rulerformat' and special
|
||||
formats of 'titlestring' and 'iconstring'
|
||||
m *+sun_workshop* |workshop|
|
||||
N *+syntax* Syntax highlighting |syntax|
|
||||
*+system()* Unix only: opposite of |+fork|
|
||||
N *+tag_binary* binary searching in tags file |tag-binary-search|
|
||||
N *+tag_binary* binary searching in tags file |tag-binary-search|
|
||||
N *+tag_old_static* old method for static tags |tag-old-static|
|
||||
m *+tag_any_white* any white space allowed in tags file |tag-any-white|
|
||||
m *+tcl* Tcl interface |tcl|
|
||||
m *+tcl* Tcl interface |tcl|
|
||||
m *+tcl/dyn* Tcl interface |tcl-dynamic| |/dyn|
|
||||
*+terminfo* uses |terminfo| instead of termcap
|
||||
N *+termresponse* support for |t_RV| and |v:termresponse|
|
||||
N *+textobjects* |text-objects| selection
|
||||
N *+textobjects* |text-objects| selection
|
||||
*+tgetent* non-Unix only: able to use external termcap
|
||||
N *+title* Setting the window 'title' and 'icon'
|
||||
N *+toolbar* |gui-toolbar|
|
||||
N *+user_commands* User-defined commands. |user-commands|
|
||||
N *+viminfo* |'viminfo'|
|
||||
N *+vertsplit* Vertically split windows |:vsplit|
|
||||
N *+virtualedit* |'virtualedit'|
|
||||
N *+virtualedit* |'virtualedit'|
|
||||
S *+visual* Visual mode |Visual-mode|
|
||||
N *+visualextra* extra Visual mode commands |blockwise-operators|
|
||||
N *+visualextra* extra Visual mode commands |blockwise-operators|
|
||||
N *+vreplace* |gR| and |gr|
|
||||
N *+wildignore* |'wildignore'|
|
||||
N *+wildignore* |'wildignore'|
|
||||
N *+wildmenu* |'wildmenu'|
|
||||
S *+windows* more than one window
|
||||
m *+writebackup* |'writebackup'| is default on
|
||||
m *+xim* X input method |xim|
|
||||
m *+writebackup* |'writebackup'| is default on
|
||||
m *+xim* X input method |xim|
|
||||
*+xfontset* X fontset support |xfontset|
|
||||
m *+xpm_w32* Win32 GUI only: pixmap support |:sign-define|
|
||||
*+xsmp* XSMP (X session management) support
|
||||
*+xsmp_interact* interactive XSMP (X session management) support
|
||||
N *+xterm_clipboard* Unix only: xterm clipboard handling
|
||||
m *+xterm_save* save and restore xterm screen |xterm-screens|
|
||||
N *+X11* Unix only: can restore window title |X11|
|
||||
m *+xterm_save* save and restore xterm screen |xterm-screens|
|
||||
N *+X11* Unix only: can restore window title |X11|
|
||||
|
||||
*/dyn* *E370* *E448*
|
||||
To some of the features "/dyn" is added when the
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim support file to detect file types
|
||||
"
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2011 Oct 26
|
||||
" Last Change: 2012 Feb 05
|
||||
|
||||
" Listen very carefully, I will say this only once
|
||||
if exists("did_load_filetypes")
|
||||
@@ -1217,6 +1217,9 @@ au BufNewFile,BufRead *.NS[ACGLMNPS] setf natural
|
||||
" Netrc
|
||||
au BufNewFile,BufRead .netrc setf netrc
|
||||
|
||||
" Ninja file
|
||||
au BufNewFile,BufRead *.ninja setf ninja
|
||||
|
||||
" Novell netware batch files
|
||||
au BufNewFile,BufRead *.ncf setf ncf
|
||||
|
||||
@@ -1261,7 +1264,7 @@ au BufNewFile,BufRead *.nqc setf nqc
|
||||
au BufNewFile,BufRead *.nsi setf nsis
|
||||
|
||||
" OCAML
|
||||
au BufNewFile,BufRead *.ml,*.mli,*.mll,*.mly setf ocaml
|
||||
au BufNewFile,BufRead *.ml,*.mli,*.mll,*.mly,.ocamlinit setf ocaml
|
||||
|
||||
" Occam
|
||||
au BufNewFile,BufRead *.occ setf occam
|
||||
@@ -2533,22 +2536,28 @@ au BufNewFile,BufRead */etc/yum.repos.d/* call s:StarSetf('dosini')
|
||||
au BufNewFile,BufRead zsh*,zlog* call s:StarSetf('zsh')
|
||||
|
||||
|
||||
" Plain text files, needs to be far down to not override others. This avoids
|
||||
" the "conf" type being used if there is a line starting with '#'.
|
||||
au BufNewFile,BufRead *.txt,*.text setf text
|
||||
|
||||
|
||||
" Use the filetype detect plugins. They may overrule any of the previously
|
||||
" detected filetypes.
|
||||
runtime! ftdetect/*.vim
|
||||
|
||||
" NOTE: The above command could have ended the filetypedetect autocmd group
|
||||
" and started another one. Let's make sure it has ended to get to a consistent
|
||||
" state.
|
||||
augroup END
|
||||
|
||||
" Generic configuration file (check this last, it's just guessing!)
|
||||
au BufNewFile,BufRead,StdinReadPost *
|
||||
au filetypedetect BufNewFile,BufRead,StdinReadPost *
|
||||
\ if !did_filetype() && expand("<amatch>") !~ g:ft_ignore_pat
|
||||
\ && (getline(1) =~ '^#' || getline(2) =~ '^#' || getline(3) =~ '^#'
|
||||
\ || getline(4) =~ '^#' || getline(5) =~ '^#') |
|
||||
\ setf conf |
|
||||
\ endif
|
||||
|
||||
augroup END
|
||||
|
||||
|
||||
" If the GUI is already running, may still need to install the Syntax menu.
|
||||
" Don't do it when the 'M' flag is included in 'guioptions'.
|
||||
|
||||
@@ -3,8 +3,8 @@
|
||||
" Maintainer: Debian Vim Maintainers <pkg-vim-maintainers@lists.alioth.debian.org>
|
||||
" Former Maintainers: Michael Piefel <piefel@informatik.hu-berlin.de>
|
||||
" Stefano Zacchiroli <zack@debian.org>
|
||||
" Last Change: 2010-07-11
|
||||
" License: GNU GPL, version 2.0 or later
|
||||
" Last Change: 2012-01-31
|
||||
" License: Vim License
|
||||
" URL: http://hg.debian.org/hg/pkg-vim/vim/file/unstable/runtime/ftplugin/debchangelog.vim
|
||||
|
||||
" Bug completion requires apt-listbugs installed for Debian packages or
|
||||
|
||||
78
runtime/ftplugin/erlang.vim
Normal file
78
runtime/ftplugin/erlang.vim
Normal file
@@ -0,0 +1,78 @@
|
||||
" Vim ftplugin file
|
||||
" Language: Erlang
|
||||
" Author: Oscar Hellstr<74>m <oscar@oscarh.net>
|
||||
" Contributors: Ricardo Catalinas Jim<69>nez <jimenezrick@gmail.com>
|
||||
" Eduardo Lopez (http://github.com/tapichu)
|
||||
" License: Vim license
|
||||
" Version: 2012/01/25
|
||||
|
||||
if exists('b:did_ftplugin')
|
||||
finish
|
||||
else
|
||||
let b:did_ftplugin = 1
|
||||
endif
|
||||
|
||||
if exists('s:did_function_definitions')
|
||||
call s:SetErlangOptions()
|
||||
finish
|
||||
else
|
||||
let s:did_function_definitions = 1
|
||||
endif
|
||||
|
||||
if !exists('g:erlang_keywordprg')
|
||||
let g:erlang_keywordprg = 'erl -man'
|
||||
endif
|
||||
|
||||
if !exists('g:erlang_folding')
|
||||
let g:erlang_folding = 0
|
||||
endif
|
||||
|
||||
let s:erlang_fun_begin = '^\a\w*(.*$'
|
||||
let s:erlang_fun_end = '^[^%]*\.\s*\(%.*\)\?$'
|
||||
|
||||
function s:SetErlangOptions()
|
||||
if g:erlang_folding
|
||||
setlocal foldmethod=expr
|
||||
setlocal foldexpr=GetErlangFold(v:lnum)
|
||||
setlocal foldtext=ErlangFoldText()
|
||||
endif
|
||||
|
||||
setlocal comments=:%%%,:%%,:%
|
||||
setlocal commentstring=%%s
|
||||
|
||||
setlocal formatoptions+=ro
|
||||
let &l:keywordprg = g:erlang_keywordprg
|
||||
endfunction
|
||||
|
||||
function GetErlangFold(lnum)
|
||||
let lnum = a:lnum
|
||||
let line = getline(lnum)
|
||||
|
||||
if line =~ s:erlang_fun_end
|
||||
return '<1'
|
||||
endif
|
||||
|
||||
if line =~ s:erlang_fun_begin && foldlevel(lnum - 1) == 1
|
||||
return '1'
|
||||
endif
|
||||
|
||||
if line =~ s:erlang_fun_begin
|
||||
return '>1'
|
||||
endif
|
||||
|
||||
return '='
|
||||
endfunction
|
||||
|
||||
function ErlangFoldText()
|
||||
let line = getline(v:foldstart)
|
||||
let foldlen = v:foldend - v:foldstart + 1
|
||||
let lines = ' ' . foldlen . ' lines: ' . substitute(line, "[\ \t]*", '', '')
|
||||
if foldlen < 10
|
||||
let lines = ' ' . lines
|
||||
endif
|
||||
let retval = '+' . v:folddashes . lines
|
||||
|
||||
return retval
|
||||
endfunction
|
||||
|
||||
call s:SetErlangOptions()
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim settings file
|
||||
" Language: Fortran90 (and Fortran95, Fortran77, F and elf90)
|
||||
" Version: 0.46
|
||||
" Last Change: 2010 July 24
|
||||
" Version: 0.47
|
||||
" Last Change: 2011 December 28
|
||||
" Maintainer: Ajit J. Thakkar <ajit@unb.ca>; <http://www.unb.ca/chem/ajit/>
|
||||
" Usage: Do :help fortran-plugin from Vim
|
||||
" Credits:
|
||||
@@ -12,6 +12,9 @@ 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
|
||||
|
||||
@@ -78,9 +81,6 @@ setlocal fo+=tcql
|
||||
setlocal include=^\\c#\\=\\s*include\\s\\+
|
||||
setlocal suffixesadd+=.f95,.f90,.for,.f,.F,.f77,.ftn,.fpp
|
||||
|
||||
let s:cposet=&cpoptions
|
||||
set cpoptions-=C
|
||||
|
||||
" Define patterns for the matchit plugin
|
||||
if !exists("b:match_words")
|
||||
let s:notend = '\%(\<end\s\+\)\@<!'
|
||||
|
||||
@@ -1,12 +1,13 @@
|
||||
" Vim filetype plugin file
|
||||
" Language: Kimwitu++
|
||||
" Maintainer: Michael Piefel <piefel@informatik.hu-berlin.de>
|
||||
" Last Change: 16 August 2001
|
||||
" Maintainer: Michael Piefel <entwurf@piefel.de>
|
||||
" Last Change: 10 December 2011
|
||||
|
||||
" Behaves almost like C++
|
||||
runtime! ftplugin/cpp.vim ftplugin/cpp_*.vim ftplugin/cpp/*.vim
|
||||
|
||||
set cpo-=C
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
" Limit the browser to related files
|
||||
if has("gui_win32") && !exists("b:browsefilter")
|
||||
@@ -18,3 +19,6 @@ endif
|
||||
|
||||
" Set the errorformat for the Kimwitu++ compiler
|
||||
set efm+=kc%.%#:\ error\ at\ %f:%l:\ %m
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
" Vim filetype plugin
|
||||
" Language: Lisp
|
||||
" Maintainer: Sergey Khorev <sergey.khorev@gmail.com>
|
||||
" URL: http://iamphet.nm.ru/vim
|
||||
" 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: Nov 8, 2004
|
||||
" Last Change: Jan 9, 2012
|
||||
|
||||
" Only do this when not done yet for this buffer
|
||||
if exists("b:did_ftplugin")
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
" Vim filetype plugin file
|
||||
" Language: Logcheck
|
||||
" Maintainer: Debian Vim Maintainers <pkg-vim-maintainers@lists.alioth.debian.org>
|
||||
" Last Change: 2010 Jul 29
|
||||
" License: GNU GPL, version 2.0
|
||||
" Last Change: 2012 Jan 15
|
||||
" License: Vim License
|
||||
" URL: http://hg.debian.org/hg/pkg-vim/vim/file/unstable/runtime/ftplugin/logcheck.vim
|
||||
|
||||
if exists("b:did_ftplugin")
|
||||
|
||||
@@ -2,17 +2,18 @@
|
||||
" Maintainer: David Baelde <firstname.name@ens-lyon.org>
|
||||
" Mike Leary <leary@nwlink.com>
|
||||
" Markus Mottl <markus.mottl@gmail.com>
|
||||
" Pierre Vittet <pierre-vittet@pvittet.com>
|
||||
" Stefano Zacchiroli <zack@bononia.it>
|
||||
" Vincent Aravantinos <firstname.name@imag.fr>
|
||||
" URL: http://www.ocaml.info/vim/ftplugin/ocaml.vim
|
||||
" Last Change: 2010 Jul 10 - Bugfix, thanks to Pat Rondon
|
||||
" Last Change:
|
||||
" 2012 Jan 15 - Bugfix :reloading .annot file does not close
|
||||
" splitted view (Pierre Vittet)
|
||||
" 2011 Nov 28 - Bugfix + support of multiple ml annotation file
|
||||
" (Pierre Vittet)
|
||||
" 2010 Jul 10 - Bugfix, thanks to Pat Rondon
|
||||
" 2008 Jul 17 - Bugfix related to fnameescape (VA)
|
||||
" 2007 Sep 09 - Added .annot support for ocamlbuild, python not
|
||||
" needed anymore (VA)
|
||||
" 2006 May 01 - Added .annot support for file.whateverext (SZ)
|
||||
" 2006 Apr 11 - Fixed an initialization bug; fixed ASS abbrev (MM)
|
||||
" 2005 Oct 13 - removed GPL; better matchit support (MM, SZ)
|
||||
"
|
||||
|
||||
if exists("b:did_ftplugin")
|
||||
finish
|
||||
endif
|
||||
@@ -287,24 +288,27 @@ endfunction
|
||||
endfun
|
||||
|
||||
" After call:
|
||||
" - b:annot_file_path :
|
||||
"
|
||||
" Following information have been put in s:annot_file_list, using
|
||||
" annot_file_name name as key:
|
||||
" - annot_file_path :
|
||||
" path to the .annot file corresponding to the
|
||||
" source file (dealing with ocamlbuild stuff)
|
||||
" - b:_build_path:
|
||||
" - _build_path:
|
||||
" path to the build directory even if this one is
|
||||
" not named '_build'
|
||||
" - date_of_last annot:
|
||||
" Set to 0 until we load the file. It contains the
|
||||
" date at which the file has been loaded.
|
||||
function! s:Locate_annotation()
|
||||
if !b:annotation_file_located
|
||||
|
||||
let annot_file_name = s:Fnameescape(expand('%:t:r')).'.annot'
|
||||
if !exists ("s:annot_file_list[annot_file_name]")
|
||||
silent exe 'cd' s:Fnameescape(expand('%:p:h'))
|
||||
|
||||
let annot_file_name = s:Fnameescape(expand('%:r')).'.annot'
|
||||
|
||||
" 1st case : the annot file is in the same directory as the buffer (no ocamlbuild)
|
||||
let b:annot_file_path = findfile(annot_file_name,'.')
|
||||
if b:annot_file_path != ''
|
||||
let b:annot_file_path = getcwd().'/'.b:annot_file_path
|
||||
let b:_build_path = ''
|
||||
let annot_file_path = findfile(annot_file_name,'.')
|
||||
if annot_file_path != ''
|
||||
let annot_file_path = getcwd().'/'.annot_file_path
|
||||
let _build_path = ''
|
||||
else
|
||||
" 2nd case : the buffer and the _build directory are in the same directory
|
||||
" ..
|
||||
@@ -312,12 +316,12 @@ endfunction
|
||||
" / \
|
||||
" _build .ml
|
||||
"
|
||||
let b:_build_path = finddir('_build','.')
|
||||
if b:_build_path != ''
|
||||
let b:_build_path = getcwd().'/'.b:_build_path
|
||||
let b:annot_file_path = findfile(annot_file_name,'_build')
|
||||
if b:annot_file_path != ''
|
||||
let b:annot_file_path = getcwd().'/'.b:annot_file_path
|
||||
let _build_path = finddir('_build','.')
|
||||
if _build_path != ''
|
||||
let _build_path = getcwd().'/'._build_path
|
||||
let annot_file_path = findfile(annot_file_name,'_build')
|
||||
if annot_file_path != ''
|
||||
let annot_file_path = getcwd().'/'.annot_file_path
|
||||
endif
|
||||
else
|
||||
" 3rd case : the _build directory is in a directory higher in the file hierarchy
|
||||
@@ -330,46 +334,54 @@ endfunction
|
||||
" \
|
||||
" .ml
|
||||
"
|
||||
let b:_build_path = finddir('_build',';')
|
||||
if b:_build_path != ''
|
||||
let project_path = substitute(b:_build_path,'/_build$','','')
|
||||
let _build_path = finddir('_build',';')
|
||||
if _build_path != ''
|
||||
let project_path = substitute(_build_path,'/_build$','','')
|
||||
let path_relative_to_project = s:Fnameescape(substitute(expand('%:p:h'),project_path.'/','',''))
|
||||
let b:annot_file_path = findfile(annot_file_name,project_path.'/_build/'.path_relative_to_project)
|
||||
let annot_file_path = findfile(annot_file_name,project_path.'/_build/'.path_relative_to_project)
|
||||
else
|
||||
let b:annot_file_path = findfile(annot_file_name,'**')
|
||||
let annot_file_path = findfile(annot_file_name,'**')
|
||||
"4th case : what if the user decided to change the name of the _build directory ?
|
||||
" -> we relax the constraints, it should work in most cases
|
||||
if b:annot_file_path != ''
|
||||
if annot_file_path != ''
|
||||
" 4a. we suppose the renamed _build directory is in the current directory
|
||||
let b:_build_path = matchstr(b:annot_file_path,'^[^/]*')
|
||||
if b:annot_file_path != ''
|
||||
let b:annot_file_path = getcwd().'/'.b:annot_file_path
|
||||
let b:_build_path = getcwd().'/'.b:_build_path
|
||||
let _build_path = matchstr(annot_file_path,'^[^/]*')
|
||||
if annot_file_path != ''
|
||||
let annot_file_path = getcwd().'/'.annot_file_path
|
||||
let _build_path = getcwd().'/'._build_path
|
||||
endif
|
||||
else
|
||||
let annot_file_name = ''
|
||||
"(Pierre Vittet: I have commented 4b because this was chrashing
|
||||
"my vim (it produced infinite loop))
|
||||
"
|
||||
" 4b. anarchy : the renamed _build directory may be higher in the hierarchy
|
||||
" this will work if the file for which we are looking annotations has a unique name in the whole project
|
||||
" if this is not the case, it may still work, but no warranty here
|
||||
let b:annot_file_path = findfile(annot_file_name,'**;')
|
||||
let project_path = s:Find_common_path(b:annot_file_path,expand('%:p:h'))
|
||||
let b:_build_path = matchstr(b:annot_file_path,project_path.'/[^/]*')
|
||||
"let annot_file_path = findfile(annot_file_name,'**;')
|
||||
"let project_path = s:Find_common_path(annot_file_path,expand('%:p:h'))
|
||||
"let _build_path = matchstr(annot_file_path,project_path.'/[^/]*')
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
|
||||
if b:annot_file_path == ''
|
||||
if annot_file_path == ''
|
||||
throw 'E484: no annotation file found'
|
||||
endif
|
||||
|
||||
silent exe 'cd' '-'
|
||||
|
||||
let b:annotation_file_located = 1
|
||||
let s:annot_file_list[annot_file_name]= [annot_file_path, _build_path, 0]
|
||||
endif
|
||||
endfun
|
||||
|
||||
" This in order to locate the .annot file only once
|
||||
let b:annotation_file_located = 0
|
||||
" This variable contain a dictionnary of list. Each element of the dictionnary
|
||||
" represent an annotation system. An annotation system is a list with :
|
||||
" - annotation file name as it's key
|
||||
" - annotation file path as first element of the contained list
|
||||
" - build path as second element of the contained list
|
||||
" - annot_file_last_mod (contain the date of .annot file) as third element
|
||||
let s:annot_file_list = {}
|
||||
|
||||
" 2. Finding the type information in the annotation file
|
||||
|
||||
@@ -379,16 +391,17 @@ endfunction
|
||||
" After call:
|
||||
" The current buffer is now the one containing the .annot file.
|
||||
" We manage to keep all this hidden to the user's eye.
|
||||
function! s:Enter_annotation_buffer()
|
||||
function! s:Enter_annotation_buffer(annot_file_path)
|
||||
let s:current_pos = getpos('.')
|
||||
let s:current_hidden = &l:hidden
|
||||
set hidden
|
||||
let s:current_buf = bufname('%')
|
||||
if bufloaded(b:annot_file_path)
|
||||
silent exe 'keepj keepalt' 'buffer' s:Fnameescape(b:annot_file_path)
|
||||
if bufloaded(a:annot_file_path)
|
||||
silent exe 'keepj keepalt' 'buffer' s:Fnameescape(a:annot_file_path)
|
||||
else
|
||||
silent exe 'keepj keepalt' 'view' s:Fnameescape(b:annot_file_path)
|
||||
silent exe 'keepj keepalt' 'view' s:Fnameescape(a:annot_file_path)
|
||||
endif
|
||||
call setpos(".", [0, 0 , 0 , 0])
|
||||
endfun
|
||||
|
||||
" After call:
|
||||
@@ -402,21 +415,29 @@ endfunction
|
||||
" After call:
|
||||
" The annot file is loaded and assigned to a buffer.
|
||||
" This also handles the modification date of the .annot file, eg. after a
|
||||
" compilation.
|
||||
function! s:Load_annotation()
|
||||
if bufloaded(b:annot_file_path) && b:annot_file_last_mod < getftime(b:annot_file_path)
|
||||
call s:Enter_annotation_buffer()
|
||||
silent exe "bunload"
|
||||
call s:Exit_annotation_buffer()
|
||||
" compilation (return an updated annot_file_list).
|
||||
function! s:Load_annotation(annot_file_name)
|
||||
let annot = s:annot_file_list[a:annot_file_name]
|
||||
let annot_file_path = annot[0]
|
||||
let annot_file_last_mod = 0
|
||||
if exists("annot[2]")
|
||||
let annot_file_last_mod = annot[2]
|
||||
endif
|
||||
if !bufloaded(b:annot_file_path)
|
||||
call s:Enter_annotation_buffer()
|
||||
if bufloaded(annot_file_path) && annot_file_last_mod < getftime(annot_file_path)
|
||||
" if there is a more recent file
|
||||
let nr = bufnr(annot_file_path)
|
||||
silent exe 'keepj keepalt' 'bunload' nr
|
||||
endif
|
||||
if !bufloaded(annot_file_path)
|
||||
call s:Enter_annotation_buffer(annot_file_path)
|
||||
setlocal nobuflisted
|
||||
setlocal bufhidden=hide
|
||||
setlocal noswapfile
|
||||
setlocal buftype=nowrite
|
||||
call s:Exit_annotation_buffer()
|
||||
let b:annot_file_last_mod = getftime(b:annot_file_path)
|
||||
let annot[2] = getftime(annot_file_path)
|
||||
" List updated with the new date
|
||||
let s:annot_file_list[a:annot_file_name] = annot
|
||||
endif
|
||||
endfun
|
||||
|
||||
@@ -466,8 +487,9 @@ endfunction
|
||||
"In: the pattern to look for in order to match the block
|
||||
"Out: the type information (calls s:Match_data)
|
||||
" Should be called in the annotation buffer
|
||||
function! s:Extract_type_data(block_pattern)
|
||||
call s:Enter_annotation_buffer()
|
||||
function! s:Extract_type_data(block_pattern, annot_file_name)
|
||||
let annot_file_path = s:annot_file_list[a:annot_file_name][0]
|
||||
call s:Enter_annotation_buffer(annot_file_path)
|
||||
try
|
||||
if search(a:block_pattern,'e') == 0
|
||||
throw "no_annotation"
|
||||
@@ -527,9 +549,9 @@ endfunction
|
||||
|
||||
"In: the current mode (eg. "visual", "normal", etc.)
|
||||
"Out: the type information (calls s:Extract_type_data)
|
||||
function! s:Get_type(mode)
|
||||
function! s:Get_type(mode, annot_file_name)
|
||||
let [lin1,lin2,col1,col2] = s:Match_borders(a:mode)
|
||||
return s:Extract_type_data(s:Block_pattern(lin1,lin2,col1,col2))
|
||||
return s:Extract_type_data(s:Block_pattern(lin1,lin2,col1,col2), a:annot_file_name)
|
||||
endfun
|
||||
|
||||
"d. main
|
||||
@@ -537,9 +559,10 @@ endfunction
|
||||
"After call: the type information is displayed
|
||||
if !exists("*Ocaml_get_type")
|
||||
function Ocaml_get_type(mode)
|
||||
let annot_file_name = s:Fnameescape(expand('%:t:r')).'.annot'
|
||||
call s:Locate_annotation()
|
||||
call s:Load_annotation()
|
||||
return s:Get_type(a:mode)
|
||||
call s:Load_annotation(annot_file_name)
|
||||
return s:Get_type(a:mode, annot_file_name)
|
||||
endfun
|
||||
endif
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim filetype plugin file
|
||||
" Language: PostScript
|
||||
" Maintainer: Mike Williams <mrw@eandem.co.uk>
|
||||
" Last Change: 27th June 2002
|
||||
" Language: PostScript
|
||||
" Maintainer: Mike Williams <mrw@eandem.co.uk>
|
||||
" Last Change: 16th January 2012
|
||||
|
||||
" Only do this when not done yet for this buffer
|
||||
if exists("b:did_ftplugin")
|
||||
@@ -11,6 +11,9 @@ endif
|
||||
" Don't load another plugin for this buffer
|
||||
let b:did_ftplugin = 1
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
" PS comment formatting
|
||||
setlocal comments=b:%
|
||||
setlocal formatoptions-=t formatoptions+=rol
|
||||
@@ -21,11 +24,12 @@ if !exists("b:match_words")
|
||||
let b:match_words = '<<:>>,\<begin\>:\<end\>,\<save\>:\<restore\>,\<gsave\>:\<grestore\>'
|
||||
endif
|
||||
|
||||
set cpo-=C
|
||||
|
||||
" Define patterns for the browse file filter
|
||||
if has("gui_win32") && !exists("b:browsefilter")
|
||||
let b:browsefilter = "PostScript Files (*.ps)\t*.ps\n" .
|
||||
\ "EPS Files (*.eps)\t*.eps\n" .
|
||||
\ "All Files (*.*)\t*.*\n"
|
||||
endif
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
|
||||
@@ -1,13 +1,32 @@
|
||||
" Vim filetype plugin
|
||||
" Language: Scheme
|
||||
" Maintainer: Sergey Khorev <sergey.khorev@gmail.com>
|
||||
" URL: http://iamphet.nm.ru/vim
|
||||
" 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: Nov 22, 2004
|
||||
" Last Change: Jan 9, 2012
|
||||
|
||||
runtime! ftplugin/lisp.vim ftplugin/lisp_*.vim ftplugin/lisp/*.vim
|
||||
" Only do this when not done yet for this buffer
|
||||
if exists("b:did_ftplugin")
|
||||
finish
|
||||
endif
|
||||
|
||||
" Don't load another plugin for this buffer
|
||||
let b:did_ftplugin = 1
|
||||
|
||||
" Copy-paste from ftplugin/lisp.vim
|
||||
setl comments=:;
|
||||
setl define=^\\s*(def\\k*
|
||||
setl formatoptions-=t
|
||||
setl iskeyword+=+,-,*,/,%,<,=,>,:,$,?,!,@-@,94
|
||||
setl lisp
|
||||
|
||||
" make comments behaviour like in c.vim
|
||||
" e.g. insertion of ;;; and ;; on normal "O" or "o" when staying in comment
|
||||
setl comments^=:;;;,:;;,sr:#\|,mb:\|,ex:\|#
|
||||
setl formatoptions+=croql
|
||||
|
||||
" Scheme-specific settings
|
||||
if exists("b:is_mzscheme") || exists("is_mzscheme")
|
||||
" improve indenting
|
||||
setl iskeyword+=#,%,^
|
||||
|
||||
@@ -1,13 +1,16 @@
|
||||
" Plugin to update the %changelog section of RPM spec files
|
||||
" Filename: spec.vim
|
||||
" Maintainer: Gustavo Niemeyer <niemeyer@conectiva.com>
|
||||
" Last Change: Wed, 10 Apr 2002 16:28:52 -0300
|
||||
" Last Change: 2011 Dec 25 by Thilo Six
|
||||
|
||||
if exists("b:did_ftplugin")
|
||||
finish
|
||||
endif
|
||||
let b:did_ftplugin = 1
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
if !exists("no_plugin_maps") && !exists("no_spec_maps")
|
||||
if !hasmapto("<Plug>SpecChangelog")
|
||||
map <buffer> <LocalLeader>c <Plug>SpecChangelog
|
||||
@@ -166,3 +169,6 @@ let b:match_words =
|
||||
\ '^Name:^%description:^%clean:^%setup:^%build:^%install:^%files:' .
|
||||
\ '^%package:^%preun:^%postun:^%changelog'
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
|
||||
|
||||
@@ -1,128 +1,144 @@
|
||||
" Vim indent file
|
||||
" Language: Erlang
|
||||
" Maintainer: Csaba Hoch <csaba.hoch@gmail.com>
|
||||
" Contributor: Edwin Fine <efine145_nospam01 at usa dot net>
|
||||
" Last Change: 2008 Mar 12
|
||||
" Author: Csaba Hoch <csaba.hoch@gmail.com>
|
||||
" Contributors: Edwin Fine <efine145_nospam01 at usa dot net>
|
||||
" Pawel 'kTT' Salata <rockplayer.pl@gmail.com>
|
||||
" Ricardo Catalinas Jiménez <jimenezrick@gmail.com>
|
||||
" License: Vim license
|
||||
" Version: 2011/09/06
|
||||
|
||||
" Only load this indent file when no other was loaded.
|
||||
" Only load this indent file when no other was loaded
|
||||
if exists("b:did_indent")
|
||||
finish
|
||||
finish
|
||||
else
|
||||
let b:did_indent = 1
|
||||
endif
|
||||
let b:did_indent = 1
|
||||
|
||||
setlocal indentexpr=ErlangIndent()
|
||||
setlocal indentkeys+==after,=end,=catch,=),=],=}
|
||||
|
||||
" Only define the functions once.
|
||||
" Only define the functions once
|
||||
if exists("*ErlangIndent")
|
||||
finish
|
||||
finish
|
||||
endif
|
||||
|
||||
" The function go through the whole line, analyses it and sets the indentation
|
||||
" (ind variable).
|
||||
" l: the number of the line to be examined.
|
||||
function s:ErlangIndentAtferLine(l)
|
||||
let i = 0 " the index of the current character in the line
|
||||
let length = strlen(a:l) " the length of the line
|
||||
" The function goes through the whole line, analyses it and returns the
|
||||
" indentation level.
|
||||
"
|
||||
" line: the line to be examined
|
||||
" return: the indentation level of the examined line
|
||||
function s:ErlangIndentAfterLine(line)
|
||||
let linelen = strlen(a:line) " the length of the line
|
||||
let i = 0 " the index of the current character in the line
|
||||
let ind = 0 " how much should be the difference between the indentation of
|
||||
" the current line and the indentation of the next line?
|
||||
" e.g. +1: the indentation of the next line should be equal to
|
||||
" the indentation of the current line plus one shiftwidth
|
||||
let lastFun = 0 " the last token was a 'fun'
|
||||
let lastReceive = 0 " the last token was a 'receive'; needed for 'after'
|
||||
let lastHashMark = 0 " the last token was a 'hashmark'
|
||||
let last_fun = 0 " the last token was a 'fun'
|
||||
let last_receive = 0 " the last token was a 'receive'; needed for 'after'
|
||||
let last_hash_sym = 0 " the last token was a '#'
|
||||
|
||||
while 0<= i && i < length
|
||||
" Ignore comments
|
||||
if a:line =~# '^\s*%'
|
||||
return 0
|
||||
endif
|
||||
|
||||
" Partial function head where the guard is missing
|
||||
if a:line =~# "\\(^\\l[[:alnum:]_]*\\)\\|\\(^'[^']\\+'\\)(" && a:line !~# '->'
|
||||
return 2
|
||||
endif
|
||||
|
||||
" The missing guard from the split function head
|
||||
if a:line =~# '^\s*when\s\+.*->'
|
||||
return -1
|
||||
endif
|
||||
|
||||
while 0<=i && i<linelen
|
||||
" m: the next value of the i
|
||||
if a:l[i] == '%'
|
||||
break
|
||||
elseif a:l[i] == '"'
|
||||
let m = matchend(a:l,'"\%([^"\\]\|\\.\)*"',i)
|
||||
let lastReceive = 0
|
||||
elseif a:l[i] == "'"
|
||||
let m = matchend(a:l,"'[^']*'",i)
|
||||
let lastReceive = 0
|
||||
elseif a:l[i] =~# "[a-z]"
|
||||
let m = matchend(a:l,".[[:alnum:]_]*",i)
|
||||
if lastFun
|
||||
if a:line[i] == '"'
|
||||
let m = matchend(a:line,'"\%([^"\\]\|\\.\)*"',i)
|
||||
let last_receive = 0
|
||||
elseif a:line[i] == "'"
|
||||
let m = matchend(a:line,"'[^']*'",i)
|
||||
let last_receive = 0
|
||||
elseif a:line[i] =~# "[a-z]"
|
||||
let m = matchend(a:line,".[[:alnum:]_]*",i)
|
||||
if last_fun
|
||||
let ind = ind - 1
|
||||
let lastFun = 0
|
||||
let lastReceive = 0
|
||||
elseif a:l[(i):(m-1)] =~# '^\%(case\|if\|try\)$'
|
||||
let last_fun = 0
|
||||
let last_receive = 0
|
||||
elseif a:line[(i):(m-1)] =~# '^\%(case\|if\|try\)$'
|
||||
let ind = ind + 1
|
||||
elseif a:l[(i):(m-1)] =~# '^receive$'
|
||||
elseif a:line[(i):(m-1)] =~# '^receive$'
|
||||
let ind = ind + 1
|
||||
let lastReceive = 1
|
||||
elseif a:l[(i):(m-1)] =~# '^begin$'
|
||||
let last_receive = 1
|
||||
elseif a:line[(i):(m-1)] =~# '^begin$'
|
||||
let ind = ind + 2
|
||||
let lastReceive = 0
|
||||
elseif a:l[(i):(m-1)] =~# '^end$'
|
||||
let last_receive = 0
|
||||
elseif a:line[(i):(m-1)] =~# '^end$'
|
||||
let ind = ind - 2
|
||||
let lastReceive = 0
|
||||
elseif a:l[(i):(m-1)] =~# '^after$'
|
||||
if lastReceive == 0
|
||||
let last_receive = 0
|
||||
elseif a:line[(i):(m-1)] =~# '^after$'
|
||||
if last_receive == 0
|
||||
let ind = ind - 1
|
||||
else
|
||||
let ind = ind + 0
|
||||
end
|
||||
let lastReceive = 0
|
||||
elseif a:l[(i):(m-1)] =~# '^fun$'
|
||||
endif
|
||||
let last_receive = 0
|
||||
elseif a:line[(i):(m-1)] =~# '^fun$'
|
||||
let ind = ind + 1
|
||||
let lastFun = 1
|
||||
let lastReceive = 0
|
||||
let last_fun = 1
|
||||
let last_receive = 0
|
||||
endif
|
||||
elseif a:l[i] =~# "[A-Z_]"
|
||||
let m = matchend(a:l,".[[:alnum:]_]*",i)
|
||||
let lastReceive = 0
|
||||
elseif a:l[i] == '$'
|
||||
elseif a:line[i] =~# "[A-Z_]"
|
||||
let m = matchend(a:line,".[[:alnum:]_]*",i)
|
||||
let last_receive = 0
|
||||
elseif a:line[i] == '$'
|
||||
let m = i+2
|
||||
let lastReceive = 0
|
||||
elseif a:l[i] == "." && (i+1>=length || a:l[i+1]!~ "[0-9]")
|
||||
let last_receive = 0
|
||||
elseif a:line[i] == "." && (i+1>=linelen || a:line[i+1]!~ "[0-9]")
|
||||
let m = i+1
|
||||
if lastHashMark
|
||||
let lastHashMark = 0
|
||||
if last_hash_sym
|
||||
let last_hash_sym = 0
|
||||
else
|
||||
let ind = ind - 1
|
||||
end
|
||||
let lastReceive = 0
|
||||
elseif a:l[i] == '-' && (i+1<length && a:l[i+1]=='>')
|
||||
endif
|
||||
let last_receive = 0
|
||||
elseif a:line[i] == '-' && (i+1<linelen && a:line[i+1]=='>')
|
||||
let m = i+2
|
||||
let ind = ind + 1
|
||||
let lastReceive = 0
|
||||
elseif a:l[i] == ';'
|
||||
let last_receive = 0
|
||||
elseif a:line[i] == ';' && a:line[(i):(linelen)] !~# '.*->.*'
|
||||
let m = i+1
|
||||
let ind = ind - 1
|
||||
let lastReceive = 0
|
||||
elseif a:l[i] == '#'
|
||||
let last_receive = 0
|
||||
elseif a:line[i] == '#'
|
||||
let m = i+1
|
||||
let lastHashMark = 1
|
||||
elseif a:l[i] =~# '[({[]'
|
||||
let last_hash_sym = 1
|
||||
elseif a:line[i] =~# '[({[]'
|
||||
let m = i+1
|
||||
let ind = ind + 1
|
||||
let lastFun = 0
|
||||
let lastReceive = 0
|
||||
let lastHashMark = 0
|
||||
elseif a:l[i] =~# '[)}\]]'
|
||||
let last_fun = 0
|
||||
let last_receive = 0
|
||||
let last_hash_sym = 0
|
||||
elseif a:line[i] =~# '[)}\]]'
|
||||
let m = i+1
|
||||
let ind = ind - 1
|
||||
let lastReceive = 0
|
||||
let last_receive = 0
|
||||
else
|
||||
let m = i+1
|
||||
endif
|
||||
|
||||
let i = m
|
||||
|
||||
endwhile
|
||||
|
||||
return ind
|
||||
|
||||
endfunction
|
||||
|
||||
function s:FindPrevNonBlankNonComment(lnum)
|
||||
let lnum = prevnonblank(a:lnum)
|
||||
let line = getline(lnum)
|
||||
" continue to search above if the current line begins with a '%'
|
||||
" Continue to search above if the current line begins with a '%'
|
||||
while line =~# '^\s*%.*$'
|
||||
let lnum = prevnonblank(lnum - 1)
|
||||
if 0 == lnum
|
||||
@@ -133,12 +149,20 @@ function s:FindPrevNonBlankNonComment(lnum)
|
||||
return lnum
|
||||
endfunction
|
||||
|
||||
function ErlangIndent()
|
||||
" The function returns the indentation level of the line adjusted to a mutiple
|
||||
" of 'shiftwidth' option.
|
||||
"
|
||||
" lnum: line number
|
||||
" return: the indentation level of the line
|
||||
function s:GetLineIndent(lnum)
|
||||
return (indent(a:lnum) / &sw) * &sw
|
||||
endfunction
|
||||
|
||||
" Find a non-blank line above the current line.
|
||||
function ErlangIndent()
|
||||
" Find a non-blank line above the current line
|
||||
let lnum = prevnonblank(v:lnum - 1)
|
||||
|
||||
" Hit the start of the file, use zero indent.
|
||||
" Hit the start of the file, use zero indent
|
||||
if lnum == 0
|
||||
return 0
|
||||
endif
|
||||
@@ -146,9 +170,14 @@ function ErlangIndent()
|
||||
let prevline = getline(lnum)
|
||||
let currline = getline(v:lnum)
|
||||
|
||||
let ind = indent(lnum) + &sw * s:ErlangIndentAtferLine(prevline)
|
||||
let ind_after = s:ErlangIndentAfterLine(prevline)
|
||||
if ind_after != 0
|
||||
let ind = s:GetLineIndent(lnum) + ind_after * &sw
|
||||
else
|
||||
let ind = indent(lnum) + ind_after * &sw
|
||||
endif
|
||||
|
||||
" special cases:
|
||||
" Special cases:
|
||||
if prevline =~# '^\s*\%(after\|end\)\>'
|
||||
let ind = ind + 2*&sw
|
||||
endif
|
||||
@@ -158,8 +187,8 @@ function ErlangIndent()
|
||||
if currline =~# '^\s*after\>'
|
||||
let plnum = s:FindPrevNonBlankNonComment(v:lnum-1)
|
||||
if getline(plnum) =~# '^[^%]*\<receive\>\s*\%(%.*\)\=$'
|
||||
let ind = ind - 1*&sw
|
||||
" If the 'receive' is not in the same line as the 'after'
|
||||
let ind = ind - 1*&sw
|
||||
else
|
||||
let ind = ind - 2*&sw
|
||||
endif
|
||||
@@ -181,26 +210,4 @@ function ErlangIndent()
|
||||
let ind = 0
|
||||
endif
|
||||
return ind
|
||||
|
||||
endfunction
|
||||
|
||||
" TODO:
|
||||
"
|
||||
" f() ->
|
||||
" x("foo
|
||||
" bar")
|
||||
" ,
|
||||
" bad_indent.
|
||||
"
|
||||
" fun
|
||||
" init/0,
|
||||
" bad_indent
|
||||
"
|
||||
" #rec
|
||||
" .field,
|
||||
" bad_indent
|
||||
"
|
||||
" case X of
|
||||
" 1 when A; B ->
|
||||
" bad_indent
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim indent file
|
||||
" Language: Fortran95 (and Fortran90, Fortran77, F and elf90)
|
||||
" Version: 0.39
|
||||
" Last Change: 2011 May 30
|
||||
" Version: 0.40
|
||||
" Last Change: 2011 Dec. 28
|
||||
" Maintainer: Ajit J. Thakkar <ajit@unb.ca>; <http://www.unb.ca/chem/ajit/>
|
||||
" Usage: Do :help fortran-indent from Vim
|
||||
|
||||
@@ -11,6 +11,9 @@ if exists("b:did_indent")
|
||||
endif
|
||||
let b:did_indent = 1
|
||||
|
||||
let s:cposet=&cpoptions
|
||||
set cpoptions&vim
|
||||
|
||||
setlocal indentkeys+==~end,=~case,=~if,=~else,=~do,=~where,=~elsewhere,=~select
|
||||
setlocal indentkeys+==~endif,=~enddo,=~endwhere,=~endselect,=~elseif
|
||||
setlocal indentkeys+==~type,=~interface,=~forall,=~associate,=~block,=~enum
|
||||
@@ -67,9 +70,6 @@ else
|
||||
endif
|
||||
endif
|
||||
|
||||
let s:cposet=&cpoptions
|
||||
set cpoptions-=C
|
||||
|
||||
function FortranGetIndent(lnum)
|
||||
let ind = indent(a:lnum)
|
||||
let prevline=getline(a:lnum)
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
" Language: gitolite configuration
|
||||
" URL: https://github.com/tmatilai/gitolite.vim
|
||||
" Maintainer: Teemu Matilainen <teemu.matilainen@iki.fi>
|
||||
" Last Change: 2011-11-01
|
||||
" Last Change: 2011-12-24
|
||||
|
||||
if exists("b:did_indent")
|
||||
finish
|
||||
@@ -18,6 +18,9 @@ if exists("*GetGitoliteIndent")
|
||||
finish
|
||||
endif
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
function! GetGitoliteIndent()
|
||||
let prevln = prevnonblank(v:lnum-1)
|
||||
let pline = getline(prevln)
|
||||
@@ -37,3 +40,6 @@ function! GetGitoliteIndent()
|
||||
return 0
|
||||
endif
|
||||
endfunction
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
|
||||
@@ -1,7 +1,12 @@
|
||||
" Vim indent file
|
||||
" Language: Java
|
||||
" Maintainer: Toby Allsopp <toby.allsopp@peace.com> (resigned)
|
||||
" Last Change: 2005 Mar 28
|
||||
" Previous Maintainer: Toby Allsopp <toby.allsopp@peace.com>
|
||||
" Current Maintainer: Hong Xu <xuhdev@gmail.com>
|
||||
" Last Change: 2012 Jan 20
|
||||
" Version: 1.0
|
||||
" License: Same as Vim.
|
||||
" Copyright (c) 2012 Hong Xu
|
||||
" Before 2012, this file is maintained by Toby Allsopp.
|
||||
|
||||
" Only load this indent file when no other was loaded.
|
||||
if exists("b:did_indent")
|
||||
@@ -60,6 +65,13 @@ function GetJavaIndent()
|
||||
|
||||
" find start of previous line, in case it was a continuation line
|
||||
let lnum = SkipJavaBlanksAndComments(v:lnum - 1)
|
||||
|
||||
" If the previous line starts with '@', we should have the same indent as
|
||||
" the previous one
|
||||
if getline(lnum) =~ '^\s*@\S\+\s*$'
|
||||
return indent(lnum)
|
||||
endif
|
||||
|
||||
let prev = lnum
|
||||
while prev > 1
|
||||
let next_prev = SkipJavaBlanksAndComments(prev - 1)
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
" Vim indent file
|
||||
" Language: Lisp
|
||||
" Maintainer: Sergey Khorev <sergey.khorev@gmail.com>
|
||||
" URL: http://iamphet.nm.ru/vim
|
||||
" Last Change: 2005 May 19
|
||||
" URL: http://sites.google.com/site/khorser/opensource/vim
|
||||
" Last Change: 2012 Jan 10
|
||||
|
||||
" Only load this indent file when no other was loaded.
|
||||
if exists("b:did_indent")
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
" Vim indent file
|
||||
" Language: OCaml
|
||||
" Maintainers: Jean-Francois Yuen <jfyuen@happycoders.org>
|
||||
" Mike Leary <leary@nwlink.com>
|
||||
" Markus Mottl <markus.mottl@gmail.com>
|
||||
" URL: http://www.ocaml.info/vim/indent/ocaml.vim
|
||||
" Last Change: 2005 Jun 25 - Fixed multiple bugs due to 'else\nreturn ind' working
|
||||
" 2005 May 09 - Added an option to not indent OCaml-indents specially (MM)
|
||||
" 2005 Apr 11 - Fixed an indentation bug concerning "let" (MM)
|
||||
" Maintainers: Jean-Francois Yuen <jfyuen@happycoders.org>
|
||||
" Mike Leary <leary@nwlink.com>
|
||||
" Markus Mottl <markus.mottl@gmail.com>
|
||||
" URL: http://www.ocaml.info/vim/indent/ocaml.vim
|
||||
" Last Change: 2010 Sep 04 - Added an indentation improvement by Mark Weber
|
||||
" 2005 Jun 25 - Fixed multiple bugs due to 'else\nreturn ind' working
|
||||
" 2005 May 09 - Added an option to not indent OCaml-indents specially (MM)
|
||||
|
||||
" Only load this indent file when no other was loaded.
|
||||
if exists("b:did_indent")
|
||||
@@ -44,7 +44,7 @@ let s:obj = '^\s*\(constraint\|inherit\|initializer\|method\|val\)\>\|\<\(object
|
||||
let s:type = '^\s*\%(class\|let\|type\)\>.*='
|
||||
|
||||
" Skipping pattern, for comments
|
||||
function s:GetLineWithoutFullComment(lnum)
|
||||
function! s:GetLineWithoutFullComment(lnum)
|
||||
let lnum = prevnonblank(a:lnum - 1)
|
||||
let lline = substitute(getline(lnum), '(\*.*\*)\s*$', '', '')
|
||||
while lline =~ '^\s*$' && lnum > 0
|
||||
@@ -55,7 +55,7 @@ function s:GetLineWithoutFullComment(lnum)
|
||||
endfunction
|
||||
|
||||
" Indent for ';;' to match multiple 'let'
|
||||
function s:GetInd(lnum, pat, lim)
|
||||
function! s:GetInd(lnum, pat, lim)
|
||||
let llet = search(a:pat, 'bW')
|
||||
let old = indent(a:lnum)
|
||||
while llet > 0
|
||||
@@ -70,18 +70,18 @@ function s:GetInd(lnum, pat, lim)
|
||||
endfunction
|
||||
|
||||
" Indent pairs
|
||||
function s:FindPair(pstart, pmid, pend)
|
||||
function! s:FindPair(pstart, pmid, pend)
|
||||
call search(a:pend, 'bW')
|
||||
return indent(searchpair(a:pstart, a:pmid, a:pend, 'bWn', 'synIDattr(synID(line("."), col("."), 0), "name") =~? "string\\|comment"'))
|
||||
endfunction
|
||||
|
||||
" Indent 'let'
|
||||
function s:FindLet(pstart, pmid, pend)
|
||||
function! s:FindLet(pstart, pmid, pend)
|
||||
call search(a:pend, 'bW')
|
||||
return indent(searchpair(a:pstart, a:pmid, a:pend, 'bWn', 'synIDattr(synID(line("."), col("."), 0), "name") =~? "string\\|comment" || getline(".") =~ "^\\s*let\\>.*=.*\\<in\\s*$" || getline(prevnonblank(".") - 1) =~ s:beflet'))
|
||||
endfunction
|
||||
|
||||
function GetOCamlIndent()
|
||||
function! GetOCamlIndent()
|
||||
" Find a non-commented line above the current line.
|
||||
let lnum = s:GetLineWithoutFullComment(v:lnum)
|
||||
|
||||
@@ -239,6 +239,20 @@ function GetOCamlIndent()
|
||||
elseif lline =~ '^\s*(\*' && line =~ '^\s*\*'
|
||||
let ind = ind + 1
|
||||
|
||||
else
|
||||
" Don't change indentation of this line
|
||||
" for new lines (indent==0) use indentation of previous line
|
||||
|
||||
" This is for preventing removing indentation of these args:
|
||||
" let f x =
|
||||
" let y = x + 1 in
|
||||
" Printf.printf
|
||||
" "o" << here
|
||||
" "oeuth" << don't touch indentation
|
||||
|
||||
let i = indent(v:lnum)
|
||||
return i == 0 ? ind : i
|
||||
|
||||
endif
|
||||
|
||||
" Subtract a 'shiftwidth' after lines matching 'match ... with parser':
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim indent file
|
||||
" Language: SDL
|
||||
" Maintainer: Michael Piefel <piefel@informatik.hu-berlin.de>
|
||||
" Last Change: 2001 Sep 17
|
||||
" Maintainer: Michael Piefel <entwurf@piefel.de>
|
||||
" Last Change: 10 December 2011
|
||||
|
||||
" Shamelessly stolen from the Vim-Script indent file
|
||||
|
||||
@@ -19,7 +19,8 @@ if exists("*GetSDLIndent")
|
||||
" finish
|
||||
endif
|
||||
|
||||
set cpo-=C
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
function! GetSDLIndent()
|
||||
" Find a non-blank line above the current line.
|
||||
@@ -86,4 +87,7 @@ function! GetSDLIndent()
|
||||
return ind
|
||||
endfunction
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
|
||||
" vim:sw=2
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
" Language: LaTeX
|
||||
" Maintainer: Zhou YiChao <broken.zhou@gmail.com>
|
||||
" Created: Sat, 16 Feb 2002 16:50:19 +0100
|
||||
" Last Change: Tue, 25 Sep 2011
|
||||
" Last Change: 2011 Dec 24
|
||||
" Last Update: 25th Sep 2002, by LH :
|
||||
" (*) better support for the option
|
||||
" (*) use some regex instead of several '||'.
|
||||
@@ -37,42 +37,42 @@
|
||||
"
|
||||
" If this variable is unset or non-zero, it will use smartindent-like style
|
||||
" for "{}" and "[]"
|
||||
"
|
||||
"
|
||||
" * g:tex_indent_items
|
||||
"
|
||||
" If this variable is set, item-environments are indented like Emacs does
|
||||
" it, i.e., continuation lines are indented with a shiftwidth.
|
||||
"
|
||||
"
|
||||
" NOTE: I've already set the variable below; delete the corresponding line
|
||||
" if you don't like this behaviour.
|
||||
"
|
||||
" Per default, it is unset.
|
||||
"
|
||||
"
|
||||
" set unset
|
||||
" ----------------------------------------------------------------
|
||||
" \begin{itemize} \begin{itemize}
|
||||
" \begin{itemize} \begin{itemize}
|
||||
" \item blablabla \item blablabla
|
||||
" bla bla bla bla bla bla
|
||||
" bla bla bla bla bla bla
|
||||
" \item blablabla \item blablabla
|
||||
" bla bla bla bla bla bla
|
||||
" \end{itemize} \end{itemize}
|
||||
" bla bla bla bla bla bla
|
||||
" \end{itemize} \end{itemize}
|
||||
"
|
||||
"
|
||||
" * g:tex_items
|
||||
"
|
||||
" 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
|
||||
" 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
|
||||
" be escaped. The default is '\\bibitem\|\\item'.
|
||||
"
|
||||
" * g:tex_itemize_env
|
||||
"
|
||||
" A list of environment names, separated with '\|', where the items (item
|
||||
" commands matching g:tex_items) may appear. The default is
|
||||
"
|
||||
" A list of environment names, separated with '\|', where the items (item
|
||||
" commands matching g:tex_items) may appear. The default is
|
||||
" 'itemize\|description\|enumerate\|thebibliography'.
|
||||
"
|
||||
" * 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'.
|
||||
"
|
||||
" * g:tex_indent_and
|
||||
@@ -82,7 +82,7 @@
|
||||
" Note that this feature need to search back some line, so vim may become
|
||||
" a little slow.
|
||||
"
|
||||
" }}}
|
||||
" }}}
|
||||
|
||||
if exists("b:did_indent")
|
||||
finish
|
||||
@@ -104,7 +104,7 @@ if g:tex_indent_items
|
||||
let g:tex_itemize_env = 'itemize\|description\|enumerate\|thebibliography'
|
||||
endif
|
||||
if !exists('g:tex_items')
|
||||
let g:tex_items = '\\bibitem\|\\item'
|
||||
let g:tex_items = '\\bibitem\|\\item'
|
||||
endif
|
||||
else
|
||||
let g:tex_items = ''
|
||||
@@ -125,6 +125,8 @@ let g:tex_items = '^\s*' . g:tex_items
|
||||
if exists("*GetTeXIndent") | finish
|
||||
endif
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
function GetTeXIndent()
|
||||
" Find a non-blank line above the current line.
|
||||
@@ -137,7 +139,7 @@ function GetTeXIndent()
|
||||
|
||||
" At the start of the file use zero indent.
|
||||
if lnum == 0
|
||||
return 0
|
||||
return 0
|
||||
endif
|
||||
|
||||
let line = getline(lnum) " last line
|
||||
@@ -159,7 +161,7 @@ function GetTeXIndent()
|
||||
|
||||
|
||||
if lnum == 0
|
||||
return 0
|
||||
return 0
|
||||
endif
|
||||
|
||||
let ind = indent(lnum)
|
||||
@@ -171,7 +173,7 @@ function GetTeXIndent()
|
||||
|
||||
" Add a 'shiftwidth' after beginning of environments.
|
||||
" 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
|
||||
" ZYC modification : \end after \begin won't cause wrong indent anymore
|
||||
if line =~ '\\begin{.*}' && line !~ g:tex_noindent_env
|
||||
@@ -247,4 +249,7 @@ function GetTeXIndent()
|
||||
return ind
|
||||
endfunction
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
|
||||
" vim: set sw=4 textwidth=80:
|
||||
|
||||
@@ -19,7 +19,7 @@ if &cp || exists("g:loaded_getscriptPlugin")
|
||||
endif
|
||||
finish
|
||||
endif
|
||||
let g:loaded_getscriptPlugin = "v33"
|
||||
let g:loaded_getscriptPlugin = "v34"
|
||||
let s:keepcpo = &cpo
|
||||
set cpo&vim
|
||||
|
||||
|
||||
@@ -14,7 +14,7 @@
|
||||
if &cp || exists("g:loaded_tarPlugin")
|
||||
finish
|
||||
endif
|
||||
let g:loaded_tarPlugin = "v27"
|
||||
let g:loaded_tarPlugin = "v28"
|
||||
let s:keepcpo = &cpo
|
||||
set cpo&vim
|
||||
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
if &cp || exists("g:loaded_vimballPlugin")
|
||||
finish
|
||||
endif
|
||||
let g:loaded_vimballPlugin = "v34"
|
||||
let g:loaded_vimballPlugin = "v35"
|
||||
let s:keepcpo = &cpo
|
||||
set cpo&vim
|
||||
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
" zipPlugin.vim: Handles browsing zipfiles
|
||||
" PLUGIN PORTION
|
||||
" Date: Oct 05, 2007
|
||||
" Date: Aug 15, 2011
|
||||
" Maintainer: Charles E Campbell, Jr <NdrOchip@ScampbellPfamily.AbizM-NOSPAM>
|
||||
" License: Vim License (see vim's :help license)
|
||||
" Copyright: Copyright (C) 2005,2006 Charles E. Campbell, Jr. {{{1
|
||||
" Copyright: Copyright (C) 2005-2011 Charles E. Campbell, Jr. {{{1
|
||||
" Permission is hereby granted to use and distribute this code,
|
||||
" with or without modifications, provided that this copyright
|
||||
" notice is copied with it. Like anything else that's free,
|
||||
@@ -20,7 +20,7 @@
|
||||
if &cp || exists("g:loaded_zipPlugin")
|
||||
finish
|
||||
endif
|
||||
let g:loaded_zipPlugin = "v24"
|
||||
let g:loaded_zipPlugin = "v25"
|
||||
let s:keepcpo = &cpo
|
||||
set cpo&vim
|
||||
|
||||
@@ -40,7 +40,7 @@ augroup zip
|
||||
au FileWriteCmd zipfile:*/* call zip#Write(expand("<amatch>"))
|
||||
endif
|
||||
|
||||
au BufReadCmd *.zip,*.jar,*.xpi,*.war,*.ear,*.celzip call zip#Browse(expand("<amatch>"))
|
||||
au BufReadCmd *.zip,*.jar,*.xpi,*.war,*.ear,*.celzip,*.oxt call zip#Browse(expand("<amatch>"))
|
||||
augroup END
|
||||
|
||||
" ---------------------------------------------------------------------
|
||||
|
||||
@@ -29,7 +29,7 @@
|
||||
+ # soundslike mapping from Aspell
|
||||
+ # Aspell phonetics for Irish, by Kevin Scannell <scannell@slu.edu>
|
||||
+ # Copyright 2002, 2003 Kevin P. Scannell, distributed under GNU GPL
|
||||
+ # version 2.0
|
||||
+ # version 2.0 or the Vim license (attribution by Kevin Scannell, Jan 2012)
|
||||
+
|
||||
+ SAL followup 0 # else breaks QU^, e.g.
|
||||
+ SAL collapse_result 1 # no double letters in resulting strings
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
+ # soundslike mapping from Aspell
|
||||
+ # Aspell phonetics for Irish, by Kevin Scannell <scannell@slu.edu>
|
||||
+ # Copyright 2002, 2003 Kevin P. Scannell, distributed under GNU GPL
|
||||
+ # version 2.0
|
||||
+ # version 2.0 or the Vim license (attribution by Kevin Scannell, Jan 2012)
|
||||
+
|
||||
+ SAL followup 0 # else breaks QU^, e.g.
|
||||
+ SAL collapse_result 1 # no double letters in resulting strings
|
||||
|
||||
@@ -27,7 +27,7 @@
|
||||
+ # soundslike mapping from Aspell
|
||||
+ # swedish_phonet.dat - Swedish phonetic transformation rules for aspell
|
||||
+ # Copyright (C) 2000 Martin Norb<72>ck <d95mback@dtek.chalmers.se>
|
||||
+ # distributed under GNU GPL
|
||||
+ # distributed under GNU GPL or the Vim license, at your choice.
|
||||
+ # version 0.2
|
||||
+
|
||||
+ SAL & &
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim syntax file
|
||||
" Language: ABEL
|
||||
" Maintainer: John Cook <john.cook@kla-tencor.com>
|
||||
" Last Change: 2001 Sep 2
|
||||
" Maintainer: John Cook <johncook3@gmail.com>
|
||||
" Last Change: 2011 Dec 27
|
||||
|
||||
" For version 5.x: Clear all syntax items
|
||||
" For version 6.x: Quit when a syntax file was already loaded
|
||||
@@ -11,6 +11,9 @@ elseif exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
" this language is oblivious to case
|
||||
syn case ignore
|
||||
|
||||
@@ -164,4 +167,8 @@ if version >= 508 || !exists("did_abel_syn_inits")
|
||||
endif
|
||||
|
||||
let b:current_syntax = "abel"
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
|
||||
" vim:ts=8
|
||||
|
||||
@@ -2,12 +2,15 @@
|
||||
" Language: ART-IM and ART*Enterprise
|
||||
" Maintainer: Dorai Sitaram <ds26@gte.com>
|
||||
" URL: http://www.ccs.neu.edu/~dorai/vimplugins/vimplugins.html
|
||||
" Last Change: Nov 6, 2002
|
||||
" Last Change: 2011 Dec 28 by Thilo Six
|
||||
|
||||
if exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
syn case ignore
|
||||
|
||||
syn keyword artspform => and assert bind
|
||||
@@ -42,3 +45,6 @@ hi def link artspform statement
|
||||
hi def link artvariable function
|
||||
|
||||
let b:current_syntax = "art"
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
" Maintainer: Erik Wognsen <erik.wognsen@gmail.com>
|
||||
" Previous maintainer:
|
||||
" Kevin Dahlhausen <kdahlhaus@yahoo.com>
|
||||
" Last Change: 2010 Apr 18
|
||||
" Last Change: 2012 Jan 5
|
||||
|
||||
" Thanks to Ori Avtalion for feedback on the comment markers!
|
||||
|
||||
@@ -15,6 +15,9 @@ elseif exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
syn case ignore
|
||||
|
||||
" storage types
|
||||
@@ -40,7 +43,7 @@ syn match asmIdentifier "[a-z_][a-z0-9_]*"
|
||||
" Various #'s as defined by GAS ref manual sec 3.6.2.1
|
||||
" Technically, the first decNumber def is actually octal,
|
||||
" since the value of 0-7 octal is the same as 0-7 decimal,
|
||||
" I prefer to map it as decimal:
|
||||
" I (Kevin) prefer to map it as decimal:
|
||||
syn match decNumber "0\+[1-7]\=[\t\n$,; ]"
|
||||
syn match decNumber "[1-9]\d*"
|
||||
syn match octNumber "0[0-7][0-7]\+"
|
||||
@@ -49,14 +52,34 @@ syn match binNumber "0[bB][0-1]*"
|
||||
|
||||
syn keyword asmTodo contained TODO
|
||||
|
||||
" GAS supports various comment markers as described here:
|
||||
" http://sourceware.org/binutils/docs-2.19/as/Comments.html
|
||||
" I have commented out the ARM comment marker "@" by default as I think more
|
||||
" people are using "@" with the .type directive. See
|
||||
" http://sourceware.org/binutils/docs-2.19/as/Type.html
|
||||
|
||||
" GAS supports one type of multi line comments:
|
||||
syn region asmComment start="/\*" end="\*/" contains=asmTodo
|
||||
|
||||
" Line comment characters depend on the target architecture and command line
|
||||
" options and some comments may double as logical line number directives or
|
||||
" preprocessor commands. This situation is described at
|
||||
" http://sourceware.org/binutils/docs-2.22/as/Comments.html
|
||||
" Some line comment characters have other meanings for other targets. For
|
||||
" example, .type directives may use the `@' character which is also an ARM
|
||||
" comment marker.
|
||||
" As a compromise to accommodate what I arbitrarily assume to be the most
|
||||
" frequently used features of the most popular architectures (and also the
|
||||
" non-GNU assembly languages that use this syntax file because their asm files
|
||||
" are also named *.asm), the following are used as line comment characters:
|
||||
syn match asmComment "[#;!|].*" contains=asmTodo
|
||||
" syn match asmComment "@.*" contains=asmTodo
|
||||
|
||||
" Side effects of this include:
|
||||
" - When `;' is used to separate statements on the same line (many targets
|
||||
" support this), all statements except the first get highlighted as
|
||||
" comments. As a remedy, remove `;' from the above.
|
||||
" - ARM comments are not highlighted correctly. For ARM, uncomment the
|
||||
" following two lines and comment the one above.
|
||||
"syn match asmComment "@.*" contains=asmTodo
|
||||
"syn match asmComment "^#.*" contains=asmTodo
|
||||
|
||||
" Advanced users of specific architectures will probably want to change the
|
||||
" comment highlighting or use a specific, more comprehensive syntax file.
|
||||
|
||||
syn match asmInclude "\.include"
|
||||
syn match asmCond "\.if"
|
||||
@@ -97,7 +120,7 @@ if version >= 508 || !exists("did_asm_syntax_inits")
|
||||
HiLink octNumber Number
|
||||
HiLink binNumber Number
|
||||
|
||||
HiLink asmIdentifier Identifier
|
||||
HiLink asmIdentifier Identifier
|
||||
HiLink asmType Type
|
||||
|
||||
delcommand HiLink
|
||||
@@ -105,4 +128,7 @@ endif
|
||||
|
||||
let b:current_syntax = "asm"
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
|
||||
" vim: ts=8
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim syntax file
|
||||
" Language: awk, nawk, gawk, mawk
|
||||
" Maintainer: Antonio Colombo <azc10@yahoo.com>
|
||||
" Last Change: 2005 Mar 16
|
||||
" Maintainer: Antonio Colombo <azc100@gmail.com>
|
||||
" Last Change: 2012 Jan 31
|
||||
|
||||
" AWK ref. is: Alfred V. Aho, Brian W. Kernighan, Peter J. Weinberger
|
||||
" The AWK Programming Language, Addison-Wesley, 1988
|
||||
@@ -25,6 +25,9 @@ elseif exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
" A bunch of useful Awk keywords
|
||||
" AWK ref. p. 188
|
||||
syn keyword awkStatement break continue delete exit
|
||||
@@ -213,4 +216,7 @@ endif
|
||||
|
||||
let b:current_syntax = "awk"
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
|
||||
" vim: ts=8
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim syntax file
|
||||
" Language: AYacc
|
||||
" Maintainer: Mathieu Clabaut <mathieu.clabaut@free.fr>
|
||||
" LastChange: 02 May 2001
|
||||
" LastChange: 2011 Dec 25
|
||||
" Original: Yacc, maintained by Dr. Charles E. Campbell, Jr.
|
||||
" Comment: Replaced sourcing c.vim file by ada.vim and rename yacc*
|
||||
" in ayacc*
|
||||
@@ -22,6 +22,9 @@ else
|
||||
unlet b:current_syntax
|
||||
endif
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
" Clusters
|
||||
syn cluster ayaccActionGroup contains=ayaccDelim,cInParen,cTodo,cIncluded,ayaccDelim,ayaccCurlyError,ayaccUnionCurly,ayaccUnion,cUserLabel,cOctalZero,cCppOut2,cCppSkip,cErrInBracket,cErrInParen,cOctalError
|
||||
syn cluster ayaccUnionGroup contains=ayaccKey,cComment,ayaccCurly,cType,cStructure,cStorageClass,ayaccUnionCurly
|
||||
@@ -83,4 +86,6 @@ endif
|
||||
|
||||
let b:current_syntax = "ayacc"
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
" vim: ts=15
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim syntax file
|
||||
" Language: BASIC
|
||||
" Maintainer: Allan Kelly <allan@fruitloaf.co.uk>
|
||||
" Last Change: Tue Sep 14 14:24:23 BST 1999
|
||||
" Last Change: 2011 Dec 25 by Thilo Six
|
||||
|
||||
" First version based on Micro$soft QBASIC circa 1989, as documented in
|
||||
" 'Learn BASIC Now' by Halvorson&Rygmyr. Microsoft Press 1989.
|
||||
@@ -16,6 +16,9 @@ elseif exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
" A bunch of useful BASIC keywords
|
||||
syn keyword basicStatement BEEP beep Beep BLOAD bload Bload BSAVE bsave Bsave
|
||||
syn keyword basicStatement CALL call Call ABSOLUTE absolute Absolute
|
||||
@@ -171,4 +174,6 @@ endif
|
||||
|
||||
let b:current_syntax = "basic"
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
" vim: ts=8
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
" Language: BibTeX (bibliographic database format for (La)TeX)
|
||||
" Maintainer: Bernd Feige <Bernd.Feige@gmx.net>
|
||||
" Filenames: *.bib
|
||||
" Last Change: Mar 23, 2011
|
||||
" Last Change: 2011 Dec 25
|
||||
|
||||
" Thanks to those who pointed out problems with this file or supplied fixes!
|
||||
|
||||
@@ -16,6 +16,9 @@ elseif exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
" Ignore case
|
||||
syn case ignore
|
||||
|
||||
@@ -93,3 +96,6 @@ if version >= 508 || !exists("did_bib_syn_inits")
|
||||
endif
|
||||
|
||||
let b:current_syntax = "bib"
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim syntax file
|
||||
" Language: Blank 1.4.1
|
||||
" Maintainer: Rafal M. Sulejman <unefunge@friko2.onet.pl>
|
||||
" Last change: 21 Jul 2000
|
||||
" Last change: 2011 Dec 28 by Thilo Six
|
||||
|
||||
" For version 5.x: Clear all syntax items
|
||||
" For version 6.x: Quit when a syntax file was already loaded
|
||||
@@ -11,6 +11,9 @@ elseif exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
syn case ignore
|
||||
|
||||
" Blank instructions
|
||||
@@ -43,4 +46,7 @@ if version >= 508 || !exists("did_blank_syntax_inits")
|
||||
endif
|
||||
|
||||
let b:current_syntax = "blank"
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
" vim: ts=8
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
" Vim syntax file
|
||||
" Language: Bazaar (bzr) commit file
|
||||
" Maintainer: Dmitry Vasiliev <dima at hlabs dot spb dot ru>
|
||||
" URL: http://www.hlabs.spb.ru/vim/bzr.vim
|
||||
" Last Change: 2009-01-27
|
||||
" Maintainer: Dmitry Vasiliev <dima at hlabs dot org>
|
||||
" URL: https://github.com/hdima/vim-scripts/blob/master/syntax/bzr.vim
|
||||
" Last Change: 2012-02-11
|
||||
" Filenames: bzr_log.*
|
||||
" Version: 1.2.1
|
||||
" Version: 1.2.2
|
||||
"
|
||||
" Thanks:
|
||||
"
|
||||
|
||||
@@ -1,13 +1,16 @@
|
||||
" Vim syntax file
|
||||
" Language: C
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2011 Sep 07
|
||||
" Last Change: 2012 Jan 14
|
||||
|
||||
" Quit when a (custom) syntax file was already loaded
|
||||
if exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
" A bunch of useful C keywords
|
||||
syn keyword cStatement goto break return continue asm
|
||||
syn keyword cLabel case default
|
||||
@@ -59,6 +62,25 @@ syn match cSpecialCharacter display "L\='\\\o\{1,3}'"
|
||||
syn match cSpecialCharacter display "'\\x\x\{1,2}'"
|
||||
syn match cSpecialCharacter display "L'\\x\x\+'"
|
||||
|
||||
if !exists("c_no_c11") " ISO C11
|
||||
if exists("c_no_cformat")
|
||||
syn region cString start=+\%(U\|u8\=\)"+ skip=+\\\\\|\\"+ end=+"+ contains=cSpecial,@Spell
|
||||
else
|
||||
syn region cString start=+\%(U\|u8\=\)"+ skip=+\\\\\|\\"+ end=+"+ contains=cSpecial,cFormat,@Spell
|
||||
endif
|
||||
syn match cCharacter "[Uu]'[^\\]'"
|
||||
syn match cCharacter "[Uu]'[^']*'" contains=cSpecial
|
||||
if exists("c_gnu")
|
||||
syn match cSpecialError "[Uu]'\\[^'\"?\\abefnrtv]'"
|
||||
syn match cSpecialCharacter "[Uu]'\\['\"?\\abefnrtv]'"
|
||||
else
|
||||
syn match cSpecialError "[Uu]'\\[^'\"?\\abfnrtv]'"
|
||||
syn match cSpecialCharacter "[Uu]'\\['\"?\\abfnrtv]'"
|
||||
endif
|
||||
syn match cSpecialCharacter display "[Uu]'\\\o\{1,3}'"
|
||||
syn match cSpecialCharacter display "[Uu]'\\x\x\+'"
|
||||
endif
|
||||
|
||||
"when wanted, highlight trailing white space
|
||||
if exists("c_space_errors")
|
||||
if !exists("c_no_trail_space_error")
|
||||
@@ -178,7 +200,7 @@ if !exists("c_no_ansi") || exists("c_ansi_typedefs")
|
||||
syn keyword cType mbstate_t wctrans_t wint_t wctype_t
|
||||
endif
|
||||
if !exists("c_no_c99") " ISO C99
|
||||
syn keyword cType bool complex
|
||||
syn keyword cType _Bool bool _Complex complex _Imaginary imaginary
|
||||
syn keyword cType int8_t int16_t int32_t int64_t
|
||||
syn keyword cType uint8_t uint16_t uint32_t uint64_t
|
||||
syn keyword cType int_least8_t int_least16_t int_least32_t int_least64_t
|
||||
@@ -200,6 +222,16 @@ endif
|
||||
if !exists("c_no_c99")
|
||||
syn keyword cStorageClass inline restrict
|
||||
endif
|
||||
if !exists("c_no_c11")
|
||||
syn keyword cStorageClass _Alignas alignas
|
||||
syn keyword cOperator _Alignof alignof
|
||||
syn keyword cStorageClass _Atomic
|
||||
syn keyword cOperator _Generic
|
||||
syn keyword cStorageClass _Noreturn noreturn
|
||||
syn keyword cOperator _Static_assert static_assert
|
||||
syn keyword cStorageClass _Thread_local thread_local
|
||||
syn keyword cType char16_t char32_t
|
||||
endif
|
||||
|
||||
if !exists("c_no_ansi") || exists("c_ansi_constants") || exists("c_gnu")
|
||||
if exists("c_gnu")
|
||||
@@ -390,4 +422,6 @@ hi def link cCppOut Comment
|
||||
|
||||
let b:current_syntax = "c"
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
" vim: ts=8
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
" Language: Clean
|
||||
" Author: Pieter van Engelen <pietere@sci.kun.nl>
|
||||
" Co-Author: Arthur van Leeuwen <arthurvl@sci.kun.nl>
|
||||
" Last Change: Fri Sep 29 11:35:34 CEST 2000
|
||||
" Last Change: 2011 Dec 25 by Thilo Six
|
||||
|
||||
" For version 5.x: Clear all syntax items
|
||||
" For version 6.x: Quit when a syntax file was already loaded
|
||||
@@ -12,6 +12,9 @@ elseif exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
" Some Clean-keywords
|
||||
syn keyword cleanConditional if case
|
||||
syn keyword cleanLabel let! with where in of
|
||||
@@ -91,4 +94,6 @@ endif
|
||||
|
||||
let b:current_syntax = "clean"
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
" vim: ts=4
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
" Language: Clipper 5.2 & FlagShip
|
||||
" Maintainer: C R Zamana <zamana@zip.net>
|
||||
" Some things based on c.vim by Bram Moolenaar and pascal.vim by Mario Eusebio
|
||||
" Last Change: Sat Sep 09 2000
|
||||
" Last Change: 2011 Dec 29 by Thilo Six
|
||||
|
||||
" For version 5.x: Clear all syntax items
|
||||
" For version 6.x: Quit when a syntax file was already loaded
|
||||
@@ -12,6 +12,9 @@ elseif exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
" Exceptions for my "Very Own" (TM) user variables naming style.
|
||||
" If you don't like this, comment it
|
||||
syn match clipperUserVariable "\<[a,b,c,d,l,n,o,u,x][A-Z][A-Za-z0-9_]*\>"
|
||||
@@ -140,4 +143,6 @@ endif
|
||||
|
||||
let b:current_syntax = "clipper"
|
||||
|
||||
" vim: ts=4
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
" vim: ts=8
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim syntax file
|
||||
" Language: Essbase script
|
||||
" Maintainer: Raul Segura Acevedo <raulseguraaceved@netscape.net>
|
||||
" Last change: 2001 Sep 25
|
||||
" Last change: 2011 Dec 25 by Thilo Six
|
||||
|
||||
" For version 5.x: Clear all syntax items
|
||||
" For version 6.x: Quit when a syntax file was already loaded
|
||||
@@ -11,6 +11,9 @@ elseif exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
" folds: fix/endfix and comments
|
||||
sy region EssFold start="\<Fix" end="EndFix" transparent fold
|
||||
|
||||
@@ -196,4 +199,6 @@ endif
|
||||
|
||||
let b:current_syntax = "csc"
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
" vim: ts=8
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim syntax file
|
||||
" Language: CUPL
|
||||
" Maintainer: John Cook <john.cook@kla-tencor.com>
|
||||
" Last Change: 2001 Apr 25
|
||||
" Maintainer: John Cook <johncook3@gmail.com>
|
||||
" Last Change: 2011 Dec 27
|
||||
|
||||
" For version 5.x: Clear all syntax items
|
||||
" For version 6.x: Quit when a syntax file was already loaded
|
||||
@@ -11,6 +11,9 @@ elseif exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
" this language is oblivious to case.
|
||||
syn case ignore
|
||||
|
||||
@@ -127,4 +130,8 @@ if version >= 508 || !exists("did_cupl_syn_inits")
|
||||
endif
|
||||
|
||||
let b:current_syntax = "cupl"
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
|
||||
" vim:ts=8
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim syntax file
|
||||
" Language: CWEB
|
||||
" Maintainer: Andreas Scherer <andreas.scherer@pobox.com>
|
||||
" Last Change: April 30, 2001
|
||||
" Last Change: 2011 Dec 25 by Thilo Six
|
||||
|
||||
" Details of the CWEB language can be found in the article by Donald E. Knuth
|
||||
" and Silvio Levy, "The CWEB System of Structured Documentation", included as
|
||||
@@ -36,6 +36,9 @@ endif
|
||||
" C/C++ section of a CWEB chunk or in inner C/C++ context in "|...|" groups.
|
||||
syntax include @webIncludedC <sfile>:p:h/cpp.vim
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
" Inner C/C++ context (ICC) should be quite simple as it's comprised of
|
||||
" material in "|...|"; however the naive definition for this region would
|
||||
" hickup at the innocious "\|" TeX macro. Note: For the time being we expect
|
||||
@@ -77,4 +80,6 @@ endif
|
||||
|
||||
let b:current_syntax = "cweb"
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
" vim: ts=8
|
||||
|
||||
@@ -2,20 +2,21 @@
|
||||
"
|
||||
" Language: D
|
||||
" Maintainer: Jesse Phillips <Jesse.K.Phillips+D@gmail.com>
|
||||
" Last Change: 2010 Sep 21
|
||||
" Version: 0.22
|
||||
" Last Change: 2012 Jan 11
|
||||
" Version: 0.24
|
||||
"
|
||||
" Contributors:
|
||||
" - Jason Mills <jasonmills@nf.sympatico.ca>: original Maintainer
|
||||
" - Kirk McDonald: version 0.17 updates, with minor modifications
|
||||
" (http://paste.dprogramming.com/dplmb7qx?view=hidelines)
|
||||
" - Tim Keating: patch to fix a bug in highlighting the `\` literal
|
||||
" - Frank Benoit: Fixed a bug that caused some identifiers and numbers to highlight as octal number errors.
|
||||
" - Shougo Matsushita <Shougo.Matsu@gmail.com>: updates for latest 2.047 highlighting
|
||||
" - Ellery Newcomer: Fixed some highlighting bugs.
|
||||
" - Steven N. Oliver: #! highlighting
|
||||
" - Kirk McDonald
|
||||
" - Tim Keating
|
||||
" - Frank Benoit
|
||||
" - Shougo Matsushita <Shougo.Matsu@gmail.com>
|
||||
" - Ellery Newcomer
|
||||
" - Steven N. Oliver
|
||||
" - Sohgo Takeuchi
|
||||
"
|
||||
" Please email me with bugs, comments, and suggestions.
|
||||
" Please submit bugs/comments/suggestions to the github repo:
|
||||
" https://github.com/he-the-great/d.vim
|
||||
"
|
||||
" Options:
|
||||
" d_comment_strings - Set to highlight strings and numbers in comments.
|
||||
@@ -23,34 +24,23 @@
|
||||
" d_hl_operator_overload - Set to highlight D's specially named functions
|
||||
" that when overloaded implement unary and binary operators (e.g. opCmp).
|
||||
"
|
||||
" Todo:
|
||||
" - Determine a better method of sync'ing than simply setting minlines
|
||||
" to a large number.
|
||||
"
|
||||
" - Several keywords (e.g., in, out, inout) are both storage class and
|
||||
" statements, depending on their context. Perhaps use pattern matching to
|
||||
" figure out which and highlight appropriately. For now I have made such
|
||||
" keywords storage classes so their highlighting is consistent with other
|
||||
" keywords that are commonly used with them, but are true storage classes,
|
||||
" such as lazy. Similarly, I made some statement keywords (e.g. body) storage
|
||||
" classes.
|
||||
"
|
||||
" - Mark contents of the asm statement body as special
|
||||
"
|
||||
" - Maybe highlight the 'exit', 'failure', and 'success' parts of the
|
||||
" scope() statement.
|
||||
"
|
||||
" - Highlighting DDoc comments.
|
||||
"
|
||||
" d_hl_object_types - Set to highlight some common types from object.di.
|
||||
|
||||
" Quit when a syntax file was already loaded
|
||||
if exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
" Support cpoptions
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
" Set the current syntax to be known as d
|
||||
let b:current_syntax = "d"
|
||||
|
||||
" Keyword definitions
|
||||
"
|
||||
syn keyword dExternal import package module extern
|
||||
syn keyword dExternal import module
|
||||
syn keyword dConditional if else switch
|
||||
syn keyword dBranch goto break continue
|
||||
syn keyword dRepeat while for do foreach foreach_reverse
|
||||
@@ -77,21 +67,34 @@ if exists("d_hl_operator_overload")
|
||||
syn keyword dOpOverload opCall opSlice opSliceAssign opSliceOpAssign
|
||||
syn keyword dOpOverload opPos opAdd_r opMul_r opAnd_r opOr_r opXor_r
|
||||
syn keyword dOpOverload opIn opIn_r opPow opDispatch opStar opDot
|
||||
syn keyword dOpOverload opApply opApplyReverse
|
||||
syn keyword dOpOverload opApply opApplyReverse opDollar
|
||||
syn keyword dOpOverload opUnary opIndexUnary opSliceUnary
|
||||
syn keyword dOpOverload opBinary opBinaryRight
|
||||
endif
|
||||
|
||||
syn keyword dType void ushort int uint long ulong float
|
||||
syn keyword dType byte ubyte double bit char wchar ucent cent
|
||||
syn keyword dType short bool dchar wstring dstring
|
||||
syn keyword dType real ireal ifloat idouble
|
||||
syn keyword dType creal cfloat cdouble
|
||||
syn keyword dType byte ubyte short ushort int uint long ulong cent ucent
|
||||
syn keyword dType void bool bit
|
||||
syn keyword dType float double real
|
||||
syn keyword dType ushort int uint long ulong float
|
||||
syn keyword dType char wchar dchar string wstring dstring
|
||||
syn keyword dType ireal ifloat idouble creal cfloat cdouble
|
||||
syn keyword dType size_t ptrdiff_t sizediff_t equals_t hash_t
|
||||
if exists("d_hl_object_types")
|
||||
syn keyword dType Object Throwable AssociativeArray Error Exception
|
||||
syn keyword dType Interface OffsetTypeInfo TypeInfo TypeInfo_Typedef
|
||||
syn keyword dType TypeInfo_Enum TypeInfo_Pointer TypeInfo_Array
|
||||
syn keyword dType TypeInfo_StaticArray TypeInfo_AssociativeArray
|
||||
syn keyword dType TypeInfo_Function TypeInfo_Delegate TypeInfo_Class
|
||||
syn keyword dType ClassInfo TypeInfo_Interface TypeInfo_Struct
|
||||
syn keyword dType TypeInfo_Tuple TypeInfo_Const TypeInfo_Invariant
|
||||
syn keyword dType TypeInfo_Shared TypeInfo_Inout MemberInfo
|
||||
syn keyword dType MemberInfo_field MemberInfo_function ModuleInfo
|
||||
endif
|
||||
syn keyword dDebug deprecated unittest invariant
|
||||
syn keyword dExceptions throw try catch finally
|
||||
syn keyword dScopeDecl public protected private export
|
||||
syn keyword dScopeDecl public protected private export package
|
||||
syn keyword dStatement debug return with
|
||||
syn keyword dStatement function delegate __traits mixin macro
|
||||
syn keyword dStatement function delegate __ctfe mixin macro
|
||||
syn keyword dStorageClass in out inout ref lazy body
|
||||
syn keyword dStorageClass pure nothrow
|
||||
syn keyword dStorageClass auto static override final abstract volatile
|
||||
@@ -100,15 +103,26 @@ syn keyword dStorageClass synchronized shared immutable const lazy
|
||||
syn keyword dPragma pragma
|
||||
syn keyword dIdentifier _arguments _argptr __vptr __monitor _ctor _dtor
|
||||
syn keyword dScopeIdentifier contained exit success failure
|
||||
syn keyword dTraitsIdentifier contained isAbstractClass isArithmetic isAssociativeArray
|
||||
syn keyword dTraitsIdentifier contained isFinalClass isFloating isIntegral isScalar
|
||||
syn keyword dTraitsIdentifier contained isStaticArray isUnsigned isVirtualFunction
|
||||
syn keyword dTraitsIdentifier contained isAbstractFunction isFinalFunction isStaticFunction
|
||||
syn keyword dTraitsIdentifier contained isRef isOut isLazy hasMember identifier getMember
|
||||
syn keyword dTraitsIdentifier contained getOverloads getVirtualFunctions parent compiles
|
||||
syn keyword dTraitsIdentifier contained classInstanceSize allMembers derivedMembers isSame
|
||||
syn keyword dExternIdentifier contained Windows Pascal Java System D
|
||||
syn keyword dAttribute contained safe trusted system
|
||||
syn keyword dAttribute contained property disable
|
||||
syn keyword dVersionIdentifier contained DigitalMars GNU LDC LLVM
|
||||
syn keyword dVersionIdentifier contained X86 X86_64 Windows Win32 Win64
|
||||
syn keyword dVersionIdentifier contained linux Posix OSX FreeBSD
|
||||
syn keyword dVersionIdentifier contained LittleEndian BigEndian D_Coverage
|
||||
syn keyword dVersionIdentifier contained D_Ddoc D_InlineAsm_X86
|
||||
syn keyword dVersionIdentifier contained D_InlineAsm_X86_64 D_LP64 D_PIC
|
||||
syn keyword dVersionIdentifier contained unittest D_Version2 none all
|
||||
syn keyword dVersionIdentifier contained DigitalMars GNU LDC SDC D_NET
|
||||
syn keyword dVersionIdentifier contained X86 X86_64 ARM PPC PPC64 IA64 MIPS MIPS64 Alpha
|
||||
syn keyword dVersionIdentifier contained SPARC SPARC64 S390 S390X HPPA HPPA64 SH SH64
|
||||
syn keyword dVersionIdentifier contained linux Posix OSX FreeBSD Windows Win32 Win64
|
||||
syn keyword dVersionIdentifier contained OpenBSD BSD Solaris AIX SkyOS SysV3 SysV4 Hurd
|
||||
syn keyword dVersionIdentifier contained Cygwin MinGW
|
||||
syn keyword dVersionIdentifier contained LittleEndian BigEndian
|
||||
syn keyword dVersionIdentifier contained D_InlineAsm_X86 D_InlineAsm_X86_64
|
||||
syn keyword dVersionIdentifier contained D_Version2 D_Coverage D_Ddoc D_LP64 D_PIC
|
||||
syn keyword dVersionIdentifier contained unittest none all
|
||||
|
||||
" Highlight the sharpbang
|
||||
syn match dSharpBang "\%^#!.*" display
|
||||
@@ -117,23 +131,38 @@ syn match dSharpBang "\%^#!.*" display
|
||||
syn match dAnnotation "@[_$a-zA-Z][_$a-zA-Z0-9_]*\>" contains=dAttribute
|
||||
|
||||
" Version Identifiers
|
||||
syn match dVersion "[^.]version" nextgroup=dVersionInside
|
||||
syn match dVersion "^version" nextgroup=dVersionInside
|
||||
syn match dVersionInside "([_a-zA-Z][_a-zA-Z0-9]*\>" transparent contained contains=dVersionIdentifier
|
||||
syn match dVersion "[^.]\<version\>"hs=s+1 nextgroup=dVersionInside
|
||||
syn match dVersion "^\<version\>" nextgroup=dVersionInside
|
||||
syn match dVersionInside "\s*([_a-zA-Z][_a-zA-Z0-9]*\>" transparent contained contains=dVersionIdentifier
|
||||
|
||||
" Scope StorageClass
|
||||
syn match dStorageClass "scope"
|
||||
syn match dStorageClass "\<scope\>"
|
||||
|
||||
" Traits Expression
|
||||
syn match dStatement "\<__traits\>"
|
||||
|
||||
" Extern Modifier
|
||||
syn match dExternal "\<extern\>"
|
||||
|
||||
" Scope Identifiers
|
||||
syn match dScope "scope\s*([_a-zA-Z][_a-zA-Z0-9]*\>"he=s+5 contains=dScopeIdentifier
|
||||
syn match dScope "\<scope\s*([_a-zA-Z][_a-zA-Z0-9]*\>"he=s+5 contains=dScopeIdentifier
|
||||
|
||||
" Traits Identifiers
|
||||
syn match dTraits "\<__traits\s*([_a-zA-Z][_a-zA-Z0-9]*\>"he=s+8 contains=dTraitsIdentifier
|
||||
|
||||
" Necessary to highlight C++ in extern modifiers.
|
||||
syn match dExternIdentifier "C\(++\)\?" contained
|
||||
|
||||
" Extern Identifiers
|
||||
syn match dExtern "\<extern\s*([_a-zA-Z][_a-zA-Z0-9\+]*\>"he=s+6 contains=dExternIdentifier
|
||||
|
||||
" String is a statement and a module name.
|
||||
syn match dType "^string"
|
||||
syn match dType "[^.]\s*\<string\>"ms=s+1
|
||||
syn match dType "[^.]\<string\>"ms=s+1
|
||||
syn match dType "^\<string\>"
|
||||
|
||||
" Assert is a statement and a module name.
|
||||
syn match dAssert "^assert"
|
||||
syn match dAssert "[^.]\s*\<assert\>"ms=s+1
|
||||
syn match dAssert "[^.]\<assert\>"ms=s+1
|
||||
syn match dAssert "^\<assert\>"
|
||||
|
||||
" dTokens is used by the token string highlighting
|
||||
syn cluster dTokens contains=dExternal,dConditional,dBranch,dRepeat,dBoolean
|
||||
@@ -161,12 +190,12 @@ if exists("d_comment_strings")
|
||||
syn region dBlockCommentString contained start=+"+ end=+"+ end=+\*/+me=s-1,he=s-1 contains=dCommentStar,dUnicode,dEscSequence,@Spell
|
||||
syn region dNestedCommentString contained start=+"+ end=+"+ end="+"me=s-1,he=s-1 contains=dCommentPlus,dUnicode,dEscSequence,@Spell
|
||||
syn region dLineCommentString contained start=+"+ end=+$\|"+ contains=dUnicode,dEscSequence,@Spell
|
||||
syn region dBlockComment start="/\*" end="\*/" contains=dBlockCommentString,dTodo,@Spell
|
||||
syn region dNestedComment start="/+" end="+/" contains=dNestedComment,dNestedCommentString,dTodo,@Spell
|
||||
syn region dBlockComment start="/\*" end="\*/" contains=dBlockCommentString,dTodo,@Spell fold
|
||||
syn region dNestedComment start="/+" end="+/" contains=dNestedComment,dNestedCommentString,dTodo,@Spell fold
|
||||
syn match dLineComment "//.*" contains=dLineCommentString,dTodo,@Spell
|
||||
else
|
||||
syn region dBlockComment start="/\*" end="\*/" contains=dBlockCommentString,dTodo,@Spell
|
||||
syn region dNestedComment start="/+" end="+/" contains=dNestedComment,dNestedCommentString,dTodo,@Spell
|
||||
syn region dBlockComment start="/\*" end="\*/" contains=dBlockCommentString,dTodo,@Spell fold
|
||||
syn region dNestedComment start="/+" end="+/" contains=dNestedComment,dNestedCommentString,dTodo,@Spell fold
|
||||
syn match dLineComment "//.*" contains=dLineCommentString,dTodo,@Spell
|
||||
endif
|
||||
|
||||
@@ -280,6 +309,10 @@ syn case match
|
||||
" TODO: Highlight following Integer and optional Filespec.
|
||||
syn region dPragma start="#\s*\(line\>\)" skip="\\$" end="$"
|
||||
|
||||
" Block
|
||||
"
|
||||
syn region dBlock start="{" end="}" transparent fold
|
||||
|
||||
|
||||
" The default highlighting.
|
||||
"
|
||||
@@ -330,12 +363,14 @@ hi def link dAnnotation PreProc
|
||||
hi def link dSharpBang PreProc
|
||||
hi def link dAttribute StorageClass
|
||||
hi def link dIdentifier Identifier
|
||||
hi def link dVersionIdentifier Identifier
|
||||
hi def link dVersion dStatement
|
||||
hi def link dScopeIdentifier dStatement
|
||||
hi def link dVersionIdentifier Identifier
|
||||
hi def link dScope dStorageClass
|
||||
|
||||
let b:current_syntax = "d"
|
||||
hi def link dScopeIdentifier Identifier
|
||||
hi def link dTraits dStatement
|
||||
hi def link dTraitsIdentifier Identifier
|
||||
hi def link dExtern dExternal
|
||||
hi def link dExternIdentifier Identifier
|
||||
|
||||
" Marks contents of the asm statment body as special
|
||||
|
||||
@@ -464,3 +499,5 @@ syn keyword dAsmOpCode contained pfnacc pfpnacc pfrcp pfrcpit1 pfrcpit2
|
||||
syn keyword dAsmOpCode contained pfrsqit1 pfrsqrt pfsub pfsubr pi2fd
|
||||
syn keyword dAsmOpCode contained pmulhrw pswapd
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
" Maintainer: Reimer Behrends <behrends@cse.msu.edu>
|
||||
" With much input from Jocelyn Fiat <fiat@eiffel.com>
|
||||
" See http://www.cse.msu.edu/~behrends/vim/ for the most current version.
|
||||
" Last Change: 2001 May 09
|
||||
" Last Change: 2011 Dec 31 by Thilo Six
|
||||
|
||||
" For version 5.x: Clear all syntax items
|
||||
" For version 6.x: Quit when a syntax file was already loaded
|
||||
@@ -13,6 +13,9 @@ elseif exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
" Option handling
|
||||
|
||||
if exists("eiffel_ignore_case")
|
||||
@@ -193,4 +196,6 @@ endif
|
||||
|
||||
let b:current_syntax = "eiffel"
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
" vim: ts=8
|
||||
|
||||
@@ -1,229 +1,126 @@
|
||||
" Vim syntax file
|
||||
" Language: erlang (ERicsson LANGuage)
|
||||
" http://www.erlang.se
|
||||
" http://www.erlang.org
|
||||
" Maintainer: Csaba Hoch <csaba.hoch@gmail.com>
|
||||
" Former Maintainer: Kreąimir Marľić (Kresimir Marzic) <kmarzic@fly.srk.fer.hr>
|
||||
" Last update: 12-Mar-2008
|
||||
" Filenames: .erl
|
||||
" Language: Erlang
|
||||
" Author: Oscar Hellstr<74>m <oscar@oscarh.net> (http://oscar.hellstrom.st)
|
||||
" Contributors: Ricardo Catalinas Jim<69>nez <jimenezrick@gmail.com>
|
||||
" License: Vim license
|
||||
" Version: 2011/09/11
|
||||
|
||||
|
||||
" There are three sets of highlighting in here:
|
||||
" One is "erlang_characters", second is "erlang_functions" and third
|
||||
" is "erlang_keywords".
|
||||
" If you want to disable keywords highlighting, put in your .vimrc:
|
||||
" let erlang_keywords=1
|
||||
" If you want to disable erlang BIF highlighting, put in your .vimrc
|
||||
" this:
|
||||
" let erlang_functions=1
|
||||
" If you want to disable special characters highlighting, put in
|
||||
" your .vimrc:
|
||||
" let erlang_characters=1
|
||||
|
||||
|
||||
" For version 5.x: Clear all syntax items
|
||||
" For version 6.x: Quit when a syntax file was already loaded
|
||||
if version < 600
|
||||
syntax clear
|
||||
elseif exists ("b:current_syntax")
|
||||
finish
|
||||
if exists("b:current_syntax")
|
||||
finish
|
||||
else
|
||||
let b:current_syntax = "erlang"
|
||||
endif
|
||||
|
||||
if !exists("g:erlang_highlight_bif")
|
||||
let g:erlang_highlight_bif = 1
|
||||
endif
|
||||
|
||||
" Case sensitive
|
||||
" Erlang is case sensitive
|
||||
syn case match
|
||||
|
||||
" Match groups
|
||||
syn match erlangStringModifier /\\./ contained
|
||||
syn match erlangStringModifier /\~\%(-\?[0-9*]\+\)\?\%(\.[0-9*]\+\..\?\)\?\%(c\|f\|e\|g\|s\|w\|p\|W\|P\|B\|X\|#\|b\|+\|n\|i\)/ contained
|
||||
syn match erlangModifier /\$\\\?./
|
||||
|
||||
if ! exists ("erlang_characters")
|
||||
syn match erlangInteger /\<\%([0-9]\+#[0-9a-fA-F]\+\|[0-9]\+\)\>/
|
||||
syn match erlangFloat /\<[0-9]\+\.[0-9]\+\%(e-\?[0-9]\+\)\?\>/
|
||||
|
||||
" Basic elements
|
||||
syn match erlangComment "%.*$" contains=erlangAnnotation,erlangTodo
|
||||
syn match erlangAnnotation " \@<=@\%(clear\|docfile\|end\|headerfile\|todo\|TODO\|type\|author\|copyright\|doc\|reference\|see\|since\|title\|version\|deprecated\|hidden\|private\|equiv\|spec\|throws\)" contained
|
||||
syn match erlangAnnotation "`[^']*'" contained
|
||||
syn keyword erlangTodo TODO FIXME XXX contained
|
||||
syn match erlangModifier "\~\a\|\\\a\|\\\\" contained
|
||||
syn match erlangSpecialCharacter ":\|_\|@\|\\\|\"\|\."
|
||||
syn match erlangSeparator "(\|)\|{\|}\|\[\|]\||\|||\|;\|,\|?\|->\|#" contained
|
||||
syn region erlangString start=+"+ skip=+\\.+ end=+"+ contains=erlangModifier
|
||||
syn region erlangAtom start=+'+ skip=+\\'+ end=+'+
|
||||
syn keyword erlangTodo TODO FIXME XXX contained
|
||||
syn match erlangComment /%.*$/ contains=@Spell,erlangTodo,erlangAnnotation
|
||||
syn match erlangAnnotation /\%(%\s\)\@<=@\%(author\|clear\|copyright\|deprecated\|doc\|docfile\|end\|equiv\|headerfile\|hidden\|private\|reference\|see\|since\|spec\|throws\|title\|todo\|TODO\|type\|version\)/ contained
|
||||
syn match erlangAnnotation /`[^']\+'/ contained
|
||||
|
||||
" Operators
|
||||
syn match erlangOperator "+\|-\|\*\|\/"
|
||||
syn keyword erlangOperator div rem or xor bor bxor bsl bsr
|
||||
syn keyword erlangOperator and band not bnot andalso orelse
|
||||
syn match erlangOperator "==\|/=\|=:=\|=/=\|<\|=<\|>\|>="
|
||||
syn match erlangOperator "++\|--\|=\|!\|<-"
|
||||
syn keyword erlangKeyword band bor bnot bsl bsr bxor div rem xor
|
||||
syn keyword erlangKeyword try catch begin receive after cond fun let query
|
||||
|
||||
" Numbers
|
||||
syn match erlangNumberInteger "\d\+" contains=erlangSeparator
|
||||
syn match erlangNumberFloat1 "\d\+\.\d\+" contains=erlangSeparator
|
||||
syn match erlangNumberFloat2 "\d\+\(\.\d\+\)\=[eE][+-]\=\d\+\(\.\d\+\)\=" contains=erlangSeparator
|
||||
syn match erlangNumberFloat3 "\d\+[#]\x\+" contains=erlangSeparator
|
||||
syn match erlangNumberHex "$\x\+" contains=erlangSeparator
|
||||
syn keyword erlangConditional case if of end
|
||||
syn keyword erlangConditional not and or andalso orelse
|
||||
syn keyword erlangConditional when
|
||||
|
||||
" Ignore '_' and '-' in words
|
||||
syn match erlangWord "\h\+\w*"
|
||||
syn keyword erlangBoolean true false
|
||||
|
||||
syn match erlangChar /\$./
|
||||
syn keyword erlangGuard is_list is_alive is_atom is_binary is_bitstring is_boolean is_tuple is_number is_integer is_float is_function is_constant is_pid is_port is_reference is_record is_process_alive
|
||||
|
||||
syn match erlangOperator /\/\|*\|+\|-\|++\|--/
|
||||
syn match erlangOperator /->\|<-\|||\||\|!\|=/
|
||||
syn match erlangOperator /=:=\|==\|\/=\|=\/=\|<\|>\|=<\|>=/
|
||||
syn keyword erlangOperator div rem
|
||||
|
||||
syn region erlangString start=/"/ end=/"/ skip=/\\/ contains=@Spell,erlangStringModifier
|
||||
|
||||
syn match erlangVariable /\<[A-Z_]\w*\>/
|
||||
syn match erlangAtom /\%(\%(^-\)\|#\)\@<!\<[a-z][A-Za-z0-9_]*\>\%(\s*[(:]\)\@!/
|
||||
syn match erlangAtom /\\\@<!'[^']*\\\@<!'/
|
||||
|
||||
syn match erlangRecord /#\w\+/
|
||||
|
||||
syn match erlangTuple /{\|}/
|
||||
syn match erlangList /\[\|\]/
|
||||
|
||||
syn match erlangAttribute /^-\%(vsn\|author\|copyright\|compile\|deprecated\|module\|export\|import\|behaviour\|behavior\|export_type\|ignore_xref\|on_load\)\s*(\@=/
|
||||
syn match erlangInclude /^-include\%(_lib\)\?\s*(\@=/
|
||||
syn match erlangRecordDef /^-record\s*(\@=/
|
||||
syn match erlangDefine /^-\%(define\|undef\)\s*(\@=/
|
||||
syn match erlangPreCondit /^-\%(ifdef\|ifndef\|else\|endif\)\%(\s*(\@=\)\?/
|
||||
|
||||
syn match erlangType /^-\%(spec\|type\)[( ]\@=/
|
||||
|
||||
syn match erlangMacro /\%(-define(\)\@<=\w\+/
|
||||
syn match erlangMacro /?\??\w\+/
|
||||
|
||||
syn match erlangBitType /\%(\/\|-\)\@<=\%(bits\|bitstring\|binary\|integer\|float\|unit\)\>/
|
||||
syn match erlangBitSize /:\@<=[0-9]\+/
|
||||
|
||||
syn match erlangBinary /<<\|>>/
|
||||
|
||||
" BIFs
|
||||
syn match erlangBIF /\%([^:0-9A-Za-z_]\|\<erlang:\)\@<=\%(abs\|apply\|atom_to_binary\|atom_to_list\|binary_part\|binary_to_atom\|binary_to_existing_atom\|binary_to_list\|binary_to_term\|bit_size\|bitstring_to_list\|byte_size\|check_process_code\|date\|delete_module\|demonitor\|disconnect_node\|element\|erase\|exit\|float\|float_to_list\|garbage_collect\|get\|get_keys\|group_leader\|hd\|integer_to_list\|iolist_size\|iolist_to_binary\|is_alive\|is_atom\|is_binary\|is_bitstring\|is_boolean\|is_float\|is_function\|is_integer\|is_list\|is_number\|is_pid\|is_port\|is_process_alive\|is_record\|is_reference\|is_tuple\|length\|link\|list_to_atom\|list_to_binary\|list_to_bitstring\|list_to_existing_atom\|list_to_float\|list_to_integer\|list_to_pid\|list_to_tuple\|load_module\|make_ref\|max\|min\|module_loaded\|monitor\|monitor_node\|node\|nodes\|now\|open_port\|pid_to_list\|port_close\|port_command\|port_connect\|port_control\|pre_loaded\|processes\|process_flag\|process_info\|purge_module\|put\|register\|registered\|round\|self\|setelement\|size\|spawn\|spawn_link\|spawn_monitor\|spawn_opt\|split_binary\|statistics\|term_to_binary\|time\|tl\|trunc\|tuple_size\|tuple_to_list\|unlink\|unregister\|whereis\)\%((\|\/[0-9]\)\@=/
|
||||
syn match erlangBIF /\<\%(erlang:\)\@<=\%(append_element\|bump_reductions\|cancel_timer\|decode_packet\|display\|function_exported\|fun_info\|fun_to_list\|get_cookie\|get_stacktrace\|hash\|is_builtin\|loaded\|load_nif\|localtime\|localtime_to_universaltime\|make_tuple\|memory\|monitor_node\|phash\|port_call\|port_info\|ports\|port_to_list\|process_display\|read_timer\|ref_to_list\|resume_process\|send\|send_after\|send_nosuspend\|set_cookie\|start_timer\|suspend_process\|system_flag\|system_info\|system_monitor\|system_profile\|trace\|trace_delivered\|trace_info\|trace_pattern\|universaltime\|universaltime_to_localtime\|yield\)(\@=/
|
||||
syn match erlangGBIF /erlang\%(:\w\)\@=/
|
||||
|
||||
" Link Erlang stuff to Vim groups
|
||||
hi link erlangTodo Todo
|
||||
hi link erlangString String
|
||||
hi link erlangNoSpellString String
|
||||
hi link erlangModifier SpecialChar
|
||||
hi link erlangStringModifier SpecialChar
|
||||
hi link erlangComment Comment
|
||||
hi link erlangAnnotation Special
|
||||
hi link erlangVariable Identifier
|
||||
hi link erlangInclude Include
|
||||
hi link erlangRecordDef Keyword
|
||||
hi link erlangAttribute Keyword
|
||||
hi link erlangKeyword Keyword
|
||||
hi link erlangMacro Macro
|
||||
hi link erlangDefine Define
|
||||
hi link erlangPreCondit PreCondit
|
||||
hi link erlangPreProc PreProc
|
||||
hi link erlangDelimiter Delimiter
|
||||
hi link erlangBitDelimiter Normal
|
||||
hi link erlangOperator Operator
|
||||
hi link erlangConditional Conditional
|
||||
hi link erlangGuard Conditional
|
||||
hi link erlangBoolean Boolean
|
||||
hi link erlangAtom Constant
|
||||
hi link erlangRecord Structure
|
||||
hi link erlangInteger Number
|
||||
hi link erlangFloat Number
|
||||
hi link erlangFloat Number
|
||||
hi link erlangFloat Number
|
||||
hi link erlangFloat Number
|
||||
hi link erlangHex Number
|
||||
hi link erlangFun Keyword
|
||||
hi link erlangList Delimiter
|
||||
hi link erlangTuple Delimiter
|
||||
hi link erlangBinary Keyword
|
||||
hi link erlangBitVariable Identifier
|
||||
hi link erlangBitType Type
|
||||
hi link erlangType Type
|
||||
hi link erlangBitSize Number
|
||||
|
||||
" Optional highlighting
|
||||
if g:erlang_highlight_bif
|
||||
hi link erlangBIF Keyword
|
||||
hi link erlangGBIF Keyword
|
||||
endif
|
||||
|
||||
if ! exists ("erlang_functions")
|
||||
" Functions call
|
||||
syn match erlangFCall "\%(\w\+\s*\.\s*\)*\w\+\s*[:@]\s*\w\+"
|
||||
|
||||
" build-in-functions (BIFs)
|
||||
syn keyword erlangBIF abs alive apply atom_to_list
|
||||
syn keyword erlangBIF binary_to_list binary_to_term
|
||||
syn keyword erlangBIF concat_binary
|
||||
syn keyword erlangBIF date disconnect_node
|
||||
syn keyword erlangBIF element erase exit
|
||||
syn keyword erlangBIF float float_to_list
|
||||
syn keyword erlangBIF get get_keys group_leader
|
||||
syn keyword erlangBIF halt hd
|
||||
syn keyword erlangBIF integer_to_list is_alive
|
||||
syn keyword erlangBIF length link list_to_atom list_to_binary
|
||||
syn keyword erlangBIF list_to_float list_to_integer list_to_pid
|
||||
syn keyword erlangBIF list_to_tuple load_module
|
||||
syn keyword erlangBIF make_ref monitor_node
|
||||
syn keyword erlangBIF node nodes now
|
||||
syn keyword erlangBIF open_port
|
||||
syn keyword erlangBIF pid_to_list process_flag
|
||||
syn keyword erlangBIF process_info process put
|
||||
syn keyword erlangBIF register registered round
|
||||
syn keyword erlangBIF self setelement size spawn
|
||||
syn keyword erlangBIF spawn_link split_binary statistics
|
||||
syn keyword erlangBIF term_to_binary throw time tl trunc
|
||||
syn keyword erlangBIF tuple_to_list
|
||||
syn keyword erlangBIF unlink unregister
|
||||
syn keyword erlangBIF whereis
|
||||
|
||||
" Other BIFs
|
||||
syn keyword erlangBIF atom binary constant function integer
|
||||
syn keyword erlangBIF list number pid ports port_close port_info
|
||||
syn keyword erlangBIF reference record
|
||||
|
||||
" erlang:BIFs
|
||||
syn keyword erlangBIF check_process_code delete_module
|
||||
syn keyword erlangBIF get_cookie hash math module_loaded
|
||||
syn keyword erlangBIF preloaded processes purge_module set_cookie
|
||||
syn keyword erlangBIF set_node
|
||||
|
||||
" functions of math library
|
||||
syn keyword erlangFunction acos asin atan atan2 cos cosh exp
|
||||
syn keyword erlangFunction log log10 pi pow power sin sinh sqrt
|
||||
syn keyword erlangFunction tan tanh
|
||||
|
||||
" Other functions
|
||||
syn keyword erlangFunction call module_info parse_transform
|
||||
syn keyword erlangFunction undefined_function
|
||||
|
||||
" Modules
|
||||
syn keyword erlangModule error_handler
|
||||
endif
|
||||
|
||||
if ! exists ("erlang_keywords")
|
||||
" Constants and Directives
|
||||
syn match erlangDirective "-behaviour\|-behavior"
|
||||
syn match erlangDirective "-compile\|-define\|-else\|-endif\|-export\|-file"
|
||||
syn match erlangDirective "-ifdef\|-ifndef\|-import\|-include_lib\|-include"
|
||||
syn match erlangDirective "-module\|-record\|-undef"
|
||||
|
||||
syn match erlangConstant "-author\|-copyright\|-doc\|-vsn"
|
||||
|
||||
" Keywords
|
||||
syn keyword erlangKeyword after begin case catch
|
||||
syn keyword erlangKeyword cond end fun if
|
||||
syn keyword erlangKeyword let of query receive
|
||||
syn keyword erlangKeyword when
|
||||
syn keyword erlangKeyword try
|
||||
|
||||
" Processes
|
||||
syn keyword erlangProcess creation current_function dictionary
|
||||
syn keyword erlangProcess group_leader heap_size high initial_call
|
||||
syn keyword erlangProcess linked low memory_in_use message_queue
|
||||
syn keyword erlangProcess net_kernel node normal priority
|
||||
syn keyword erlangProcess reductions registered_name runnable
|
||||
syn keyword erlangProcess running stack_trace status timer
|
||||
syn keyword erlangProcess trap_exit waiting
|
||||
|
||||
" Ports
|
||||
syn keyword erlangPort command count_in count_out creation in
|
||||
syn keyword erlangPort in_format linked node out owner packeting
|
||||
|
||||
" Nodes
|
||||
syn keyword erlangNode atom_tables communicating creation
|
||||
syn keyword erlangNode current_gc current_reductions current_runtime
|
||||
syn keyword erlangNode current_wall_clock distribution_port
|
||||
syn keyword erlangNode entry_points error_handler friends
|
||||
syn keyword erlangNode garbage_collection magic_cookie magic_cookies
|
||||
syn keyword erlangNode module_table monitored_nodes name next_ref
|
||||
syn keyword erlangNode ports preloaded processes reductions
|
||||
syn keyword erlangNode ref_state registry runtime wall_clock
|
||||
|
||||
" Reserved
|
||||
syn keyword erlangReserved apply_lambda module_info module_lambdas
|
||||
syn keyword erlangReserved record record_index record_info
|
||||
|
||||
" Extras
|
||||
syn keyword erlangExtra badarg nocookie false fun true
|
||||
|
||||
" Signals
|
||||
syn keyword erlangSignal badsig kill killed exit normal
|
||||
endif
|
||||
|
||||
|
||||
|
||||
" Define the default highlighting.
|
||||
" For version 5.7 and earlier: only when not done already
|
||||
" For version 5.8 and later: only when an item doesn't have highlighting yet
|
||||
if version >= 508 || !exists ("did_erlang_inits")
|
||||
if version < 508
|
||||
let did_erlang_inits = 1
|
||||
command -nargs=+ HiLink hi link <args>
|
||||
else
|
||||
command -nargs=+ HiLink hi def link <args>
|
||||
endif
|
||||
|
||||
" erlang_characters
|
||||
HiLink erlangComment Comment
|
||||
HiLink erlangAnnotation Special
|
||||
HiLink erlangTodo Todo
|
||||
HiLink erlangSpecialCharacter Special
|
||||
HiLink erlangSeparator Normal
|
||||
HiLink erlangModifier Special
|
||||
HiLink erlangOperator Operator
|
||||
HiLink erlangString String
|
||||
HiLink erlangAtom Type
|
||||
|
||||
HiLink erlangNumberInteger Number
|
||||
HiLink erlangNumberFloat1 Float
|
||||
HiLink erlangNumberFloat2 Float
|
||||
HiLink erlangNumberFloat3 Float
|
||||
HiLink erlangNumberFloat4 Float
|
||||
HiLink erlangNumberHex Number
|
||||
|
||||
HiLink erlangWord Normal
|
||||
|
||||
" erlang_functions
|
||||
HiLink erlangFCall Function
|
||||
HiLink erlangBIF Function
|
||||
HiLink erlangFunction Function
|
||||
HiLink erlangModuleFunction Function
|
||||
|
||||
" erlang_keywords
|
||||
HiLink erlangDirective Type
|
||||
HiLink erlangConstant Type
|
||||
HiLink erlangKeyword Keyword
|
||||
HiLink erlangProcess Special
|
||||
HiLink erlangPort Special
|
||||
HiLink erlangNode Special
|
||||
HiLink erlangReserved Statement
|
||||
HiLink erlangExtra Statement
|
||||
HiLink erlangSignal Statement
|
||||
|
||||
delcommand HiLink
|
||||
endif
|
||||
|
||||
|
||||
let b:current_syntax = "erlang"
|
||||
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
" Vim syntax file
|
||||
" Language: FORTH
|
||||
" Maintainer: Christian V. J. Br<42>ssow <cvjb@cvjb.de>
|
||||
" Last Change: Di 07 Jul 2009 21:38:45 CEST
|
||||
" Last Change: Sa 07 Jan 2012 21:30:55 CET
|
||||
" Filenames: *.fs,*.ft
|
||||
" URL: http://www.cvjb.de/comp/vim/forth.vim
|
||||
|
||||
" $Id: forth.vim,v 1.12 2008/07/07 21:39:12 bruessow Exp $
|
||||
" $Id: forth.vim,v 1.13 2012/01/07 21:31:31 bruessow Exp $
|
||||
|
||||
" The list of keywords is incomplete, compared with the offical ANS
|
||||
" wordlist. If you use this language, please improve it, and send me
|
||||
@@ -16,6 +16,10 @@
|
||||
" for forth.vim).
|
||||
|
||||
" Many Thanks to...
|
||||
"
|
||||
" 2012-01-07:
|
||||
" Thilo Six <T.Six at gmx dot de> send a patch for cpoptions.
|
||||
" See the discussion at http://thread.gmane.org/gmane.editors.vim.devel/32151
|
||||
"
|
||||
" 2009-06-28:
|
||||
" Josh Grams send a patch to allow the parenthesis comments at the
|
||||
@@ -47,7 +51,7 @@
|
||||
" Thomas E. Vaughan <tevaugha at ball dot com> send me a patch
|
||||
" for the parenthesis comment word, so words with a trailing
|
||||
" parenthesis will not start the highlighting for such comments.
|
||||
"
|
||||
"
|
||||
" 2003-05-10:
|
||||
" Andrew Gaul <andrew at gaul.org> send me a patch for
|
||||
" forthOperators.
|
||||
@@ -80,6 +84,9 @@ elseif exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
" Synchronization method
|
||||
syn sync ccomment
|
||||
syn sync maxlines=200
|
||||
@@ -125,7 +132,7 @@ syn keyword forthOperators F~REL F~ABS F~
|
||||
syn keyword forthOperators 0< 0<= 0<> 0= 0> 0>= < <= <> = > >= U< U<=
|
||||
syn keyword forthOperators U> U>= D0< D0<= D0<> D0= D0> D0>= D< D<= D<>
|
||||
syn keyword forthOperators D= D> D>= DU< DU<= DU> DU>= WITHIN ?NEGATE
|
||||
syn keyword forthOperators ?DNEGATE
|
||||
syn keyword forthOperators ?DNEGATE
|
||||
|
||||
" stack manipulations
|
||||
syn keyword forthStack DROP NIP DUP OVER TUCK SWAP ROT -ROT ?DUP PICK ROLL
|
||||
@@ -171,7 +178,7 @@ syn keyword forthDefine LITERAL CREATE-INTERPRET/COMPILE INTERPRETATION>
|
||||
syn keyword forthDefine <INTERPRETATION COMPILATION> <COMPILATION ] LASTXT
|
||||
syn keyword forthDefine COMP' POSTPONE, FIND-NAME NAME>INT NAME?INT NAME>COMP
|
||||
syn keyword forthDefine NAME>STRING STATE C; CVARIABLE
|
||||
syn keyword forthDefine , 2, F, C,
|
||||
syn keyword forthDefine , 2, F, C,
|
||||
syn match forthDefine "\[IFDEF]"
|
||||
syn match forthDefine "\[IFUNDEF]"
|
||||
syn match forthDefine "\[THEN]"
|
||||
@@ -210,7 +217,7 @@ syn match forthCharOps '\<\[char\]\s\S\s'
|
||||
syn region forthCharOps start=+."\s+ skip=+\\"+ end=+"+
|
||||
|
||||
" char-number conversion
|
||||
syn keyword forthConversion <<# <# # #> #>> #S (NUMBER) (NUMBER?) CONVERT D>F
|
||||
syn keyword forthConversion <<# <# # #> #>> #S (NUMBER) (NUMBER?) CONVERT D>F
|
||||
syn keyword forthConversion D>S DIGIT DPL F>D HLD HOLD NUMBER S>D SIGN >NUMBER
|
||||
syn keyword forthConversion F>S S>F
|
||||
|
||||
@@ -225,7 +232,7 @@ syn keyword forthVocs ONLY FORTH ALSO ROOT SEAL VOCS ORDER CONTEXT #VOCS
|
||||
syn keyword forthVocs VOCABULARY DEFINITIONS
|
||||
|
||||
" File keywords
|
||||
syn keyword forthFileMode R/O R/W W/O BIN
|
||||
syn keyword forthFileMode R/O R/W W/O BIN
|
||||
syn keyword forthFileWords OPEN-FILE CREATE-FILE CLOSE-FILE DELETE-FILE
|
||||
syn keyword forthFileWords RENAME-FILE READ-FILE READ-LINE KEY-FILE
|
||||
syn keyword forthFileWords KEY?-FILE WRITE-FILE WRITE-LINE EMIT-FILE
|
||||
@@ -331,4 +338,6 @@ endif
|
||||
|
||||
let b:current_syntax = "forth"
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
" vim:ts=8:sw=4:nocindent:smartindent:
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim syntax file
|
||||
" Language: Fortran95 (and Fortran90, Fortran77, F and elf90)
|
||||
" Version: 0.89
|
||||
" Last Change: 2010 July 21
|
||||
" Language: Fortran 2008 (and earlier versions: 2003, 95, 90, and 77)
|
||||
" Version: 0.93
|
||||
" Last Change: 2012 Jan. 18
|
||||
" Maintainer: Ajit J. Thakkar (ajit AT unb.ca); <http://www.unb.ca/chem/ajit/>
|
||||
" Usage: For instructions, do :help fortran-syntax from Vim
|
||||
" Credits:
|
||||
@@ -11,63 +11,48 @@
|
||||
" Walter Dieudonn<6E>, Alexander Wagner, Roman Bertle, Charles Rendleman,
|
||||
" Andrew Griffiths, Joe Krahn, and Hendrik Merx.
|
||||
|
||||
" For version 5.x: Clear all syntax items
|
||||
" For version 6.x: Quit if a syntax file is already loaded
|
||||
if version < 600
|
||||
syntax clear
|
||||
elseif exists("b:current_syntax")
|
||||
if exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
" let b:fortran_dialect = fortran_dialect if set correctly by user
|
||||
if exists("fortran_dialect")
|
||||
if fortran_dialect =~ '\<\(f\(9[05]\|77\)\|elf\|F\)\>'
|
||||
let b:fortran_dialect = matchstr(fortran_dialect,'\<\(f\(9[05]\|77\)\|elf\|F\)\>')
|
||||
else
|
||||
echohl WarningMsg | echo "Unknown value of fortran_dialect" | echohl None
|
||||
let b:fortran_dialect = "unknown"
|
||||
endif
|
||||
else
|
||||
let b:fortran_dialect = "unknown"
|
||||
endif
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
" fortran_dialect not set or set incorrectly by user,
|
||||
if b:fortran_dialect == "unknown"
|
||||
" set b:fortran_dialect from directive in first three lines of file
|
||||
let b:fortran_retype = getline(1)." ".getline(2)." ".getline(3)
|
||||
if b:fortran_retype =~ '\<fortran_dialect\s*=\s*F\>'
|
||||
let b:fortran_dialect = "F"
|
||||
elseif b:fortran_retype =~ '\<fortran_dialect\s*=\s*elf\>'
|
||||
let b:fortran_dialect = "elf"
|
||||
elseif b:fortran_retype =~ '\<fortran_dialect\s*=\s*f90\>'
|
||||
let b:fortran_dialect = "f90"
|
||||
elseif b:fortran_retype =~ '\<fortran_dialect\s*=\s*f95\>'
|
||||
let b:fortran_dialect = "f95"
|
||||
elseif b:fortran_retype =~ '\<fortran_dialect\s*=\s*f77\>'
|
||||
let b:fortran_dialect = "f77"
|
||||
else
|
||||
" no directive found, so assume f95
|
||||
let b:fortran_dialect = "f95"
|
||||
" Choose fortran_dialect using the priority:
|
||||
" source file directive > buffer-local value > global value > default
|
||||
" try using directive in first three lines of file
|
||||
let b:fortran_retype = getline(1)." ".getline(2)." ".getline(3)
|
||||
if b:fortran_retype =~? '\<fortran_dialect\s*=\s*F\>'
|
||||
let b:fortran_dialect = "F"
|
||||
elseif b:fortran_retype =~? '\<fortran_dialect\s*=\s*f08\>'
|
||||
let b:fortran_dialect = "f08"
|
||||
elseif !exists("b:fortran_dialect")
|
||||
if exists("g:fortran_dialect") && g:fortran_dialect =~# '\<F\|f08\>'
|
||||
" try global variable
|
||||
let b:fortran_dialect = g:fortran_dialect
|
||||
else " nothing found, so use default
|
||||
let b:fortran_dialect = "f08"
|
||||
endif
|
||||
unlet b:fortran_retype
|
||||
endif
|
||||
unlet! b:fortran_retype
|
||||
" make sure buffer-local value is not invalid
|
||||
if b:fortran_dialect !~# '\<F\|f08\>'
|
||||
let b:fortran_dialect = "f08"
|
||||
endif
|
||||
|
||||
" Choose between fixed and free source form if this hasn't been done yet
|
||||
if !exists("b:fortran_fixed_source")
|
||||
if b:fortran_dialect == "elf" || b:fortran_dialect == "F"
|
||||
" elf and F require free source form
|
||||
if b:fortran_dialect == "F"
|
||||
" F requires free source form
|
||||
let b:fortran_fixed_source = 0
|
||||
elseif b:fortran_dialect == "f77"
|
||||
" f77 requires fixed source form
|
||||
let b:fortran_fixed_source = 1
|
||||
elseif exists("fortran_free_source")
|
||||
" User guarantees free source form for all f90 and f95 files
|
||||
" User guarantees free source form for all fortran files
|
||||
let b:fortran_fixed_source = 0
|
||||
elseif exists("fortran_fixed_source")
|
||||
" User guarantees fixed source form for all f90 and f95 files
|
||||
" User guarantees fixed source form for all fortran files
|
||||
let b:fortran_fixed_source = 1
|
||||
else
|
||||
" f90 and f95 allow both fixed and free source form.
|
||||
" Modern fortran still allows both free and fixed 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
|
||||
@@ -93,29 +78,18 @@ endif
|
||||
|
||||
syn case ignore
|
||||
|
||||
if b:fortran_dialect !=? "f77"
|
||||
if version >= 600
|
||||
if b:fortran_fixed_source == 1
|
||||
syn match fortranConstructName "^\s\{6,}\zs\a\w*\ze\s*:"
|
||||
else
|
||||
syn match fortranConstructName "^\s*\zs\a\w*\ze\s*:"
|
||||
endif
|
||||
if exists("fortran_more_precise")
|
||||
syn match fortranConstructName "\(\<end\s*do\s\+\)\@<=\a\w*"
|
||||
syn match fortranConstructName "\(\<end\s*if\s\+\)\@<=\a\w*"
|
||||
syn match fortranConstructName "\(\<end\s*select\s\+\)\@<=\a\w*"
|
||||
endif
|
||||
else
|
||||
if b:fortran_fixed_source == 1
|
||||
syn match fortranConstructName "^\s\{6,}\a\w*\s*:"
|
||||
else
|
||||
syn match fortranConstructName "^\s*\a\w*\s*:"
|
||||
endif
|
||||
endif
|
||||
if b:fortran_fixed_source == 1
|
||||
syn match fortranConstructName "^\s\{6,}\zs\a\w*\ze\s*:"
|
||||
else
|
||||
syn match fortranConstructName "^\s*\zs\a\w*\ze\s*:"
|
||||
endif
|
||||
if exists("fortran_more_precise")
|
||||
syn match fortranConstructName "\(\<end\s*do\s\+\)\@<=\a\w*"
|
||||
syn match fortranConstructName "\(\<end\s*if\s\+\)\@<=\a\w*"
|
||||
syn match fortranConstructName "\(\<end\s*select\s\+\)\@<=\a\w*"
|
||||
endif
|
||||
|
||||
syn match fortranUnitHeader "\<end\>"
|
||||
|
||||
syn match fortranUnitHeader "\<end\>"
|
||||
syn match fortranType "\<character\>"
|
||||
syn match fortranType "\<complex\>"
|
||||
syn match fortranType "\<integer\>"
|
||||
@@ -130,6 +104,7 @@ syn match fortranUnitHeader "\<program\>"
|
||||
syn keyword fortranKeyword return stop
|
||||
syn keyword fortranConditional else then
|
||||
syn match fortranConditional "\<if\>"
|
||||
syn match fortranConditionalOb "\<if\s*(.*)\s*\d\+\s*,\s*\d\+\s*,\s*\d\+\s*$"
|
||||
syn match fortranRepeat "\<do\>"
|
||||
|
||||
syn keyword fortranTodo contained todo fixme
|
||||
@@ -141,6 +116,7 @@ syn match fortranParenError ")"
|
||||
syn match fortranOperator "\.\s*n\=eqv\s*\."
|
||||
syn match fortranOperator "\.\s*\(and\|or\|not\)\s*\."
|
||||
syn match fortranOperator "\(+\|-\|/\|\*\)"
|
||||
syn match fortranTypeOb "\<character\s*\*"
|
||||
|
||||
syn match fortranBoolean "\.\s*\(true\|false\)\s*\."
|
||||
|
||||
@@ -155,17 +131,17 @@ endif
|
||||
|
||||
syn keyword fortranIO access blank direct exist file fmt form formatted iostat name named nextrec number opened rec recl sequential status unformatted unit
|
||||
|
||||
syn keyword fortran66Intrinsic alog alog10 amax0 amax1 amin0 amin1 amod cabs ccos cexp clog csin csqrt dabs dacos dasin datan datan2 dcos dcosh ddim dexp dint dlog dlog10 dmax1 dmin1 dmod dnint dsign dsin dsinh dsqrt dtan dtanh float iabs idim idint idnint ifix isign max0 max1 min0 min1 sngl
|
||||
syn keyword fortranIntrinsicR alog alog10 amax0 amax1 amin0 amin1 amod cabs ccos cexp clog csin csqrt dabs dacos dasin datan datan2 dcos dcosh ddim dexp dint dlog dlog10 dmax1 dmin1 dmod dnint dsign dsin dsinh dsqrt dtan dtanh float iabs idim idint idnint ifix isign max0 max1 min0 min1 sngl
|
||||
|
||||
" Intrinsics provided by some vendors
|
||||
syn keyword fortranExtraIntrinsic algama cdabs cdcos cdexp cdlog cdsin cdsqrt cqabs cqcos cqexp cqlog cqsin cqsqrt dcmplx dconjg derf derfc dfloat dgamma dimag dlgama erf erfc gamma iqint qabs qacos qasin qatan qatan2 qcmplx qconjg qcos qcosh qdim qerf qerfc qexp qgamma qimag qlgama qlog qlog10 qmax1 qmin1 qmod qnint qsign qsin qsinh qsqrt qtan qtanh
|
||||
syn keyword fortranExtraIntrinsic algama cdabs cdcos cdexp cdlog cdsin cdsqrt cqabs cqcos cqexp cqlog cqsin cqsqrt dcmplx dconjg derf derfc dfloat dgamma dimag dlgama iqint qabs qacos qasin qatan qatan2 qcmplx qconjg qcos qcosh qdim qerf qerfc qexp qgamma qimag qlgama qlog qlog10 qmax1 qmin1 qmod qnint qsign qsin qsinh qsqrt qtan qtanh
|
||||
|
||||
syn keyword fortran77Intrinsic abs acos aimag aint anint asin atan atan2 char cmplx conjg cos cosh exp ichar index int log log10 max min nint sign sin sinh sqrt tan tanh
|
||||
syn match fortran77Intrinsic "\<len\s*[(,]"me=s+3
|
||||
syn match fortran77Intrinsic "\<real\s*("me=s+4
|
||||
syn keyword fortranIntrinsic abs acos aimag aint anint asin atan atan2 char cmplx conjg cos cosh exp ichar index int log log10 max min nint sign sin sinh sqrt tan tanh
|
||||
syn match fortranIntrinsic "\<len\s*[(,]"me=s+3
|
||||
syn match fortranIntrinsic "\<real\s*("me=s+4
|
||||
syn match fortranType "\<implicit\s\+real"
|
||||
syn match fortranType "^\s*real\>"
|
||||
syn match fortran90Intrinsic "\<logical\s*("me=s+7
|
||||
syn match fortranIntrinsic "\<logical\s*("me=s+7
|
||||
syn match fortranType "\<implicit\s\+logical"
|
||||
syn match fortranType "^\s*logical\>"
|
||||
|
||||
@@ -173,13 +149,13 @@ syn match fortranType "^\s*logical\>"
|
||||
" Integers
|
||||
syn match fortranNumber display "\<\d\+\(_\a\w*\)\=\>"
|
||||
" floating point number, without a decimal point
|
||||
syn match fortranFloatNoDec display "\<\d\+[deq][-+]\=\d\+\(_\a\w*\)\=\>"
|
||||
syn match fortranFloatIll display "\<\d\+[deq][-+]\=\d\+\(_\a\w*\)\=\>"
|
||||
" floating point number, starting with a decimal point
|
||||
syn match fortranFloatIniDec display "\.\d\+\([deq][-+]\=\d\+\)\=\(_\a\w*\)\=\>"
|
||||
syn match fortranFloatIll display "\.\d\+\([deq][-+]\=\d\+\)\=\(_\a\w*\)\=\>"
|
||||
" floating point number, no digits after decimal
|
||||
syn match fortranFloatEndDec display "\<\d\+\.\([deq][-+]\=\d\+\)\=\(_\a\w*\)\=\>"
|
||||
syn match fortranFloatIll display "\<\d\+\.\([deq][-+]\=\d\+\)\=\(_\a\w*\)\=\>"
|
||||
" floating point number, D or Q exponents
|
||||
syn match fortranFloatDExp display "\<\d\+\.\d\+\([dq][-+]\=\d\+\)\=\(_\a\w*\)\=\>"
|
||||
syn match fortranFloatIll display "\<\d\+\.\d\+\([dq][-+]\=\d\+\)\=\(_\a\w*\)\=\>"
|
||||
" floating point number
|
||||
syn match fortranFloat display "\<\d\+\.\d\+\(e[-+]\=\d\+\)\=\(_\a\w*\)\=\>"
|
||||
" Numbers in formats
|
||||
@@ -197,131 +173,130 @@ syn match fortranLabelNumber display "^ \d\{1,3}\s"ms=s+2,me=e-1
|
||||
syn match fortranLabelNumber display "^ \d\d\=\s"ms=s+3,me=e-1
|
||||
syn match fortranLabelNumber display "^ \d\s"ms=s+4,me=e-1
|
||||
|
||||
if version >= 600 && exists("fortran_more_precise")
|
||||
if exists("fortran_more_precise")
|
||||
" Numbers as targets
|
||||
syn match fortranTarget display "\(\<if\s*(.\+)\s*\)\@<=\(\d\+\s*,\s*\)\{2}\d\+\>"
|
||||
syn match fortranTarget display "\(\<do\s\+\)\@<=\d\+\>"
|
||||
syn match fortranTarget display "\(\<go\s*to\s*(\=\)\@<=\(\d\+\s*,\s*\)*\d\+\>"
|
||||
endif
|
||||
|
||||
syn keyword fortranTypeEx external
|
||||
syn keyword fortranIOEx format
|
||||
syn match fortranKeywordEx "\<continue\>"
|
||||
syn keyword fortranTypeR external
|
||||
syn keyword fortranIOR format
|
||||
syn match fortranKeywordR "\<continue\>"
|
||||
syn match fortranKeyword "^\s*\d\+\s\+continue\>"
|
||||
syn match fortranKeywordEx "\<go\s*to\>"
|
||||
syn region fortranStringEx start=+'+ end=+'+ contains=fortranContinueMark,fortranLeftMargin,fortranSerialNumber
|
||||
syn keyword fortran77IntrinsicEx dim lge lgt lle llt mod
|
||||
syn keyword fortranKeywordOb assign pause to
|
||||
syn match fortranKeyword "\<go\s*to\>"
|
||||
syn match fortranKeywordDel "\<go\s*to\ze\s\+.*,\s*(.*$"
|
||||
syn match fortranKeywordOb "\<go\s*to\ze\s*(\d\+.*$"
|
||||
syn region fortranStringR start=+'+ end=+'+ contains=fortranContinueMark,fortranLeftMargin,fortranSerialNumber
|
||||
syn keyword fortranIntrinsicR dim lge lgt lle llt mod
|
||||
syn keyword fortranKeywordDel assign pause
|
||||
|
||||
if b:fortran_dialect != "f77"
|
||||
syn match fortranType "\<type\>"
|
||||
syn keyword fortranType none
|
||||
|
||||
syn match fortranType "\<type\>"
|
||||
syn keyword fortranType none
|
||||
syn keyword fortranStructure private public intent optional
|
||||
syn keyword fortranStructure pointer target allocatable
|
||||
syn keyword fortranStorageClass in out
|
||||
syn match fortranStorageClass "\<kind\s*="me=s+4
|
||||
syn match fortranStorageClass "\<len\s*="me=s+3
|
||||
|
||||
syn keyword fortranStructure private public intent optional
|
||||
syn keyword fortranStructure pointer target allocatable
|
||||
syn keyword fortranStorageClass in out
|
||||
syn match fortranStorageClass "\<kind\s*="me=s+4
|
||||
syn match fortranStorageClass "\<len\s*="me=s+3
|
||||
syn match fortranUnitHeader "\<module\>"
|
||||
syn keyword fortranUnitHeader use only contains
|
||||
syn keyword fortranUnitHeader result operator assignment
|
||||
syn match fortranUnitHeader "\<interface\>"
|
||||
syn match fortranUnitHeader "\<recursive\>"
|
||||
syn keyword fortranKeyword allocate deallocate nullify cycle exit
|
||||
syn match fortranConditional "\<select\>"
|
||||
syn keyword fortranConditional case default where elsewhere
|
||||
|
||||
syn match fortranUnitHeader "\<module\>"
|
||||
syn keyword fortranUnitHeader use only contains
|
||||
syn keyword fortranUnitHeader result operator assignment
|
||||
syn match fortranUnitHeader "\<interface\>"
|
||||
syn match fortranUnitHeader "\<recursive\>"
|
||||
syn keyword fortranKeyword allocate deallocate nullify cycle exit
|
||||
syn match fortranConditional "\<select\>"
|
||||
syn keyword fortranConditional case default where elsewhere
|
||||
syn match fortranOperator "\(\(>\|<\)=\=\|==\|/=\|=\)"
|
||||
syn match fortranOperator "=>"
|
||||
|
||||
syn match fortranOperator "\(\(>\|<\)=\=\|==\|/=\|=\)"
|
||||
syn match fortranOperator "=>"
|
||||
syn region fortranString start=+"+ end=+"+ contains=fortranLeftMargin,fortranContinueMark,fortranSerialNumber
|
||||
syn keyword fortranIO pad position action delim readwrite
|
||||
syn keyword fortranIO eor advance nml
|
||||
|
||||
syn region fortranString start=+"+ end=+"+ contains=fortranLeftMargin,fortranContinueMark,fortranSerialNumber
|
||||
syn keyword fortranIO pad position action delim readwrite
|
||||
syn keyword fortranIO eor advance nml
|
||||
syn keyword fortranIntrinsic adjustl adjustr all allocated any associated bit_size btest ceiling count cshift date_and_time digits dot_product eoshift epsilon exponent floor fraction huge iand ibclr ibits ibset ieor ior ishft ishftc lbound len_trim matmul maxexponent maxloc maxval merge minexponent minloc minval modulo mvbits nearest pack precision present product radix random_number random_seed range repeat reshape rrspacing
|
||||
syn keyword fortranIntrinsic scale scan selected_int_kind selected_real_kind set_exponent shape size spacing spread sum system_clock tiny transpose trim ubound unpack verify
|
||||
syn match fortranIntrinsic "\<not\>\(\s*\.\)\@!"me=s+3
|
||||
syn match fortranIntrinsic "\<kind\>\s*[(,]"me=s+4
|
||||
|
||||
syn keyword fortran90Intrinsic adjustl adjustr all allocated any associated bit_size btest ceiling count cshift date_and_time digits dot_product eoshift epsilon exponent floor fraction huge iand ibclr ibits ibset ieor ior ishft ishftc lbound len_trim matmul maxexponent maxloc maxval merge minexponent minloc minval modulo mvbits nearest pack precision present product radix random_number random_seed range repeat reshape rrspacing
|
||||
syn keyword fortran90Intrinsic scale scan selected_int_kind selected_real_kind set_exponent shape size spacing spread sum system_clock tiny transpose trim ubound unpack verify
|
||||
syn match fortran90Intrinsic "\<not\>\(\s*\.\)\@!"me=s+3
|
||||
syn match fortran90Intrinsic "\<kind\>\s*[(,]"me=s+4
|
||||
syn match fortranUnitHeader "\<end\s*function"
|
||||
syn match fortranUnitHeader "\<end\s*interface"
|
||||
syn match fortranUnitHeader "\<end\s*module"
|
||||
syn match fortranUnitHeader "\<end\s*program"
|
||||
syn match fortranUnitHeader "\<end\s*subroutine"
|
||||
syn match fortranRepeat "\<end\s*do"
|
||||
syn match fortranConditional "\<end\s*where"
|
||||
syn match fortranConditional "\<select\s*case"
|
||||
syn match fortranConditional "\<end\s*select"
|
||||
syn match fortranType "\<end\s*type"
|
||||
syn match fortranType "\<in\s*out"
|
||||
|
||||
syn match fortranUnitHeader "\<end\s*function"
|
||||
syn match fortranUnitHeader "\<end\s*interface"
|
||||
syn match fortranUnitHeader "\<end\s*module"
|
||||
syn match fortranUnitHeader "\<end\s*program"
|
||||
syn match fortranUnitHeader "\<end\s*subroutine"
|
||||
syn match fortranRepeat "\<end\s*do"
|
||||
syn match fortranConditional "\<end\s*where"
|
||||
syn match fortranConditional "\<select\s*case"
|
||||
syn match fortranConditional "\<end\s*select"
|
||||
syn match fortranType "\<end\s*type"
|
||||
syn match fortranType "\<in\s*out"
|
||||
syn keyword fortranType procedure
|
||||
syn keyword fortranIOR namelist
|
||||
syn keyword fortranConditionalR while
|
||||
syn keyword fortranIntrinsicR achar iachar transfer
|
||||
|
||||
syn keyword fortranUnitHeaderEx procedure
|
||||
syn keyword fortranIOEx namelist
|
||||
syn keyword fortranConditionalEx while
|
||||
syn keyword fortran90IntrinsicEx achar iachar transfer
|
||||
|
||||
syn keyword fortranInclude include
|
||||
syn keyword fortran90StorageClassR sequence
|
||||
endif
|
||||
syn keyword fortranInclude include
|
||||
syn keyword fortranStorageClassR sequence
|
||||
|
||||
syn match fortranConditional "\<end\s*if"
|
||||
syn match fortranIO contains=fortranOperator "\<e\(nd\|rr\)\s*=\s*\d\+"
|
||||
syn match fortranConditional "\<else\s*if"
|
||||
|
||||
syn keyword fortranUnitHeaderR entry
|
||||
syn keyword fortranUnitHeaderOb entry
|
||||
syn match fortranTypeR display "double\s\+precision"
|
||||
syn match fortranTypeR display "double\s\+complex"
|
||||
syn match fortranUnitHeaderR display "block\s\+data"
|
||||
syn keyword fortranStorageClassR common equivalence data
|
||||
syn keyword fortran77IntrinsicR dble dprod
|
||||
syn match fortran77OperatorR "\.\s*[gl][et]\s*\."
|
||||
syn match fortran77OperatorR "\.\s*\(eq\|ne\)\s*\."
|
||||
syn keyword fortranIntrinsicR dble dprod
|
||||
syn match fortranOperatorR "\.\s*[gl][et]\s*\."
|
||||
syn match fortranOperatorR "\.\s*\(eq\|ne\)\s*\."
|
||||
|
||||
if b:fortran_dialect == "f95" || b:fortran_dialect == "F"
|
||||
syn keyword fortranRepeat forall
|
||||
syn match fortranRepeat "\<end\s*forall"
|
||||
syn keyword fortran95Intrinsic null cpu_time
|
||||
syn match fortranType "\<elemental\>"
|
||||
syn match fortranType "\<pure\>"
|
||||
if exists("fortran_more_precise")
|
||||
syn match fortranConstructName "\(\<end\s*forall\s\+\)\@<=\a\w*\>"
|
||||
endif
|
||||
syn keyword fortranRepeat forall
|
||||
syn match fortranRepeat "\<end\s*forall"
|
||||
syn keyword fortranIntrinsic null cpu_time
|
||||
syn match fortranType "\<elemental\>"
|
||||
syn match fortranType "\<pure\>"
|
||||
if exists("fortran_more_precise")
|
||||
syn match fortranConstructName "\(\<end\s*forall\s\+\)\@<=\a\w*\>"
|
||||
endif
|
||||
|
||||
if b:fortran_dialect == "f95"
|
||||
if b:fortran_dialect == "f08"
|
||||
" F2003
|
||||
syn keyword fortran03Intrinsic command_argument_count get_command get_command_argument get_environment_variable is_iostat_end is_iostat_eor move_alloc new_line selected_char_kind same_type_as extends_type_of
|
||||
syn keyword fortranIntrinsic command_argument_count get_command get_command_argument get_environment_variable is_iostat_end is_iostat_eor move_alloc new_line selected_char_kind same_type_as extends_type_of
|
||||
" ISO_C_binding
|
||||
syn keyword fortran03Constant c_null_char c_alert c_backspace c_form_feed c_new_line c_carriage_return c_horizontal_tab c_vertical_tab
|
||||
syn keyword fortran03Constant c_int c_short c_long c_long_long c_signed_char c_size_t c_int8_t c_int16_t c_int32_t c_int64_t c_int_least8_t c_int_least16_t c_int_least32_t c_int_least64_t c_int_fast8_t c_int_fast16_t c_int_fast32_t c_int_fast64_t c_intmax_t C_intptr_t c_float c_double c_long_double c_float_complex c_double_complex c_long_double_complex c_bool c_char c_null_ptr c_null_funptr
|
||||
syn keyword fortran03Intrinsic iso_c_binding c_loc c_funloc c_associated c_f_pointer c_f_procpointer
|
||||
syn keyword fortran03Type c_ptr c_funptr
|
||||
syn keyword fortranConstant c_null_char c_alert c_backspace c_form_feed c_new_line c_carriage_return c_horizontal_tab c_vertical_tab
|
||||
syn keyword fortranConstant c_int c_short c_long c_long_long c_signed_char c_size_t c_int8_t c_int16_t c_int32_t c_int64_t c_int_least8_t c_int_least16_t c_int_least32_t c_int_least64_t c_int_fast8_t c_int_fast16_t c_int_fast32_t c_int_fast64_t c_intmax_t C_intptr_t c_float c_double c_long_double c_float_complex c_double_complex c_long_double_complex c_bool c_char c_null_ptr c_null_funptr
|
||||
syn keyword fortranIntrinsic iso_c_binding c_loc c_funloc c_associated c_f_pointer c_f_procpointer
|
||||
syn keyword fortranType c_ptr c_funptr
|
||||
" ISO_Fortran_env
|
||||
syn keyword fortran03Constant iso_fortran_env character_storage_size error_unit file_storage_size input_unit iostat_end iostat_eor numeric_storage_size output_unit
|
||||
syn keyword fortranConstant iso_fortran_env character_storage_size error_unit file_storage_size input_unit iostat_end iostat_eor numeric_storage_size output_unit
|
||||
" IEEE_arithmetic
|
||||
syn keyword fortran03Intrinsic ieee_arithmetic ieee_support_underflow_control ieee_get_underflow_mode ieee_set_underflow_mode
|
||||
syn keyword fortranIntrinsic ieee_arithmetic ieee_support_underflow_control ieee_get_underflow_mode ieee_set_underflow_mode
|
||||
|
||||
syn keyword fortran03ReadWrite flush wait
|
||||
syn keyword fortran03IO decimal round iomsg
|
||||
syn keyword fortran03Type asynchronous nopass non_overridable pass protected volatile abstract extends import
|
||||
syn keyword fortran03Type non_intrinsic value bind deferred generic final enumerator class
|
||||
syn match fortran03Type "\<associate\>"
|
||||
syn match fortran03Type "\<end\s*associate"
|
||||
syn match fortran03Type "\<enum\s*,\s*bind\s*(\s*c\s*)"
|
||||
syn match fortran03Type "\<end\s*enum"
|
||||
syn match fortran03Conditional "\<select\s*type"
|
||||
syn match fortran03Conditional "\<type\s*is\>"
|
||||
syn match fortran03UnitHeader "\<abstract\s*interface\>"
|
||||
syn match fortran03Operator "\([\|]\)"
|
||||
syn keyword fortranReadWrite flush wait
|
||||
syn keyword fortranIO decimal round iomsg
|
||||
syn keyword fortranType asynchronous nopass non_overridable pass protected volatile abstract extends import
|
||||
syn keyword fortranType non_intrinsic value bind deferred generic final enumerator
|
||||
syn match fortranType "\<class\>"
|
||||
syn match fortranType "\<associate\>"
|
||||
syn match fortranType "\<end\s*associate"
|
||||
syn match fortranType "\<enum\s*,\s*bind\s*(\s*c\s*)"
|
||||
syn match fortranType "\<end\s*enum"
|
||||
syn match fortranConditional "\<select\s*type"
|
||||
syn match fortranConditional "\<type\s*is\>"
|
||||
syn match fortranConditional "\<class\s*is\>"
|
||||
syn match fortranUnitHeader "\<abstract\s*interface\>"
|
||||
syn match fortranOperator "\([\|]\)"
|
||||
|
||||
" F2008
|
||||
syn keyword fortran08Intrinsic acosh asinh atanh bessel_j0 bessel_j1 bessel_jn bessel_y0 bessel_y1 bessel_yn erf erfc erfc_scaled gamma log_gamma hypot norm2
|
||||
syn keyword fortran08Intrinsic atomic_define atomic_ref execute_command_line leadz trailz storage_size merge_bits
|
||||
syn keyword fortran08Intrinsic bge bgt ble blt dshiftl dshiftr findloc iall iany iparity image_index lcobound ucobound maskl maskr num_images parity popcnt poppar shifta shiftl shiftr this_image
|
||||
syn keyword fortran08IO newunit
|
||||
syn keyword fortran08Type contiguous
|
||||
syn keyword fortranIntrinsic acosh asinh atanh bessel_j0 bessel_j1 bessel_jn bessel_y0 bessel_y1 bessel_yn erf erfc erfc_scaled gamma log_gamma hypot norm2
|
||||
syn keyword fortranIntrinsic atomic_define atomic_ref execute_command_line leadz trailz storage_size merge_bits
|
||||
syn keyword fortranIntrinsic bge bgt ble blt dshiftl dshiftr findloc iall iany iparity image_index lcobound ucobound maskl maskr num_images parity popcnt poppar shifta shiftl shiftr this_image
|
||||
syn keyword fortranIO newunit
|
||||
syn keyword fortranType contiguous
|
||||
endif
|
||||
|
||||
syn cluster fortranCommentGroup contains=fortranTodo
|
||||
@@ -341,9 +316,7 @@ else
|
||||
syn match fortranContinueMark display "&"
|
||||
endif
|
||||
|
||||
if b:fortran_dialect != "f77"
|
||||
syn match fortranComment excludenl "!.*$" contains=@fortranCommentGroup,@spell
|
||||
endif
|
||||
syn match fortranComment excludenl "!.*$" contains=@fortranCommentGroup,@spell
|
||||
|
||||
"cpp is often used with Fortran
|
||||
syn match cPreProc "^\s*#\s*\(define\|ifdef\)\>.*"
|
||||
@@ -363,7 +336,7 @@ else
|
||||
syn sync minlines=30
|
||||
endif
|
||||
|
||||
if version >= 600 && exists("fortran_fold")
|
||||
if exists("fortran_fold")
|
||||
|
||||
if (b:fortran_fixed_source == 1)
|
||||
syn region fortranProgram transparent fold keepend start="^\s*program\s\+\z(\a\w*\)" skip="^\([!c*]\|\s*#\).*$" excludenl end="\<end\s*\(program\(\s\+\z1\>\)\=\|$\)" contains=ALLBUT,fortranModule
|
||||
@@ -407,134 +380,95 @@ if version >= 600 && exists("fortran_fold")
|
||||
endif
|
||||
|
||||
" Define the default highlighting.
|
||||
" For version 5.7 and earlier: only when not done already
|
||||
" For version 5.8 and later: only when an item doesn't have highlighting yet
|
||||
if version >= 508 || !exists("did_fortran_syn_inits")
|
||||
if version < 508
|
||||
let did_fortran_syn_inits = 1
|
||||
command -nargs=+ HiLink hi link <args>
|
||||
else
|
||||
command -nargs=+ HiLink hi def link <args>
|
||||
endif
|
||||
" The default highlighting differs for each dialect.
|
||||
" Transparent groups:
|
||||
" fortranParen, fortranLeftMargin
|
||||
" fortranProgram, fortranModule, fortranSubroutine, fortranFunction,
|
||||
" fortranBlockData
|
||||
" fortran77Loop, fortran90Loop, fortranIfBlock, fortranCase
|
||||
" fortranMultiCommentLines
|
||||
hi def link fortranKeyword Keyword
|
||||
hi def link fortranConstructName Identifier
|
||||
hi def link fortranConditional Conditional
|
||||
hi def link fortranRepeat Repeat
|
||||
hi def link fortranTodo Todo
|
||||
hi def link fortranContinueMark Special
|
||||
hi def link fortranString String
|
||||
hi def link fortranNumber Number
|
||||
hi def link fortranOperator Operator
|
||||
hi def link fortranBoolean Boolean
|
||||
hi def link fortranLabelError Error
|
||||
hi def link fortranObsolete Todo
|
||||
hi def link fortranType Type
|
||||
hi def link fortranStructure Type
|
||||
hi def link fortranStorageClass StorageClass
|
||||
hi def link fortranCall Function
|
||||
hi def link fortranUnitHeader fortranPreCondit
|
||||
hi def link fortranReadWrite Keyword
|
||||
hi def link fortranIO Keyword
|
||||
hi def link fortranIntrinsic Function
|
||||
hi def link fortranConstant Constant
|
||||
|
||||
" The default highlighting differs for each dialect.
|
||||
" Transparent groups:
|
||||
" fortranParen, fortranLeftMargin
|
||||
" fortranProgram, fortranModule, fortranSubroutine, fortranFunction,
|
||||
" fortranBlockData
|
||||
" fortran77Loop, fortran90Loop, fortranIfBlock, fortranCase
|
||||
" fortranMultiCommentLines
|
||||
HiLink fortranKeyword Keyword
|
||||
HiLink fortranConstructName Identifier
|
||||
HiLink fortran03Conditional fortranConditional
|
||||
HiLink fortranConditional Conditional
|
||||
HiLink fortranRepeat Repeat
|
||||
HiLink fortranTodo Todo
|
||||
if (b:fortran_fixed_source == 1)
|
||||
HiLink fortranContinueMark Todo
|
||||
else
|
||||
HiLink fortranContinueMark Keyword
|
||||
endif
|
||||
HiLink fortranString String
|
||||
HiLink fortranNumber Number
|
||||
HiLink fortran03Operator fortranOperator
|
||||
HiLink fortranOperator Operator
|
||||
HiLink fortranBoolean Boolean
|
||||
HiLink fortranLabelError Error
|
||||
HiLink fortranObsolete Todo
|
||||
HiLink fortran03Type fortranType
|
||||
HiLink fortran08Type fortranType
|
||||
HiLink fortranType Type
|
||||
HiLink fortranStructure Type
|
||||
HiLink fortranStorageClass StorageClass
|
||||
HiLink fortranCall Function
|
||||
HiLink fortran03UnitHeader fortranUnitHeader
|
||||
HiLink fortranUnitHeader fortranPreCondit
|
||||
HiLink fortran03ReadWrite fortranReadWrite
|
||||
HiLink fortranReadWrite Keyword
|
||||
HiLink fortran03IO fortranIO
|
||||
HiLink fortran08IO fortranIO
|
||||
HiLink fortranIO Keyword
|
||||
HiLink fortran95Intrinsic fortran90Intrinsic
|
||||
HiLink fortran77Intrinsic fortran90Intrinsic
|
||||
HiLink fortran90Intrinsic Function
|
||||
HiLink fortran03Intrinsic Function
|
||||
HiLink fortran08Intrinsic Function
|
||||
HiLink fortran03Constant Function
|
||||
" To stop deleted & obsolescent features being highlighted as Todo items,
|
||||
" comment out the next 5 lines and uncomment the 5 lines after that
|
||||
hi def link fortranUnitHeaderOb fortranObsolete
|
||||
hi def link fortranKeywordOb fortranObsolete
|
||||
hi def link fortranConditionalOb fortranObsolete
|
||||
hi def link fortranTypeOb fortranObsolete
|
||||
hi def link fortranKeywordDel fortranObsolete
|
||||
"hi def link fortranUnitHeaderOb fortranUnitHeader
|
||||
"hi def link fortranKeywordOb fortranKeyword
|
||||
"hi def link fortranConditionalOb fortranConditional
|
||||
"hi def link fortranTypeOb fortranType
|
||||
"hi def link fortranKeywordDel fortranKeyword
|
||||
|
||||
if ( b:fortran_dialect == "elf" || b:fortran_dialect == "F" )
|
||||
HiLink fortranKeywordOb fortranObsolete
|
||||
HiLink fortran66Intrinsic fortranObsolete
|
||||
HiLink fortran77IntrinsicR fortranObsolete
|
||||
HiLink fortranUnitHeaderR fortranObsolete
|
||||
HiLink fortranTypeR fortranObsolete
|
||||
HiLink fortranStorageClassR fortranObsolete
|
||||
HiLink fortran90StorageClassR fortranObsolete
|
||||
HiLink fortran77OperatorR fortranObsolete
|
||||
HiLink fortranInclude fortranObsolete
|
||||
else
|
||||
HiLink fortranKeywordOb fortranKeyword
|
||||
HiLink fortran66Intrinsic fortran90Intrinsic
|
||||
HiLink fortran77IntrinsicR fortran90Intrinsic
|
||||
HiLink fortranUnitHeaderR fortranPreCondit
|
||||
HiLink fortranTypeR fortranType
|
||||
HiLink fortranStorageClassR fortranStorageClass
|
||||
HiLink fortran77OperatorR fortranOperator
|
||||
HiLink fortranInclude Include
|
||||
HiLink fortran90StorageClassR fortranStorageClass
|
||||
endif
|
||||
|
||||
if ( b:fortran_dialect == "F" )
|
||||
HiLink fortranLabelNumber fortranObsolete
|
||||
HiLink fortranTarget fortranObsolete
|
||||
HiLink fortranFormatSpec fortranObsolete
|
||||
HiLink fortranFloatDExp fortranObsolete
|
||||
HiLink fortranFloatNoDec fortranObsolete
|
||||
HiLink fortranFloatIniDec fortranObsolete
|
||||
HiLink fortranFloatEndDec fortranObsolete
|
||||
HiLink fortranTypeEx fortranObsolete
|
||||
HiLink fortranIOEx fortranObsolete
|
||||
HiLink fortranKeywordEx fortranObsolete
|
||||
HiLink fortranStringEx fortranObsolete
|
||||
HiLink fortran77IntrinsicEx fortranObsolete
|
||||
HiLink fortranUnitHeaderEx fortranObsolete
|
||||
HiLink fortranConditionalEx fortranObsolete
|
||||
HiLink fortran90IntrinsicEx fortranObsolete
|
||||
else
|
||||
HiLink fortranLabelNumber Special
|
||||
HiLink fortranTarget Special
|
||||
HiLink fortranFormatSpec Identifier
|
||||
HiLink fortranFloatDExp fortranFloat
|
||||
HiLink fortranFloatNoDec fortranFloat
|
||||
HiLink fortranFloatIniDec fortranFloat
|
||||
HiLink fortranFloatEndDec fortranFloat
|
||||
HiLink fortranTypeEx fortranType
|
||||
HiLink fortranIOEx fortranIO
|
||||
HiLink fortranKeywordEx fortranKeyword
|
||||
HiLink fortranStringEx fortranString
|
||||
HiLink fortran77IntrinsicEx fortran90Intrinsic
|
||||
HiLink fortranUnitHeaderEx fortranUnitHeader
|
||||
HiLink fortranConditionalEx fortranConditional
|
||||
HiLink fortran90IntrinsicEx fortran90Intrinsic
|
||||
endif
|
||||
|
||||
HiLink fortranFloat Float
|
||||
HiLink fortranPreCondit PreCondit
|
||||
HiLink fortranInclude Include
|
||||
HiLink cIncluded fortranString
|
||||
HiLink cInclude Include
|
||||
HiLink cPreProc PreProc
|
||||
HiLink cPreCondit PreCondit
|
||||
HiLink fortranParenError Error
|
||||
HiLink fortranComment Comment
|
||||
HiLink fortranSerialNumber Todo
|
||||
HiLink fortranTab Error
|
||||
" Vendor extensions
|
||||
HiLink fortranExtraIntrinsic Function
|
||||
|
||||
delcommand HiLink
|
||||
if b:fortran_dialect == "F"
|
||||
hi! def link fortranIntrinsicR fortranObsolete
|
||||
hi! def link fortranUnitHeaderR fortranObsolete
|
||||
hi! def link fortranTypeR fortranObsolete
|
||||
hi! def link fortranStorageClassR fortranObsolete
|
||||
hi! def link fortranOperatorR fortranObsolete
|
||||
hi! def link fortranInclude fortranObsolete
|
||||
hi! def link fortranLabelNumber fortranObsolete
|
||||
hi! def link fortranTarget fortranObsolete
|
||||
hi! def link fortranFloatIll fortranObsolete
|
||||
hi! def link fortranIOR fortranObsolete
|
||||
hi! def link fortranKeywordR fortranObsolete
|
||||
hi! def link fortranStringR fortranObsolete
|
||||
hi! def link fortranConditionalR fortranObsolete
|
||||
else
|
||||
hi! def link fortranIntrinsicR fortranIntrinsic
|
||||
hi! def link fortranUnitHeaderR fortranPreCondit
|
||||
hi! def link fortranTypeR fortranType
|
||||
hi! def link fortranStorageClassR fortranStorageClass
|
||||
hi! def link fortranOperatorR fortranOperator
|
||||
hi! def link fortranInclude Include
|
||||
hi! def link fortranLabelNumber Special
|
||||
hi! def link fortranTarget Special
|
||||
hi! def link fortranFloatIll fortranFloat
|
||||
hi! def link fortranIOR fortranIO
|
||||
hi! def link fortranKeywordR fortranKeyword
|
||||
hi! def link fortranStringR fortranString
|
||||
hi! def link fortranConditionalR fortranConditional
|
||||
endif
|
||||
|
||||
hi def link fortranFormatSpec Identifier
|
||||
hi def link fortranFloat Float
|
||||
hi def link fortranPreCondit PreCondit
|
||||
hi def link cIncluded fortranString
|
||||
hi def link cInclude Include
|
||||
hi def link cPreProc PreProc
|
||||
hi def link cPreCondit PreCondit
|
||||
hi def link fortranParenError Error
|
||||
hi def link fortranComment Comment
|
||||
hi def link fortranSerialNumber Todo
|
||||
hi def link fortranTab Error
|
||||
|
||||
" Uncomment the next line if you use extra intrinsics provided by vendors
|
||||
"hi def link fortranExtraIntrinsic Function
|
||||
|
||||
let b:current_syntax = "fortran"
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
" vim: ts=8 tw=132
|
||||
|
||||
@@ -2,12 +2,15 @@
|
||||
" Language: gitolite configuration
|
||||
" URL: https://github.com/tmatilai/gitolite.vim
|
||||
" Maintainer: Teemu Matilainen <teemu.matilainen@iki.fi>
|
||||
" Last Change: 2011-10-18
|
||||
" Last Change: 2011-12-25
|
||||
|
||||
if exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
" Comment
|
||||
syn match gitoliteComment "\(^\|\s\)#.*" contains=gitoliteTodo
|
||||
syn keyword gitoliteTodo TODO FIXME XXX NOT contained
|
||||
@@ -78,3 +81,6 @@ hi def link gitoliteInclude Include
|
||||
hi def link gitoliteString String
|
||||
|
||||
let b:current_syntax = "gitolite"
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim syntax file
|
||||
" Language: gp (version 2.4)
|
||||
" Language: gp (version 2.5)
|
||||
" Maintainer: Karim Belabas <Karim.Belabas@math.u-bordeaux.fr>
|
||||
" Last change: 2007 Oct 1
|
||||
" Last change: 2012 Jan 08
|
||||
" URL: http://pari.math.u-bordeaux.fr
|
||||
|
||||
if version < 600
|
||||
@@ -10,21 +10,30 @@ elseif exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
" control statements
|
||||
syntax keyword gpStatement break return next
|
||||
syntax keyword gpConditional if
|
||||
syntax keyword gpRepeat until while for fordiv forprime forstep forvec
|
||||
syntax keyword gpRepeat until while for fordiv forell forprime
|
||||
syntax keyword gpRepeat forsubgroup forstep forvec
|
||||
" storage class
|
||||
syntax keyword gpScope my local global
|
||||
" defaults
|
||||
syntax keyword gpInterfaceKey colors compatible datadir debug debugfiles
|
||||
syntax keyword gpInterfaceKey debugmem echo factor_add_primes format help
|
||||
syntax keyword gpInterfaceKey histsize lines log logfile new_galois_format
|
||||
syntax keyword gpInterfaceKey breakloop colors compatible
|
||||
syntax keyword gpInterfaceKey datadir debug debugfiles debugmem
|
||||
syntax keyword gpInterfaceKey echo factor_add_primes factor_proven format
|
||||
syntax keyword gpInterfaceKey graphcolormap graphcolors
|
||||
syntax keyword gpInterfaceKey help histfile histsize
|
||||
syntax keyword gpInterfaceKey lines linewrap log logfile new_galois_format
|
||||
syntax keyword gpInterfaceKey output parisize path prettyprinter primelimit
|
||||
syntax keyword gpInterfaceKey prompt prompt_cont psfile realprecision secure
|
||||
syntax keyword gpInterfaceKey seriesprecision simplify strictmatch TeXstyle timer
|
||||
syntax keyword gpInterfaceKey prompt prompt_cont psfile
|
||||
syntax keyword gpInterfaceKey readline realprecision recover
|
||||
syntax keyword gpInterfaceKey secure seriesprecision simplify strictmatch
|
||||
syntax keyword gpInterfaceKey TeXstyle timer
|
||||
|
||||
syntax match gpInterface "^\s*\\[a-z].*"
|
||||
syntax match gpInterface "^\s*\\[a-z].*"
|
||||
syntax keyword gpInterface default
|
||||
syntax keyword gpInput read input
|
||||
|
||||
@@ -79,4 +88,6 @@ if version >= 508 || !exists("did_gp_syn_inits")
|
||||
endif
|
||||
|
||||
let b:current_syntax = "gp"
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
" vim: ts=8
|
||||
|
||||
@@ -2,15 +2,15 @@
|
||||
" Language: Groovy
|
||||
" Original Author: Alessio Pace <billy.corgan@tiscali.it>
|
||||
" Maintainer: Tobias Rapp <yahuxo@gmx.de>
|
||||
" Version: 0.1.10
|
||||
" URL: http://www.vim.org/scripts/script.php?script_id=945
|
||||
" Last Change: 2010 Nov 29
|
||||
" Version: 0.1.11
|
||||
" URL: http://www.vim.org/scripts/script.php?script_id=945
|
||||
" Last Change: 2012 Jan 08
|
||||
|
||||
" THE ORIGINAL AUTHOR'S NOTES:
|
||||
"
|
||||
" This is my very first vim script, I hope to have
|
||||
" done it the right way.
|
||||
"
|
||||
"
|
||||
" I must directly or indirectly thank the author of java.vim and ruby.vim:
|
||||
" I copied from them most of the stuff :-)
|
||||
"
|
||||
@@ -22,7 +22,7 @@
|
||||
" HOWTO USE IT (INSTALL) when not part of the distribution:
|
||||
"
|
||||
" 1) copy the file in the (global or user's $HOME/.vim/syntax/) syntax folder
|
||||
"
|
||||
"
|
||||
" 2) add this line to recognize groovy files by filename extension:
|
||||
"
|
||||
" au BufNewFile,BufRead *.groovy setf groovy
|
||||
@@ -38,7 +38,7 @@
|
||||
" endif
|
||||
"
|
||||
" in the global scripts.vim file or in $HOME/.vim/scripts.vim
|
||||
"
|
||||
"
|
||||
" 4) open/write a .groovy file or a groovy script :-)
|
||||
"
|
||||
" Let me know if you like it or send me patches, so that I can improve it
|
||||
@@ -55,6 +55,9 @@ if !exists("main_syntax")
|
||||
let main_syntax='groovy'
|
||||
endif
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
" don't use standard HiLink, it will not work with included syntax files
|
||||
if version < 508
|
||||
command! -nargs=+ GroovyHiLink hi link <args>
|
||||
@@ -101,11 +104,11 @@ syn keyword groovyScopeDecl public protected private abstract
|
||||
if exists("groovy_highlight_groovy_lang_ids") || exists("groovy_highlight_groovy_lang") || exists("groovy_highlight_all")
|
||||
" groovy.lang.*
|
||||
syn keyword groovyLangClass Closure MetaMethod GroovyObject
|
||||
|
||||
|
||||
syn match groovyJavaLangClass "\<System\>"
|
||||
syn keyword groovyJavaLangClass Cloneable Comparable Runnable Serializable Boolean Byte Class Object
|
||||
syn keyword groovyJavaLangClass Character CharSequence ClassLoader Compiler
|
||||
" syn keyword groovyJavaLangClass Integer Double Float Long
|
||||
" syn keyword groovyJavaLangClass Integer Double Float Long
|
||||
syn keyword groovyJavaLangClass InheritableThreadLocal Math Number Object Package Process
|
||||
syn keyword groovyJavaLangClass Runtime RuntimePermission InheritableThreadLocal
|
||||
syn keyword groovyJavaLangClass SecurityManager Short StrictMath StackTraceElement
|
||||
@@ -159,18 +162,18 @@ syn match groovyExceptions "\<Exception\>\|\<[A-Z]\{1,}[a-zA-Z0-9]*Except
|
||||
|
||||
" Groovy JDK stuff
|
||||
syn keyword groovyJDKBuiltin as def in
|
||||
syn keyword groovyJDKOperOverl div minus plus abs round power multiply
|
||||
syn keyword groovyJDKMethods each call inject sort print println
|
||||
syn keyword groovyJDKOperOverl div minus plus abs round power multiply
|
||||
syn keyword groovyJDKMethods each call inject sort print println
|
||||
syn keyword groovyJDKMethods getAt putAt size push pop toList getText writeLine eachLine readLines
|
||||
syn keyword groovyJDKMethods withReader withStream withWriter withPrintWriter write read leftShift
|
||||
syn keyword groovyJDKMethods withReader withStream withWriter withPrintWriter write read leftShift
|
||||
syn keyword groovyJDKMethods withWriterAppend readBytes splitEachLine
|
||||
syn keyword groovyJDKMethods newInputStream newOutputStream newPrintWriter newReader newWriter
|
||||
syn keyword groovyJDKMethods compareTo next previous isCase
|
||||
syn keyword groovyJDKMethods newInputStream newOutputStream newPrintWriter newReader newWriter
|
||||
syn keyword groovyJDKMethods compareTo next previous isCase
|
||||
syn keyword groovyJDKMethods times step toInteger upto any collect dump every find findAll grep
|
||||
syn keyword groovyJDKMethods inspect invokeMethods join
|
||||
syn keyword groovyJDKMethods inspect invokeMethods join
|
||||
syn keyword groovyJDKMethods getErr getIn getOut waitForOrKill
|
||||
syn keyword groovyJDKMethods count tokenize asList flatten immutable intersect reverse reverseEach
|
||||
syn keyword groovyJDKMethods subMap append asWritable eachByte eachLine eachFile
|
||||
syn keyword groovyJDKMethods subMap append asWritable eachByte eachLine eachFile
|
||||
syn cluster groovyTop add=groovyJDKBuiltin,groovyJDKOperOverl,groovyJDKMethods
|
||||
|
||||
" no useful I think, so I comment it..
|
||||
@@ -331,7 +334,7 @@ if exists("groovy_highlight_debug")
|
||||
GroovyHiLink groovyDebugSpecialCharacter DebugSpecial
|
||||
GroovyHiLink groovyDebugCharacter DebugString
|
||||
GroovyHiLink groovyDebugParen Debug
|
||||
|
||||
|
||||
GroovyHiLink DebugString String
|
||||
GroovyHiLink DebugSpecial Special
|
||||
GroovyHiLink DebugBoolean Boolean
|
||||
@@ -339,7 +342,7 @@ if exists("groovy_highlight_debug")
|
||||
endif
|
||||
endif
|
||||
|
||||
" Match all Exception classes
|
||||
" Match all Exception classes
|
||||
syn match groovyExceptions "\<Exception\>\|\<[A-Z]\{1,}[a-zA-Z0-9]*Exception\>"
|
||||
|
||||
|
||||
@@ -349,7 +352,7 @@ endif
|
||||
exec "syn sync ccomment groovyComment minlines=" . groovy_minlines
|
||||
|
||||
|
||||
" ###################
|
||||
" ###################
|
||||
" Groovy stuff
|
||||
" syn match groovyOperator "|[ ,a-zA-Z0-9_*]\+|"
|
||||
|
||||
@@ -425,15 +428,15 @@ if version >= 508 || !exists("did_groovy_syn_inits")
|
||||
GroovyHiLink groovyConstant Constant
|
||||
GroovyHiLink groovyTypedef Typedef
|
||||
GroovyHiLink groovyTodo Todo
|
||||
|
||||
|
||||
GroovyHiLink groovyCommentTitle SpecialComment
|
||||
GroovyHiLink groovyDocTags Special
|
||||
GroovyHiLink groovyDocParam Function
|
||||
GroovyHiLink groovyCommentStar groovyComment
|
||||
|
||||
|
||||
GroovyHiLink groovyType Type
|
||||
GroovyHiLink groovyExternal Include
|
||||
|
||||
|
||||
GroovyHiLink htmlComment Special
|
||||
GroovyHiLink htmlCommentPart Special
|
||||
GroovyHiLink groovySpaceError Error
|
||||
@@ -452,4 +455,7 @@ endif
|
||||
|
||||
let b:spell_options="contained"
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
|
||||
" vim: ts=8
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim syntax file
|
||||
" Language: GSP - GNU Server Pages (v. 0.86)
|
||||
" Created By: Nathaniel Harward nharward@yahoo.com
|
||||
" Last Changed: Dec. 12, 2000
|
||||
" Last Changed: 2012 Jan 08 by Thilo Six
|
||||
" Filenames: *.gsp
|
||||
" URL: http://www.constructicon.com/~nharward/vim/syntax/gsp.vim
|
||||
|
||||
@@ -34,6 +34,9 @@ else
|
||||
syn include @gspJava syntax/java.vim
|
||||
endif
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
" Add <java> as an HTML tag name along with its args
|
||||
syn keyword htmlTagName contained java
|
||||
syn keyword htmlArg contained type file page
|
||||
@@ -57,3 +60,6 @@ let b:current_syntax = "gsp"
|
||||
if main_syntax == 'gsp'
|
||||
unlet main_syntax
|
||||
endif
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
" Language: Hyper Builder
|
||||
" Maintainer: Alejandro Forero Cuervo
|
||||
" URL: http://bachue.com/hb/vim/syntax/hb.vim
|
||||
" Last Change: 2001 Sep 02
|
||||
" Last Change: 2012 Jan 08 by Thilo Six
|
||||
|
||||
" For version 5.x: Clear all syntax items
|
||||
" For version 6.x: Quit when a syntax file was already loaded
|
||||
@@ -12,6 +12,9 @@ elseif exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
" Read the HTML syntax to start with
|
||||
"syn include @HTMLStuff <sfile>:p:h/htmlhb.vim
|
||||
|
||||
@@ -94,4 +97,6 @@ syn sync match Normal grouphere NONE "^:\s*include\s\+[^ \t]\+$"
|
||||
|
||||
let b:current_syntax = "hb"
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
" vim: ts=8
|
||||
|
||||
@@ -1,13 +1,16 @@
|
||||
" Vim syntax file
|
||||
" Language: Vim help file
|
||||
" Maintainer: Bram Moolenaar (Bram@vim.org)
|
||||
" Last Change: 2011 Dec 03
|
||||
" Last Change: 2012 Jan 08
|
||||
|
||||
" Quit when a (custom) syntax file was already loaded
|
||||
if exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
syn match helpHeadline "^[-A-Z .][-A-Z0-9 .()]*[ \t]\+\*"me=e-1
|
||||
syn match helpSectionDelim "^=\{3,}.*===$"
|
||||
syn match helpSectionDelim "^-\{3,}.*--$"
|
||||
@@ -196,4 +199,6 @@ hi def link helpURL String
|
||||
|
||||
let b:current_syntax = "help"
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
" vim: ts=8 sw=2
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
" Language: IDL (Interface Description Language)
|
||||
" Created By: Jody Goldberg
|
||||
" Maintainer: Michael Geddes <vim@frog.wheelycreek.net>
|
||||
" Last Change: Thu Apr 13 2006
|
||||
" Last Change: 2012 Jan 11
|
||||
|
||||
|
||||
" This is an experiment. IDL's structure is simple enough to permit a full
|
||||
@@ -17,303 +17,310 @@
|
||||
" History:
|
||||
" 2.0: Michael's new version
|
||||
" 2.1: Support for Vim 7 spell (Anduin Withers)
|
||||
"
|
||||
"
|
||||
|
||||
if exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
if exists("idlsyntax_showerror")
|
||||
syn match idlError +\S+ skipwhite skipempty nextgroup=idlError
|
||||
endif
|
||||
|
||||
syn region idlCppQuote start='\<cpp_quote\s*(' end=')' contains=idlString
|
||||
|
||||
" Misc basic
|
||||
syn match idlId contained "[a-zA-Z][a-zA-Z0-9_]*" skipwhite skipempty nextgroup=idlEnumComma,idlEnumNumber
|
||||
syn match idlEnumComma contained ","
|
||||
syn match idlEnumNumber contained "=" skipwhite skipempty nextgroup=idlString,idlLiteral
|
||||
syn match idlSemiColon contained ";"
|
||||
syn match idlCommaArg contained "," skipempty skipwhite nextgroup=idlSimpDecl
|
||||
syn region idlArraySize1 contained start=:\[: end=:\]: skipempty skipwhite nextgroup=idlArraySize1,idlError,idlSemiColon,idlCommaArg contains=idlArraySize1,idlLiteral
|
||||
syn match idlSimpDecl contained "[a-zA-Z][a-zA-Z0-9_]*" skipempty skipwhite nextgroup=idlError,idlSemiColon,idlCommaArg,idlArraySize1
|
||||
syn region idlString contained start=+"+ skip=+\\\(\\\\\)*"+ end=+"+ contains=@Spell
|
||||
syn match idlLiteral contained "[1-9]\d*\(\.\d*\)\="
|
||||
syn match idlLiteral contained "0"
|
||||
syn match idlLiteral contained "\.\d\+"
|
||||
syn match idlLiteral contained "0x[0-9A-Fa-f]\+"
|
||||
syn match idlLiteral contained "0[0-7]\+"
|
||||
syn keyword idlLiteral contained TRUE FALSE
|
||||
|
||||
" Comments
|
||||
syn keyword idlTodo contained TODO FIXME XXX
|
||||
syn region idlComment start="/\*" end="\*/" contains=idlTodo,@Spell
|
||||
syn match idlComment "//.*" contains=idlTodo,@Spell
|
||||
syn match idlCommentError "\*/"
|
||||
|
||||
" C style Preprocessor
|
||||
syn region idlIncluded contained start=+"+ skip=+\\\(\\\\\)*"+ end=+"+
|
||||
syn match idlIncluded contained "<[^>]*>"
|
||||
syn match idlInclude "^[ \t]*#[ \t]*include\>[ \t]*["<]" contains=idlIncluded,idlString
|
||||
syn region idlPreCondit start="^[ \t]*#[ \t]*\(if\>\|ifdef\>\|ifndef\>\|elif\>\|else\>\|endif\>\)" skip="\\$" end="$" contains=idlComment,idlCommentError
|
||||
syn region idlDefine start="^[ \t]*#[ \t]*\(define\>\|undef\>\)" skip="\\$" end="$" contains=idlLiteral,idlString
|
||||
|
||||
" Constants
|
||||
syn keyword idlConst const skipempty skipwhite nextgroup=idlBaseType,idlBaseTypeInt
|
||||
|
||||
" Attribute
|
||||
syn keyword idlROAttr readonly skipempty skipwhite nextgroup=idlAttr
|
||||
syn keyword idlAttr attribute skipempty skipwhite nextgroup=idlBaseTypeInt,idlBaseType
|
||||
|
||||
" Types
|
||||
syn region idlD4 contained start="<" end=">" skipempty skipwhite nextgroup=idlSimpDecl contains=idlSeqType,idlBaseTypeInt,idlBaseType,idlLiteral
|
||||
syn keyword idlSeqType contained sequence skipempty skipwhite nextgroup=idlD4
|
||||
syn keyword idlBaseType contained float double char boolean octet any skipempty skipwhite nextgroup=idlSimpDecl
|
||||
syn keyword idlBaseTypeInt contained short long skipempty skipwhite nextgroup=idlSimpDecl
|
||||
syn keyword idlBaseType contained unsigned skipempty skipwhite nextgroup=idlBaseTypeInt
|
||||
syn region idlD1 contained start="<" end=">" skipempty skipwhite nextgroup=idlSimpDecl contains=idlString,idlLiteral
|
||||
syn keyword idlBaseType contained string skipempty skipwhite nextgroup=idlD1,idlSimpDecl
|
||||
syn match idlBaseType contained "[a-zA-Z0-9_]\+[ \t]*\(::[ \t]*[a-zA-Z0-9_]\+\)*" skipempty skipwhite nextgroup=idlSimpDecl
|
||||
|
||||
" Modules
|
||||
syn region idlModuleContent contained start="{" end="}" skipempty skipwhite nextgroup=idlError,idlSemiColon contains=idlUnion,idlStruct,idlEnum,idlInterface,idlComment,idlTypedef,idlConst,idlException,idlModule
|
||||
syn match idlModuleName contained "[a-zA-Z0-9_]\+" skipempty skipwhite nextgroup=idlModuleContent,idlError,idlSemiColon
|
||||
syn keyword idlModule module skipempty skipwhite nextgroup=idlModuleName
|
||||
|
||||
" Interfaces
|
||||
syn cluster idlCommentable contains=idlComment
|
||||
syn cluster idlContentCluster contains=idlUnion,idlStruct,idlEnum,idlROAttr,idlAttr,idlOp,idlOneWayOp,idlException,idlConst,idlTypedef,idlAttributes,idlErrorSquareBracket,idlErrorBracket,idlInterfaceSections
|
||||
|
||||
syn region idlInterfaceContent contained start="{" end="}" skipempty skipwhite nextgroup=idlError,idlSemiColon contains=@idlContentCluster,@idlCommentable
|
||||
syn match idlInheritFrom2 contained "," skipempty skipwhite nextgroup=idlInheritFrom
|
||||
syn match idlInheritFrom contained "[a-zA-Z0-9_]\+[ \t]*\(::[ \t]*[a-zA-Z0-9_]\+\)*" skipempty skipwhite nextgroup=idlInheritFrom2,idlInterfaceContent
|
||||
syn match idlInherit contained ":" skipempty skipwhite nextgroup=idlInheritFrom
|
||||
syn match idlInterfaceName contained "[a-zA-Z0-9_]\+" skipempty skipwhite nextgroup=idlInterfaceContent,idlInherit,idlError,idlSemiColon
|
||||
syn keyword idlInterface interface dispinterface skipempty skipwhite nextgroup=idlInterfaceName
|
||||
syn keyword idlInterfaceSections contained properties methods skipempty skipwhite nextgroup=idlSectionColon,idlError
|
||||
syn match idlSectionColon contained ":"
|
||||
|
||||
|
||||
syn match idlLibraryName contained "[a-zA-Z0-9_]\+" skipempty skipwhite nextgroup=idlLibraryContent,idlError,idlSemiColon
|
||||
syn keyword idlLibrary library skipempty skipwhite nextgroup=idlLibraryName
|
||||
syn region idlLibraryContent contained start="{" end="}" skipempty skipwhite nextgroup=idlError,idlSemiColon contains=@idlCommentable,idlAttributes,idlErrorSquareBracket,idlErrorBracket,idlImportlib,idlCoclass,idlTypedef,idlInterface
|
||||
|
||||
syn keyword idlImportlib contained importlib skipempty skipwhite nextgroup=idlStringArg
|
||||
syn region idlStringArg contained start="(" end=")" contains=idlString nextgroup=idlError,idlSemiColon,idlErrorBrace,idlErrorSquareBracket
|
||||
|
||||
syn keyword idlCoclass coclass contained skipempty skipwhite nextgroup=idlCoclassName
|
||||
syn match idlCoclassName "[a-zA-Z0-9_]\+" contained skipempty skipwhite nextgroup=idlCoclassDefinition,idlError,idlSemiColon
|
||||
|
||||
syn region idlCoclassDefinition contained start="{" end="}" contains=idlCoclassAttributes,idlInterface,idlErrorBracket,idlErrorSquareBracket skipempty skipwhite nextgroup=idlError,idlSemiColon
|
||||
syn region idlCoclassAttributes contained start=+\[+ end=+]+ skipempty skipwhite nextgroup=idlInterface contains=idlErrorBracket,idlErrorBrace,idlCoclassAttribute
|
||||
syn keyword idlCoclassAttribute contained default source
|
||||
"syn keyword idlInterface interface skipempty skipwhite nextgroup=idlInterfaceStubName
|
||||
|
||||
syn match idlImportString +"\f\+"+ skipempty skipwhite nextgroup=idlError,idlSemiColon
|
||||
syn keyword idlImport import skipempty skipwhite nextgroup=idlImportString
|
||||
|
||||
syn region idlAttributes start="\[" end="\]" contains=idlAttribute,idlAttributeParam,idlErrorBracket,idlErrorBrace,idlComment
|
||||
syn keyword idlAttribute contained propput propget propputref id helpstring object uuid pointer_default
|
||||
if !exists('idl_no_ms_extensions')
|
||||
syn keyword idlAttribute contained nonextensible dual version aggregatable restricted hidden noncreatable oleautomation
|
||||
endif
|
||||
syn region idlAttributeParam contained start="(" end=")" contains=idlString,idlUuid,idlLiteral,idlErrorBrace,idlErrorSquareBracket
|
||||
" skipwhite nextgroup=idlArraySize,idlParmList contains=idlArraySize,idlLiteral
|
||||
syn match idlErrorBrace contained "}"
|
||||
syn match idlErrorBracket contained ")"
|
||||
syn match idlErrorSquareBracket contained "\]"
|
||||
|
||||
syn match idlUuid contained +[0-9a-zA-Z]\{8}-\([0-9a-zA-Z]\{4}-\)\{3}[0-9a-zA-Z]\{12}+
|
||||
|
||||
" Raises
|
||||
syn keyword idlRaises contained raises skipempty skipwhite nextgroup=idlRaises,idlContext,idlError,idlSemiColon
|
||||
|
||||
" Context
|
||||
syn keyword idlContext contained context skipempty skipwhite nextgroup=idlRaises,idlContext,idlError,idlSemiColon
|
||||
|
||||
" Operation
|
||||
syn match idlParmList contained "," skipempty skipwhite nextgroup=idlOpParms
|
||||
syn region idlArraySize contained start="\[" end="\]" skipempty skipwhite nextgroup=idlArraySize,idlParmList contains=idlArraySize,idlLiteral
|
||||
syn match idlParmName contained "[a-zA-Z0-9_]\+" skipempty skipwhite nextgroup=idlParmList,idlArraySize
|
||||
syn keyword idlParmInt contained short long skipempty skipwhite nextgroup=idlParmName
|
||||
syn keyword idlParmType contained unsigned skipempty skipwhite nextgroup=idlParmInt
|
||||
syn region idlD3 contained start="<" end=">" skipempty skipwhite nextgroup=idlParmName contains=idlString,idlLiteral
|
||||
syn keyword idlParmType contained string skipempty skipwhite nextgroup=idlD3,idlParmName
|
||||
syn keyword idlParmType contained void float double char boolean octet any skipempty skipwhite nextgroup=idlParmName
|
||||
syn match idlParmType contained "[a-zA-Z0-9_]\+[ \t]*\(::[ \t]*[a-zA-Z0-9_]\+\)*" skipempty skipwhite nextgroup=idlParmName
|
||||
syn keyword idlOpParms contained in out inout skipempty skipwhite nextgroup=idlParmType
|
||||
|
||||
if !exists('idl_no_ms_extensions')
|
||||
syn keyword idlOpParms contained retval optional skipempty skipwhite nextgroup=idlParmType
|
||||
syn match idlOpParms contained +\<\(iid_is\|defaultvalue\)\s*([^)]*)+ skipempty skipwhite nextgroup=idlParamType
|
||||
|
||||
syn keyword idlVariantType contained BSTR VARIANT VARIANT_BOOL long short unsigned double CURRENCY DATE
|
||||
syn region idlSafeArray contained matchgroup=idlVariantType start=+SAFEARRAY(\s*+ end=+)+ contains=idlVariantType
|
||||
endif
|
||||
|
||||
syn region idlOpContents contained start="(" end=")" skipempty skipwhite nextgroup=idlRaises,idlContext,idlError,idlSemiColon contains=idlOpParms,idlSafeArray,idlVariantType,@idlCommentable
|
||||
syn match idlOpName contained "[a-zA-Z0-9_]\+" skipempty skipwhite nextgroup=idlOpContents
|
||||
syn keyword idlOpInt contained short long skipempty skipwhite nextgroup=idlOpName
|
||||
syn region idlD2 contained start="<" end=">" skipempty skipwhite nextgroup=idlOpName contains=idlString,idlLiteral
|
||||
syn keyword idlOp contained unsigned skipempty skipwhite nextgroup=idlOpInt
|
||||
syn keyword idlOp contained string skipempty skipwhite nextgroup=idlD2,idlOpName
|
||||
syn keyword idlOp contained void float double char boolean octet any skipempty skipwhite nextgroup=idlOpName
|
||||
syn match idlOp contained "[a-zA-Z0-9_]\+[ \t]*\(::[ \t]*[a-zA-Z0-9_]\+\)*" skipempty skipwhite nextgroup=idlOpName
|
||||
syn keyword idlOp contained void skipempty skipwhite nextgroup=idlOpName
|
||||
syn keyword idlOneWayOp contained oneway skipempty skipwhite nextgroup=idOp
|
||||
|
||||
" Enum
|
||||
syn region idlEnumContents contained start="{" end="}" skipempty skipwhite nextgroup=idlError,idlSemiColon,idlSimpDecl contains=idlId,idlAttributes,@idlCommentable
|
||||
syn match idlEnumName contained "[a-zA-Z0-9_]\+" skipempty skipwhite nextgroup=idlEnumContents
|
||||
syn keyword idlEnum enum skipempty skipwhite nextgroup=idlEnumName,idlEnumContents
|
||||
|
||||
" Typedef
|
||||
syn keyword idlTypedef typedef skipempty skipwhite nextgroup=idlTypedefOtherTypeQualifier,idlDefBaseType,idlDefBaseTypeInt,idlDefSeqType,idlDefv1Enum,idlDefEnum,idlDefOtherType,idlDefAttributes,idlError
|
||||
|
||||
if !exists('idl_no_extensions')
|
||||
syn keyword idlTypedefOtherTypeQualifier contained struct enum interface nextgroup=idlDefBaseType,idlDefBaseTypeInt,idlDefSeqType,idlDefv1Enum,idlDefEnum,idlDefOtherType,idlDefAttributes,idlError skipwhite
|
||||
|
||||
syn region idlDefAttributes contained start="\[" end="\]" contains=idlAttribute,idlAttributeParam,idlErrorBracket,idlErrorBrace skipempty skipwhite nextgroup=idlDefBaseType,idlDefBaseTypeInt,idlDefSeqType,idlDefv1Enum,idlDefEnum,idlDefOtherType,idlError
|
||||
|
||||
syn keyword idlDefBaseType contained float double char boolean octet any skipempty skipwhite nextgroup=idlTypedefDecl,idlError
|
||||
syn keyword idlDefBaseTypeInt contained short long skipempty skipwhite nextgroup=idlTypedefDecl,idlError
|
||||
syn match idlDefOtherType contained +\<\k\+\>+ skipempty nextgroup=idlTypedefDecl,idlError
|
||||
" syn keyword idlDefSeqType contained sequence skipempty skipwhite nextgroup=idlD4
|
||||
|
||||
" Enum typedef
|
||||
syn keyword idlDefEnum contained enum skipempty skipwhite nextgroup=idlDefEnumName,idlDefEnumContents
|
||||
syn match idlDefEnumName contained "[a-zA-Z0-9_]\+" skipempty skipwhite nextgroup=idlDefEnumContents,idlTypedefDecl
|
||||
syn region idlDefEnumContents contained start="{" end="}" skipempty skipwhite nextgroup=idlError,idlTypedefDecl contains=idlId,idlAttributes
|
||||
|
||||
syn match idlTypedefDecl contained "[a-zA-Z0-9_]\+" skipempty skipwhite nextgroup=idlError,idlSemiColon
|
||||
endif
|
||||
|
||||
" Struct
|
||||
syn region idlStructContent contained start="{" end="}" skipempty skipwhite nextgroup=idlError,idlSemiColon,idlSimpDecl contains=idlBaseType,idlBaseTypeInt,idlSeqType,@idlCommentable,idlEnum,idlUnion
|
||||
syn match idlStructName contained "[a-zA-Z0-9_]\+" skipempty skipwhite nextgroup=idlStructContent
|
||||
syn keyword idlStruct struct skipempty skipwhite nextgroup=idlStructName
|
||||
|
||||
" Exception
|
||||
syn keyword idlException exception skipempty skipwhite nextgroup=idlStructName
|
||||
|
||||
" Union
|
||||
syn match idlColon contained ":" skipempty skipwhite nextgroup=idlCase,idlSeqType,idlBaseType,idlBaseTypeInt
|
||||
syn region idlCaseLabel contained start="" skip="::" end=":"me=e-1 skipempty skipwhite nextgroup=idlColon contains=idlLiteral,idlString
|
||||
syn keyword idlCase contained case skipempty skipwhite nextgroup=idlCaseLabel
|
||||
syn keyword idlCase contained default skipempty skipwhite nextgroup=idlColon
|
||||
syn region idlUnionContent contained start="{" end="}" skipempty skipwhite nextgroup=idlError,idlSemiColon,idlSimpDecl contains=idlCase
|
||||
syn region idlSwitchType contained start="(" end=")" skipempty skipwhite nextgroup=idlUnionContent
|
||||
syn keyword idlUnionSwitch contained switch skipempty skipwhite nextgroup=idlSwitchType
|
||||
syn match idlUnionName contained "[a-zA-Z0-9_]\+" skipempty skipwhite nextgroup=idlUnionSwitch
|
||||
syn keyword idlUnion union skipempty skipwhite nextgroup=idlUnionName
|
||||
|
||||
if !exists('idl_no_extensions')
|
||||
syn sync match idlInterfaceSync grouphere idlInterfaceContent "\<\(disp\)\=interface\>\s\+\k\+\s*:\s*\k\+\_s*{" skipempty skipwhite nextgroup=idlError,idlSemiColon contains=@idlContentCluster,@idlCommentable
|
||||
syn sync maxlines=1000 minlines=100
|
||||
else
|
||||
syn sync lines=200
|
||||
endif
|
||||
" syn sync fromstart
|
||||
|
||||
if !exists("did_idl_syntax_inits")
|
||||
let did_idl_syntax_inits = 1
|
||||
" The default methods for highlighting. Can be overridden later
|
||||
command -nargs=+ HiLink hi def link <args>
|
||||
|
||||
HiLink idlInclude Include
|
||||
HiLink idlPreProc PreProc
|
||||
HiLink idlPreCondit PreCondit
|
||||
HiLink idlDefine Macro
|
||||
HiLink idlIncluded String
|
||||
HiLink idlString String
|
||||
HiLink idlComment Comment
|
||||
HiLink idlTodo Todo
|
||||
HiLink idlLiteral Number
|
||||
HiLink idlUuid Number
|
||||
HiLink idlType Type
|
||||
HiLink idlVariantType idlType
|
||||
|
||||
HiLink idlModule Keyword
|
||||
HiLink idlInterface Keyword
|
||||
HiLink idlEnum Keyword
|
||||
HiLink idlStruct Keyword
|
||||
HiLink idlUnion Keyword
|
||||
HiLink idlTypedef Keyword
|
||||
HiLink idlException Keyword
|
||||
HiLink idlTypedefOtherTypeQualifier keyword
|
||||
|
||||
HiLink idlModuleName Typedef
|
||||
HiLink idlInterfaceName Typedef
|
||||
HiLink idlEnumName Typedef
|
||||
HiLink idlStructName Typedef
|
||||
HiLink idlUnionName Typedef
|
||||
|
||||
HiLink idlBaseTypeInt idlType
|
||||
HiLink idlBaseType idlType
|
||||
HiLink idlSeqType idlType
|
||||
HiLink idlD1 Paren
|
||||
HiLink idlD2 Paren
|
||||
HiLink idlD3 Paren
|
||||
HiLink idlD4 Paren
|
||||
"HiLink idlArraySize Paren
|
||||
"HiLink idlArraySize1 Paren
|
||||
HiLink idlModuleContent Paren
|
||||
HiLink idlUnionContent Paren
|
||||
HiLink idlStructContent Paren
|
||||
HiLink idlEnumContents Paren
|
||||
HiLink idlInterfaceContent Paren
|
||||
|
||||
HiLink idlSimpDecl Identifier
|
||||
HiLink idlROAttr StorageClass
|
||||
HiLink idlAttr Keyword
|
||||
HiLink idlConst StorageClass
|
||||
|
||||
HiLink idlOneWayOp StorageClass
|
||||
HiLink idlOp idlType
|
||||
HiLink idlParmType idlType
|
||||
HiLink idlOpName Function
|
||||
HiLink idlOpParms SpecialComment
|
||||
HiLink idlParmName Identifier
|
||||
HiLink idlInheritFrom Identifier
|
||||
HiLink idlAttribute SpecialComment
|
||||
|
||||
HiLink idlId Constant
|
||||
"HiLink idlCase Keyword
|
||||
HiLink idlCaseLabel Constant
|
||||
|
||||
HiLink idlErrorBracket Error
|
||||
HiLink idlErrorBrace Error
|
||||
HiLink idlErrorSquareBracket Error
|
||||
|
||||
HiLink idlImport Keyword
|
||||
HiLink idlImportString idlString
|
||||
HiLink idlCoclassAttribute StorageClass
|
||||
HiLink idlLibrary Keyword
|
||||
HiLink idlImportlib Keyword
|
||||
HiLink idlCoclass Keyword
|
||||
HiLink idlLibraryName Typedef
|
||||
HiLink idlCoclassName Typedef
|
||||
" hi idlLibraryContent guifg=red
|
||||
HiLink idlTypedefDecl Typedef
|
||||
HiLink idlDefEnum Keyword
|
||||
HiLink idlDefv1Enum Keyword
|
||||
HiLink idlDefEnumName Typedef
|
||||
HiLink idlDefEnumContents Paren
|
||||
HiLink idlDefBaseTypeInt idlType
|
||||
HiLink idlDefBaseType idlType
|
||||
HiLink idlDefSeqType idlType
|
||||
HiLink idlInterfaceSections Label
|
||||
let s:cpo_save = &cpo
|
||||
try
|
||||
set cpo&vim
|
||||
|
||||
if exists("idlsyntax_showerror")
|
||||
if exists("idlsyntax_showerror_soft")
|
||||
hi default idlError guibg=#d0ffd0
|
||||
else
|
||||
HiLink idlError Error
|
||||
endif
|
||||
syn match idlError +\S+ skipwhite skipempty nextgroup=idlError
|
||||
endif
|
||||
delcommand HiLink
|
||||
endif
|
||||
|
||||
let b:current_syntax = "idl"
|
||||
syn region idlCppQuote start='\<cpp_quote\s*(' end=')' contains=idlString
|
||||
|
||||
" Misc basic
|
||||
syn match idlId contained "[a-zA-Z][a-zA-Z0-9_]*" skipwhite skipempty nextgroup=idlEnumComma,idlEnumNumber
|
||||
syn match idlEnumComma contained ","
|
||||
syn match idlEnumNumber contained "=" skipwhite skipempty nextgroup=idlString,idlLiteral
|
||||
syn match idlSemiColon contained ";"
|
||||
syn match idlCommaArg contained "," skipempty skipwhite nextgroup=idlSimpDecl
|
||||
syn region idlArraySize1 contained start=:\[: end=:\]: skipempty skipwhite nextgroup=idlArraySize1,idlError,idlSemiColon,idlCommaArg contains=idlArraySize1,idlLiteral
|
||||
syn match idlSimpDecl contained "[a-zA-Z][a-zA-Z0-9_]*" skipempty skipwhite nextgroup=idlError,idlSemiColon,idlCommaArg,idlArraySize1
|
||||
syn region idlString contained start=+"+ skip=+\\\(\\\\\)*"+ end=+"+ contains=@Spell
|
||||
syn match idlLiteral contained "[1-9]\d*\(\.\d*\)\="
|
||||
syn match idlLiteral contained "0"
|
||||
syn match idlLiteral contained "\.\d\+"
|
||||
syn match idlLiteral contained "0x[0-9A-Fa-f]\+"
|
||||
syn match idlLiteral contained "0[0-7]\+"
|
||||
syn keyword idlLiteral contained TRUE FALSE
|
||||
|
||||
" Comments
|
||||
syn keyword idlTodo contained TODO FIXME XXX
|
||||
syn region idlComment start="/\*" end="\*/" contains=idlTodo,@Spell
|
||||
syn match idlComment "//.*" contains=idlTodo,@Spell
|
||||
syn match idlCommentError "\*/"
|
||||
|
||||
" C style Preprocessor
|
||||
syn region idlIncluded contained start=+"+ skip=+\\\(\\\\\)*"+ end=+"+
|
||||
syn match idlIncluded contained "<[^>]*>"
|
||||
syn match idlInclude "^[ \t]*#[ \t]*include\>[ \t]*["<]" contains=idlIncluded,idlString
|
||||
syn region idlPreCondit start="^[ \t]*#[ \t]*\(if\>\|ifdef\>\|ifndef\>\|elif\>\|else\>\|endif\>\)" skip="\\$" end="$" contains=idlComment,idlCommentError
|
||||
syn region idlDefine start="^[ \t]*#[ \t]*\(define\>\|undef\>\)" skip="\\$" end="$" contains=idlLiteral,idlString
|
||||
|
||||
" Constants
|
||||
syn keyword idlConst const skipempty skipwhite nextgroup=idlBaseType,idlBaseTypeInt
|
||||
|
||||
" Attribute
|
||||
syn keyword idlROAttr readonly skipempty skipwhite nextgroup=idlAttr
|
||||
syn keyword idlAttr attribute skipempty skipwhite nextgroup=idlBaseTypeInt,idlBaseType
|
||||
|
||||
" Types
|
||||
syn region idlD4 contained start="<" end=">" skipempty skipwhite nextgroup=idlSimpDecl contains=idlSeqType,idlBaseTypeInt,idlBaseType,idlLiteral
|
||||
syn keyword idlSeqType contained sequence skipempty skipwhite nextgroup=idlD4
|
||||
syn keyword idlBaseType contained float double char boolean octet any skipempty skipwhite nextgroup=idlSimpDecl
|
||||
syn keyword idlBaseTypeInt contained short long skipempty skipwhite nextgroup=idlSimpDecl
|
||||
syn keyword idlBaseType contained unsigned skipempty skipwhite nextgroup=idlBaseTypeInt
|
||||
syn region idlD1 contained start="<" end=">" skipempty skipwhite nextgroup=idlSimpDecl contains=idlString,idlLiteral
|
||||
syn keyword idlBaseType contained string skipempty skipwhite nextgroup=idlD1,idlSimpDecl
|
||||
syn match idlBaseType contained "[a-zA-Z0-9_]\+[ \t]*\(::[ \t]*[a-zA-Z0-9_]\+\)*" skipempty skipwhite nextgroup=idlSimpDecl
|
||||
|
||||
" Modules
|
||||
syn region idlModuleContent contained start="{" end="}" skipempty skipwhite nextgroup=idlError,idlSemiColon contains=idlUnion,idlStruct,idlEnum,idlInterface,idlComment,idlTypedef,idlConst,idlException,idlModule
|
||||
syn match idlModuleName contained "[a-zA-Z0-9_]\+" skipempty skipwhite nextgroup=idlModuleContent,idlError,idlSemiColon
|
||||
syn keyword idlModule module skipempty skipwhite nextgroup=idlModuleName
|
||||
|
||||
" Interfaces
|
||||
syn cluster idlCommentable contains=idlComment
|
||||
syn cluster idlContentCluster contains=idlUnion,idlStruct,idlEnum,idlROAttr,idlAttr,idlOp,idlOneWayOp,idlException,idlConst,idlTypedef,idlAttributes,idlErrorSquareBracket,idlErrorBracket,idlInterfaceSections
|
||||
|
||||
syn region idlInterfaceContent contained start="{" end="}" skipempty skipwhite nextgroup=idlError,idlSemiColon contains=@idlContentCluster,@idlCommentable
|
||||
syn match idlInheritFrom2 contained "," skipempty skipwhite nextgroup=idlInheritFrom
|
||||
syn match idlInheritFrom contained "[a-zA-Z0-9_]\+[ \t]*\(::[ \t]*[a-zA-Z0-9_]\+\)*" skipempty skipwhite nextgroup=idlInheritFrom2,idlInterfaceContent
|
||||
syn match idlInherit contained ":" skipempty skipwhite nextgroup=idlInheritFrom
|
||||
syn match idlInterfaceName contained "[a-zA-Z0-9_]\+" skipempty skipwhite nextgroup=idlInterfaceContent,idlInherit,idlError,idlSemiColon
|
||||
syn keyword idlInterface interface dispinterface skipempty skipwhite nextgroup=idlInterfaceName
|
||||
syn keyword idlInterfaceSections contained properties methods skipempty skipwhite nextgroup=idlSectionColon,idlError
|
||||
syn match idlSectionColon contained ":"
|
||||
|
||||
|
||||
syn match idlLibraryName contained "[a-zA-Z0-9_]\+" skipempty skipwhite nextgroup=idlLibraryContent,idlError,idlSemiColon
|
||||
syn keyword idlLibrary library skipempty skipwhite nextgroup=idlLibraryName
|
||||
syn region idlLibraryContent contained start="{" end="}" skipempty skipwhite nextgroup=idlError,idlSemiColon contains=@idlCommentable,idlAttributes,idlErrorSquareBracket,idlErrorBracket,idlImportlib,idlCoclass,idlTypedef,idlInterface
|
||||
|
||||
syn keyword idlImportlib contained importlib skipempty skipwhite nextgroup=idlStringArg
|
||||
syn region idlStringArg contained start="(" end=")" contains=idlString nextgroup=idlError,idlSemiColon,idlErrorBrace,idlErrorSquareBracket
|
||||
|
||||
syn keyword idlCoclass coclass contained skipempty skipwhite nextgroup=idlCoclassName
|
||||
syn match idlCoclassName "[a-zA-Z0-9_]\+" contained skipempty skipwhite nextgroup=idlCoclassDefinition,idlError,idlSemiColon
|
||||
|
||||
syn region idlCoclassDefinition contained start="{" end="}" contains=idlCoclassAttributes,idlInterface,idlErrorBracket,idlErrorSquareBracket skipempty skipwhite nextgroup=idlError,idlSemiColon
|
||||
syn region idlCoclassAttributes contained start=+\[+ end=+]+ skipempty skipwhite nextgroup=idlInterface contains=idlErrorBracket,idlErrorBrace,idlCoclassAttribute
|
||||
syn keyword idlCoclassAttribute contained default source
|
||||
"syn keyword idlInterface interface skipempty skipwhite nextgroup=idlInterfaceStubName
|
||||
|
||||
syn match idlImportString +"\f\+"+ skipempty skipwhite nextgroup=idlError,idlSemiColon
|
||||
syn keyword idlImport import skipempty skipwhite nextgroup=idlImportString
|
||||
|
||||
syn region idlAttributes start="\[" end="\]" contains=idlAttribute,idlAttributeParam,idlErrorBracket,idlErrorBrace,idlComment
|
||||
syn keyword idlAttribute contained propput propget propputref id helpstring object uuid pointer_default
|
||||
if !exists('idl_no_ms_extensions')
|
||||
syn keyword idlAttribute contained nonextensible dual version aggregatable restricted hidden noncreatable oleautomation
|
||||
endif
|
||||
syn region idlAttributeParam contained start="(" end=")" contains=idlString,idlUuid,idlLiteral,idlErrorBrace,idlErrorSquareBracket
|
||||
" skipwhite nextgroup=idlArraySize,idlParmList contains=idlArraySize,idlLiteral
|
||||
syn match idlErrorBrace contained "}"
|
||||
syn match idlErrorBracket contained ")"
|
||||
syn match idlErrorSquareBracket contained "\]"
|
||||
|
||||
syn match idlUuid contained +[0-9a-zA-Z]\{8}-\([0-9a-zA-Z]\{4}-\)\{3}[0-9a-zA-Z]\{12}+
|
||||
|
||||
" Raises
|
||||
syn keyword idlRaises contained raises skipempty skipwhite nextgroup=idlRaises,idlContext,idlError,idlSemiColon
|
||||
|
||||
" Context
|
||||
syn keyword idlContext contained context skipempty skipwhite nextgroup=idlRaises,idlContext,idlError,idlSemiColon
|
||||
|
||||
" Operation
|
||||
syn match idlParmList contained "," skipempty skipwhite nextgroup=idlOpParms
|
||||
syn region idlArraySize contained start="\[" end="\]" skipempty skipwhite nextgroup=idlArraySize,idlParmList contains=idlArraySize,idlLiteral
|
||||
syn match idlParmName contained "[a-zA-Z0-9_]\+" skipempty skipwhite nextgroup=idlParmList,idlArraySize
|
||||
syn keyword idlParmInt contained short long skipempty skipwhite nextgroup=idlParmName
|
||||
syn keyword idlParmType contained unsigned skipempty skipwhite nextgroup=idlParmInt
|
||||
syn region idlD3 contained start="<" end=">" skipempty skipwhite nextgroup=idlParmName contains=idlString,idlLiteral
|
||||
syn keyword idlParmType contained string skipempty skipwhite nextgroup=idlD3,idlParmName
|
||||
syn keyword idlParmType contained void float double char boolean octet any skipempty skipwhite nextgroup=idlParmName
|
||||
syn match idlParmType contained "[a-zA-Z0-9_]\+[ \t]*\(::[ \t]*[a-zA-Z0-9_]\+\)*" skipempty skipwhite nextgroup=idlParmName
|
||||
syn keyword idlOpParms contained in out inout skipempty skipwhite nextgroup=idlParmType
|
||||
|
||||
if !exists('idl_no_ms_extensions')
|
||||
syn keyword idlOpParms contained retval optional skipempty skipwhite nextgroup=idlParmType
|
||||
syn match idlOpParms contained +\<\(iid_is\|defaultvalue\)\s*([^)]*)+ skipempty skipwhite nextgroup=idlParamType
|
||||
|
||||
syn keyword idlVariantType contained BSTR VARIANT VARIANT_BOOL long short unsigned double CURRENCY DATE
|
||||
syn region idlSafeArray contained matchgroup=idlVariantType start=+SAFEARRAY(\s*+ end=+)+ contains=idlVariantType
|
||||
endif
|
||||
|
||||
syn region idlOpContents contained start="(" end=")" skipempty skipwhite nextgroup=idlRaises,idlContext,idlError,idlSemiColon contains=idlOpParms,idlSafeArray,idlVariantType,@idlCommentable
|
||||
syn match idlOpName contained "[a-zA-Z0-9_]\+" skipempty skipwhite nextgroup=idlOpContents
|
||||
syn keyword idlOpInt contained short long skipempty skipwhite nextgroup=idlOpName
|
||||
syn region idlD2 contained start="<" end=">" skipempty skipwhite nextgroup=idlOpName contains=idlString,idlLiteral
|
||||
syn keyword idlOp contained unsigned skipempty skipwhite nextgroup=idlOpInt
|
||||
syn keyword idlOp contained string skipempty skipwhite nextgroup=idlD2,idlOpName
|
||||
syn keyword idlOp contained void float double char boolean octet any skipempty skipwhite nextgroup=idlOpName
|
||||
syn match idlOp contained "[a-zA-Z0-9_]\+[ \t]*\(::[ \t]*[a-zA-Z0-9_]\+\)*" skipempty skipwhite nextgroup=idlOpName
|
||||
syn keyword idlOp contained void skipempty skipwhite nextgroup=idlOpName
|
||||
syn keyword idlOneWayOp contained oneway skipempty skipwhite nextgroup=idOp
|
||||
|
||||
" Enum
|
||||
syn region idlEnumContents contained start="{" end="}" skipempty skipwhite nextgroup=idlError,idlSemiColon,idlSimpDecl contains=idlId,idlAttributes,@idlCommentable
|
||||
syn match idlEnumName contained "[a-zA-Z0-9_]\+" skipempty skipwhite nextgroup=idlEnumContents
|
||||
syn keyword idlEnum enum skipempty skipwhite nextgroup=idlEnumName,idlEnumContents
|
||||
|
||||
" Typedef
|
||||
syn keyword idlTypedef typedef skipempty skipwhite nextgroup=idlTypedefOtherTypeQualifier,idlDefBaseType,idlDefBaseTypeInt,idlDefSeqType,idlDefv1Enum,idlDefEnum,idlDefOtherType,idlDefAttributes,idlError
|
||||
|
||||
if !exists('idl_no_extensions')
|
||||
syn keyword idlTypedefOtherTypeQualifier contained struct enum interface nextgroup=idlDefBaseType,idlDefBaseTypeInt,idlDefSeqType,idlDefv1Enum,idlDefEnum,idlDefOtherType,idlDefAttributes,idlError skipwhite
|
||||
|
||||
syn region idlDefAttributes contained start="\[" end="\]" contains=idlAttribute,idlAttributeParam,idlErrorBracket,idlErrorBrace skipempty skipwhite nextgroup=idlDefBaseType,idlDefBaseTypeInt,idlDefSeqType,idlDefv1Enum,idlDefEnum,idlDefOtherType,idlError
|
||||
|
||||
syn keyword idlDefBaseType contained float double char boolean octet any skipempty skipwhite nextgroup=idlTypedefDecl,idlError
|
||||
syn keyword idlDefBaseTypeInt contained short long skipempty skipwhite nextgroup=idlTypedefDecl,idlError
|
||||
syn match idlDefOtherType contained +\<\k\+\>+ skipempty nextgroup=idlTypedefDecl,idlError
|
||||
" syn keyword idlDefSeqType contained sequence skipempty skipwhite nextgroup=idlD4
|
||||
|
||||
" Enum typedef
|
||||
syn keyword idlDefEnum contained enum skipempty skipwhite nextgroup=idlDefEnumName,idlDefEnumContents
|
||||
syn match idlDefEnumName contained "[a-zA-Z0-9_]\+" skipempty skipwhite nextgroup=idlDefEnumContents,idlTypedefDecl
|
||||
syn region idlDefEnumContents contained start="{" end="}" skipempty skipwhite nextgroup=idlError,idlTypedefDecl contains=idlId,idlAttributes
|
||||
|
||||
syn match idlTypedefDecl contained "[a-zA-Z0-9_]\+" skipempty skipwhite nextgroup=idlError,idlSemiColon
|
||||
endif
|
||||
|
||||
" Struct
|
||||
syn region idlStructContent contained start="{" end="}" skipempty skipwhite nextgroup=idlError,idlSemiColon,idlSimpDecl contains=idlBaseType,idlBaseTypeInt,idlSeqType,@idlCommentable,idlEnum,idlUnion
|
||||
syn match idlStructName contained "[a-zA-Z0-9_]\+" skipempty skipwhite nextgroup=idlStructContent
|
||||
syn keyword idlStruct struct skipempty skipwhite nextgroup=idlStructName
|
||||
|
||||
" Exception
|
||||
syn keyword idlException exception skipempty skipwhite nextgroup=idlStructName
|
||||
|
||||
" Union
|
||||
syn match idlColon contained ":" skipempty skipwhite nextgroup=idlCase,idlSeqType,idlBaseType,idlBaseTypeInt
|
||||
syn region idlCaseLabel contained start="" skip="::" end=":"me=e-1 skipempty skipwhite nextgroup=idlColon contains=idlLiteral,idlString
|
||||
syn keyword idlCase contained case skipempty skipwhite nextgroup=idlCaseLabel
|
||||
syn keyword idlCase contained default skipempty skipwhite nextgroup=idlColon
|
||||
syn region idlUnionContent contained start="{" end="}" skipempty skipwhite nextgroup=idlError,idlSemiColon,idlSimpDecl contains=idlCase
|
||||
syn region idlSwitchType contained start="(" end=")" skipempty skipwhite nextgroup=idlUnionContent
|
||||
syn keyword idlUnionSwitch contained switch skipempty skipwhite nextgroup=idlSwitchType
|
||||
syn match idlUnionName contained "[a-zA-Z0-9_]\+" skipempty skipwhite nextgroup=idlUnionSwitch
|
||||
syn keyword idlUnion union skipempty skipwhite nextgroup=idlUnionName
|
||||
|
||||
if !exists('idl_no_extensions')
|
||||
syn sync match idlInterfaceSync grouphere idlInterfaceContent "\<\(disp\)\=interface\>\s\+\k\+\s*:\s*\k\+\_s*{" skipempty skipwhite nextgroup=idlError,idlSemiColon contains=@idlContentCluster,@idlCommentable
|
||||
syn sync maxlines=1000 minlines=100
|
||||
else
|
||||
syn sync lines=200
|
||||
endif
|
||||
" syn sync fromstart
|
||||
|
||||
if !exists("did_idl_syntax_inits")
|
||||
let did_idl_syntax_inits = 1
|
||||
" The default methods for highlighting. Can be overridden later
|
||||
command -nargs=+ HiLink hi def link <args>
|
||||
|
||||
HiLink idlInclude Include
|
||||
HiLink idlPreProc PreProc
|
||||
HiLink idlPreCondit PreCondit
|
||||
HiLink idlDefine Macro
|
||||
HiLink idlIncluded String
|
||||
HiLink idlString String
|
||||
HiLink idlComment Comment
|
||||
HiLink idlTodo Todo
|
||||
HiLink idlLiteral Number
|
||||
HiLink idlUuid Number
|
||||
HiLink idlType Type
|
||||
HiLink idlVariantType idlType
|
||||
|
||||
HiLink idlModule Keyword
|
||||
HiLink idlInterface Keyword
|
||||
HiLink idlEnum Keyword
|
||||
HiLink idlStruct Keyword
|
||||
HiLink idlUnion Keyword
|
||||
HiLink idlTypedef Keyword
|
||||
HiLink idlException Keyword
|
||||
HiLink idlTypedefOtherTypeQualifier keyword
|
||||
|
||||
HiLink idlModuleName Typedef
|
||||
HiLink idlInterfaceName Typedef
|
||||
HiLink idlEnumName Typedef
|
||||
HiLink idlStructName Typedef
|
||||
HiLink idlUnionName Typedef
|
||||
|
||||
HiLink idlBaseTypeInt idlType
|
||||
HiLink idlBaseType idlType
|
||||
HiLink idlSeqType idlType
|
||||
HiLink idlD1 Paren
|
||||
HiLink idlD2 Paren
|
||||
HiLink idlD3 Paren
|
||||
HiLink idlD4 Paren
|
||||
"HiLink idlArraySize Paren
|
||||
"HiLink idlArraySize1 Paren
|
||||
HiLink idlModuleContent Paren
|
||||
HiLink idlUnionContent Paren
|
||||
HiLink idlStructContent Paren
|
||||
HiLink idlEnumContents Paren
|
||||
HiLink idlInterfaceContent Paren
|
||||
|
||||
HiLink idlSimpDecl Identifier
|
||||
HiLink idlROAttr StorageClass
|
||||
HiLink idlAttr Keyword
|
||||
HiLink idlConst StorageClass
|
||||
|
||||
HiLink idlOneWayOp StorageClass
|
||||
HiLink idlOp idlType
|
||||
HiLink idlParmType idlType
|
||||
HiLink idlOpName Function
|
||||
HiLink idlOpParms SpecialComment
|
||||
HiLink idlParmName Identifier
|
||||
HiLink idlInheritFrom Identifier
|
||||
HiLink idlAttribute SpecialComment
|
||||
|
||||
HiLink idlId Constant
|
||||
"HiLink idlCase Keyword
|
||||
HiLink idlCaseLabel Constant
|
||||
|
||||
HiLink idlErrorBracket Error
|
||||
HiLink idlErrorBrace Error
|
||||
HiLink idlErrorSquareBracket Error
|
||||
|
||||
HiLink idlImport Keyword
|
||||
HiLink idlImportString idlString
|
||||
HiLink idlCoclassAttribute StorageClass
|
||||
HiLink idlLibrary Keyword
|
||||
HiLink idlImportlib Keyword
|
||||
HiLink idlCoclass Keyword
|
||||
HiLink idlLibraryName Typedef
|
||||
HiLink idlCoclassName Typedef
|
||||
" hi idlLibraryContent guifg=red
|
||||
HiLink idlTypedefDecl Typedef
|
||||
HiLink idlDefEnum Keyword
|
||||
HiLink idlDefv1Enum Keyword
|
||||
HiLink idlDefEnumName Typedef
|
||||
HiLink idlDefEnumContents Paren
|
||||
HiLink idlDefBaseTypeInt idlType
|
||||
HiLink idlDefBaseType idlType
|
||||
HiLink idlDefSeqType idlType
|
||||
HiLink idlInterfaceSections Label
|
||||
|
||||
if exists("idlsyntax_showerror")
|
||||
if exists("idlsyntax_showerror_soft")
|
||||
hi default idlError guibg=#d0ffd0
|
||||
else
|
||||
HiLink idlError Error
|
||||
endif
|
||||
endif
|
||||
delcommand HiLink
|
||||
endif
|
||||
|
||||
let b:current_syntax = "idl"
|
||||
finally
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
endtry
|
||||
" vim: sw=2 et
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim syntax file
|
||||
" Language: Makeindex style file, *.ist
|
||||
" Maintainer: Peter Meszaros <pmeszaros@effice.hu>
|
||||
" Last Change: May 4, 2001
|
||||
" Last Change: 2012 Jan 08 by Thilo Six
|
||||
|
||||
" For version 5.x: Clear all syntax items
|
||||
" For version 6.x: Quit when a syntax file was already loaded
|
||||
@@ -11,6 +11,9 @@ elseif exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
if version >= 600
|
||||
setlocal iskeyword=$,@,48-57,_
|
||||
else
|
||||
@@ -67,4 +70,6 @@ endif
|
||||
|
||||
let b:current_syntax = "ist"
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
" vim: ts=8 sw=2
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim syntax file
|
||||
" Language: JAM
|
||||
" Maintainer: Ralf Lemke (ralflemk@t-online.de)
|
||||
" Last change: 09-10-2000
|
||||
" Last change: 2012 Jan 08 by Thilo Six
|
||||
|
||||
" For version 5.x: Clear all syntax items
|
||||
" For version 6.x: Quit when a syntax file was already loaded
|
||||
@@ -11,6 +11,9 @@ elseif exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
if version >= 600
|
||||
setlocal iskeyword=@,48-57,_,-
|
||||
else
|
||||
@@ -249,4 +252,6 @@ endif
|
||||
|
||||
let b:current_syntax = "jam"
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
" vim: ts=8
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim syntax file " Language: Java
|
||||
" Maintainer: Claudio Fleiner <claudio@fleiner.com>
|
||||
" URL: http://www.fleiner.com/vim/syntax/java.vim
|
||||
" Last Change: 2010 March 23
|
||||
" Last Change: 2011 Dec 30
|
||||
|
||||
" Please check :help java.vim for comments on some of the options available.
|
||||
|
||||
@@ -120,11 +120,8 @@ syn region javaLabelRegion transparent matchgroup=javaLabel start="\<case\>" ma
|
||||
syn match javaUserLabel "^\s*[_$a-zA-Z][_$a-zA-Z0-9_]*\s*:"he=e-1 contains=javaLabel
|
||||
syn keyword javaLabel default
|
||||
|
||||
if !exists("java_allow_cpp_keywords")
|
||||
syn keyword javaError auto delete extern friend inline redeclared
|
||||
syn keyword javaError register signed sizeof struct template typedef union
|
||||
syn keyword javaError unsigned operator
|
||||
endif
|
||||
" highlighting C++ keywords as errors removed, too many people find it
|
||||
" annoying. Was: if !exists("java_allow_cpp_keywords")
|
||||
|
||||
" The following cluster contains all java groups except the contained ones
|
||||
syn cluster javaTop add=javaExternal,javaError,javaError,javaBranch,javaLabelRegion,javaLabel,javaConditional,javaRepeat,javaBoolean,javaConstant,javaTypedef,javaOperator,javaType,javaType,javaStatement,javaStorageClass,javaAssert,javaExceptions,javaMethodDecl,javaClassDecl,javaClassDecl,javaClassDecl,javaScopeDecl,javaError,javaError2,javaUserLabel,javaLangObject,javaAnnotation,javaVarArg
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
" Vim syntax file
|
||||
" Language: kimwitu++
|
||||
" Maintainer: Michael Piefel <piefel@informatik.hu-berlin.de>
|
||||
" Maintainer: Michael Piefel <entwurf@piefel.de>
|
||||
" Last Change: 2 May 2001
|
||||
|
||||
" For version 5.x: Clear all syntax items
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
"
|
||||
" Language: Logtalk
|
||||
" Maintainer: Paulo Moura <pmoura@logtalk.org>
|
||||
" Last Change: Oct 31, 2008
|
||||
" Last Change: February 4, 2012
|
||||
|
||||
|
||||
" Quit when a syntax file was already loaded:
|
||||
@@ -13,6 +13,8 @@ elseif exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
" Logtalk is case sensitive:
|
||||
|
||||
@@ -75,8 +77,13 @@ syn region logtalkEntityRel matchgroup=logtalkEntityRelTag start="complements("
|
||||
|
||||
" Logtalk directives
|
||||
|
||||
syn region logtalkDir matchgroup=logtalkDirTag start=":- if(" matchgroup=logtalkDirTag end=")\." contains=ALL
|
||||
syn region logtalkDir matchgroup=logtalkDirTag start=":- elif(" matchgroup=logtalkDirTag end=")\." contains=ALL
|
||||
syn match logtalkDirTag ":- else\."
|
||||
syn match logtalkDirTag ":- endif\."
|
||||
syn region logtalkDir matchgroup=logtalkDirTag start=":- alias(" matchgroup=logtalkDirTag end=")\." contains=ALL
|
||||
syn region logtalkDir matchgroup=logtalkDirTag start=":- calls(" matchgroup=logtalkDirTag end=")\." contains=ALL
|
||||
syn region logtalkDir matchgroup=logtalkDirTag start=":- coinductive(" matchgroup=logtalkDirTag end=")\." contains=ALL
|
||||
syn region logtalkDir matchgroup=logtalkDirTag start=":- encoding(" matchgroup=logtalkDirTag end=")\." contains=ALL
|
||||
syn region logtalkDir matchgroup=logtalkDirTag start=":- initialization(" matchgroup=logtalkDirTag end=")\." contains=ALL
|
||||
syn region logtalkDir matchgroup=logtalkDirTag start=":- info(" matchgroup=logtalkDirTag end=")\." contains=ALL
|
||||
@@ -89,17 +96,27 @@ syn region logtalkDir matchgroup=logtalkDirTag start=":- public(" matchgroup=l
|
||||
syn region logtalkDir matchgroup=logtalkDirTag start=":- protected(" matchgroup=logtalkDirTag end=")\." contains=ALL
|
||||
syn region logtalkDir matchgroup=logtalkDirTag start=":- private(" matchgroup=logtalkDirTag end=")\." contains=ALL
|
||||
syn region logtalkDir matchgroup=logtalkDirTag start=":- meta_predicate(" matchgroup=logtalkDirTag end=")\." contains=ALL
|
||||
syn region logtalkDir matchgroup=logtalkDirTag start=":- meta_non_terminal(" matchgroup=logtalkDirTag end=")\." contains=ALL
|
||||
syn region logtalkDir matchgroup=logtalkDirTag start=":- op(" matchgroup=logtalkDirTag end=")\." contains=ALL
|
||||
syn region logtalkDir matchgroup=logtalkDirTag start=":- set_logtalk_flag(" matchgroup=logtalkDirTag end=")\." contains=ALL
|
||||
syn region logtalkDir matchgroup=logtalkDirTag start=":- synchronized(" matchgroup=logtalkDirTag end=")\." contains=ALL
|
||||
syn match logtalkDirTag ":- synchronized\."
|
||||
syn region logtalkDir matchgroup=logtalkDirTag start=":- uses(" matchgroup=logtalkDirTag end=")\." contains=ALL
|
||||
syn match logtalkDirTag ":- threaded\."
|
||||
|
||||
|
||||
" Prolog directives
|
||||
|
||||
syn region logtalkDir matchgroup=logtalkDirTag start=":- ensure_loaded(" matchgroup=logtalkDirTag end=")\." contains=ALL
|
||||
syn region logtalkDir matchgroup=logtalkDirTag start=":- include(" matchgroup=logtalkDirTag end=")\." contains=ALL
|
||||
syn region logtalkDir matchgroup=logtalkDirTag start=":- set_prolog_flag(" matchgroup=logtalkDirTag end=")\." contains=ALL
|
||||
|
||||
|
||||
" Module directives
|
||||
|
||||
syn region logtalkDir matchgroup=logtalkDirTag start=":- module(" matchgroup=logtalkDirTag end=")\." contains=ALL
|
||||
syn region logtalkDir matchgroup=logtalkDirTag start=":- export(" matchgroup=logtalkDirTag end=")\." contains=ALL
|
||||
syn region logtalkDir matchgroup=logtalkDirTag start=":- reexport(" matchgroup=logtalkDirTag end=")\." contains=ALL
|
||||
syn region logtalkDir matchgroup=logtalkDirTag start=":- use_module(" matchgroup=logtalkDirTag end=")\." contains=ALL
|
||||
|
||||
|
||||
@@ -109,7 +126,7 @@ syn match logtalkBuiltIn "\<\(abolish\|c\(reate\|urrent\)\)_\(object\|protocol\
|
||||
|
||||
syn match logtalkBuiltIn "\<\(object\|protocol\|category\)_property\ze("
|
||||
|
||||
syn match logtalkBuiltIn "\<complements_object\ze("
|
||||
syn match logtalkBuiltIn "\<co\(mplements_object\|nforms_to_protocol\)\ze("
|
||||
syn match logtalkBuiltIn "\<extends_\(object\|protocol\|category\)\ze("
|
||||
syn match logtalkBuiltIn "\<imp\(orts_category\|lements_protocol\)\ze("
|
||||
syn match logtalkBuiltIn "\<\(instantiat\|specializ\)es_class\ze("
|
||||
@@ -119,7 +136,7 @@ syn match logtalkBuiltIn "\<current_event\ze("
|
||||
|
||||
syn match logtalkBuiltIn "\<\(curren\|se\)t_logtalk_flag\ze("
|
||||
|
||||
syn match logtalkBuiltIn "\<logtalk_\(compile\|l\(ibrary_path\|oad\)\)\ze("
|
||||
syn match logtalkBuiltIn "\<logtalk_\(compile\|l\(ibrary_path\|oad\|oad_context\)\)\ze("
|
||||
|
||||
syn match logtalkBuiltIn "\<\(for\|retract\)all\ze("
|
||||
|
||||
@@ -145,7 +162,7 @@ syn match logtalkBuiltInMethod "\<f\(ind\|or\)all\ze("
|
||||
syn match logtalkBuiltInMethod "\<before\ze("
|
||||
syn match logtalkBuiltInMethod "\<after\ze("
|
||||
|
||||
syn match logtalkBuiltInMethod "\<expand_term\ze("
|
||||
syn match logtalkBuiltInMethod "\<expand_\(goal\|term\)\ze("
|
||||
syn match logtalkBuiltInMethod "\<\(goal\|term\)_expansion\ze("
|
||||
syn match logtalkBuiltInMethod "\<phrase\ze("
|
||||
|
||||
@@ -182,12 +199,14 @@ syn match logtalkKeyword "\<var\ze("
|
||||
syn match logtalkKeyword "\<atom\(ic\)\?\ze("
|
||||
syn match logtalkKeyword "\<integer\ze("
|
||||
syn match logtalkKeyword "\<float\ze("
|
||||
syn match logtalkKeyword "\<compound\ze("
|
||||
syn match logtalkKeyword "\<c\(allable\|ompound\)\ze("
|
||||
syn match logtalkKeyword "\<n\(onvar\|umber\)\ze("
|
||||
syn match logtalkKeyword "\<ground\ze("
|
||||
|
||||
|
||||
" Term comparison
|
||||
|
||||
syn match logtalkKeyword "\<compare\ze("
|
||||
syn match logtalkOperator "@=<"
|
||||
syn match logtalkOperator "=="
|
||||
syn match logtalkOperator "\\=="
|
||||
@@ -202,6 +221,7 @@ syn match logtalkKeyword "\<functor\ze("
|
||||
syn match logtalkKeyword "\<arg\ze("
|
||||
syn match logtalkOperator "=\.\."
|
||||
syn match logtalkKeyword "\<copy_term\ze("
|
||||
syn match logtalkKeyword "\<numbervars\ze("
|
||||
|
||||
|
||||
" Arithemtic evaluation
|
||||
@@ -250,6 +270,7 @@ syn match logtalkKeyword "\<\(current_\)\?char_conversion\ze("
|
||||
" Logic and control
|
||||
|
||||
syn match logtalkOperator "\\+"
|
||||
syn match logtalkKeyword "\<ignore\ze("
|
||||
syn match logtalkKeyword "\<once\ze("
|
||||
syn match logtalkKeyword "\<repeat\>"
|
||||
|
||||
@@ -269,6 +290,11 @@ syn match logtalkKeyword "\<halt\ze("
|
||||
syn match logtalkKeyword "\<halt\>"
|
||||
|
||||
|
||||
" Sorting
|
||||
|
||||
syn match logtalkKeyword "\<\(key\)\?sort\ze("
|
||||
|
||||
|
||||
" Evaluable functors
|
||||
|
||||
syn match logtalkOperator "+"
|
||||
@@ -277,6 +303,8 @@ syn match logtalkOperator "\*"
|
||||
syn match logtalkOperator "//"
|
||||
syn match logtalkOperator "/"
|
||||
syn match logtalkKeyword "\<r\(ound\|em\)\ze("
|
||||
syn match logtalkKeyword "\<e\>"
|
||||
syn match logtalkKeyword "\<pi\>"
|
||||
syn match logtalkKeyword "\<rem\>"
|
||||
syn match logtalkKeyword "\<mod\ze("
|
||||
syn match logtalkKeyword "\<mod\>"
|
||||
@@ -311,7 +339,12 @@ syn match logtalkOperator "\\"
|
||||
syn match logtalkOperator "|"
|
||||
|
||||
|
||||
" Logtalk numbers
|
||||
" Logtalk existential quantifier operator
|
||||
|
||||
syn match logtalkOperator "\^"
|
||||
|
||||
|
||||
" Logtalk numbers
|
||||
|
||||
syn match logtalkNumber "\<\d\+\>"
|
||||
syn match logtalkNumber "\<\d\+\.\d\+\>"
|
||||
@@ -333,6 +366,17 @@ syn match logtalkOperator "\."
|
||||
syn region logtalkBlockComment start="/\*" end="\*/" fold
|
||||
syn match logtalkLineComment "%.*"
|
||||
|
||||
syn cluster logtalkComment contains=logtalkBlockComment,logtalkLineComment
|
||||
|
||||
|
||||
" Logtalk conditional compilation folding
|
||||
|
||||
syn region logtalkIfContainer transparent keepend extend start=":- if(" end=":- endif\." containedin=ALLBUT,@logtalkComment contains=NONE
|
||||
syn region logtalkIf transparent fold keepend start=":- if(" end=":- \(else\.\|elif(\)"ms=s-1,me=s-1 contained containedin=logtalkIfContainer nextgroup=logtalkElseIf,logtalkElse contains=TOP
|
||||
syn region logtalkElseIf transparent fold keepend start=":- elif(" end=":- \(else\.\|elif(\)"ms=s-1,me=s-1 contained containedin=logtalkIfContainer nextgroup=logtalkElseIf,logtalkElse contains=TOP
|
||||
syn region logtalkElse transparent fold keepend start=":- else\." end=":- endif\." contained containedin=logtalkIfContainer contains=TOP
|
||||
|
||||
|
||||
|
||||
" Logtalk entity folding
|
||||
|
||||
@@ -362,6 +406,11 @@ if version >= 508 || !exists("did_logtalk_syn_inits")
|
||||
HiLink logtalkOpenEntityDir Normal
|
||||
HiLink logtalkOpenEntityDirTag PreProc
|
||||
|
||||
HiLink logtalkIfContainer PreProc
|
||||
HiLink logtalkIf PreProc
|
||||
HiLink logtalkElseIf PreProc
|
||||
HiLink logtalkElse PreProc
|
||||
|
||||
HiLink logtalkEntity Normal
|
||||
|
||||
HiLink logtalkEntityRel Normal
|
||||
@@ -396,3 +445,6 @@ endif
|
||||
|
||||
|
||||
let b:current_syntax = "logtalk"
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
" Vim syntax file
|
||||
" Language: Lua 4.0, Lua 5.0 and Lua 5.1
|
||||
" Maintainer: Marcus Aurelius Farias <marcus.cf 'at' bol com br>
|
||||
" Language: Lua 4.0, Lua 5.0, Lua 5.1 and Lua 5.2
|
||||
" Maintainer: Marcus Aurelius Farias <masserahguard-lua 'at' yahoo com>
|
||||
" First Author: Carlos Augusto Teixeira Mendes <cmendes 'at' inf puc-rio br>
|
||||
" Last Change: 2006 Aug 10
|
||||
" Last Change: 2012 Feb 07
|
||||
" Options: lua_version = 4 or 5
|
||||
" lua_subversion = 0 (4.0, 5.0) or 1 (5.1)
|
||||
" default 5.1
|
||||
" lua_subversion = 0 (4.0, 5.0) or 1 (5.1) or 2 (5.2)
|
||||
" default 5.2
|
||||
|
||||
" For version 5.x: Clear all syntax items
|
||||
" For version 6.x: Quit when a syntax file was already loaded
|
||||
@@ -15,10 +15,13 @@ elseif exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
if !exists("lua_version")
|
||||
" Default is lua 5.1
|
||||
" Default is lua 5.2
|
||||
let lua_version = 5
|
||||
let lua_subversion = 1
|
||||
let lua_subversion = 2
|
||||
elseif !exists("lua_subversion")
|
||||
" lua_version exists, but lua_subversion doesn't. So, set it to 0
|
||||
let lua_subversion = 0
|
||||
@@ -30,14 +33,14 @@ syn case match
|
||||
syn sync minlines=100
|
||||
|
||||
" Comments
|
||||
syn keyword luaTodo contained TODO FIXME XXX
|
||||
syn match luaComment "--.*$" contains=luaTodo,@Spell
|
||||
syn keyword luaTodo contained TODO FIXME XXX
|
||||
syn match luaComment "--.*$" contains=luaTodo,@Spell
|
||||
if lua_version == 5 && lua_subversion == 0
|
||||
syn region luaComment matchgroup=luaComment start="--\[\[" end="\]\]" contains=luaTodo,luaInnerComment,@Spell
|
||||
syn region luaInnerComment contained transparent start="\[\[" end="\]\]"
|
||||
syn region luaComment matchgroup=luaComment start="--\[\[" end="\]\]" contains=luaTodo,luaInnerComment,@Spell
|
||||
syn region luaInnerComment contained transparent start="\[\[" end="\]\]"
|
||||
elseif lua_version > 5 || (lua_version == 5 && lua_subversion >= 1)
|
||||
" Comments in Lua 5.1: --[[ ... ]], [=[ ... ]=], [===[ ... ]===], etc.
|
||||
syn region luaComment matchgroup=luaComment start="--\[\z(=*\)\[" end="\]\z1\]" contains=luaTodo,@Spell
|
||||
syn region luaComment matchgroup=luaComment start="--\[\z(=*\)\[" end="\]\z1\]" contains=luaTodo,@Spell
|
||||
endif
|
||||
|
||||
" First line may start with #!
|
||||
@@ -46,59 +49,66 @@ syn match luaComment "\%^#!.*"
|
||||
" catch errors caused by wrong parenthesis and wrong curly brackets or
|
||||
" keywords placed outside their respective blocks
|
||||
|
||||
syn region luaParen transparent start='(' end=')' contains=ALLBUT,luaError,luaTodo,luaSpecial,luaCond,luaCondElseif,luaCondEnd,luaCondStart,luaBlock,luaRepeatBlock,luaRepeat,luaStatement
|
||||
syn match luaError ")"
|
||||
syn region luaParen transparent start='(' end=')' contains=TOP,luaParenError
|
||||
syn match luaParenError ")"
|
||||
syn match luaError "}"
|
||||
syn match luaError "\<\%(end\|else\|elseif\|then\|until\|in\)\>"
|
||||
|
||||
" Function declaration
|
||||
syn region luaFunctionBlock transparent matchgroup=luaFunction start="\<function\>" end="\<end\>" contains=ALLBUT,luaTodo,luaSpecial,luaCond,luaCondElseif,luaCondEnd,luaRepeat
|
||||
syn region luaFunctionBlock transparent matchgroup=luaFunction start="\<function\>" end="\<end\>" contains=TOP
|
||||
|
||||
" if then else elseif end
|
||||
syn keyword luaCond contained else
|
||||
" else
|
||||
syn keyword luaCondElse matchgroup=luaCond contained containedin=luaCondEnd else
|
||||
|
||||
" then ... end
|
||||
syn region luaCondEnd contained transparent matchgroup=luaCond start="\<then\>" end="\<end\>" contains=ALLBUT,luaTodo,luaSpecial,luaRepeat
|
||||
syn region luaCondEnd contained transparent matchgroup=luaCond start="\<then\>" end="\<end\>" contains=TOP
|
||||
|
||||
" elseif ... then
|
||||
syn region luaCondElseif contained transparent matchgroup=luaCond start="\<elseif\>" end="\<then\>" contains=ALLBUT,luaTodo,luaSpecial,luaCond,luaCondElseif,luaCondEnd,luaRepeat
|
||||
syn region luaCondElseif contained containedin=luaCondEnd transparent matchgroup=luaCond start="\<elseif\>" end="\<then\>" contains=TOP
|
||||
|
||||
" if ... then
|
||||
syn region luaCondStart transparent matchgroup=luaCond start="\<if\>" end="\<then\>"me=e-4 contains=ALLBUT,luaTodo,luaSpecial,luaCond,luaCondElseif,luaCondEnd,luaRepeat nextgroup=luaCondEnd skipwhite skipempty
|
||||
syn region luaCondStart transparent matchgroup=luaCond start="\<if\>" end="\<then\>"me=e-4 contains=TOP nextgroup=luaCondEnd skipwhite skipempty
|
||||
|
||||
" do ... end
|
||||
syn region luaBlock transparent matchgroup=luaStatement start="\<do\>" end="\<end\>" contains=ALLBUT,luaTodo,luaSpecial,luaCond,luaCondElseif,luaCondEnd,luaRepeat
|
||||
|
||||
syn region luaBlock transparent matchgroup=luaStatement start="\<do\>" end="\<end\>" contains=TOP
|
||||
" repeat ... until
|
||||
syn region luaRepeatBlock transparent matchgroup=luaRepeat start="\<repeat\>" end="\<until\>" contains=ALLBUT,luaTodo,luaSpecial,luaCond,luaCondElseif,luaCondEnd,luaRepeat
|
||||
syn region luaRepeatBlock transparent matchgroup=luaRepeat start="\<repeat\>" end="\<until\>" contains=TOP
|
||||
|
||||
" while ... do
|
||||
syn region luaRepeatBlock transparent matchgroup=luaRepeat start="\<while\>" end="\<do\>"me=e-2 contains=ALLBUT,luaTodo,luaSpecial,luaCond,luaCondElseif,luaCondEnd,luaRepeat nextgroup=luaBlock skipwhite skipempty
|
||||
syn region luaWhile transparent matchgroup=luaRepeat start="\<while\>" end="\<do\>"me=e-2 contains=TOP nextgroup=luaBlock skipwhite skipempty
|
||||
|
||||
" for ... do and for ... in ... do
|
||||
syn region luaRepeatBlock transparent matchgroup=luaRepeat start="\<for\>" end="\<do\>"me=e-2 contains=ALLBUT,luaTodo,luaSpecial,luaCond,luaCondElseif,luaCondEnd nextgroup=luaBlock skipwhite skipempty
|
||||
syn region luaFor transparent matchgroup=luaRepeat start="\<for\>" end="\<do\>"me=e-2 contains=TOP nextgroup=luaBlock skipwhite skipempty
|
||||
|
||||
" Following 'else' example. This is another item to those
|
||||
" contains=ALLBUT,... because only the 'for' luaRepeatBlock contains it.
|
||||
syn keyword luaRepeat contained in
|
||||
syn keyword luaFor contained containedin=luaFor in
|
||||
|
||||
" other keywords
|
||||
syn keyword luaStatement return local break
|
||||
syn keyword luaOperator and or not
|
||||
syn keyword luaConstant nil
|
||||
if lua_version > 5 || (lua_version == 5 && lua_subversion >= 2)
|
||||
syn keyword luaStatement goto
|
||||
syn match luaLabel "::\I\i*::"
|
||||
endif
|
||||
syn keyword luaOperator and or not
|
||||
syn keyword luaConstant nil
|
||||
if lua_version > 4
|
||||
syn keyword luaConstant true false
|
||||
endif
|
||||
|
||||
" Strings
|
||||
if lua_version < 5
|
||||
syn match luaSpecial contained "\\[\\abfnrtv\'\"]\|\\\d\{,3}"
|
||||
elseif lua_version == 5 && lua_subversion == 0
|
||||
syn match luaSpecial contained "\\[\\abfnrtv\'\"[\]]\|\\\d\{,3}"
|
||||
syn region luaString2 matchgroup=luaString start=+\[\[+ end=+\]\]+ contains=luaString2,@Spell
|
||||
elseif lua_version > 5 || (lua_version == 5 && lua_subversion >= 1)
|
||||
syn match luaSpecial contained "\\[\\abfnrtv\'\"]\|\\\d\{,3}"
|
||||
syn region luaString2 matchgroup=luaString start="\[\z(=*\)\[" end="\]\z1\]" contains=@Spell
|
||||
syn match luaSpecial contained "\\[\\abfnrtv\'\"]\|\\[[:digit:]]\{,3}"
|
||||
elseif lua_version == 5
|
||||
if lua_subversion == 0
|
||||
syn match luaSpecial contained #\\[\\abfnrtv'"[\]]\|\\[[:digit:]]\{,3}#
|
||||
syn region luaString2 matchgroup=luaString start=+\[\[+ end=+\]\]+ contains=luaString2,@Spell
|
||||
else
|
||||
if lua_subversion == 1
|
||||
syn match luaSpecial contained #\\[\\abfnrtv'"]\|\\[[:digit:]]\{,3}#
|
||||
else " Lua 5.2
|
||||
syn match luaSpecial contained #\\[\\abfnrtvz'"]\|\\x[[:xdigit:]]\{2}\|\\[[:digit:]]\{,3}#
|
||||
endif
|
||||
syn region luaString2 matchgroup=luaString start="\[\z(=*\)\[" end="\]\z1\]" contains=@Spell
|
||||
endif
|
||||
endif
|
||||
syn region luaString start=+'+ end=+'+ skip=+\\\\\|\\'+ contains=luaSpecial,@Spell
|
||||
syn region luaString start=+"+ end=+"+ skip=+\\\\\|\\"+ contains=luaSpecial,@Spell
|
||||
@@ -106,19 +116,23 @@ syn region luaString start=+"+ end=+"+ skip=+\\\\\|\\"+ contains=luaSpecial,@Sp
|
||||
" integer number
|
||||
syn match luaNumber "\<\d\+\>"
|
||||
" floating point number, with dot, optional exponent
|
||||
syn match luaFloat "\<\d\+\.\d*\%(e[-+]\=\d\+\)\=\>"
|
||||
syn match luaNumber "\<\d\+\.\d*\%([eE][-+]\=\d\+\)\=\>"
|
||||
" floating point number, starting with a dot, optional exponent
|
||||
syn match luaFloat "\.\d\+\%(e[-+]\=\d\+\)\=\>"
|
||||
syn match luaNumber "\.\d\+\%([eE][-+]\=\d\+\)\=\>"
|
||||
" floating point number, without dot, with exponent
|
||||
syn match luaFloat "\<\d\+e[-+]\=\d\+\>"
|
||||
syn match luaNumber "\<\d\+[eE][-+]\=\d\+\>"
|
||||
|
||||
" hex numbers
|
||||
if lua_version > 5 || (lua_version == 5 && lua_subversion >= 1)
|
||||
syn match luaNumber "\<0x\x\+\>"
|
||||
if lua_version >= 5
|
||||
if lua_subversion == 1
|
||||
syn match luaNumber "\<0[xX]\x\+\>"
|
||||
elseif lua_subversion >= 2
|
||||
syn match luaNumber "\<0[xX][[:xdigit:].]\+\%([pP][-+]\=\d\+\)\=\>"
|
||||
endif
|
||||
endif
|
||||
|
||||
" tables
|
||||
syn region luaTableBlock transparent matchgroup=luaTable start="{" end="}" contains=ALLBUT,luaTodo,luaSpecial,luaCond,luaCondElseif,luaCondEnd,luaCondStart,luaBlock,luaRepeatBlock,luaRepeat,luaStatement
|
||||
syn region luaTableBlock transparent matchgroup=luaTable start="{" end="}" contains=TOP,luaStatement
|
||||
|
||||
syn keyword luaFunc assert collectgarbage dofile error next
|
||||
syn keyword luaFunc print rawget rawset tonumber tostring type _VERSION
|
||||
@@ -144,127 +158,170 @@ if lua_version == 4
|
||||
syn keyword luaFunc format strfind gsub
|
||||
syn keyword luaFunc getinfo getlocal setlocal setcallhook setlinehook
|
||||
elseif lua_version == 5
|
||||
" Not sure if all these functions need to be highlighted...
|
||||
syn keyword luaFunc _G getfenv getmetatable ipairs loadfile
|
||||
syn keyword luaFunc loadstring pairs pcall rawequal
|
||||
syn keyword luaFunc require setfenv setmetatable unpack xpcall
|
||||
syn keyword luaFunc getmetatable setmetatable
|
||||
syn keyword luaFunc ipairs pairs
|
||||
syn keyword luaFunc pcall xpcall
|
||||
syn keyword luaFunc _G loadfile rawequal require
|
||||
if lua_subversion == 0
|
||||
syn keyword luaFunc getfenv setfenv
|
||||
syn keyword luaFunc loadstring unpack
|
||||
syn keyword luaFunc gcinfo loadlib LUA_PATH _LOADED _REQUIREDNAME
|
||||
elseif lua_subversion == 1
|
||||
syn keyword luaFunc load module select
|
||||
syn match luaFunc /package\.cpath/
|
||||
syn match luaFunc /package\.loaded/
|
||||
syn match luaFunc /package\.loadlib/
|
||||
syn match luaFunc /package\.path/
|
||||
syn match luaFunc /package\.preload/
|
||||
syn match luaFunc /package\.seeall/
|
||||
syn match luaFunc /coroutine\.running/
|
||||
else
|
||||
syn keyword luaFunc load select
|
||||
syn match luaFunc /\<package\.cpath\>/
|
||||
syn match luaFunc /\<package\.loaded\>/
|
||||
syn match luaFunc /\<package\.loadlib\>/
|
||||
syn match luaFunc /\<package\.path\>/
|
||||
if lua_subversion == 1
|
||||
syn keyword luaFunc getfenv setfenv
|
||||
syn keyword luaFunc loadstring module unpack
|
||||
syn match luaFunc /\<package\.loaders\>/
|
||||
syn match luaFunc /\<package\.preload\>/
|
||||
syn match luaFunc /\<package\.seeall\>/
|
||||
elseif lua_subversion == 2
|
||||
syn keyword luaFunc _ENV rawlen
|
||||
syn match luaFunc /\<package\.config\>/
|
||||
syn match luaFunc /\<package\.preload\>/
|
||||
syn match luaFunc /\<package\.searchers\>/
|
||||
syn match luaFunc /\<package\.searchpath\>/
|
||||
syn match luaFunc /\<bit32\.arshift\>/
|
||||
syn match luaFunc /\<bit32\.band\>/
|
||||
syn match luaFunc /\<bit32\.bnot\>/
|
||||
syn match luaFunc /\<bit32\.bor\>/
|
||||
syn match luaFunc /\<bit32\.btest\>/
|
||||
syn match luaFunc /\<bit32\.bxor\>/
|
||||
syn match luaFunc /\<bit32\.extract\>/
|
||||
syn match luaFunc /\<bit32\.lrotate\>/
|
||||
syn match luaFunc /\<bit32\.lshift\>/
|
||||
syn match luaFunc /\<bit32\.replace\>/
|
||||
syn match luaFunc /\<bit32\.rrotate\>/
|
||||
syn match luaFunc /\<bit32\.rshift\>/
|
||||
endif
|
||||
syn match luaFunc /\<coroutine\.running\>/
|
||||
endif
|
||||
syn match luaFunc /coroutine\.create/
|
||||
syn match luaFunc /coroutine\.resume/
|
||||
syn match luaFunc /coroutine\.status/
|
||||
syn match luaFunc /coroutine\.wrap/
|
||||
syn match luaFunc /coroutine\.yield/
|
||||
syn match luaFunc /string\.byte/
|
||||
syn match luaFunc /string\.char/
|
||||
syn match luaFunc /string\.dump/
|
||||
syn match luaFunc /string\.find/
|
||||
syn match luaFunc /string\.len/
|
||||
syn match luaFunc /string\.lower/
|
||||
syn match luaFunc /string\.rep/
|
||||
syn match luaFunc /string\.sub/
|
||||
syn match luaFunc /string\.upper/
|
||||
syn match luaFunc /string\.format/
|
||||
syn match luaFunc /string\.gsub/
|
||||
syn match luaFunc /\<coroutine\.create\>/
|
||||
syn match luaFunc /\<coroutine\.resume\>/
|
||||
syn match luaFunc /\<coroutine\.status\>/
|
||||
syn match luaFunc /\<coroutine\.wrap\>/
|
||||
syn match luaFunc /\<coroutine\.yield\>/
|
||||
syn match luaFunc /\<string\.byte\>/
|
||||
syn match luaFunc /\<string\.char\>/
|
||||
syn match luaFunc /\<string\.dump\>/
|
||||
syn match luaFunc /\<string\.find\>/
|
||||
syn match luaFunc /\<string\.format\>/
|
||||
syn match luaFunc /\<string\.gsub\>/
|
||||
syn match luaFunc /\<string\.len\>/
|
||||
syn match luaFunc /\<string\.lower\>/
|
||||
syn match luaFunc /\<string\.rep\>/
|
||||
syn match luaFunc /\<string\.sub\>/
|
||||
syn match luaFunc /\<string\.upper\>/
|
||||
if lua_subversion == 0
|
||||
syn match luaFunc /string\.gfind/
|
||||
syn match luaFunc /table\.getn/
|
||||
syn match luaFunc /table\.setn/
|
||||
syn match luaFunc /table\.foreach/
|
||||
syn match luaFunc /table\.foreachi/
|
||||
elseif lua_subversion == 1
|
||||
syn match luaFunc /string\.gmatch/
|
||||
syn match luaFunc /string\.match/
|
||||
syn match luaFunc /string\.reverse/
|
||||
syn match luaFunc /table\.maxn/
|
||||
syn match luaFunc /\<string\.gfind\>/
|
||||
else
|
||||
syn match luaFunc /\<string\.gmatch\>/
|
||||
syn match luaFunc /\<string\.match\>/
|
||||
syn match luaFunc /\<string\.reverse\>/
|
||||
endif
|
||||
syn match luaFunc /table\.concat/
|
||||
syn match luaFunc /table\.sort/
|
||||
syn match luaFunc /table\.insert/
|
||||
syn match luaFunc /table\.remove/
|
||||
syn match luaFunc /math\.abs/
|
||||
syn match luaFunc /math\.acos/
|
||||
syn match luaFunc /math\.asin/
|
||||
syn match luaFunc /math\.atan/
|
||||
syn match luaFunc /math\.atan2/
|
||||
syn match luaFunc /math\.ceil/
|
||||
syn match luaFunc /math\.sin/
|
||||
syn match luaFunc /math\.cos/
|
||||
syn match luaFunc /math\.tan/
|
||||
syn match luaFunc /math\.deg/
|
||||
syn match luaFunc /math\.exp/
|
||||
syn match luaFunc /math\.floor/
|
||||
syn match luaFunc /math\.log/
|
||||
syn match luaFunc /math\.log10/
|
||||
syn match luaFunc /math\.max/
|
||||
syn match luaFunc /math\.min/
|
||||
if lua_subversion == 0
|
||||
syn match luaFunc /math\.mod/
|
||||
syn match luaFunc /\<table\.getn\>/
|
||||
syn match luaFunc /\<table\.setn\>/
|
||||
syn match luaFunc /\<table\.foreach\>/
|
||||
syn match luaFunc /\<table\.foreachi\>/
|
||||
elseif lua_subversion == 1
|
||||
syn match luaFunc /math\.fmod/
|
||||
syn match luaFunc /math\.modf/
|
||||
syn match luaFunc /math\.cosh/
|
||||
syn match luaFunc /math\.sinh/
|
||||
syn match luaFunc /math\.tanh/
|
||||
syn match luaFunc /\<table\.maxn\>/
|
||||
elseif lua_subversion == 2
|
||||
syn match luaFunc /\<table\.pack\>/
|
||||
syn match luaFunc /\<table\.unpack\>/
|
||||
endif
|
||||
syn match luaFunc /math\.pow/
|
||||
syn match luaFunc /math\.rad/
|
||||
syn match luaFunc /math\.sqrt/
|
||||
syn match luaFunc /math\.frexp/
|
||||
syn match luaFunc /math\.ldexp/
|
||||
syn match luaFunc /math\.random/
|
||||
syn match luaFunc /math\.randomseed/
|
||||
syn match luaFunc /math\.pi/
|
||||
syn match luaFunc /io\.stdin/
|
||||
syn match luaFunc /io\.stdout/
|
||||
syn match luaFunc /io\.stderr/
|
||||
syn match luaFunc /io\.close/
|
||||
syn match luaFunc /io\.flush/
|
||||
syn match luaFunc /io\.input/
|
||||
syn match luaFunc /io\.lines/
|
||||
syn match luaFunc /io\.open/
|
||||
syn match luaFunc /io\.output/
|
||||
syn match luaFunc /io\.popen/
|
||||
syn match luaFunc /io\.read/
|
||||
syn match luaFunc /io\.tmpfile/
|
||||
syn match luaFunc /io\.type/
|
||||
syn match luaFunc /io\.write/
|
||||
syn match luaFunc /os\.clock/
|
||||
syn match luaFunc /os\.date/
|
||||
syn match luaFunc /os\.difftime/
|
||||
syn match luaFunc /os\.execute/
|
||||
syn match luaFunc /os\.exit/
|
||||
syn match luaFunc /os\.getenv/
|
||||
syn match luaFunc /os\.remove/
|
||||
syn match luaFunc /os\.rename/
|
||||
syn match luaFunc /os\.setlocale/
|
||||
syn match luaFunc /os\.time/
|
||||
syn match luaFunc /os\.tmpname/
|
||||
syn match luaFunc /debug\.debug/
|
||||
syn match luaFunc /debug\.gethook/
|
||||
syn match luaFunc /debug\.getinfo/
|
||||
syn match luaFunc /debug\.getlocal/
|
||||
syn match luaFunc /debug\.getupvalue/
|
||||
syn match luaFunc /debug\.setlocal/
|
||||
syn match luaFunc /debug\.setupvalue/
|
||||
syn match luaFunc /debug\.sethook/
|
||||
syn match luaFunc /debug\.traceback/
|
||||
syn match luaFunc /\<table\.concat\>/
|
||||
syn match luaFunc /\<table\.sort\>/
|
||||
syn match luaFunc /\<table\.insert\>/
|
||||
syn match luaFunc /\<table\.remove\>/
|
||||
syn match luaFunc /\<math\.abs\>/
|
||||
syn match luaFunc /\<math\.acos\>/
|
||||
syn match luaFunc /\<math\.asin\>/
|
||||
syn match luaFunc /\<math\.atan\>/
|
||||
syn match luaFunc /\<math\.atan2\>/
|
||||
syn match luaFunc /\<math\.ceil\>/
|
||||
syn match luaFunc /\<math\.sin\>/
|
||||
syn match luaFunc /\<math\.cos\>/
|
||||
syn match luaFunc /\<math\.tan\>/
|
||||
syn match luaFunc /\<math\.deg\>/
|
||||
syn match luaFunc /\<math\.exp\>/
|
||||
syn match luaFunc /\<math\.floor\>/
|
||||
syn match luaFunc /\<math\.log\>/
|
||||
syn match luaFunc /\<math\.max\>/
|
||||
syn match luaFunc /\<math\.min\>/
|
||||
if lua_subversion == 0
|
||||
syn match luaFunc /\<math\.mod\>/
|
||||
syn match luaFunc /\<math\.log10\>/
|
||||
else
|
||||
if lua_subversion == 1
|
||||
syn match luaFunc /\<math\.log10\>/
|
||||
endif
|
||||
syn match luaFunc /\<math\.huge\>/
|
||||
syn match luaFunc /\<math\.fmod\>/
|
||||
syn match luaFunc /\<math\.modf\>/
|
||||
syn match luaFunc /\<math\.cosh\>/
|
||||
syn match luaFunc /\<math\.sinh\>/
|
||||
syn match luaFunc /\<math\.tanh\>/
|
||||
endif
|
||||
syn match luaFunc /\<math\.pow\>/
|
||||
syn match luaFunc /\<math\.rad\>/
|
||||
syn match luaFunc /\<math\.sqrt\>/
|
||||
syn match luaFunc /\<math\.frexp\>/
|
||||
syn match luaFunc /\<math\.ldexp\>/
|
||||
syn match luaFunc /\<math\.random\>/
|
||||
syn match luaFunc /\<math\.randomseed\>/
|
||||
syn match luaFunc /\<math\.pi\>/
|
||||
syn match luaFunc /\<io\.close\>/
|
||||
syn match luaFunc /\<io\.flush\>/
|
||||
syn match luaFunc /\<io\.input\>/
|
||||
syn match luaFunc /\<io\.lines\>/
|
||||
syn match luaFunc /\<io\.open\>/
|
||||
syn match luaFunc /\<io\.output\>/
|
||||
syn match luaFunc /\<io\.popen\>/
|
||||
syn match luaFunc /\<io\.read\>/
|
||||
syn match luaFunc /\<io\.stderr\>/
|
||||
syn match luaFunc /\<io\.stdin\>/
|
||||
syn match luaFunc /\<io\.stdout\>/
|
||||
syn match luaFunc /\<io\.tmpfile\>/
|
||||
syn match luaFunc /\<io\.type\>/
|
||||
syn match luaFunc /\<io\.write\>/
|
||||
syn match luaFunc /\<os\.clock\>/
|
||||
syn match luaFunc /\<os\.date\>/
|
||||
syn match luaFunc /\<os\.difftime\>/
|
||||
syn match luaFunc /\<os\.execute\>/
|
||||
syn match luaFunc /\<os\.exit\>/
|
||||
syn match luaFunc /\<os\.getenv\>/
|
||||
syn match luaFunc /\<os\.remove\>/
|
||||
syn match luaFunc /\<os\.rename\>/
|
||||
syn match luaFunc /\<os\.setlocale\>/
|
||||
syn match luaFunc /\<os\.time\>/
|
||||
syn match luaFunc /\<os\.tmpname\>/
|
||||
syn match luaFunc /\<debug\.debug\>/
|
||||
syn match luaFunc /\<debug\.gethook\>/
|
||||
syn match luaFunc /\<debug\.getinfo\>/
|
||||
syn match luaFunc /\<debug\.getlocal\>/
|
||||
syn match luaFunc /\<debug\.getupvalue\>/
|
||||
syn match luaFunc /\<debug\.setlocal\>/
|
||||
syn match luaFunc /\<debug\.setupvalue\>/
|
||||
syn match luaFunc /\<debug\.sethook\>/
|
||||
syn match luaFunc /\<debug\.traceback\>/
|
||||
if lua_subversion == 1
|
||||
syn match luaFunc /debug\.getfenv/
|
||||
syn match luaFunc /debug\.getmetatable/
|
||||
syn match luaFunc /debug\.getregistry/
|
||||
syn match luaFunc /debug\.setfenv/
|
||||
syn match luaFunc /debug\.setmetatable/
|
||||
syn match luaFunc /\<debug\.getfenv\>/
|
||||
syn match luaFunc /\<debug\.setfenv\>/
|
||||
syn match luaFunc /\<debug\.getmetatable\>/
|
||||
syn match luaFunc /\<debug\.setmetatable\>/
|
||||
syn match luaFunc /\<debug\.getregistry\>/
|
||||
elseif lua_subversion == 2
|
||||
syn match luaFunc /\<debug\.getmetatable\>/
|
||||
syn match luaFunc /\<debug\.setmetatable\>/
|
||||
syn match luaFunc /\<debug\.getregistry\>/
|
||||
syn match luaFunc /\<debug\.getuservalue\>/
|
||||
syn match luaFunc /\<debug\.setuservalue\>/
|
||||
syn match luaFunc /\<debug\.upvalueid\>/
|
||||
syn match luaFunc /\<debug\.upvaluejoin\>/
|
||||
endif
|
||||
endif
|
||||
|
||||
@@ -281,24 +338,29 @@ if version >= 508 || !exists("did_lua_syntax_inits")
|
||||
|
||||
HiLink luaStatement Statement
|
||||
HiLink luaRepeat Repeat
|
||||
HiLink luaFor Repeat
|
||||
HiLink luaString String
|
||||
HiLink luaString2 String
|
||||
HiLink luaNumber Number
|
||||
HiLink luaFloat Float
|
||||
HiLink luaOperator Operator
|
||||
HiLink luaConstant Constant
|
||||
HiLink luaCond Conditional
|
||||
HiLink luaCondElse Conditional
|
||||
HiLink luaFunction Function
|
||||
HiLink luaComment Comment
|
||||
HiLink luaTodo Todo
|
||||
HiLink luaTable Structure
|
||||
HiLink luaError Error
|
||||
HiLink luaParenError Error
|
||||
HiLink luaSpecial SpecialChar
|
||||
HiLink luaFunc Identifier
|
||||
HiLink luaLabel Label
|
||||
|
||||
delcommand HiLink
|
||||
endif
|
||||
|
||||
let b:current_syntax = "lua"
|
||||
|
||||
" vim: et ts=8
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
" vim: et ts=8 sw=2
|
||||
|
||||
@@ -2,13 +2,16 @@
|
||||
" Language: Mail file
|
||||
" Previous Maintainer: Felix von Leitner <leitner@math.fu-berlin.de>
|
||||
" Maintainer: GI <a@b.c>, where a='gi1242+vim', b='gmail', c='com'
|
||||
" Last Change: Sat 03 Dec 2011 10:34:27 PM EST
|
||||
" Last Change: Thu 02 Feb 2012 08:47:04 PM EST
|
||||
|
||||
" Quit when a syntax file was already loaded
|
||||
if exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
" The mail header is recognized starting with a "keyword:" line and ending
|
||||
" with an empty line or other line that can't be in the header. All lines of
|
||||
" the header are highlighted. Headers of quoted messages (quoted with >) are
|
||||
@@ -104,3 +107,6 @@ hi def link mailQuoteExp5 mailQuoted5
|
||||
hi def link mailQuoteExp6 mailQuoted6
|
||||
|
||||
let b:current_syntax = "mail"
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
|
||||
@@ -2,8 +2,8 @@
|
||||
" Language: Microsoft Macro Assembler (80x86)
|
||||
" Orig Author: Rob Brady <robb@datatone.com>
|
||||
" Maintainer: Wu Yongwei <wuyongwei@gmail.com>
|
||||
" Last Change: $Date: 2007/04/21 13:20:15 $
|
||||
" $Revision: 1.44 $
|
||||
" Last Change: $Date: 2012/02/04 12:45:39 $
|
||||
" $Revision: 1.46 $
|
||||
|
||||
" For version 5.x: Clear all syntax items
|
||||
" For version 6.x: Quit when a syntax file was already loaded
|
||||
@@ -13,6 +13,9 @@ elseif exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
syn case ignore
|
||||
|
||||
|
||||
@@ -184,6 +187,12 @@ syn keyword masmRegister DR0 DR1 DR2 DR3 DR6 DR7
|
||||
syn keyword masmRegister TR3 TR4 TR5 TR6 TR7
|
||||
syn match masmRegister "ST([0-7])"
|
||||
|
||||
" x86-64 registers
|
||||
syn keyword masmRegister RAX RBX RCX RDX RSI RDI RBP RSP
|
||||
syn keyword masmRegister R8 R9 R10 R11 R12 R13 R14 R15
|
||||
syn keyword masmRegister R8D R9D R10D R11D R12D R13D R14D R15D
|
||||
syn keyword masmRegister R8W R9W R10W R11W R12W R13W R14W R15W
|
||||
syn keyword masmRegister R8B R9B R10B R11B R12B R13B R14B R15B
|
||||
|
||||
" Instruction prefixes
|
||||
syn keyword masmOpcode LOCK REP REPE REPNE REPNZ REPZ
|
||||
@@ -340,4 +349,7 @@ endif
|
||||
|
||||
let b:current_syntax = "masm"
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
|
||||
" vim: ts=8
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
" Vim syntax file
|
||||
" Language: Mathematica
|
||||
" Maintainer: steve layland <layland@wolfram.com>
|
||||
" Last Change: Thu May 19 21:36:04 CDT 2005
|
||||
" Last Change: 2012 Feb 03 by Thilo Six
|
||||
" Source: http://members.wri.com/layland/vim/syntax/mma.vim
|
||||
" http://vim.sourceforge.net/scripts/script.php?script_id=1273
|
||||
" Id: $Id: mma.vim,v 1.4 2006/04/14 20:40:38 vimboss Exp $
|
||||
" NOTE:
|
||||
"
|
||||
"
|
||||
" Empty .m files will automatically be presumed as Matlab files
|
||||
" unless you have the following in your .vimrc:
|
||||
"
|
||||
@@ -14,7 +14,7 @@
|
||||
"
|
||||
" I also recommend setting the default 'Comment' hilighting to something
|
||||
" other than the color used for 'Function', since both are plentiful in
|
||||
" most mathematica files, and they are often the same color (when using
|
||||
" most mathematica files, and they are often the same color (when using
|
||||
" background=dark).
|
||||
"
|
||||
" Credits:
|
||||
@@ -24,11 +24,11 @@
|
||||
" from the Java vim syntax file by Claudio Fleiner. Thanks!
|
||||
" o Everything else written by steve <layland@wolfram.com>
|
||||
"
|
||||
" Bugs:
|
||||
" o Vim 6.1 didn't really have support for character classes
|
||||
" Bugs:
|
||||
" o Vim 6.1 didn't really have support for character classes
|
||||
" of other named character classes. For example, [\a\d]
|
||||
" didn't work. Therefore, a lot of this code uses explicit
|
||||
" character classes instead: [0-9a-zA-Z]
|
||||
" character classes instead: [0-9a-zA-Z]
|
||||
"
|
||||
" TODO:
|
||||
" folding
|
||||
@@ -41,6 +41,9 @@ elseif exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
" Group Definitions:
|
||||
syntax cluster mmaNotes contains=mmaTodo,mmaFixme
|
||||
syntax cluster mmaComments contains=mmaComment,mmaFunctionComment,mmaItem,mmaFunctionTitle,mmaCommentStar
|
||||
@@ -58,7 +61,7 @@ syntax cluster mmaTop contains=mmaOperator,mmaGenericFunction,mmaPureFunction,mm
|
||||
syntax keyword mmaVariable True False None Automatic All Null C General
|
||||
|
||||
" mathematical constants:
|
||||
syntax keyword mmaVariable Pi I E Infinity ComplexInfinity Indeterminate GoldenRatio EulerGamma Degree Catalan Khinchin Glaisher
|
||||
syntax keyword mmaVariable Pi I E Infinity ComplexInfinity Indeterminate GoldenRatio EulerGamma Degree Catalan Khinchin Glaisher
|
||||
|
||||
" stream data / atomic heads:
|
||||
syntax keyword mmaVariable Byte Character Expression Number Real String Word EndOfFile Integer Symbol
|
||||
@@ -80,7 +83,7 @@ syntax keyword mmaVariable Above Below Left Right
|
||||
syntax keyword mmaVariable Black Blue Brown Cyan Gray Green Magenta Orange Pink Purple Red White Yellow
|
||||
|
||||
" function attributes
|
||||
syntax keyword mmaVariable Protected Listable OneIdentity Orderless Flat Constant NumericFunction Locked ReadProtected HoldFirst HoldRest HoldAll HoldAllComplete SequenceHold NHoldFirst NHoldRest NHoldAll Temporary Stub
|
||||
syntax keyword mmaVariable Protected Listable OneIdentity Orderless Flat Constant NumericFunction Locked ReadProtected HoldFirst HoldRest HoldAll HoldAllComplete SequenceHold NHoldFirst NHoldRest NHoldAll Temporary Stub
|
||||
|
||||
" Comment Sections:
|
||||
" this:
|
||||
@@ -135,25 +138,25 @@ syntax region mmaCommentString oneline start=+\\\@<!"+ skip=+\\\@<!\\\%(\\\\\)*"
|
||||
|
||||
" Patterns:
|
||||
" Each pattern marker below can be Blank[] (_), BlankSequence[] (__)
|
||||
" or BlankNullSequence[] (___). Most examples below can also be
|
||||
" or BlankNullSequence[] (___). Most examples below can also be
|
||||
" combined, for example Pattern tests with Default values.
|
||||
"
|
||||
"
|
||||
" _Head Anonymous patterns
|
||||
" name_Head
|
||||
" name_Head
|
||||
" name:(_Head|_Head2) Named patterns
|
||||
"
|
||||
"
|
||||
" _Head : val
|
||||
" name:_Head:val Default values
|
||||
"
|
||||
" _Head?testQ,
|
||||
" _Head?testQ,
|
||||
" _Head?(test[#]&) Pattern tests
|
||||
"
|
||||
" name_Head/;test[name] Conditionals
|
||||
"
|
||||
"
|
||||
" _Head:. Predefined Default
|
||||
"
|
||||
" .. ... Pattern Repeat
|
||||
|
||||
|
||||
syntax match mmaPatternError "\%(_\{4,}\|)\s*&\s*)\@!\)" contained
|
||||
|
||||
"pattern name:
|
||||
@@ -172,7 +175,7 @@ syntax match mmaPattern "[A-Za-z0-9`]*_\+\%(\a\+\)\=\%(?([^)]\+)\|?[^\]},]\+\)\=
|
||||
" >= <= < >
|
||||
" += -= *=
|
||||
" /= ++ -- Math
|
||||
" ^*
|
||||
" ^*
|
||||
" -> :> Rules
|
||||
" @@ @@@ Apply
|
||||
" /@ //@ Map
|
||||
@@ -200,7 +203,7 @@ syntax match mmaPureFunction "#\%(#\|\d\+\)\="
|
||||
syntax match mmaPureFunction "&"
|
||||
|
||||
" Named Functions:
|
||||
" Since everything is pretty much a function, get this straight
|
||||
" Since everything is pretty much a function, get this straight
|
||||
" from context
|
||||
syntax match mmaGenericFunction "[A-Za-z0-9`]\+\s*\%([@[]\|/:\|/\=/@\)\@=" contains=mmaOperator
|
||||
syntax match mmaGenericFunction "\~\s*[^~]\+\s*\~"hs=s+1,he=e-1 contains=mmaOperator,mmaBoring
|
||||
@@ -223,7 +226,7 @@ syntax match mmaError "\*)" containedin=ALLBUT,@mmaComments,@mmaStrings
|
||||
syntax match mmaError "\%([/]{3,}\|[&:|+*?~-]\{3,}\|[.=]\{4,}\|_\@<=\.\{2,}\|`\{2,}\)" containedin=ALLBUT,@mmaComments,@mmaStrings
|
||||
|
||||
" Punctuation:
|
||||
" things that shouldn't really be highlighted, or highlighted
|
||||
" things that shouldn't really be highlighted, or highlighted
|
||||
" in they're own group if you _really_ want. :)
|
||||
" ( ) { }
|
||||
" TODO - use Delimiter group?
|
||||
@@ -251,9 +254,9 @@ set commentstring='(*%s*)'
|
||||
|
||||
"function MmaFoldText()
|
||||
" let line = getline(v:foldstart)
|
||||
"
|
||||
"
|
||||
" let lines = v:foldend-v:foldstart+1
|
||||
"
|
||||
"
|
||||
" let sub = substitute(line, '(\*\+|\*\+)|[-*_]\+', '', 'g')
|
||||
"
|
||||
" if match(line, '(\*') != -1
|
||||
@@ -264,7 +267,7 @@ set commentstring='(*%s*)'
|
||||
"
|
||||
" return v:folddashes.' '.lines.' '.sub
|
||||
"endf
|
||||
|
||||
|
||||
"this is slow for computing folds, but it does so accurately
|
||||
syntax sync fromstart
|
||||
|
||||
@@ -288,8 +291,8 @@ if version >= 508 || !exists("did_mma_syn_inits")
|
||||
command -nargs=+ HiLink hi def link <args>
|
||||
endif
|
||||
|
||||
" NOTE - the following links are not guaranteed to
|
||||
" look good under all colorschemes. You might need to
|
||||
" NOTE - the following links are not guaranteed to
|
||||
" look good under all colorschemes. You might need to
|
||||
" :so $VIMRUNTIME/syntax/hitest.vim and tweak these to
|
||||
" look good in yours
|
||||
|
||||
@@ -323,3 +326,6 @@ if version >= 508 || !exists("did_mma_syn_inits")
|
||||
endif
|
||||
|
||||
let b:current_syntax = "mma"
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim syntax file
|
||||
" Language: Monk (See-Beyond Technologies)
|
||||
" Maintainer: Mike Litherland <litherm@ccf.org>
|
||||
" Last Change: March 6, 2002
|
||||
" Last Change: 2012 Feb 03 by Thilo Six
|
||||
|
||||
" This syntax file is good enough for my needs, but others
|
||||
" may desire more features. Suggestions and bug reports
|
||||
@@ -29,6 +29,9 @@ elseif exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
syn case ignore
|
||||
|
||||
" Fascist highlighting: everything that doesn't fit the rules is an error...
|
||||
@@ -226,3 +229,6 @@ if version >= 508 || !exists("did_monk_syntax_inits")
|
||||
endif
|
||||
|
||||
let b:current_syntax = "monk"
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
|
||||
@@ -1,13 +1,16 @@
|
||||
" Created : Wed 26 Apr 2006 01:20:53 AM CDT
|
||||
" Modified : Mon 27 Aug 2007 12:10:37 PM PDT
|
||||
" Author : Gautam Iyer <gi1242@users.sourceforge.net>
|
||||
" Description : Vim syntax file for mrxvtrc (for mrxvt-0.5.0 and up)
|
||||
" Created : Wed 26 Apr 2006 01:20:53 AM CDT
|
||||
" Modified : Thu 02 Feb 2012 08:37:45 PM EST
|
||||
" Maintainer : GI <a@b.c>, where a='gi1242+vim', b='gmail', c='com'
|
||||
|
||||
" Quit when a syntax file was already loaded
|
||||
if exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
syn case match
|
||||
|
||||
" Errors
|
||||
@@ -274,3 +277,6 @@ hi def link mrxvtrcCmd PreProc
|
||||
hi def link mrxvtrcSubwin mrxvtrcStrVal
|
||||
|
||||
let b:current_syntax = "mrxvtrc"
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim syntax file
|
||||
" Language: MS IDL (Microsoft dialect of Interface Description Language)
|
||||
" Maintainer: Vadim Zeitlin <vadim@wxwindows.org>
|
||||
" Last Change: 2003 May 11
|
||||
" Last Change: 2012 Feb 12 by Thilo Six
|
||||
|
||||
" For version 5.x: Clear all syntax items
|
||||
" For version 6.x: Quit when a syntax file was already loaded
|
||||
@@ -11,6 +11,9 @@ elseif exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
" Misc basic
|
||||
syn match msidlId "[a-zA-Z][a-zA-Z0-9_]*"
|
||||
syn match msidlUUID "{\?[[:xdigit:]]\{8}-\([[:xdigit:]]\{4}-\)\{3}[[:xdigit:]]\{12}}\?"
|
||||
@@ -89,4 +92,6 @@ endif
|
||||
|
||||
let b:current_syntax = "msidl"
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
" vi: set ts=8 sw=4:
|
||||
|
||||
@@ -2,9 +2,9 @@
|
||||
" Language: Mutt setup files
|
||||
" Original: Preben 'Peppe' Guldberg <peppe-vim@wielders.org>
|
||||
" Maintainer: Kyle Wheeler <kyle-muttrc.vim@memoryhole.net>
|
||||
" Last Change: 9 Aug 2010
|
||||
" Last Change: 2 Feb 2012
|
||||
|
||||
" This file covers mutt version 1.5.20 (and most of the mercurial tip)
|
||||
" This file covers mutt version 1.5.21 (and most of the mercurial tip)
|
||||
" Included are also a few features from 1.4.2.1
|
||||
|
||||
" For version 5.x: Clear all syntax items
|
||||
@@ -15,6 +15,9 @@ elseif exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
" Set the keyword characters
|
||||
if version < 600
|
||||
set isk=@,48-57,_,-
|
||||
@@ -22,6 +25,11 @@ else
|
||||
setlocal isk=@,48-57,_,-
|
||||
endif
|
||||
|
||||
" handling optional variables
|
||||
if !exists("use_mutt_sidebar")
|
||||
let use_mutt_sidebar=0
|
||||
endif
|
||||
|
||||
syn match muttrcComment "^# .*$" contains=@Spell
|
||||
syn match muttrcComment "^#[^ ].*$"
|
||||
syn match muttrcComment "^#$"
|
||||
@@ -98,7 +106,7 @@ syn region muttrcKey contained start=+"+ skip=+\\\\\|\\"+ end=+"+ contains=mut
|
||||
syn region muttrcKey contained start=+'+ skip=+\\\\\|\\'+ end=+'+ contains=muttrcKeySpecial,muttrcKeyName
|
||||
syn match muttrcKeyName contained "\<f\%(\d\|10\)\>"
|
||||
syn match muttrcKeyName contained "\\[trne]"
|
||||
syn match muttrcKeyName contained "\c<\%(BackSpace\|Delete\|Down\|End\|Enter\|Esc\|Home\|Insert\|Left\|PageDown\|PageUp\|Return\|Right\|Space\|Tab\|Up\)>"
|
||||
syn match muttrcKeyName contained "\c<\%(BackSpace\|BackTab\|Delete\|Down\|End\|Enter\|Esc\|Home\|Insert\|Left\|PageDown\|PageUp\|Return\|Right\|Space\|Tab\|Up\)>"
|
||||
syn match muttrcKeyName contained "<F[0-9]\+>"
|
||||
|
||||
syn keyword muttrcVarBool skipwhite contained allow_8bit allow_ansi arrow_cursor ascii_chars askbcc askcc attach_split auto_tag autoedit beep beep_new nextgroup=muttrcSetBoolAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
|
||||
@@ -207,6 +215,9 @@ syn keyword muttrcVarBool skipwhite contained invstrict_threads invsuspend invte
|
||||
syn keyword muttrcVarBool skipwhite contained invthread_received invtilde invuncollapse_jump invuse_8bitmime nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
|
||||
syn keyword muttrcVarBool skipwhite contained invuse_domain invuse_envelope_from invuse_from invuse_idn invuse_ipv6 nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
|
||||
syn keyword muttrcVarBool skipwhite contained invuser_agent invwait_key invweed invwrap_search invwrite_bcc nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
|
||||
if use_mutt_sidebar == 1
|
||||
syn keyword muttrcVarBool skipwhite contained sidebar_visible sidebar_sort nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
|
||||
endif
|
||||
|
||||
syn keyword muttrcVarQuad skipwhite contained abort_nosubject abort_unmodified bounce copy nextgroup=muttrcSetQuadAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
|
||||
syn keyword muttrcVarQuad skipwhite contained crypt_verify_sig delete fcc_attach forward_edit honor_followup_to nextgroup=muttrcSetQuadAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
|
||||
@@ -232,6 +243,9 @@ syn keyword muttrcVarNum skipwhite contained pop_checkinterval read_inc save_his
|
||||
syn keyword muttrcVarNum skipwhite contained score_threshold_flag score_threshold_read search_context sendmail_wait sleep_time nextgroup=muttrcSetNumAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
|
||||
syn keyword muttrcVarNum skipwhite contained smime_timeout ssl_min_dh_prime_bits timeout time_inc wrap wrapmargin nextgroup=muttrcSetNumAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
|
||||
syn keyword muttrcVarNum skipwhite contained write_inc nextgroup=muttrcSetNumAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
|
||||
if use_mutt_sidebar == 1
|
||||
syn keyword muttrcVarNum skipwhite contained sidebar_width nextgroup=muttrcSetNumAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
|
||||
endif
|
||||
|
||||
syn match muttrcFormatErrors contained /%./
|
||||
|
||||
@@ -372,6 +386,9 @@ syn keyword muttrcVarStr contained skipwhite smime_keys smime_sign_as nextgroup=
|
||||
syn keyword muttrcVarStr contained skipwhite smtp_url smtp_authenticators smtp_pass sort sort_alias sort_aux nextgroup=muttrcSetStrAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
|
||||
syn keyword muttrcVarStr contained skipwhite sort_browser spam_separator spoolfile ssl_ca_certificates_file ssl_client_cert nextgroup=muttrcSetStrAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
|
||||
syn keyword muttrcVarStr contained skipwhite status_chars tmpdir to_chars tunnel visual nextgroup=muttrcSetStrAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
|
||||
if use_mutt_sidebar == 1
|
||||
syn keyword muttrcVarStr skipwhite contained sidebar_delim nextgroup=muttrcSetStrAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
|
||||
endif
|
||||
|
||||
" Present in 1.4.2.1 (pgp_create_traditional was a bool then)
|
||||
syn keyword muttrcVarBool contained skipwhite imap_force_ssl noimap_force_ssl invimap_force_ssl nextgroup=muttrcSetBoolAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
|
||||
@@ -417,7 +434,10 @@ syn keyword muttrcSubscribeKeyword unsubscribe nextgroup=muttrcAsterisk,muttrcCo
|
||||
syn keyword muttrcAlternateKeyword contained alternates unalternates
|
||||
syn region muttrcAlternatesLine keepend start=+^\s*\%(un\)\?alternates\s+ skip=+\\$+ end=+$+ contains=muttrcAlternateKeyword,muttrcGroupDef,muttrcRXPat,muttrcUnHighlightSpace,muttrcComment
|
||||
|
||||
syn match muttrcVariable contained "\\\@<!\$[a-zA-Z_-]\+"
|
||||
" muttrcVariable includes a prefix because partial strings are considered
|
||||
" valid.
|
||||
syn match muttrcVariable contained "\\\@<![a-zA-Z_-]*\$[a-zA-Z_-]\+" contains=muttrcVariableInner
|
||||
syn match muttrcVariableInner contained "\$[a-zA-Z_-]\+"
|
||||
syn match muttrcEscapedVariable contained "\\\$[a-zA-Z_-]\+"
|
||||
|
||||
syn match muttrcBadAction contained "[^<>]\+" contains=muttrcEmail
|
||||
@@ -450,6 +470,9 @@ syn match muttrcFunction contained "\<undelete-\%(pattern\|subthread\)\>"
|
||||
syn match muttrcFunction contained "\<collapse-\%(parts\|thread\|all\)\>"
|
||||
syn match muttrcFunction contained "\<view-\%(attach\|attachments\|file\|mailcap\|name\|text\)\>"
|
||||
syn match muttrcFunction contained "\<\%(backspace\|backward-char\|bol\|bottom\|bottom-page\|buffy-cycle\|clear-flag\|complete\%(-query\)\?\|copy-file\|create-alias\|detach-file\|eol\|exit\|extract-keys\|\%(imap-\)\?fetch-mail\|forget-passphrase\|forward-char\|group-reply\|help\|ispell\|jump\|limit\|list-reply\|mail\|mail-key\|mark-as-new\|middle-page\|new-mime\|noop\|pgp-menu\|query\|query-append\|quit\|quote-char\|read-subthread\|redraw-screen\|refresh\|rename-file\|reply\|select-new\|set-flag\|shell-escape\|skip-quoted\|sort\|subscribe\|sync-mailbox\|top\|top-page\|transpose-chars\|unsubscribe\|untag-pattern\|verify-key\|what-key\|write-fcc\)\>"
|
||||
if use_mutt_sidebar == 1
|
||||
syn match muttrcFunction contained "\<sidebar-\%(prev\|next\|open\|scroll-up\|scroll-down\)"
|
||||
endif
|
||||
syn match muttrcAction contained "<[^>]\{-}>" contains=muttrcBadAction,muttrcFunction,muttrcKeyName
|
||||
|
||||
syn keyword muttrcCommand set skipwhite nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
|
||||
@@ -523,7 +546,7 @@ syn match muttrcSimplePat contained "!\?\^\?[~][mnXz]\s*\%([<>-][0-9]\+[kM]\?\|[
|
||||
syn match muttrcSimplePat contained "!\?\^\?[~][dr]\s*\%(\%(-\?[0-9]\{1,2}\%(/[0-9]\{1,2}\%(/[0-9]\{2}\%([0-9]\{2}\)\?\)\?\)\?\%([+*-][0-9]\+[ymwd]\)*\)\|\%(\%([0-9]\{1,2}\%(/[0-9]\{1,2}\%(/[0-9]\{2}\%([0-9]\{2}\)\?\)\?\)\?\%([+*-][0-9]\+[ymwd]\)*\)-\%([0-9]\{1,2}\%(/[0-9]\{1,2}\%(/[0-9]\{2}\%([0-9]\{2}\)\?\)\?\)\?\%([+*-][0-9]\+[ymwd]\)\?\)\?\)\|\%([<>=][0-9]\+[ymwd]\)\|\%(`[^`]\+`\)\|\%(\$[a-zA-Z0-9_-]\+\)\)" contains=muttrcShellString,muttrcVariable
|
||||
syn match muttrcSimplePat contained "!\?\^\?[~][bBcCefhHiLstxy]\s*" nextgroup=muttrcSimplePatRXContainer
|
||||
syn match muttrcSimplePat contained "!\?\^\?[%][bBcCefhHiLstxy]\s*" nextgroup=muttrcSimplePatString
|
||||
syn match muttrcSimplePat contained "!\?\^\?[=][bh]\s*" nextgroup=muttrcSimplePatString
|
||||
syn match muttrcSimplePat contained "!\?\^\?[=][bcCefhHiLstxy]\s*" nextgroup=muttrcSimplePatString
|
||||
syn region muttrcSimplePat contained keepend start=+!\?\^\?[~](+ end=+)+ contains=muttrcSimplePat
|
||||
"syn match muttrcSimplePat contained /'[^~=%][^']*/ contains=muttrcRXString
|
||||
syn region muttrcSimplePatString contained keepend start=+"+ end=+"+ skip=+\\"+
|
||||
@@ -557,9 +580,12 @@ syn region muttrcColorRXPat contained start=+\s*'+ skip=+\\'+ end=+'\s*+ keepend
|
||||
syn region muttrcColorRXPat contained start=+\s*"+ skip=+\\"+ end=+"\s*+ keepend skipwhite contains=muttrcRXString2 nextgroup=muttrcColorMatchCount,muttrcColorMatchCountNL
|
||||
syn keyword muttrcColorField contained attachment body bold error hdrdefault header index indicator markers message normal quoted search signature status tilde tree underline
|
||||
syn match muttrcColorField contained "\<quoted\d\=\>"
|
||||
if use_mutt_sidebar == 1
|
||||
syn keyword muttrcColorField contained sidebar_new
|
||||
endif
|
||||
syn keyword muttrcColor contained black blue cyan default green magenta red white yellow
|
||||
syn keyword muttrcColor contained brightblack brightblue brightcyan brightdefault brightgreen brightmagenta brightred brightwhite brightyellow
|
||||
syn match muttrcColor contained "\<\%(bright\)\=color\d\{1,2}\>"
|
||||
syn match muttrcColor contained "\<\%(bright\)\=color\d\{1,3}\>"
|
||||
" Now for the structure of the color line
|
||||
syn match muttrcColorRXNL contained skipnl "\s*\\$" nextgroup=muttrcColorRXPat,muttrcColorRXNL
|
||||
syn match muttrcColorBG contained /\s*[$]\?\w\+/ contains=muttrcColor,muttrcVariable,muttrcUnHighlightSpace nextgroup=muttrcColorRXPat,muttrcColorRXNL
|
||||
@@ -641,7 +667,7 @@ if version >= 508 || !exists("did_muttrc_syntax_inits")
|
||||
HiLink muttrcSetQuadAssignment Boolean
|
||||
HiLink muttrcSetStrAssignment String
|
||||
HiLink muttrcEmail Special
|
||||
HiLink muttrcVariable Special
|
||||
HiLink muttrcVariableInner Special
|
||||
HiLink muttrcEscapedVariable String
|
||||
HiLink muttrcHeader Type
|
||||
HiLink muttrcKeySpecial SpecialChar
|
||||
@@ -765,4 +791,6 @@ endif
|
||||
|
||||
let b:current_syntax = "muttrc"
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
"EOF vim: ts=8 noet tw=100 sw=8 sts=0 ft=vim
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
" Maintainer: Andriy Sokolov <andriy145@gmail.com>
|
||||
" Original Author: Manuel M.H. Stol <Manuel.Stol@allieddata.nl>
|
||||
" Former Maintainer: Manuel M.H. Stol <Manuel.Stol@allieddata.nl>
|
||||
" Last Change: 2010 Sep 24
|
||||
" Last Change: 2012 Feb 7
|
||||
" NASM Home: http://www.nasm.us/
|
||||
|
||||
|
||||
@@ -48,14 +48,14 @@ syn cluster nasmGrpComments contains=@nasmGrpInComments,nasmComment,nasmSpecialC
|
||||
" in NASM: 'Everything is a Label'
|
||||
" Definition Label = label defined by %[i]define or %[i]assign
|
||||
" Identifier Label = label defined as first non-keyword on a line or %[i]macro
|
||||
syn match nasmLabelError "$\=\(\d\+\K\|[#\.@]\|\$\$\k\)\k*\>"
|
||||
syn match nasmLabelError "$\=\(\d\+\K\|[#.@]\|\$\$\k\)\k*\>"
|
||||
syn match nasmLabel "\<\(\h\|[?@]\)\k*\>"
|
||||
syn match nasmLabel "[\$\~]\(\h\|[?@]\)\k*\>"lc=1
|
||||
" Labels starting with one or two '.' are special
|
||||
syn match nasmLocalLabel "\<\.\(\w\|[#$?@~]\)\k*\>"
|
||||
syn match nasmLocalLabel "\<\$\.\(\w\|[#$?@~]\)\k*\>"ms=s+1
|
||||
if !exists("nasm_no_warn")
|
||||
syn match nasmLabelWarn "\<\~\=\$\=[_\.][_\.\~]*\>"
|
||||
syn match nasmLabelWarn "\<\~\=\$\=[_.][_.\~]*\>"
|
||||
endif
|
||||
if exists("nasm_loose_syntax")
|
||||
syn match nasmSpecialLabel "\<\.\.@\k\+\>"
|
||||
@@ -92,7 +92,6 @@ syn keyword nasmFltNumber Inf Infinity Indefinite NaN SNaN QNaN
|
||||
syn match nasmNumberError "\<\~\s*\d\+\.\d*\(e[+-]\=\d\+\)\=\>"
|
||||
|
||||
|
||||
|
||||
" Netwide Assembler Storage Directives:
|
||||
" Storage types
|
||||
syn keyword nasmTypeError DF EXTRN FWORD RESF TBYTE
|
||||
@@ -181,7 +180,7 @@ if exists("nasm_ctx_outside_macro")
|
||||
syn region nasmPreConditDef transparent matchgroup=nasmCtxPreCondit start="^\s*%ifnctx\>"hs=e-6 start="^\s*%ifctx\>"hs=e-5 end="%endif\>" contains=@nasmGrpCntnPreCon
|
||||
syn match nasmCtxPreProc "^\s*%pop\>"hs=e-3
|
||||
if exists("nasm_loose_syntax")
|
||||
syn match nasmCtxLocLabel "%$\+\(\w\|[#\.?@~]\)\k*\>"
|
||||
syn match nasmCtxLocLabel "%$\+\(\w\|[#.?@~]\)\k*\>"
|
||||
else
|
||||
syn match nasmCtxLocLabel "%$\+\(\h\|[?@]\)\k*\>"
|
||||
endif
|
||||
@@ -249,10 +248,10 @@ syn match nasmRegisterError "\<X\=MM[8-9]\>"
|
||||
syn match nasmRegisterError "\<ST\((\d)\|[8-9]\>\)"
|
||||
syn match nasmRegisterError "\<E\([A-D][HL]\|[C-GS]S\)\>"
|
||||
" Memory reference operand (address):
|
||||
syn match nasmMemRefError "[\[\]]"
|
||||
syn match nasmMemRefError "[[\]]"
|
||||
syn cluster nasmGrpCntnMemRef contains=ALLBUT,@nasmGrpComments,@nasmGrpPreProcs,@nasmGrpInStrucs,nasmMemReference,nasmMemRefError
|
||||
syn match nasmInMacMemRef contained "\[[^;\[\]]\{-}\]" contains=@nasmGrpCntnMemRef,nasmPreProcError,nasmInMacLabel,nasmInMacLblWarn,nasmInMacParam
|
||||
syn match nasmMemReference "\[[^;\[\]]\{-}\]" contains=@nasmGrpCntnMemRef,nasmPreProcError,nasmCtxLocLabel
|
||||
syn match nasmInMacMemRef contained "\[[^;[\]]\{-}\]" contains=@nasmGrpCntnMemRef,nasmPreProcError,nasmInMacLabel,nasmInMacLblWarn,nasmInMacParam
|
||||
syn match nasmMemReference "\[[^;[\]]\{-}\]" contains=@nasmGrpCntnMemRef,nasmPreProcError,nasmCtxLocLabel
|
||||
|
||||
|
||||
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user