mirror of
https://github.com/vim/vim
synced 2025-07-16 01:01:58 +00:00
updated for version 7.0009
This commit is contained in:
@ -1,4 +1,4 @@
|
|||||||
*cmdline.txt* For Vim version 7.0aa. Last change: 2004 Jul 01
|
*cmdline.txt* For Vim version 7.0aa. Last change: 2004 Jul 14
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@ -164,6 +164,8 @@ CTRL-R CTRL-A *c_CTRL-R_CTRL-A* *c_<C-R>_<C-A>*
|
|||||||
'path' as in |gf|
|
'path' as in |gf|
|
||||||
CTRL-W the Word under the cursor
|
CTRL-W the Word under the cursor
|
||||||
CTRL-A the WORD under the cursor; see |WORD|
|
CTRL-A the WORD under the cursor; see |WORD|
|
||||||
|
When 'incsearch' is set the cursor position of the currently
|
||||||
|
displayed match is used.
|
||||||
{not in Vi}
|
{not in Vi}
|
||||||
CTRL-F and CTRL-P: {only when +file_in_path feature is
|
CTRL-F and CTRL-P: {only when +file_in_path feature is
|
||||||
included}
|
included}
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
*options.txt* For Vim version 7.0aa. Last change: 2004 Jul 05
|
*options.txt* For Vim version 7.0aa. Last change: 2004 Jul 15
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@ -1104,6 +1104,9 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
nofile buffer which is not related to a file and will not be
|
nofile buffer which is not related to a file and will not be
|
||||||
written
|
written
|
||||||
nowrite buffer which will not be written
|
nowrite buffer which will not be written
|
||||||
|
acwrite buffer which will always be written with BufWriteCmd
|
||||||
|
autocommands. {not available when compiled without the
|
||||||
|
|+autocmd| feature}
|
||||||
quickfix quickfix buffer, contains list of errors |:cwindow|
|
quickfix quickfix buffer, contains list of errors |:cwindow|
|
||||||
help help buffer (you are not supposed to set this
|
help help buffer (you are not supposed to set this
|
||||||
manually)
|
manually)
|
||||||
@ -1128,6 +1131,12 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
nofile only: The buffer name is fixed, it is not handled like a
|
nofile only: The buffer name is fixed, it is not handled like a
|
||||||
file name. It is not modified in response to a |:cd|
|
file name. It is not modified in response to a |:cd|
|
||||||
command.
|
command.
|
||||||
|
*E676*
|
||||||
|
"acwrite" implies that the buffer name is not related to a file, like
|
||||||
|
"nofile", but it will be written. Thus, in contrast to "nofile" and
|
||||||
|
"nowrite", ":w" does work and a modified buffer can't be abandoned
|
||||||
|
without saving. For writing there must be matching |BufWriteCmd|,
|
||||||
|
|FileWriteCmd| or |FileAppendCmd| autocommands.
|
||||||
|
|
||||||
*'casemap'* *'cmp'*
|
*'casemap'* *'cmp'*
|
||||||
'casemap' 'cmp' string (default: "internal,keepascii")
|
'casemap' 'cmp' string (default: "internal,keepascii")
|
||||||
@ -3422,14 +3431,16 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
{not in Vi}
|
{not in Vi}
|
||||||
{not available when compiled without the
|
{not available when compiled without the
|
||||||
|+extra_search| feature}
|
|+extra_search| feature}
|
||||||
While typing a search command, show immediately where the so far
|
While typing a search command, show where the pattern, as it was typed
|
||||||
typed pattern matches. The matched string is highlighted. If the
|
so far, matches. The matched string is highlighted. If the pattern
|
||||||
pattern is invalid or not found, nothing is shown. The screen will
|
is invalid or not found, nothing is shown. The screen will be updated
|
||||||
be updated often, this is only useful on fast terminals. Note that
|
often, this is only useful on fast terminals.
|
||||||
the match will be shown, but the cursor is not actually positioned
|
Note that the match will be shown, but the cursor will return to its
|
||||||
there. You still need to finish the search command with <CR> to move
|
original position when no match is found and when pressing <Esc>. You
|
||||||
the cursor. The highlighting can be set with the 'i' flag in
|
still need to finish the search command with <Enter> to move the
|
||||||
'highlight'. See also: 'hlsearch'.
|
cursor to the match.
|
||||||
|
The highlighting can be set with the 'i' flag in 'highlight'.
|
||||||
|
See also: 'hlsearch'.
|
||||||
NOTE: This option is reset when 'compatible' is set.
|
NOTE: This option is reset when 'compatible' is set.
|
||||||
|
|
||||||
*'indentexpr'* *'inde'*
|
*'indentexpr'* *'inde'*
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
*starting.txt* For Vim version 7.0aa. Last change: 2004 Jun 18
|
*starting.txt* For Vim version 7.0aa. Last change: 2004 Jul 13
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@ -746,7 +746,7 @@ accordingly. Vim proceeds in this order:
|
|||||||
"home:.vimrc" (for Amiga) (*)
|
"home:.vimrc" (for Amiga) (*)
|
||||||
"$VIM/.vimrc" (for OS/2 and Amiga) (*)
|
"$VIM/.vimrc" (for OS/2 and Amiga) (*)
|
||||||
"$HOME/_vimrc" (for MS-DOS and Win32) (*)
|
"$HOME/_vimrc" (for MS-DOS and Win32) (*)
|
||||||
"$VIM\_vimrc" (for MS-DOS and Win32) (*)
|
"$VIM/_vimrc" (for MS-DOS and Win32) (*)
|
||||||
Note: For Unix, OS/2 and Amiga, when ".vimrc" does not exist,
|
Note: For Unix, OS/2 and Amiga, when ".vimrc" does not exist,
|
||||||
"_vimrc" is also tried, in case an MS-DOS compatible file
|
"_vimrc" is also tried, in case an MS-DOS compatible file
|
||||||
system is used. For MS-DOS and Win32 ".vimrc" is checked
|
system is used. For MS-DOS and Win32 ".vimrc" is checked
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
*syntax.txt* For Vim version 7.0aa. Last change: 2004 Jul 06
|
*syntax.txt* For Vim version 7.0aa. Last change: 2004 Jul 15
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@ -2089,6 +2089,14 @@ This will prevent highlighting of special identifiers like "ConstantName",
|
|||||||
"$global_var", "@instance_var", "| iterator |", and ":symbol".
|
"$global_var", "@instance_var", "| iterator |", and ":symbol".
|
||||||
|
|
||||||
|
|
||||||
|
SCHEME *scheme.vim* *scheme-syntax*
|
||||||
|
|
||||||
|
By default only R5RS keywords are highlighted and properly indented.
|
||||||
|
|
||||||
|
MzScheme-specific stuff will be used if b:is_mzscheme or g:is_mzscheme
|
||||||
|
variables are defined.
|
||||||
|
|
||||||
|
|
||||||
SDL *sdl.vim* *sdl-syntax*
|
SDL *sdl.vim* *sdl-syntax*
|
||||||
|
|
||||||
The SDL highlighting probably misses a few keywords, but SDL has so many
|
The SDL highlighting probably misses a few keywords, but SDL has so many
|
||||||
|
@ -1813,6 +1813,8 @@ $VIMRUNTIME starting.txt /*$VIMRUNTIME*
|
|||||||
:di change.txt /*:di*
|
:di change.txt /*:di*
|
||||||
:diffg diff.txt /*:diffg*
|
:diffg diff.txt /*:diffg*
|
||||||
:diffget diff.txt /*:diffget*
|
:diffget diff.txt /*:diffget*
|
||||||
|
:diffo diff.txt /*:diffo*
|
||||||
|
:diffoff diff.txt /*:diffoff*
|
||||||
:diffp diff.txt /*:diffp*
|
:diffp diff.txt /*:diffp*
|
||||||
:diffpatch diff.txt /*:diffpatch*
|
:diffpatch diff.txt /*:diffpatch*
|
||||||
:diffpu diff.txt /*:diffpu*
|
:diffpu diff.txt /*:diffpu*
|
||||||
@ -3527,6 +3529,7 @@ E672 starting.txt /*E672*
|
|||||||
E673 print.txt /*E673*
|
E673 print.txt /*E673*
|
||||||
E674 print.txt /*E674*
|
E674 print.txt /*E674*
|
||||||
E675 print.txt /*E675*
|
E675 print.txt /*E675*
|
||||||
|
E676 options.txt /*E676*
|
||||||
E68 pattern.txt /*E68*
|
E68 pattern.txt /*E68*
|
||||||
E69 pattern.txt /*E69*
|
E69 pattern.txt /*E69*
|
||||||
E70 pattern.txt /*E70*
|
E70 pattern.txt /*E70*
|
||||||
@ -5424,8 +5427,12 @@ netbeans.txt netbeans.txt /*netbeans.txt*
|
|||||||
netrw pi_netrw.txt /*netrw*
|
netrw pi_netrw.txt /*netrw*
|
||||||
netrw-- pi_netrw.txt /*netrw--*
|
netrw-- pi_netrw.txt /*netrw--*
|
||||||
netrw-D pi_netrw.txt /*netrw-D*
|
netrw-D pi_netrw.txt /*netrw-D*
|
||||||
|
netrw-H pi_netrw.txt /*netrw-H*
|
||||||
|
netrw-M pi_netrw.txt /*netrw-M*
|
||||||
|
netrw-R pi_netrw.txt /*netrw-R*
|
||||||
netrw-activate pi_netrw.txt /*netrw-activate*
|
netrw-activate pi_netrw.txt /*netrw-activate*
|
||||||
netrw-browse pi_netrw.txt /*netrw-browse*
|
netrw-browse pi_netrw.txt /*netrw-browse*
|
||||||
|
netrw-browse-cmds pi_netrw.txt /*netrw-browse-cmds*
|
||||||
netrw-browse-var pi_netrw.txt /*netrw-browse-var*
|
netrw-browse-var pi_netrw.txt /*netrw-browse-var*
|
||||||
netrw-c-l pi_netrw.txt /*netrw-c-l*
|
netrw-c-l pi_netrw.txt /*netrw-c-l*
|
||||||
netrw-cadaver pi_netrw.txt /*netrw-cadaver*
|
netrw-cadaver pi_netrw.txt /*netrw-cadaver*
|
||||||
@ -5439,9 +5446,9 @@ netrw-ex pi_netrw.txt /*netrw-ex*
|
|||||||
netrw-file pi_netrw.txt /*netrw-file*
|
netrw-file pi_netrw.txt /*netrw-file*
|
||||||
netrw-fixup pi_netrw.txt /*netrw-fixup*
|
netrw-fixup pi_netrw.txt /*netrw-fixup*
|
||||||
netrw-ftp pi_netrw.txt /*netrw-ftp*
|
netrw-ftp pi_netrw.txt /*netrw-ftp*
|
||||||
netrw-h pi_netrw.txt /*netrw-h*
|
|
||||||
netrw-help pi_netrw.txt /*netrw-help*
|
netrw-help pi_netrw.txt /*netrw-help*
|
||||||
netrw-history pi_netrw.txt /*netrw-history*
|
netrw-history pi_netrw.txt /*netrw-history*
|
||||||
|
netrw-i pi_netrw.txt /*netrw-i*
|
||||||
netrw-list pi_netrw.txt /*netrw-list*
|
netrw-list pi_netrw.txt /*netrw-list*
|
||||||
netrw-list-hack pi_netrw.txt /*netrw-list-hack*
|
netrw-list-hack pi_netrw.txt /*netrw-list-hack*
|
||||||
netrw-move pi_netrw.txt /*netrw-move*
|
netrw-move pi_netrw.txt /*netrw-move*
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
*todo.txt* For Vim version 7.0aa. Last change: 2004 Jul 12
|
*todo.txt* For Vim version 7.0aa. Last change: 2004 Jul 16
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@ -30,13 +30,15 @@ be worked on, but only if you sponsor Vim development. See |sponsor|.
|
|||||||
*known-bugs*
|
*known-bugs*
|
||||||
-------------------- Known bugs and current work -----------------------
|
-------------------- Known bugs and current work -----------------------
|
||||||
|
|
||||||
Make aap build script work again. Also with mzscheme
|
When switching between Aap script and make Vim won't always run.
|
||||||
|
|
||||||
Mac: Compiling --enable-gui=athena doesn't work. Try to fix without disabling
|
Mac: Compiling --enable-gui=athena doesn't work. Try to fix without disabling
|
||||||
Carbon. Otherwise adjust configure to disable darwin. (raf)
|
Carbon. Otherwise adjust configure to disable Darwin. (raf)
|
||||||
|
|
||||||
Mac: "make install" doesn't install.
|
Mac: "make install" doesn't install. Patch from RAF.
|
||||||
|
|
||||||
|
UTF-8 in 'comments' causes wrong indent. Counting bytes instead of char
|
||||||
|
width? (Nikolai Weibull)
|
||||||
|
|
||||||
For version 7.0:
|
For version 7.0:
|
||||||
- Include many PATCHES:
|
- Include many PATCHES:
|
||||||
@ -282,6 +284,9 @@ For version 7.0:
|
|||||||
line.
|
line.
|
||||||
7 Make ":startinsert" command work directly for functions and scripts?
|
7 Make ":startinsert" command work directly for functions and scripts?
|
||||||
Also make it possible to append (it's difficult at end of line).
|
Also make it possible to append (it's difficult at end of line).
|
||||||
|
- When using 'incsearch" CTRL-R CTRL-W gets the word under the cursor, but
|
||||||
|
the part that already matched is doubled then. Remove the part of the
|
||||||
|
word that would be doubled. Make it work line CTRL-N in Insert mode.
|
||||||
|
|
||||||
Vi incompatibility:
|
Vi incompatibility:
|
||||||
8 With undo/redo only marks in the changed lines should be changed. Other
|
8 With undo/redo only marks in the changed lines should be changed. Other
|
||||||
@ -1995,6 +2000,8 @@ Autocommands:
|
|||||||
CmdEnter - Entering Cmdline mode
|
CmdEnter - Entering Cmdline mode
|
||||||
VisualEnter - Entering Visual mode
|
VisualEnter - Entering Visual mode
|
||||||
*Leave - Leaving a mode (in pair with the above *Enter)
|
*Leave - Leaving a mode (in pair with the above *Enter)
|
||||||
|
VimLeaveCheck - Before Vim decides to exit, so that it can be cancelled
|
||||||
|
when exiting isn't a good idea.
|
||||||
CmdUndefined - Like FuncUndefined but for user commands.
|
CmdUndefined - Like FuncUndefined but for user commands.
|
||||||
SearchPost - After doing a search command (e.g. to do "M")
|
SearchPost - After doing a search command (e.g. to do "M")
|
||||||
PreDirChanged/PostDirChanged
|
PreDirChanged/PostDirChanged
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
*version7.txt* For Vim version 7.0aa. Last change: 2004 Jul 11
|
*version7.txt* For Vim version 7.0aa. Last change: 2004 Jul 16
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@ -170,6 +170,10 @@ it. (Johannes Zellner)
|
|||||||
|
|
||||||
Added "nbsp" in 'listchars'. (David Blanchet)
|
Added "nbsp" in 'listchars'. (David Blanchet)
|
||||||
|
|
||||||
|
Added the "acwrite" value for the 'buftype' option. This is for a buffer that
|
||||||
|
doesn not have a name that refers to a file and is written with BufWriteCmd
|
||||||
|
autocommands.
|
||||||
|
|
||||||
For lisp indenting and matching parenthesis: (Sergey Khorev)
|
For lisp indenting and matching parenthesis: (Sergey Khorev)
|
||||||
- square brackets are recognized properly
|
- square brackets are recognized properly
|
||||||
- #\(, #\), #\[ and #\] are recognized as character literals
|
- #\(, #\), #\[ and #\] are recognized as character literals
|
||||||
@ -241,4 +245,14 @@ ignored. ":echo '-05' + 0" resulted in 5 instead of -5.
|
|||||||
Using "@:" to repeat a command line didn't work when it contains control
|
Using "@:" to repeat a command line didn't work when it contains control
|
||||||
characters.
|
characters.
|
||||||
|
|
||||||
|
When using file completion for a user command, it would not expand environment
|
||||||
|
variables like for a regular command with a file argument.
|
||||||
|
|
||||||
|
'cindent': When the argument of a #define looks like a C++ class the next line
|
||||||
|
is indented too much.
|
||||||
|
|
||||||
|
When 'comments' includes multi-byte characters inserting the middle part and
|
||||||
|
alignment may go wrong. 'cindent' also suffers from this for right-aligned
|
||||||
|
items.
|
||||||
|
|
||||||
vim:tw=78:ts=8:ft=help:norl:
|
vim:tw=78:ts=8:ft=help:norl:
|
||||||
|
@ -1,10 +1,9 @@
|
|||||||
" Vim syntax file for the D programming language (version 0.90).
|
" Vim syntax file for the D programming language (version 0.95).
|
||||||
"
|
"
|
||||||
" Language: D
|
" Language: D
|
||||||
" Maintainer: Jason Mills<jmills@cs.mun.ca>
|
" Maintainer: Jason Mills<jmills@cs.mun.ca>
|
||||||
" URL:
|
" Last Change: 2004 Jul 15
|
||||||
" Last Change: 2004 May 21
|
" Version: 0.10
|
||||||
" Version: 0.8
|
|
||||||
"
|
"
|
||||||
" Options:
|
" Options:
|
||||||
" d_comment_strings - set to highlight strings and numbers in comments
|
" d_comment_strings - set to highlight strings and numbers in comments
|
||||||
@ -30,39 +29,40 @@ endif
|
|||||||
|
|
||||||
" Keyword definitions
|
" Keyword definitions
|
||||||
"
|
"
|
||||||
syn keyword dExternal import module extern
|
syn keyword dExternal import package module extern
|
||||||
syn keyword dConditional if else switch
|
syn keyword dConditional if else switch
|
||||||
syn keyword dBranch goto break continue
|
syn keyword dBranch goto break continue
|
||||||
syn keyword dRepeat while for do foreach
|
syn keyword dRepeat while for do foreach
|
||||||
syn keyword dBoolean true false
|
syn keyword dBoolean true false
|
||||||
syn keyword dConstant null
|
syn keyword dConstant null
|
||||||
syn keyword dTypedef alias typedef
|
syn keyword dTypedef alias typedef
|
||||||
syn keyword dStructure template interface class enum struct union
|
syn keyword dStructure template interface class enum struct union
|
||||||
syn keyword dOperator new delete typeof cast align is
|
syn keyword dOperator new delete typeof typeid cast align is
|
||||||
syn keyword dOperator this super
|
syn keyword dOperator this super
|
||||||
if exists("d_hl_operator_overload")
|
if exists("d_hl_operator_overload")
|
||||||
syn keyword dOpOverload opNeg opCom opPostInc opPostDec opAdd opSub opSub_r
|
syn keyword dOpOverload opNeg opCom opPostInc opPostDec opAdd opSub opSub_r
|
||||||
syn keyword dOpOverload opMul opDiv opDiv_r opMod opMod_r opAnd opOr opXor
|
syn keyword dOpOverload opMul opDiv opDiv_r opMod opMod_r opAnd opOr opXor
|
||||||
syn keyword dOpOverload opShl opShl_r opShr opShr_r opUShr opUShr_r opCat
|
syn keyword dOpOverload opShl opShl_r opShr opShr_r opUShr opUShr_r opCat
|
||||||
syn keyword dOpOverload opCat_r opEquals opEquals opCmp opCmp opCmp opCmp
|
syn keyword dOpOverload opCat_r opEquals opEquals opCmp opCmp opCmp opCmp
|
||||||
syn keyword dOpOverload opAddAssign opSubAssign opMulAssign opDivAssign
|
syn keyword dOpOverload opAddAssign opSubAssign opMulAssign opDivAssign
|
||||||
syn keyword dOpOverload opModAssign opAndAssign opOrAssign opXorAssign
|
syn keyword dOpOverload opModAssign opAndAssign opOrAssign opXorAssign
|
||||||
syn keyword dOpOverload opShlAssign opShrAssign opUShrAssign opCatAssign
|
syn keyword dOpOverload opShlAssign opShrAssign opUShrAssign opCatAssign
|
||||||
syn keyword dOpOverload opIndex opCall opSlice
|
syn keyword dOpOverload opIndex opIndexAssign opCall opSlice
|
||||||
|
syn keyword dOpOverload opAdd_r opMul_r opAnd_r opOr_r opXor_r
|
||||||
endif
|
endif
|
||||||
syn keyword dType ushort int uint long ulong float
|
syn keyword dType ushort int uint long ulong float
|
||||||
syn keyword dType void byte ubyte double bit char wchar ucent cent
|
syn keyword dType void byte ubyte double bit char wchar ucent cent
|
||||||
syn keyword dType short bool dchar
|
syn keyword dType short bool dchar
|
||||||
syn keyword dType real ireal ifloat idouble creal cfloat cdouble
|
syn keyword dType real ireal ifloat idouble creal cfloat cdouble
|
||||||
syn keyword dDebug deprecated unittest
|
syn keyword dDebug deprecated unittest
|
||||||
syn keyword dExceptions throw try catch finally
|
syn keyword dExceptions throw try catch finally
|
||||||
syn keyword dScopeDecl public protected private export
|
syn keyword dScopeDecl public protected private export
|
||||||
syn keyword dStatement version debug return with invariant body
|
syn keyword dStatement version debug return with invariant body
|
||||||
syn keyword dStatement in out inout asm mixin
|
syn keyword dStatement in out inout asm mixin
|
||||||
syn keyword dStatement function delegate
|
syn keyword dStatement function delegate
|
||||||
syn keyword dStorageClass auto static override final const abstract volatile
|
syn keyword dStorageClass auto static override final const abstract volatile
|
||||||
syn keyword dStorageClass synchronized
|
syn keyword dStorageClass synchronized
|
||||||
syn keyword dPragma pragma
|
syn keyword dPragma pragma
|
||||||
|
|
||||||
|
|
||||||
" Assert is a statement and a module name.
|
" Assert is a statement and a module name.
|
||||||
@ -81,34 +81,34 @@ syn match dAssert "[^.]\s*\<assert\>"ms=s+1
|
|||||||
" Labels
|
" Labels
|
||||||
"
|
"
|
||||||
" We contain dScopeDecl so public: private: etc. are not highlighted like labels
|
" We contain dScopeDecl so public: private: etc. are not highlighted like labels
|
||||||
syn match dUserLabel "^\s*[_$a-zA-Z][_$a-zA-Z0-9_]*\s*:"he=e-1 contains=dLabel,dScopeDecl
|
syn match dUserLabel "^\s*[_$a-zA-Z][_$a-zA-Z0-9_]*\s*:"he=e-1 contains=dLabel,dScopeDecl
|
||||||
syn keyword dLabel case default
|
syn keyword dLabel case default
|
||||||
|
|
||||||
" Comments
|
" Comments
|
||||||
"
|
"
|
||||||
syn keyword dTodo contained TODO FIXME TEMP XXX
|
syn keyword dTodo contained TODO FIXME TEMP XXX
|
||||||
syn match dCommentStar contained "^\s*\*[^/]"me=e-1
|
syn match dCommentStar contained "^\s*\*[^/]"me=e-1
|
||||||
syn match dCommentStar contained "^\s*\*$"
|
syn match dCommentStar contained "^\s*\*$"
|
||||||
syn match dCommentPlus contained "^\s*+[^/]"me=e-1
|
syn match dCommentPlus contained "^\s*+[^/]"me=e-1
|
||||||
syn match dCommentPlus contained "^\s*+$"
|
syn match dCommentPlus contained "^\s*+$"
|
||||||
if exists("d_comment_strings")
|
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 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 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 dLineCommentString contained start=+"+ end=+$\|"+ contains=dUnicode,dEscSequence,@Spell
|
||||||
syn region dBlockComment start="/\*" end="\*/" contains=dBlockCommentString,dTodo,@Spell
|
syn region dBlockComment start="/\*" end="\*/" contains=dBlockCommentString,dTodo,@Spell
|
||||||
syn region dNestedComment start="/+" end="+/" contains=dNestedComment,dNestedCommentString,dTodo,@Spell
|
syn region dNestedComment start="/+" end="+/" contains=dNestedComment,dNestedCommentString,dTodo,@Spell
|
||||||
syn match dLineComment "//.*" contains=dLineCommentString,dTodo,@Spell
|
syn match dLineComment "//.*" contains=dLineCommentString,dTodo,@Spell
|
||||||
else
|
else
|
||||||
syn region dBlockComment start="/\*" end="\*/" contains=dBlockCommentString,dTodo,@Spell
|
syn region dBlockComment start="/\*" end="\*/" contains=dBlockCommentString,dTodo,@Spell
|
||||||
syn region dNestedComment start="/+" end="+/" contains=dNestedComment,dNestedCommentString,dTodo,@Spell
|
syn region dNestedComment start="/+" end="+/" contains=dNestedComment,dNestedCommentString,dTodo,@Spell
|
||||||
syn match dLineComment "//.*" contains=dLineCommentString,dTodo,@Spell
|
syn match dLineComment "//.*" contains=dLineCommentString,dTodo,@Spell
|
||||||
endif
|
endif
|
||||||
|
|
||||||
hi link dLineCommentString dBlockCommentString
|
hi link dLineCommentString dBlockCommentString
|
||||||
hi link dBlockCommentString dString
|
hi link dBlockCommentString dString
|
||||||
hi link dNestedCommentString dString
|
hi link dNestedCommentString dString
|
||||||
hi link dCommentStar dBlockComment
|
hi link dCommentStar dBlockComment
|
||||||
hi link dCommentPlus dNestedComment
|
hi link dCommentPlus dNestedComment
|
||||||
|
|
||||||
syn sync minlines=25
|
syn sync minlines=25
|
||||||
|
|
||||||
@ -118,54 +118,54 @@ syn match dSpecialCharError contained "[^']"
|
|||||||
|
|
||||||
" Escape sequences (oct,specal char,hex,wchar). These are not contained
|
" Escape sequences (oct,specal char,hex,wchar). These are not contained
|
||||||
" because they are considered string litterals
|
" because they are considered string litterals
|
||||||
syn match dEscSequence "\\\(\o\{1,3}\|[\"\\'\\?ntbrfva]\|u\x\{4}\|U\x\{8}\|x\x\x\)"
|
syn match dEscSequence "\\\(\o\{1,3}\|[\"\\'\\?ntbrfva]\|u\x\{4}\|U\x\{8}\|x\x\x\)"
|
||||||
syn match dCharacter "'[^']*'" contains=dEscSequence,dSpecialCharError
|
syn match dCharacter "'[^']*'" contains=dEscSequence,dSpecialCharError
|
||||||
syn match dCharacter "'\\''" contains=dEscSequence
|
syn match dCharacter "'\\''" contains=dEscSequence
|
||||||
syn match dCharacter "'[^\\]'"
|
syn match dCharacter "'[^\\]'"
|
||||||
|
|
||||||
" Unicode characters
|
" Unicode characters
|
||||||
"
|
"
|
||||||
syn match dUnicode "\\u\d\{4\}"
|
syn match dUnicode "\\u\d\{4\}"
|
||||||
|
|
||||||
" String.
|
" String.
|
||||||
"
|
"
|
||||||
syn region dString start=+"+ end=+"+ contains=dEscSequence,@Spell
|
syn region dString start=+"+ end=+"+ contains=dEscSequence,@Spell
|
||||||
syn region dRawString start=+`+ skip=+\\`+ end=+`+ contains=@Spell
|
syn region dRawString start=+`+ skip=+\\`+ end=+`+ contains=@Spell
|
||||||
syn region dRawString start=+r"+ skip=+\\"+ end=+"+ contains=@Spell
|
syn region dRawString start=+r"+ skip=+\\"+ end=+"+ contains=@Spell
|
||||||
syn region dHexString start=+x"+ skip=+\\"+ end=+"+
|
syn region dHexString start=+x"+ skip=+\\"+ end=+"+
|
||||||
|
|
||||||
" Numbers
|
" Numbers
|
||||||
"
|
"
|
||||||
syn case ignore
|
syn case ignore
|
||||||
syn match dInt display "\<\d[0-9_]*\(u\=l\=\|l\=u\=\)\>"
|
syn match dInt display "\<\d[0-9_]*\(u\=l\=\|l\=u\=\)\>"
|
||||||
" Hex number
|
" Hex number
|
||||||
syn match dHex display "\<0x[0-9a-f_]\+\(u\=l\=\|l\=u\=\)\>"
|
syn match dHex display "\<0x[0-9a-f_]\+\(u\=l\=\|l\=u\=\)\>"
|
||||||
syn match dHex display "\<\x[0-9a-f_]*h\(u\=l\=\|l\=u\=\)\>"
|
syn match dHex display "\<\x[0-9a-f_]*h\(u\=l\=\|l\=u\=\)\>"
|
||||||
" Flag the first zero of an octal number as something special
|
" Flag the first zero of an octal number as something special
|
||||||
syn match dOctal display "\<0[0-7_]\+\(u\=l\=\|l\=u\=\)\>" contains=cOctalZero
|
syn match dOctal display "\<0[0-7_]\+\(u\=l\=\|l\=u\=\)\>" contains=cOctalZero
|
||||||
syn match dOctalZero display contained "\<0"
|
syn match dOctalZero display contained "\<0"
|
||||||
|
|
||||||
"floating point without the dot
|
"floating point without the dot
|
||||||
syn match dFloat display "\<\d[0-9_]*\(fi\=\|l\=i\)\>"
|
syn match dFloat display "\<\d[0-9_]*\(fi\=\|l\=i\)\>"
|
||||||
"floating point number, with dot, optional exponent
|
"floating point number, with dot, optional exponent
|
||||||
syn match dFloat display "\<\d[0-9_]*\.[0-9_]*\(e[-+]\=[0-9_]\+\)\=[fl]\=i\="
|
syn match dFloat display "\<\d[0-9_]*\.[0-9_]*\(e[-+]\=[0-9_]\+\)\=[fl]\=i\="
|
||||||
"floating point number, starting with a dot, optional exponent
|
"floating point number, starting with a dot, optional exponent
|
||||||
syn match dFloat display "\(\.[0-9_]\+\)\(e[-+]\=[0-9_]\+\)\=[fl]\=i\=\>"
|
syn match dFloat display "\(\.[0-9_]\+\)\(e[-+]\=[0-9_]\+\)\=[fl]\=i\=\>"
|
||||||
"floating point number, without dot, with exponent
|
"floating point number, without dot, with exponent
|
||||||
"syn match dFloat display "\<\d\+e[-+]\=\d\+[fl]\=\>"
|
"syn match dFloat display "\<\d\+e[-+]\=\d\+[fl]\=\>"
|
||||||
syn match dFloat display "\<\d[0-9_]*e[-+]\=[0-9_]\+[fl]\=\>"
|
syn match dFloat display "\<\d[0-9_]*e[-+]\=[0-9_]\+[fl]\=\>"
|
||||||
|
|
||||||
"floating point without the dot
|
"floating point without the dot
|
||||||
syn match dHexFloat display "\<0x\x\+\(fi\=\|l\=i\)\>"
|
syn match dHexFloat display "\<0x\x\+\(fi\=\|l\=i\)\>"
|
||||||
"floating point number, with dot, optional exponent
|
"floating point number, with dot, optional exponent
|
||||||
syn match dHexFloat display "\<0x\x\+\.\x*\(p[-+]\=\x\+\)\=[fl]\=i\="
|
syn match dHexFloat display "\<0x\x\+\.\x*\(p[-+]\=\x\+\)\=[fl]\=i\="
|
||||||
"floating point number, without dot, with exponent
|
"floating point number, without dot, with exponent
|
||||||
syn match dHexFloat display "\<0x\x\+p[-+]\=\x\+[fl]\=\>"
|
syn match dHexFloat display "\<0x\x\+p[-+]\=\x\+[fl]\=\>"
|
||||||
|
|
||||||
" binary numbers
|
" binary numbers
|
||||||
syn match dBinary display "\<0b[01_]\+\>"
|
syn match dBinary display "\<0b[01_]\+\>"
|
||||||
" flag an octal number with wrong digits
|
" flag an octal number with wrong digits
|
||||||
syn match dOctalError display "0\o*[89]\d*"
|
syn match dOctalError display "0\o*[89]\d*"
|
||||||
syn case match
|
syn case match
|
||||||
|
|
||||||
" Pragma (preprocessor) support
|
" Pragma (preprocessor) support
|
||||||
|
@ -1,7 +1,8 @@
|
|||||||
" Vim syntax file
|
" Vim syntax file
|
||||||
" Language: Inno Setup File (iss file) and My InnoSetup extension
|
" Language: Inno Setup File (iss file) and My InnoSetup extension
|
||||||
" Maintainer: Dominique St<53>phan (dominique@mggen.com)
|
" Maintainer: Jason Mills (jmills@cs.mun.ca)
|
||||||
" Last change: 2004 July 5
|
" Previous Maintainer: Dominique St<53>phan (dominique@mggen.com)
|
||||||
|
" Last Change: 2004 Jul 13
|
||||||
|
|
||||||
" For version 5.x: Clear all syntax items
|
" For version 5.x: Clear all syntax items
|
||||||
" For version 6.x: Quit when a syntax file was already loaded
|
" For version 6.x: Quit when a syntax file was already loaded
|
||||||
@ -14,37 +15,40 @@ endif
|
|||||||
" shut case off
|
" shut case off
|
||||||
syn case ignore
|
syn case ignore
|
||||||
|
|
||||||
|
" Preprocessor
|
||||||
|
syn region issPreProc start="^\s*#" end="$"
|
||||||
|
|
||||||
" Section
|
" Section
|
||||||
syn region issHeader start="\[" end="\]"
|
syn region issHeader start="\[" end="\]"
|
||||||
|
|
||||||
" Label in the [Setup] Section
|
" Label in the [Setup] Section
|
||||||
syn match issLabel "^[^=]\+="
|
syn match issLabel "^[^=]\+="
|
||||||
|
|
||||||
" URL
|
" URL
|
||||||
syn match issURL "http[s]\=:\/\/.*$"
|
syn match issURL "http[s]\=:\/\/.*$"
|
||||||
|
|
||||||
" syn match issName "[^: ]\+:"
|
" syn match issName "[^: ]\+:"
|
||||||
syn match issName "Name:"
|
syn match issName "Name:"
|
||||||
syn match issName "MinVersion:\|OnlyBelowVersion:\|Languages:"
|
syn match issName "MinVersion:\|OnlyBelowVersion:\|Languages:"
|
||||||
syn match issName "Source:\|DestDir:\|DestName:\|CopyMode:"
|
syn match issName "Source:\|DestDir:\|DestName:\|CopyMode:"
|
||||||
syn match issName "Attribs:\|Permissions:\|FontInstall:\|Flags:"
|
syn match issName "Attribs:\|Permissions:\|FontInstall:\|Flags:"
|
||||||
syn match issName "FileName:\|Parameters:\|WorkingDir:\|HotKey:\|Comment:"
|
syn match issName "FileName:\|Parameters:\|WorkingDir:\|HotKey:\|Comment:"
|
||||||
syn match issName "IconFilename:\|IconIndex:"
|
syn match issName "IconFilename:\|IconIndex:"
|
||||||
syn match issName "Section:\|Key:\|String:"
|
syn match issName "Section:\|Key:\|String:"
|
||||||
syn match issName "Root:\|SubKey:\|ValueType:\|ValueName:\|ValueData:"
|
syn match issName "Root:\|SubKey:\|ValueType:\|ValueName:\|ValueData:"
|
||||||
syn match issName "RunOnceId:"
|
syn match issName "RunOnceId:"
|
||||||
syn match issName "Type:"
|
syn match issName "Type:"
|
||||||
syn match issName "Components:\|Description:\|GroupDescription:\|Types:\|ExtraDiskSpaceRequired:"
|
syn match issName "Components:\|Description:\|GroupDescription:\|Types:\|ExtraDiskSpaceRequired:"
|
||||||
syn match issName "StatusMsg:\|RunOnceId:\|Tasks:"
|
syn match issName "StatusMsg:\|RunOnceId:\|Tasks:"
|
||||||
syn match issName "MessagesFile:\|LicenseFile:\|InfoBeforeFile:\|InfoAfterFile:"
|
syn match issName "MessagesFile:\|LicenseFile:\|InfoBeforeFile:\|InfoAfterFile:"
|
||||||
|
|
||||||
syn match issComment "^;.*$"
|
syn match issComment "^;.*$"
|
||||||
|
|
||||||
" folder constant
|
" folder constant
|
||||||
syn match issFolder "{[^{]*}"
|
syn match issFolder "{[^{]*}"
|
||||||
|
|
||||||
" string
|
" string
|
||||||
syn region issString start=+"+ end=+"+ contains=issFolder
|
syn region issString start=+"+ end=+"+ contains=issFolder
|
||||||
|
|
||||||
" [Dirs]
|
" [Dirs]
|
||||||
syn keyword issDirsFlags deleteafterinstall uninsalwaysuninstall uninsneveruninstall
|
syn keyword issDirsFlags deleteafterinstall uninsalwaysuninstall uninsneveruninstall
|
||||||
@ -104,31 +108,30 @@ if version >= 508 || !exists("did_iss_syntax_inits")
|
|||||||
endif
|
endif
|
||||||
|
|
||||||
" The default methods for highlighting. Can be overridden later
|
" The default methods for highlighting. Can be overridden later
|
||||||
HiLink issHeader Special
|
HiLink issHeader Special
|
||||||
HiLink issComment Comment
|
HiLink issComment Comment
|
||||||
HiLink issLabel Type
|
HiLink issLabel Type
|
||||||
HiLink issName Type
|
HiLink issName Type
|
||||||
HiLink issFolder Special
|
HiLink issFolder Special
|
||||||
HiLink issString String
|
HiLink issString String
|
||||||
HiLink issValue String
|
HiLink issValue String
|
||||||
HiLink issURL Include
|
HiLink issURL Include
|
||||||
|
HiLink issPreProc PreProc
|
||||||
HiLink issDirsFlags Keyword
|
|
||||||
HiLink issFilesCopyMode Keyword
|
|
||||||
HiLink issFilesAttribs Keyword
|
|
||||||
HiLink issFilesPermissions Keyword
|
|
||||||
HiLink issFilesFlags Keyword
|
|
||||||
HiLink issIconsFlags Keyword
|
|
||||||
HiLink issINIFlags Keyword
|
|
||||||
HiLink issRegRootKey Keyword
|
|
||||||
HiLink issRegValueType Keyword
|
|
||||||
HiLink issRegFlags Keyword
|
|
||||||
HiLink issRunFlags Keyword
|
|
||||||
HiLink issTypesFlags Keyword
|
|
||||||
HiLink issComponentsFlags Keyword
|
|
||||||
HiLink issInstallDeleteType Keyword
|
|
||||||
HiLink issTasksFlags Keyword
|
|
||||||
|
|
||||||
|
HiLink issDirsFlags Keyword
|
||||||
|
HiLink issFilesCopyMode Keyword
|
||||||
|
HiLink issFilesAttribs Keyword
|
||||||
|
HiLink issFilesFlags Keyword
|
||||||
|
HiLink issIconsFlags Keyword
|
||||||
|
HiLink issINIFlags Keyword
|
||||||
|
HiLink issRegRootKey Keyword
|
||||||
|
HiLink issRegValueType Keyword
|
||||||
|
HiLink issRegFlags Keyword
|
||||||
|
HiLink issRunFlags Keyword
|
||||||
|
HiLink issTypesFlags Keyword
|
||||||
|
HiLink issComponentsFlags Keyword
|
||||||
|
HiLink issInstallDeleteType Keyword
|
||||||
|
HiLink issTasksFlags Keyword
|
||||||
|
|
||||||
delcommand HiLink
|
delcommand HiLink
|
||||||
endif
|
endif
|
||||||
|
@ -1,11 +1,14 @@
|
|||||||
" Vim syntax file
|
" Vim syntax file
|
||||||
" Language: Scheme (R5RS)
|
" Language: Scheme (R5RS)
|
||||||
" Maintainer: Dirk van Deun <dirk@igwe.vub.ac.be>
|
" Last Change: July 14, 2004
|
||||||
" Last Change: April 30, 1998
|
" Maintainer: Sergey Khorev <iamphet@nm.ru>
|
||||||
|
" Original author: Dirk van Deun <dirk@igwe.vub.ac.be>
|
||||||
|
|
||||||
" This script incorrectly recognizes some junk input as numerals:
|
" This script incorrectly recognizes some junk input as numerals:
|
||||||
" parsing the complete system of Scheme numerals using the pattern
|
" parsing the complete system of Scheme numerals using the pattern
|
||||||
" language is practically impossible: I did a lax approximation.
|
" language is practically impossible: I did a lax approximation.
|
||||||
|
|
||||||
|
" MzScheme extensions can be activated with setting is_mzscheme variable
|
||||||
|
|
||||||
" Suggestions and bug reports are solicited by the author.
|
" Suggestions and bug reports are solicited by the author.
|
||||||
|
|
||||||
@ -23,12 +26,12 @@ syn case ignore
|
|||||||
|
|
||||||
" Fascist highlighting: everything that doesn't fit the rules is an error...
|
" Fascist highlighting: everything that doesn't fit the rules is an error...
|
||||||
|
|
||||||
syn match schemeError oneline ![^ \t()";]*!
|
syn match schemeError oneline ![^ \t()\[\]";]*!
|
||||||
syn match schemeError oneline ")"
|
syn match schemeError oneline ")"
|
||||||
|
|
||||||
" Quoted and backquoted stuff
|
" Quoted and backquoted stuff
|
||||||
|
|
||||||
syn region schemeQuoted matchgroup=Delimiter start="['`]" end=![ \t()";]!me=e-1 contains=ALLBUT,schemeStruc,schemeSyntax,schemeFunc
|
syn region schemeQuoted matchgroup=Delimiter start="['`]" end=![ \t()\[\]";]!me=e-1 contains=ALLBUT,schemeStruc,schemeSyntax,schemeFunc
|
||||||
|
|
||||||
syn region schemeQuoted matchgroup=Delimiter start="['`](" matchgroup=Delimiter end=")" contains=ALLBUT,schemeStruc,schemeSyntax,schemeFunc
|
syn region schemeQuoted matchgroup=Delimiter start="['`](" matchgroup=Delimiter end=")" contains=ALLBUT,schemeStruc,schemeSyntax,schemeFunc
|
||||||
syn region schemeQuoted matchgroup=Delimiter start="['`]#(" matchgroup=Delimiter end=")" contains=ALLBUT,schemeStruc,schemeSyntax,schemeFunc
|
syn region schemeQuoted matchgroup=Delimiter start="['`]#(" matchgroup=Delimiter end=")" contains=ALLBUT,schemeStruc,schemeSyntax,schemeFunc
|
||||||
@ -36,15 +39,26 @@ syn region schemeQuoted matchgroup=Delimiter start="['`]#(" matchgroup=Delimiter
|
|||||||
syn region schemeStrucRestricted matchgroup=Delimiter start="(" matchgroup=Delimiter end=")" contains=ALLBUT,schemeStruc,schemeSyntax,schemeFunc
|
syn region schemeStrucRestricted matchgroup=Delimiter start="(" matchgroup=Delimiter end=")" contains=ALLBUT,schemeStruc,schemeSyntax,schemeFunc
|
||||||
syn region schemeStrucRestricted matchgroup=Delimiter start="#(" matchgroup=Delimiter end=")" contains=ALLBUT,schemeStruc,schemeSyntax,schemeFunc
|
syn region schemeStrucRestricted matchgroup=Delimiter start="#(" matchgroup=Delimiter end=")" contains=ALLBUT,schemeStruc,schemeSyntax,schemeFunc
|
||||||
|
|
||||||
syn region schemeUnquote matchgroup=Delimiter start="," end=![ \t()";]!me=e-1 contains=ALLBUT,schemeStruc,schemeSyntax,schemeFunc
|
" Popular Scheme extension:
|
||||||
syn region schemeUnquote matchgroup=Delimiter start=",@" end=![ \t()";]!me=e-1 contains=ALLBUT,schemeStruc,schemeSyntax,schemeFunc
|
" using [] as well as ()
|
||||||
|
syn region schemeStrucRestricted matchgroup=Delimiter start="\[" matchgroup=Delimiter end="\]" contains=ALLBUT,schemeStruc,schemeSyntax,schemeFunc
|
||||||
|
syn region schemeStrucRestricted matchgroup=Delimiter start="#\[" matchgroup=Delimiter end="\]" contains=ALLBUT,schemeStruc,schemeSyntax,schemeFunc
|
||||||
|
|
||||||
syn region schemeUnquote matchgroup=Delimiter start=",(" end=")" contains=ALLBUT,schemeStruc,schemeSyntax,schemeFunc
|
syn region schemeUnquote matchgroup=Delimiter start="," end=![ \t\[\]()";]!me=e-1 contains=ALLBUT,schemeStruc,schemeSyntax,schemeFunc
|
||||||
syn region schemeUnquote matchgroup=Delimiter start=",@(" end=")" contains=ALLBUT,schemeStruc,schemeSyntax,schemeFunc
|
syn region schemeUnquote matchgroup=Delimiter start=",@" end=![ \t\[\]()";]!me=e-1 contains=ALLBUT,schemeStruc,schemeSyntax,schemeFunc
|
||||||
|
|
||||||
|
syn region schemeUnquote matchgroup=Delimiter start=",(" end=")" contains=ALL
|
||||||
|
syn region schemeUnquote matchgroup=Delimiter start=",@(" end=")" contains=ALL
|
||||||
|
|
||||||
syn region schemeUnquote matchgroup=Delimiter start=",#(" end=")" contains=ALLBUT,schemeStruc,schemeSyntax,schemeFunc
|
syn region schemeUnquote matchgroup=Delimiter start=",#(" end=")" contains=ALLBUT,schemeStruc,schemeSyntax,schemeFunc
|
||||||
syn region schemeUnquote matchgroup=Delimiter start=",@#(" end=")" contains=ALLBUT,schemeStruc,schemeSyntax,schemeFunc
|
syn region schemeUnquote matchgroup=Delimiter start=",@#(" end=")" contains=ALLBUT,schemeStruc,schemeSyntax,schemeFunc
|
||||||
|
|
||||||
|
syn region schemeUnquote matchgroup=Delimiter start=",\[" end="\]" contains=ALL
|
||||||
|
syn region schemeUnquote matchgroup=Delimiter start=",@\[" end="\]" contains=ALL
|
||||||
|
|
||||||
|
syn region schemeUnquote matchgroup=Delimiter start=",#\[" end="\]" contains=ALLBUT,schemeStruc,schemeSyntax,schemeFunc
|
||||||
|
syn region schemeUnquote matchgroup=Delimiter start=",@#\[" end="\]" contains=ALLBUT,schemeStruc,schemeSyntax,schemeFunc
|
||||||
|
|
||||||
" R5RS Scheme Functions and Syntax:
|
" R5RS Scheme Functions and Syntax:
|
||||||
|
|
||||||
if version < 600
|
if version < 600
|
||||||
@ -96,63 +110,126 @@ syn keyword schemeFunc dynamic-wind port? values call-with-values
|
|||||||
syn keyword schemeFunc scheme-report-environment null-environment
|
syn keyword schemeFunc scheme-report-environment null-environment
|
||||||
syn keyword schemeFunc interaction-environment
|
syn keyword schemeFunc interaction-environment
|
||||||
|
|
||||||
" Writing out the complete description of Scheme numerals without
|
|
||||||
" using variables is a day's work for a trained secretary...
|
|
||||||
" This is a useful lax approximation:
|
|
||||||
|
|
||||||
syn match schemeNumber oneline "[-#+0-9.][-#+/0-9a-f@i.boxesfdl]*"
|
|
||||||
syn match schemeError oneline ![-#+0-9.][-#+/0-9a-f@i.boxesfdl]*[^-#+/0-9a-f@i.boxesfdl \t()";][^ \t()";]*!
|
|
||||||
|
|
||||||
syn match schemeOther oneline ![+-][ \t()";]!me=e-1
|
|
||||||
syn match schemeOther oneline ![+-]$!
|
|
||||||
" ... so that a single + or -, inside a quoted context, would not be
|
" ... so that a single + or -, inside a quoted context, would not be
|
||||||
" interpreted as a number (outside such contexts, it's a schemeFunc)
|
" interpreted as a number (outside such contexts, it's a schemeFunc)
|
||||||
|
|
||||||
syn match schemeDelimiter oneline !\.[ \t()";]!me=e-1
|
syn match schemeDelimiter oneline !\.[ \t\[\]()";]!me=e-1
|
||||||
syn match schemeDelimiter oneline !\.$!
|
syn match schemeDelimiter oneline !\.$!
|
||||||
" ... and a single dot is not a number but a delimiter
|
" ... and a single dot is not a number but a delimiter
|
||||||
|
|
||||||
" Simple literals:
|
|
||||||
|
|
||||||
syn match schemeBoolean oneline "#[tf]"
|
|
||||||
syn match schemeError oneline !#[tf][^ \t()";]\+!
|
|
||||||
|
|
||||||
syn match schemeChar oneline "#\\"
|
|
||||||
syn match schemeChar oneline "#\\."
|
|
||||||
syn match schemeError oneline !#\\.[^ \t()";]\+!
|
|
||||||
syn match schemeChar oneline "#\\space"
|
|
||||||
syn match schemeError oneline !#\\space[^ \t()";]\+!
|
|
||||||
syn match schemeChar oneline "#\\newline"
|
|
||||||
syn match schemeError oneline !#\\newline[^ \t()";]\+!
|
|
||||||
|
|
||||||
" This keeps all other stuff unhighlighted, except *stuff* and <stuff>:
|
" This keeps all other stuff unhighlighted, except *stuff* and <stuff>:
|
||||||
|
|
||||||
syn match schemeOther oneline ,[a-z!$%&*/:<=>?^_~][-a-z!$%&*/:<=>?^_~0-9+.@]*,
|
syn match schemeOther oneline ,[a-z!$%&*/:<=>?^_~+@#%-][-a-z!$%&*/:<=>?^_~0-9+.@#%]*,
|
||||||
syn match schemeError oneline ,[a-z!$%&*/:<=>?^_~][-a-z!$%&*/:<=>?^_~0-9+.@]*[^-a-z!$%&*/:<=>?^_~0-9+.@ \t()";]\+[^ \t()";]*,
|
syn match schemeError oneline ,[a-z!$%&*/:<=>?^_~+@#%-][-a-z!$%&*/:<=>?^_~0-9+.@#%]*[^-a-z!$%&*/:<=>?^_~0-9+.@ \t\[\]()";]\+[^ \t\[\]()";]*,
|
||||||
|
|
||||||
syn match schemeOther oneline "\.\.\."
|
syn match schemeOther oneline "\.\.\."
|
||||||
syn match schemeError oneline !\.\.\.[^ \t()";]\+!
|
syn match schemeError oneline !\.\.\.[^ \t\[\]()";]\+!
|
||||||
" ... a special identifier
|
" ... a special identifier
|
||||||
|
|
||||||
syn match schemeConstant oneline ,\*[-a-z!$%&*/:<=>?^_~0-9+.@]*\*[ \t()";],me=e-1
|
syn match schemeConstant oneline ,\*[-a-z!$%&*/:<=>?^_~0-9+.@]*\*[ \t\[\]()";],me=e-1
|
||||||
syn match schemeConstant oneline ,\*[-a-z!$%&*/:<=>?^_~0-9+.@]*\*$,
|
syn match schemeConstant oneline ,\*[-a-z!$%&*/:<=>?^_~0-9+.@]*\*$,
|
||||||
syn match schemeError oneline ,\*[-a-z!$%&*/:<=>?^_~0-9+.@]*\*[^-a-z!$%&*/:<=>?^_~0-9+.@ \t()";]\+[^ \t()";]*,
|
syn match schemeError oneline ,\*[-a-z!$%&*/:<=>?^_~0-9+.@]*\*[^-a-z!$%&*/:<=>?^_~0-9+.@ \t\[\]()";]\+[^ \t\[\]()";]*,
|
||||||
|
|
||||||
syn match schemeConstant oneline ,<[-a-z!$%&*/:<=>?^_~0-9+.@]*>[ \t()";],me=e-1
|
syn match schemeConstant oneline ,<[-a-z!$%&*/:<=>?^_~0-9+.@]*>[ \t\[\]()";],me=e-1
|
||||||
syn match schemeConstant oneline ,<[-a-z!$%&*/:<=>?^_~0-9+.@]*>$,
|
syn match schemeConstant oneline ,<[-a-z!$%&*/:<=>?^_~0-9+.@]*>$,
|
||||||
syn match schemeError oneline ,<[-a-z!$%&*/:<=>?^_~0-9+.@]*>[^-a-z!$%&*/:<=>?^_~0-9+.@ \t()";]\+[^ \t()";]*,
|
syn match schemeError oneline ,<[-a-z!$%&*/:<=>?^_~0-9+.@]*>[^-a-z!$%&*/:<=>?^_~0-9+.@ \t\[\]()";]\+[^ \t\[\]()";]*,
|
||||||
|
|
||||||
" Non-quoted lists, and strings:
|
" Non-quoted lists, and strings:
|
||||||
|
|
||||||
syn region schemeStruc matchgroup=Delimiter start="(" matchgroup=Delimiter end=")" contains=ALL
|
syn region schemeStruc matchgroup=Delimiter start="(" matchgroup=Delimiter end=")" contains=ALL
|
||||||
syn region schemeStruc matchgroup=Delimiter start="#(" matchgroup=Delimiter end=")" contains=ALL
|
syn region schemeStruc matchgroup=Delimiter start="#(" matchgroup=Delimiter end=")" contains=ALL
|
||||||
|
|
||||||
|
syn region schemeStruc matchgroup=Delimiter start="\[" matchgroup=Delimiter end="\]" contains=ALL
|
||||||
|
syn region schemeStruc matchgroup=Delimiter start="#\[" matchgroup=Delimiter end="\]" contains=ALL
|
||||||
|
|
||||||
|
" Simple literals:
|
||||||
syn region schemeString start=+"+ skip=+\\[\\"]+ end=+"+
|
syn region schemeString start=+"+ skip=+\\[\\"]+ end=+"+
|
||||||
|
|
||||||
" Comments:
|
" Comments:
|
||||||
|
|
||||||
syn match schemeComment ";.*$"
|
syn match schemeComment ";.*$"
|
||||||
|
|
||||||
|
|
||||||
|
" Writing out the complete description of Scheme numerals without
|
||||||
|
" using variables is a day's work for a trained secretary...
|
||||||
|
|
||||||
|
syn match schemeOther oneline ![+-][ \t\[\]()";]!me=e-1
|
||||||
|
syn match schemeOther oneline ![+-]$!
|
||||||
|
"
|
||||||
|
" This is a useful lax approximation:
|
||||||
|
syn match schemeNumber oneline "[-#+0-9.][-#+/0-9a-f@i.boxesfdl]*"
|
||||||
|
syn match schemeError oneline ![-#+0-9.][-#+/0-9a-f@i.boxesfdl]*[^-#+/0-9a-f@i.boxesfdl \t\[\]()";][^ \t\[\]()";]*!
|
||||||
|
|
||||||
|
syn match schemeBoolean oneline "#[tf]"
|
||||||
|
syn match schemeError oneline !#[tf][^ \t\[\]()";]\+!
|
||||||
|
|
||||||
|
syn match schemeChar oneline "#\\"
|
||||||
|
syn match schemeChar oneline "#\\."
|
||||||
|
syn match schemeError oneline !#\\.[^ \t\[\]()";]\+!
|
||||||
|
syn match schemeChar oneline "#\\space"
|
||||||
|
syn match schemeError oneline !#\\space[^ \t\[\]()";]\+!
|
||||||
|
syn match schemeChar oneline "#\\newline"
|
||||||
|
syn match schemeError oneline !#\\newline[^ \t\[\]()";]\+!
|
||||||
|
|
||||||
|
if exists("b:is_mzscheme") || exists("is_mzscheme")
|
||||||
|
" MzScheme extensions added by Sergey Khorev
|
||||||
|
" multiline comment
|
||||||
|
syntax region schemeMultilineComment start=/#|/ end=/|#/
|
||||||
|
" #%xxx are the special MzScheme identifiers
|
||||||
|
syn match schemeOther oneline "#%[-a-z!$%&*/:<=>?^_~0-9+.@#%]\+"
|
||||||
|
" anything limited by |'s is identifier
|
||||||
|
syn match schemeOther oneline "|[^|]\+|"
|
||||||
|
|
||||||
|
syn match schemeChar oneline "#\\return"
|
||||||
|
|
||||||
|
" Modules require stmt
|
||||||
|
syn keyword schemeExtSyntax module require dynamic-require lib prefix all-except prefix-all-except rename
|
||||||
|
" modules provide stmt
|
||||||
|
syn keyword schemeExtSyntax provide struct all-from all-from-except all-defined all-defined-except
|
||||||
|
" Other from MzScheme
|
||||||
|
syn keyword schemeExtSyntax with-handlers when unless instantiate define-struct case-lambda syntax-case
|
||||||
|
syn keyword schemeExtSyntax free-identifier=? bound-identifier=? module-identifier=? syntax-object->datum
|
||||||
|
syn keyword schemeExtSyntax datum->syntax-object
|
||||||
|
syn keyword schemeExtSyntax let-values let*-values letrec-values set!-values fluid-let parameterize begin0
|
||||||
|
syn keyword schemeExtSyntax error raise opt-lambda define-values unit unit/sig define-signature
|
||||||
|
syn keyword schemeExtSyntax invoke-unit/sig define-values/invoke-unit/sig compound-unit/sig import export
|
||||||
|
syn keyword schemeExtSyntax link syntax quasisyntax unsyntax with-syntax
|
||||||
|
hi def link schemeExtSyntax Type
|
||||||
|
|
||||||
|
syn keyword schemeExtFunc format system-type current-extension-compiler current-extension-linker
|
||||||
|
syn keyword schemeExtFunc use-standard-linker use-standard-compiler
|
||||||
|
syn keyword schemeExtFunc find-executable-path append-object-suffix append-extension-suffix
|
||||||
|
syn keyword schemeExtFunc current-library-collection-paths current-extension-compiler-flags make-parameter
|
||||||
|
syn keyword schemeExtFunc current-directory build-path normalize-path current-extension-linker-flags
|
||||||
|
syn keyword schemeExtFunc file-exists? directory-exists? delete-directory/files delete-directory delete-file
|
||||||
|
syn keyword schemeExtFunc system compile-file system-library-subpath getenv putenv current-standard-link-libraries
|
||||||
|
syn keyword schemeExtFunc remove* file-size find-files fold-files directory-list shell-execute split-path
|
||||||
|
syn keyword schemeExtFunc current-error-port process/ports process printf fprintf open-input-string open-output-string
|
||||||
|
syn keyword schemeExtFunc get-output-string
|
||||||
|
" exceptions
|
||||||
|
syn keyword schemeExtFunc exn exn:application:arity exn:application:continuation exn:application:fprintf:mismatch
|
||||||
|
syn keyword schemeExtFunc exn:application:mismatch exn:application:type exn:application:mismatch exn:break exn:i/o:filesystem exn:i/o:port
|
||||||
|
syn keyword schemeExtFunc exn:i/o:port:closed exn:i/o:tcp exn:i/o:udp exn:misc exn:misc:application exn:misc:unsupported exn:module exn:read
|
||||||
|
syn keyword schemeExtFunc exn:read:non-char exn:special-comment exn:syntax exn:thread exn:user exn:variable exn:application:mismatch
|
||||||
|
syn keyword schemeExtFunc exn? exn:application:arity? exn:application:continuation? exn:application:fprintf:mismatch? exn:application:mismatch?
|
||||||
|
syn keyword schemeExtFunc exn:application:type? exn:application:mismatch? exn:break? exn:i/o:filesystem? exn:i/o:port? exn:i/o:port:closed?
|
||||||
|
syn keyword schemeExtFunc exn:i/o:tcp? exn:i/o:udp? exn:misc? exn:misc:application? exn:misc:unsupported? exn:module? exn:read? exn:read:non-char?
|
||||||
|
syn keyword schemeExtFunc exn:special-comment? exn:syntax? exn:thread? exn:user? exn:variable? exn:application:mismatch?
|
||||||
|
" Command-line parsing
|
||||||
|
syn keyword schemeExtFunc command-line current-command-line-arguments once-any help-labels multi once-each
|
||||||
|
hi def link schemeExtFunc PreProc
|
||||||
|
|
||||||
|
" syntax quoting, unquoting and quasiquotation
|
||||||
|
syn region schemeUnquote matchgroup=Delimiter start="#," end=![ \t\[\]()";]!me=e-1 contains=ALL
|
||||||
|
syn region schemeUnquote matchgroup=Delimiter start="#,@" end=![ \t\[\]()";]!me=e-1 contains=ALL
|
||||||
|
syn region schemeUnquote matchgroup=Delimiter start="#,(" end=")" contains=ALL
|
||||||
|
syn region schemeUnquote matchgroup=Delimiter start="#,@(" end=")" contains=ALL
|
||||||
|
syn region schemeUnquote matchgroup=Delimiter start="#,\[" end="\]" contains=ALL
|
||||||
|
syn region schemeUnquote matchgroup=Delimiter start="#,@\[" end="\]" contains=ALL
|
||||||
|
syn region schemeQuoted matchgroup=Delimiter start="#['`]" end=![ \t()\[\]";]!me=e-1 contains=ALL
|
||||||
|
syn region schemeQuoted matchgroup=Delimiter start="#['`](" matchgroup=Delimiter end=")" contains=ALL
|
||||||
|
endif
|
||||||
|
|
||||||
" Synchronization and the wrapping up...
|
" Synchronization and the wrapping up...
|
||||||
|
|
||||||
syn sync match matchPlace grouphere NONE "^[^ \t]"
|
syn sync match matchPlace grouphere NONE "^[^ \t]"
|
||||||
@ -181,6 +258,7 @@ if version >= 508 || !exists("did_scheme_syntax_inits")
|
|||||||
HiLink schemeConstant Constant
|
HiLink schemeConstant Constant
|
||||||
|
|
||||||
HiLink schemeComment Comment
|
HiLink schemeComment Comment
|
||||||
|
HiLink schemeMultilineComment Comment
|
||||||
HiLink schemeError Error
|
HiLink schemeError Error
|
||||||
|
|
||||||
delcommand HiLink
|
delcommand HiLink
|
||||||
|
863
src/auto/configure
vendored
863
src/auto/configure
vendored
File diff suppressed because it is too large
Load Diff
@ -364,6 +364,9 @@ if test "$enable_mzschemeinterp" = "yes"; then
|
|||||||
dnl Make Vim remember the path to the library. For when it's not in
|
dnl Make Vim remember the path to the library. For when it's not in
|
||||||
dnl $LD_LIBRARY_PATH.
|
dnl $LD_LIBRARY_PATH.
|
||||||
MZSCHEME_LIBS="$MZSCHEME_LIBS -Wl,-rpath -Wl,${vi_cv_path_mzscheme_pfx}/lib"
|
MZSCHEME_LIBS="$MZSCHEME_LIBS -Wl,-rpath -Wl,${vi_cv_path_mzscheme_pfx}/lib"
|
||||||
|
elif test "`(uname) 2>/dev/null`" = SunOS &&
|
||||||
|
uname -r | grep '^5' >/dev/null; then
|
||||||
|
MZSCHEME_LIBS="$MZSCHEME_LIBS -R ${vi_cv_path_mzscheme_pfx}/lib"
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
MZSCHEME_CFLAGS="-I${vi_cv_path_mzscheme_pfx}/include \
|
MZSCHEME_CFLAGS="-I${vi_cv_path_mzscheme_pfx}/include \
|
||||||
|
@ -3205,6 +3205,11 @@ set_one_cmd_context(xp, buff)
|
|||||||
{
|
{
|
||||||
xp->xp_context = EXPAND_ENV_VARS;
|
xp->xp_context = EXPAND_ENV_VARS;
|
||||||
++xp->xp_pattern;
|
++xp->xp_pattern;
|
||||||
|
#if defined(FEAT_USR_CMDS) && defined(FEAT_CMDL_COMPL)
|
||||||
|
/* Avoid that the assignment uses EXPAND_FILES again. */
|
||||||
|
if (compl != EXPAND_USER_DEFINED)
|
||||||
|
compl = EXPAND_ENV_VARS;
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
30
src/fileio.c
30
src/fileio.c
@ -2720,6 +2720,7 @@ buf_write(buf, fname, sfname, start, end, eap, append, forceit,
|
|||||||
int buf_fname_f = FALSE;
|
int buf_fname_f = FALSE;
|
||||||
int buf_fname_s = FALSE;
|
int buf_fname_s = FALSE;
|
||||||
int did_cmd = FALSE;
|
int did_cmd = FALSE;
|
||||||
|
int nofile_err = FALSE;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Apply PRE aucocommands.
|
* Apply PRE aucocommands.
|
||||||
@ -2742,8 +2743,13 @@ buf_write(buf, fname, sfname, start, end, eap, append, forceit,
|
|||||||
{
|
{
|
||||||
if (!(did_cmd = apply_autocmds_exarg(EVENT_FILEAPPENDCMD,
|
if (!(did_cmd = apply_autocmds_exarg(EVENT_FILEAPPENDCMD,
|
||||||
sfname, sfname, FALSE, curbuf, eap)))
|
sfname, sfname, FALSE, curbuf, eap)))
|
||||||
apply_autocmds_exarg(EVENT_FILEAPPENDPRE,
|
{
|
||||||
|
if (bt_nofile(curbuf))
|
||||||
|
nofile_err = TRUE;
|
||||||
|
else
|
||||||
|
apply_autocmds_exarg(EVENT_FILEAPPENDPRE,
|
||||||
sfname, sfname, FALSE, curbuf, eap);
|
sfname, sfname, FALSE, curbuf, eap);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else if (filtering)
|
else if (filtering)
|
||||||
{
|
{
|
||||||
@ -2754,15 +2760,25 @@ buf_write(buf, fname, sfname, start, end, eap, append, forceit,
|
|||||||
{
|
{
|
||||||
if (!(did_cmd = apply_autocmds_exarg(EVENT_BUFWRITECMD,
|
if (!(did_cmd = apply_autocmds_exarg(EVENT_BUFWRITECMD,
|
||||||
sfname, sfname, FALSE, curbuf, eap)))
|
sfname, sfname, FALSE, curbuf, eap)))
|
||||||
apply_autocmds_exarg(EVENT_BUFWRITEPRE,
|
{
|
||||||
|
if (bt_nofile(curbuf))
|
||||||
|
nofile_err = TRUE;
|
||||||
|
else
|
||||||
|
apply_autocmds_exarg(EVENT_BUFWRITEPRE,
|
||||||
sfname, sfname, FALSE, curbuf, eap);
|
sfname, sfname, FALSE, curbuf, eap);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
if (!(did_cmd = apply_autocmds_exarg(EVENT_FILEWRITECMD,
|
if (!(did_cmd = apply_autocmds_exarg(EVENT_FILEWRITECMD,
|
||||||
sfname, sfname, FALSE, curbuf, eap)))
|
sfname, sfname, FALSE, curbuf, eap)))
|
||||||
apply_autocmds_exarg(EVENT_FILEWRITEPRE,
|
{
|
||||||
|
if (bt_nofile(curbuf))
|
||||||
|
nofile_err = TRUE;
|
||||||
|
else
|
||||||
|
apply_autocmds_exarg(EVENT_FILEWRITEPRE,
|
||||||
sfname, sfname, FALSE, curbuf, eap);
|
sfname, sfname, FALSE, curbuf, eap);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* restore curwin/curbuf and a few other things */
|
/* restore curwin/curbuf and a few other things */
|
||||||
@ -2776,11 +2792,15 @@ buf_write(buf, fname, sfname, start, end, eap, append, forceit,
|
|||||||
*/
|
*/
|
||||||
if (!buf_valid(buf))
|
if (!buf_valid(buf))
|
||||||
buf = NULL;
|
buf = NULL;
|
||||||
if (buf == NULL || buf->b_ml.ml_mfp == NULL || did_cmd || aborting())
|
if (buf == NULL || buf->b_ml.ml_mfp == NULL
|
||||||
|
|| did_cmd || nofile_err || aborting())
|
||||||
{
|
{
|
||||||
--no_wait_return;
|
--no_wait_return;
|
||||||
msg_scroll = msg_save;
|
msg_scroll = msg_save;
|
||||||
if (aborting())
|
if (nofile_err)
|
||||||
|
EMSG(_("E676: No matching autocommands for acwrite buffer"));
|
||||||
|
|
||||||
|
if (aborting() || nofile_err)
|
||||||
/* An aborting error, interrupt or exception in the
|
/* An aborting error, interrupt or exception in the
|
||||||
* autocommands. */
|
* autocommands. */
|
||||||
return FAIL;
|
return FAIL;
|
||||||
|
105
src/misc1.c
105
src/misc1.c
@ -992,24 +992,92 @@ open_line(dir, flags, old_indent)
|
|||||||
for (p = leader + lead_len - 1; p > leader
|
for (p = leader + lead_len - 1; p > leader
|
||||||
&& vim_iswhite(*p); --p)
|
&& vim_iswhite(*p); --p)
|
||||||
;
|
;
|
||||||
|
|
||||||
++p;
|
++p;
|
||||||
|
|
||||||
|
#ifdef FEAT_MBYTE
|
||||||
|
/* Compute the length of the replaced characters in
|
||||||
|
* screen characters, not bytes. */
|
||||||
|
{
|
||||||
|
int repl_size = vim_strnsize(lead_repl,
|
||||||
|
lead_repl_len);
|
||||||
|
int old_size = 0;
|
||||||
|
char_u *endp = p;
|
||||||
|
int l;
|
||||||
|
|
||||||
|
while (old_size < repl_size && p > leader)
|
||||||
|
{
|
||||||
|
--p;
|
||||||
|
p -= mb_head_off(leader, p);
|
||||||
|
old_size += ptr2cells(p);
|
||||||
|
}
|
||||||
|
l = lead_repl_len - (endp - p);
|
||||||
|
if (l != 0)
|
||||||
|
mch_memmove(endp + l, endp,
|
||||||
|
(size_t)((leader + lead_len) - endp));
|
||||||
|
lead_len += l;
|
||||||
|
}
|
||||||
|
#else
|
||||||
if (p < leader + lead_repl_len)
|
if (p < leader + lead_repl_len)
|
||||||
p = leader;
|
p = leader;
|
||||||
else
|
else
|
||||||
p -= lead_repl_len;
|
p -= lead_repl_len;
|
||||||
|
#endif
|
||||||
mch_memmove(p, lead_repl, (size_t)lead_repl_len);
|
mch_memmove(p, lead_repl, (size_t)lead_repl_len);
|
||||||
if (p + lead_repl_len > leader + lead_len)
|
if (p + lead_repl_len > leader + lead_len)
|
||||||
p[lead_repl_len] = NUL;
|
p[lead_repl_len] = NUL;
|
||||||
|
|
||||||
/* blank-out any other chars from the old leader. */
|
/* blank-out any other chars from the old leader. */
|
||||||
while (--p >= leader)
|
while (--p >= leader)
|
||||||
|
{
|
||||||
|
#ifdef FEAT_MBYTE
|
||||||
|
int l = mb_head_off(leader, p);
|
||||||
|
|
||||||
|
if (l > 1)
|
||||||
|
{
|
||||||
|
p -= l;
|
||||||
|
if (ptr2cells(p) > 1)
|
||||||
|
{
|
||||||
|
p[1] = ' ';
|
||||||
|
--l;
|
||||||
|
}
|
||||||
|
mch_memmove(p + 1, p + l + 1,
|
||||||
|
(size_t)((leader + lead_len) - (p + l + 1)));
|
||||||
|
lead_len -= l;
|
||||||
|
*p = ' ';
|
||||||
|
}
|
||||||
|
else
|
||||||
|
#endif
|
||||||
if (!vim_iswhite(*p))
|
if (!vim_iswhite(*p))
|
||||||
*p = ' ';
|
*p = ' ';
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else /* left adjusted leader */
|
else /* left adjusted leader */
|
||||||
{
|
{
|
||||||
p = skipwhite(leader);
|
p = skipwhite(leader);
|
||||||
|
#ifdef FEAT_MBYTE
|
||||||
|
/* Compute the length of the replaced characters in
|
||||||
|
* screen characters, not bytes. Move the part that is
|
||||||
|
* not to be overwritten. */
|
||||||
|
{
|
||||||
|
int repl_size = vim_strnsize(lead_repl,
|
||||||
|
lead_repl_len);
|
||||||
|
int i;
|
||||||
|
int l;
|
||||||
|
|
||||||
|
for (i = 0; p[i] != NUL && i < lead_len; i += l)
|
||||||
|
{
|
||||||
|
l = mb_ptr2len_check(p + i);
|
||||||
|
if (vim_strnsize(p, i + l) > repl_size)
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
if (i != lead_repl_len)
|
||||||
|
{
|
||||||
|
mch_memmove(p + lead_repl_len, p + i,
|
||||||
|
(size_t)(lead_len - i - (leader - p)));
|
||||||
|
lead_len += lead_repl_len - i;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
#endif
|
||||||
mch_memmove(p, lead_repl, (size_t)lead_repl_len);
|
mch_memmove(p, lead_repl, (size_t)lead_repl_len);
|
||||||
|
|
||||||
/* Replace any remaining non-white chars in the old
|
/* Replace any remaining non-white chars in the old
|
||||||
@ -1026,7 +1094,26 @@ open_line(dir, flags, old_indent)
|
|||||||
(leader + lead_len) - p);
|
(leader + lead_len) - p);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
{
|
||||||
|
#ifdef FEAT_MBYTE
|
||||||
|
int l = mb_ptr2len_check(p);
|
||||||
|
|
||||||
|
if (l > 1)
|
||||||
|
{
|
||||||
|
if (ptr2cells(p) > 1)
|
||||||
|
{
|
||||||
|
/* Replace a double-wide char with
|
||||||
|
* two spaces */
|
||||||
|
--l;
|
||||||
|
*p++ = ' ';
|
||||||
|
}
|
||||||
|
mch_memmove(p + 1, p + l,
|
||||||
|
(leader + lead_len) - p);
|
||||||
|
lead_len -= l - 1;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
*p = ' ';
|
*p = ' ';
|
||||||
|
}
|
||||||
}
|
}
|
||||||
*p = NUL;
|
*p = NUL;
|
||||||
}
|
}
|
||||||
@ -3789,7 +3876,8 @@ get_env_name(xp, idx)
|
|||||||
/* Borland C++ 5.2 has this in a header file. */
|
/* Borland C++ 5.2 has this in a header file. */
|
||||||
extern char **environ;
|
extern char **environ;
|
||||||
# endif
|
# endif
|
||||||
static char_u name[100];
|
# define ENVNAMELEN 100
|
||||||
|
static char_u name[ENVNAMELEN];
|
||||||
char_u *str;
|
char_u *str;
|
||||||
int n;
|
int n;
|
||||||
|
|
||||||
@ -3797,7 +3885,7 @@ get_env_name(xp, idx)
|
|||||||
if (str == NULL)
|
if (str == NULL)
|
||||||
return NULL;
|
return NULL;
|
||||||
|
|
||||||
for (n = 0; n < 99; ++n)
|
for (n = 0; n < ENVNAMELEN - 1; ++n)
|
||||||
{
|
{
|
||||||
if (str[n] == '=' || str[n] == NUL)
|
if (str[n] == '=' || str[n] == NUL)
|
||||||
break;
|
break;
|
||||||
@ -5064,7 +5152,10 @@ cin_is_cpp_baseclass(line, col)
|
|||||||
|
|
||||||
*col = 0;
|
*col = 0;
|
||||||
|
|
||||||
s = cin_skipcomment(line);
|
s = skipwhite(line);
|
||||||
|
if (*s == '#') /* skip #define FOO x ? (x) : x */
|
||||||
|
return FALSE;
|
||||||
|
s = cin_skipcomment(s);
|
||||||
if (*s == NUL)
|
if (*s == NUL)
|
||||||
return FALSE;
|
return FALSE;
|
||||||
|
|
||||||
@ -5737,7 +5828,8 @@ get_c_indent()
|
|||||||
if (start_off != 0)
|
if (start_off != 0)
|
||||||
amount += start_off;
|
amount += start_off;
|
||||||
else if (start_align == COM_RIGHT)
|
else if (start_align == COM_RIGHT)
|
||||||
amount += lead_start_len - lead_middle_len;
|
amount += vim_strsize(lead_start)
|
||||||
|
- vim_strsize(lead_middle);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -5751,7 +5843,8 @@ get_c_indent()
|
|||||||
if (off != 0)
|
if (off != 0)
|
||||||
amount += off;
|
amount += off;
|
||||||
else if (align == COM_RIGHT)
|
else if (align == COM_RIGHT)
|
||||||
amount += lead_start_len - lead_middle_len;
|
amount += vim_strsize(lead_start)
|
||||||
|
- vim_strsize(lead_middle);
|
||||||
done = TRUE;
|
done = TRUE;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
@ -2475,7 +2475,11 @@ static char *(p_debug_values[]) = {"msg", NULL};
|
|||||||
static char *(p_ead_values[]) = {"both", "ver", "hor", NULL};
|
static char *(p_ead_values[]) = {"both", "ver", "hor", NULL};
|
||||||
#endif
|
#endif
|
||||||
#if defined(FEAT_QUICKFIX)
|
#if defined(FEAT_QUICKFIX)
|
||||||
|
# ifdef FEAT_AUTOCMD
|
||||||
|
static char *(p_buftype_values[]) = {"nofile", "nowrite", "quickfix", "help", "acwrite", NULL};
|
||||||
|
# else
|
||||||
static char *(p_buftype_values[]) = {"nofile", "nowrite", "quickfix", "help", NULL};
|
static char *(p_buftype_values[]) = {"nofile", "nowrite", "quickfix", "help", NULL};
|
||||||
|
# endif
|
||||||
static char *(p_bufhidden_values[]) = {"hide", "unload", "delete", "wipe", NULL};
|
static char *(p_bufhidden_values[]) = {"hide", "unload", "delete", "wipe", NULL};
|
||||||
#endif
|
#endif
|
||||||
static char *(p_bs_values[]) = {"indent", "eol", "start", NULL};
|
static char *(p_bs_values[]) = {"indent", "eol", "start", NULL};
|
||||||
|
@ -1972,13 +1972,15 @@ bt_quickfix(buf)
|
|||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Return TRUE if "buf" is a "nofile" buffer.
|
* Return TRUE if "buf" is a "nofile" or "acwrite" buffer.
|
||||||
|
* This means the buffer name is not a file name.
|
||||||
*/
|
*/
|
||||||
int
|
int
|
||||||
bt_nofile(buf)
|
bt_nofile(buf)
|
||||||
buf_T *buf;
|
buf_T *buf;
|
||||||
{
|
{
|
||||||
return (buf->b_p_bt[0] == 'n' && buf->b_p_bt[2] == 'f');
|
return (buf->b_p_bt[0] == 'n' && buf->b_p_bt[2] == 'f')
|
||||||
|
|| buf->b_p_bt[0] == 'a';
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
Reference in New Issue
Block a user