Compare commits

..

6 Commits

Author SHA1 Message Date
Bram Moolenaar
f68f656213 updated for version 7.2.331
Problem:    Can't interrupt "echo list" for a very long list.
Solution:   Call line_breakcheck() in list_join().
2010-01-19 12:48:05 +01:00
Bram Moolenaar
c0880db674 Add a few missing runtime files. 2010-01-17 14:38:06 +01:00
Bram Moolenaar
9db9d9ce05 Updated runtime files. 2010-01-16 14:29:14 +01:00
Bram Moolenaar
555cdc2f8c Updated runtime files. 2010-01-12 21:31:21 +01:00
Bram Moolenaar
3e8cb58725 updated for version 7.2.330
Problem:    Tables for Unicode case operators are outdated.
Solution:   Add a Vim script for generating the tables.  Include tables for
            Unicode 5.2.
2010-01-12 19:52:03 +01:00
Bram Moolenaar
5890b2cf9e updated for version 7.2.329
Problem:    "g_" doesn't position cursor correctly when in Visual mode and
            'selection' is "exclusive". (Ben Fritz)
Solution:   Call adjust_for_sel().
2010-01-12 15:42:37 +01:00
20 changed files with 1722 additions and 310 deletions

View File

@@ -681,6 +681,11 @@ LANG_GEN = \
runtime/spell/README.txt \
runtime/spell/??/*.diff \
runtime/spell/??/main.aap \
runtime/spell/tet/*.diff \
runtime/spell/tet/main.aap \
runtime/spell/check/main.aap \
runtime/spell/check/*.aff \
runtime/spell/check/*.dic \
runtime/spell/yi/README.txt \
runtime/spell/main.aap \
runtime/spell/*.vim \

View File

@@ -1,4 +1,4 @@
*todo.txt* For Vim version 7.2. Last change: 2010 Jan 06
*todo.txt* For Vim version 7.2. Last change: 2010 Jan 14
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -30,10 +30,16 @@ be worked on, but only if you sponsor Vim development. See |sponsor|.
*known-bugs*
-------------------- Known bugs and current work -----------------------
Patch from Dominique Pelle to comment out unused functions. (2009 Dec 25)
Patch from Dominique Pelle, documentation fixes. (2010 Jan 9)
Another patch for README files.
Patch from Dominique Pelle for buffer reload when fixing spell mistake.
(2010 Jan 14)
Extention for MzScheme interface. (Sergey Khorev, 2009 Dec 21, update Dec 26)
patch from Sergey Khorev for "*" command escaping. (2010 Jan 5)
Patch: :compiler command doesn't function properly when invoked in a function
(Yukihiro Nakadaira)
@@ -48,6 +54,15 @@ don't change it.
Patch to make CTRL-] work on scheme keywords. (Sergey Khorev, 2010 Jan 5)
Gcc warning for condition that can never be true, fold.c line 3242. (James
Vega, 2010 Jan 13)
Omni menu position one column too far to the right, double-wide chars split to
next line. (Jiang Ma, 2010 Jan 10)
Explicit example from Dominique.
Need to check that the last character fits?
Patch from Dominique Pelle. (2010 Jan 12) One more (2010 Jan 12)
has("win64") returns zero. Patch from Sergey Khorev, 2009 Jan 5.
Or define WIN64 when _WIN64 is defined, change all _WIN64 to WIN64.
@@ -1134,7 +1149,7 @@ restored. (Luc St-Louis)
Vim 7.3:
- Use latest autoconf (3.64)
- Use latest autoconf (2.65)
- Use NSIS 2.45, it includes Windows 7 support.
- Include all files in distro, no "extra" and "lang" package.
- Create Mercurial repository.

View File

@@ -0,0 +1,50 @@
SET ISO8859-1
TRY esianrtolcdugmphbyfvkwjkqxz-ëéèêïîäàâöüû'ESIANRTOLCDUGMPHBYFVKWJKQXZ
FOL àáâãäåæçèéêëìíîïðñòóôõöøùúûüýþßÿ
LOW àáâãäåæçèéêëìíîïðñòóôõöøùúûüýþßÿ
UPP ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞßÿ
SOFOFROM abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZàáâãäåæçèéêëìíîïðñòóôõöøùúûüýþßÿÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞ¿
SOFOTO ebctefghejklnnepkrstevvkesebctefghejklnnepkrstevvkeseeeeeeeceeeeeeeedneeeeeeeeeeepseeeeeeeeceeeeeeeedneeeeeeeeeeep?
MIDWORD '-
PFXPOSTPONE
COMPOUNDFLAG x
COMPOUNDMIN 5
KEEPCASE =
RARE ?
BAD !
MAP 9
MAP aàáâãäå
MAP eèéêë
MAP iìíîï
MAP oòóôõö
MAP uùúûü
MAP nñ
MAP cç
MAP yÿý
MAP sß
PFX A Y 1
PFX A 0 aan .
PFX B N 1
PFX B 0 be .
PFX C Y 1
PFX C a in aa
SFX J N 1
SFX J 0 tje [aeiou][aeiou]
SFX Z N 1
SFX Z af ven aaf
REP 2
REP g ch
REP cht gd

View File

@@ -0,0 +1,12 @@
1234
#Some Comment that isn't supposed to matter
/Another Comment that isn't supposed to matter
's-Graveland
A4
AagJe
Aalburg/xZBCJZ
Aals'meer/x
Aal-ten/x
Aalburgers/x
Aalsmeer/x
Aalten/x

View File

@@ -0,0 +1,50 @@
SET ISO8859-1
TRY esianrtolcdugmphbyfvkwjkqxz-ëéèêïîäàâöüû'ESIANRTOLCDUGMPHBYFVKWJKQXZ
FOL àáâãäåæçèéêëìíîïðñòóôõöøùúûüýþßÿ
LOW àáâãäåæçèéêëìíîïðñòóôõöøùúûüýþßÿ
UPP ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞßÿ
SOFOFROM abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZàáâãäåæçèéêëìíîïðñòóôõöøùúûüýþßÿÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞ¿
SOFOTO ebctefghejklnnepkrstevvkesebctefghejklnnepkrstevvkeseeeeeeeceeeeeeeedneeeeeeeeeeepseeeeeeeeceeeeeeeedneeeeeeeeeeep?
MIDWORD '-
PFXPOSTPONE
COMPOUNDFLAG x
COMPOUNDMIN 5
KEEPCASE =
RARE ?
BAD !
MAP 9
MAP aàáâãäå
MAP eèéêë
MAP iìíîï
MAP oòóôõö
MAP uùúûü
MAP nñ
MAP cç
MAP yÿý
MAP sß
PFX A Y 1
PFX A 0 aan .
PFX B N 1
PFX B 0 be .
PFX C Y 1
PFX C a in aa
SFX J N 1
SFX J 0 tje [aeiou][aeiou]
SFX Z N 1
SFX Z af ven aaf
REP 2
REP g ch
REP cht gd

View File

@@ -0,0 +1,12 @@
1234
#Some Comment that isn't supposed to matter
/Another Comment that isn't supposed to matter
's-Graveland
A4
AagJe
Aalburg/xZBCJZ
Aals'meer/x
Aal-ten/x
foobar/=
rare/?
Emacs/!

View File

@@ -0,0 +1,15 @@
# Aap recipe for a dummy spell file.
# This is used to check if the .spl file format changes.
# Use a freshly compiled Vim if it exists.
@if os.path.exists('../../../src/vim'):
VIM = ../../../src/vim
@else:
:progsearch VIM vim
all: check.latin1.spl
check.latin1.spl : $VIM check_aa.aff check_aa.dic check_bb.aff check_bb.dic
:sys $VIM -u NONE -e -c "mkspell! check check_aa check_bb" -c q
# vim: set sts=4 sw=4 :

View File

@@ -0,0 +1,79 @@
# Aap recipe for Tetum Vim spell files.
# Use a freshly compiled Vim if it exists.
@if os.path.exists('../../../src/vim'):
VIM = ../../../src/vim
@else:
:progsearch VIM vim
SPELLDIR = ..
FILES = tet_ID.aff tet_ID.dic
# I don't hava a Tetum locale, use the Dutch one instead.
all: $SPELLDIR/tet.latin1.spl $SPELLDIR/tet.utf-8.spl ../README_tet.txt
$SPELLDIR/tet.latin1.spl : $FILES
:sys env LANG=nl_NL.ISO8859-1
$VIM -u NONE -e -c "mkspell! $SPELLDIR/tet tet_ID" -c q
$SPELLDIR/tet.utf-8.spl : $FILES
:sys env LANG=nl_NL.UTF-8
$VIM -u NONE -e -c "mkspell! $SPELLDIR/tet tet_ID" -c q
../README_tet.txt : README_tet_ID.txt
:copy $source $target
#
# Fetching the files from OpenOffice.org.
#
OODIR = http://ftp.services.openoffice.org/pub/OpenOffice.org/contrib/dictionaries
:attr {fetch = $OODIR/%file%} tet_ID.zip
# The files don't depend on the .zip file so that we can delete it.
# Only download the zip file if the targets don't exist.
tet_ID.aff tet_ID.dic: {buildcheck=}
:assertpkg unzip patch
:fetch tet_ID.zip
:sys $UNZIP tet_ID.zip
:delete tet_ID.zip
@if not os.path.exists('tet_ID.orig.aff'):
:copy tet_ID.aff tet_ID.orig.aff
@if not os.path.exists('tet_ID.orig.dic'):
:copy tet_ID.dic tet_ID.orig.dic
@if os.path.exists('tet_ID.diff'):
:sys patch <tet_ID.diff
# Generate diff files, so that others can get the OpenOffice files and apply
# the diffs to get the Vim versions.
diff:
:assertpkg diff
:sys {force} diff -a -C 1 tet_ID.orig.aff tet_ID.aff >tet_ID.diff
:sys {force} diff -a -C 1 tet_ID.orig.dic tet_ID.dic >>tet_ID.diff
# Check for updated OpenOffice spell files. When there are changes the
# ".new.aff" and ".new.dic" files are left behind for manual inspection.
check:
:assertpkg unzip diff
:fetch tet_ID.zip
:mkdir tmp
:cd tmp
@try:
@import stat
:sys $UNZIP ../tet_ID.zip
:sys {force} diff ../tet_ID.orig.aff tet_ID.aff >d
@if os.stat('d')[stat.ST_SIZE] > 0:
:copy tet_ID.aff ../tet_ID.new.aff
:sys {force} diff ../tet_ID.orig.dic tet_ID.dic >d
@if os.stat('d')[stat.ST_SIZE] > 0:
:copy tet_ID.dic ../tet_ID.new.dic
@finally:
:cd ..
:delete {r}{f}{q} tmp
:delete tet_ID.zip
# vim: set sts=4 sw=4 :

View File

@@ -0,0 +1,26 @@
*** tet_ID.orig.aff Wed Aug 31 21:14:37 2005
--- tet_ID.aff Wed Aug 31 21:15:15 2005
***************
*** 19 ****
--- 19,39 ----
TRY aineousrthlkmdbp'fTvgzLAINjSPEMéD-KHáóFRUBGJúOcíwxCWXVñãÁqêçZÓQyâÍ
+
+ FOL ßàáâãäåæçèéêëìíîïðñòóôõöøùúûüýþÿ
+ LOW ßàáâãäåæçèéêëìíîïðñòóôõöøùúûüýþÿ
+ UPP ßÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞÿ
+
+ SOFOFROM abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZàáâãäåæçèéêëìíîïðñòóôõöøùúûüýþßÿÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞ¿
+ SOFOTO ebctefghejklnnepkrstevvkesebctefghejklnnepkrstevvkeseeeeeeeceeeeeeeedneeeeeeeeeeepseeeeeeeeceeeeeeeedneeeeeeeeeeep?
+
+ MIDWORD '-
+
+ MAP 9
+ MAP aàáâãäå
+ MAP eèéêë
+ MAP iìíîï
+ MAP oòóôõö
+ MAP uùúûü
+ MAP nñ
+ MAP cç
+ MAP yÿý
+ MAP sß

View File

@@ -1,10 +1,12 @@
" Vim syntax file
" Language: GNU Assembler
" Maintainer: Kevin Dahlhausen <kdahlhaus@yahoo.com>
" Last Change: 2002 Sep 19
" Maintainer: Erik Wognsen <erik.wognsen@gmail.com>
" Previous maintainer:
" Kevin Dahlhausen <kdahlhaus@yahoo.com>
" Last Change: 2010 Jan 9
" For version 5.x: Clear all syntax items
" For version 6.x: Quit when a syntax file was already loaded
" For version 6.0 and later: Quit when a syntax file was already loaded
if version < 600
syntax clear
elseif exists("b:current_syntax")
@@ -13,7 +15,6 @@ endif
syn case ignore
" storage types
syn match asmType "\.long"
syn match asmType "\.ascii"
@@ -44,9 +45,8 @@ syn match octNumber "0[0-7][0-7]\+"
syn match hexNumber "0[xX][0-9a-fA-F]\+"
syn match binNumber "0[bB][0-1]*"
syn match asmSpecialComment ";\*\*\*.*"
syn match asmComment ";.*"hs=s+1
syn match asmComment "#.*"
syn region asmComment start="/\*" end="\*/"
syn match asmInclude "\.include"
syn match asmCond "\.if"
@@ -86,15 +86,9 @@ if version >= 508 || !exists("did_asm_syntax_inits")
HiLink octNumber Number
HiLink binNumber Number
HiLink asmSpecialComment Comment
HiLink asmIdentifier Identifier
HiLink asmType Type
" My default color overrides:
" hi asmSpecialComment ctermfg=red
" hi asmIdentifier ctermfg=lightcyan
" hi asmType ctermbg=black ctermfg=brown
delcommand HiLink
endif

View File

@@ -1,29 +1,44 @@
" Vim syntax file for the D programming language (version 0.149).
" Vim syntax file for the D programming language (version 1.053 and 2.039).
"
" Language: D
" Maintainer: Jason Mills<jmills@cs.mun.ca>
" When emailing me, please put the word vim somewhere in the subject
" to ensure the email does not get marked as spam.
" Last Change: 2006 Apr 30
" Version: 0.15
" Maintainer: Jason Mills<jasonmills@nf.sympatico.ca>
" Last Change: 2010 Jan 07
" Version: 0.18
"
" Contributors:
" - Kirk McDonald: version 0.17 updates, with minor modifications
" (http://paste.dprogramming.com/dplmb7qx?view=hidelines)
" - Jesse K. Phillips: patch for some keywords and attributes (annotations), with modifications
" - 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.
"
" Please email me with bugs, comments, and suggestions.
"
" Options:
" d_comment_strings - set to highlight strings and numbers in comments
" d_comment_strings - Set to highlight strings and numbers in comments.
"
" d_hl_operator_overload - set to highlight D's specially named functions
" that when overloaded implement unary and binary operators (e.g. cmp).
" d_hl_operator_overload - Set to highlight D's specially named functions
" that when overloaded implement unary and binary operators (e.g. opCmp).
"
" Todo:
" - Must determine a better method of sync'ing than simply setting minlines
" to a large number for /+ +/.
" - Determine a better method of sync'ing than simply setting minlines
" to a large number.
"
" - Several keywords (namely, in and out) are both storage class and
" statements, depending on their context. Must use some matching to figure
" out which and highlight appropriately. For now I have made such keywords
" statements.
" - 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.
"
" Quit when a syntax file was already loaded
if exists("b:current_syntax")
@@ -33,46 +48,59 @@ endif
" Keyword definitions
"
syn keyword dExternal import package module extern
syn keyword dConditional if else switch iftype
syn keyword dConditional if else switch
syn keyword dBranch goto break continue
syn keyword dRepeat while for do foreach
syn keyword dRepeat while for do foreach foreach_reverse
syn keyword dBoolean true false
syn keyword dConstant null
syn keyword dConstant __FILE__ __LINE__ __DATE__ __TIME__ __TIMESTAMP__
syn keyword dConstant __FILE__ __LINE__ __EOF__ __VERSION__
syn keyword dConstant __DATE__ __TIME__ __TIMESTAMP__ __VENDOR__
syn keyword dTypedef alias typedef
syn keyword dStructure template interface class enum struct union
syn keyword dStructure template interface class struct union
syn keyword dEnum enum
syn keyword dOperator new delete typeof typeid cast align is
syn keyword dOperator this super
if exists("d_hl_operator_overload")
syn keyword dOpOverload opNeg opCom opPostInc opPostDec opCast opAdd opSub opSub_r
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 opCat_r opEquals opEquals opCmp opCmp opCmp opCmp
syn keyword dOpOverload opAddAssign opSubAssign opMulAssign opDivAssign
syn keyword dOpOverload opCat_r opEquals opEquals opCmp
syn keyword dOpOverload opAssign opAddAssign opSubAssign opMulAssign opDivAssign
syn keyword dOpOverload opModAssign opAndAssign opOrAssign opXorAssign
syn keyword dOpOverload opShlAssign opShrAssign opUShrAssign opCatAssign
syn keyword dOpOverload opIndex opIndexAssign opCall opSlice opSliceAssign opPos
syn keyword dOpOverload opAdd_r opMul_r opAnd_r opOr_r opXor_r
syn keyword dOpOverload opAdd_r opMul_r opAnd_r opOr_r opXor_r opIn opIn_r
syn keyword dOpOverload opPow opDispatch opStar opDot opApply opApplyReverse
endif
syn keyword dType ushort int uint long ulong float
syn keyword dType void byte ubyte double bit char wchar ucent cent
syn keyword dType short bool dchar
syn keyword dType short bool dchar string wstring dstring
syn keyword dType real ireal ifloat idouble creal cfloat cdouble
syn keyword dDebug deprecated unittest
syn keyword dExceptions throw try catch finally
syn keyword dScopeDecl public protected private export
syn keyword dStatement version debug return with invariant body scope
syn keyword dStatement in out inout asm mixin
syn keyword dStatement function delegate
syn keyword dStorageClass auto static override final const abstract volatile
syn keyword dStorageClass synchronized
syn keyword dStatement version debug return with
syn keyword dStatement function delegate __traits asm mixin macro
syn keyword dStorageClass in out inout ref lazy scope body
syn keyword dStorageClass pure nothrow
syn keyword dStorageClass auto static override final abstract volatile __gshared __thread
syn keyword dStorageClass synchronized immutable shared const invariant lazy
syn keyword dPragma pragma
" Attributes/annotations
syn match dAnnotation "@[_$a-zA-Z][_$a-zA-Z0-9_]*\>"
" Assert is a statement and a module name.
syn match dAssert "^assert\>"
syn match dAssert "[^.]\s*\<assert\>"ms=s+1
" dTokens is used by the token string highlighting
syn cluster dTokens contains=dExternal,dConditional,dBranch,dRepeat,dBoolean
syn cluster dTokens add=dConstant,dTypedef,dStructure,dOperator,dOpOverload
syn cluster dTokens add=dType,dDebug,dExceptions,dScopeDecl,dStatement
syn cluster dTokens add=dStorageClass,dPragma,dAssert,dAnnotation
" Marks contents of the asm statment body as special
"
" TODO
@@ -85,12 +113,14 @@ syn match dAssert "[^.]\s*\<assert\>"ms=s+1
" 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,dEnum
syn keyword dLabel case default
syn cluster dTokens add=dUserLabel,dLabel
" Comments
"
syn keyword dTodo contained TODO FIXME TEMP XXX
syn keyword dTodo contained TODO FIXME TEMP REFACTOR REVIEW HACK BUG XXX
syn match dCommentStar contained "^\s*\*[^/]"me=e-1
syn match dCommentStar contained "^\s*\*$"
syn match dCommentPlus contained "^\s*+[^/]"me=e-1
@@ -114,6 +144,8 @@ hi link dNestedCommentString dString
hi link dCommentStar dBlockComment
hi link dCommentPlus dNestedComment
syn cluster dTokens add=dBlockComment,dNestedComment,dLineComment
" /+ +/ style comments and strings that span multiple lines can cause
" problems. To play it safe, set minlines to a large number.
syn sync minlines=200
@@ -125,24 +157,55 @@ syn sync ccomment dBlockComment
syn match dSpecialCharError contained "[^']"
" Escape sequences (oct,specal char,hex,wchar, character entities \&xxx;)
" These are not contained because they are considered string litterals
" These are not contained because they are considered string literals.
syn match dEscSequence "\\\(\o\{1,3}\|[\"\\'\\?ntbrfva]\|u\x\{4}\|U\x\{8}\|x\x\x\)"
syn match dEscSequence "\\&[^;& \t]\+;"
syn match dEscSequence "\\&[^;& \t]\+;"
syn match dCharacter "'[^']*'" contains=dEscSequence,dSpecialCharError
syn match dCharacter "'\\''" contains=dEscSequence
syn match dCharacter "'[^\\]'"
syn cluster dTokens add=dEscSequence,dCharacter
" Unicode characters
"
syn match dUnicode "\\u\d\{4\}"
" String.
"
syn region dString start=+"+ end=+"[cwd]\=+ contains=dEscSequence,@Spell
syn region dRawString start=+`+ skip=+\\`+ end=+`[cwd]\=+ contains=@Spell
syn region dRawString start=+r"+ skip=+\\"+ end=+"[cwd]\=+ contains=@Spell
syn region dHexString start=+x"+ skip=+\\"+ end=+"[cwd]\=+ contains=@Spell
syn region dString start=+"+ end=+"[cwd]\=+ skip=+\\\\\|\\"+ contains=dEscSequence,@Spell
syn region dRawString start=+`+ end=+`[cwd]\=+ contains=@Spell
syn region dRawString start=+r"+ end=+"[cwd]\=+ contains=@Spell
syn region dHexString start=+x"+ end=+"[cwd]\=+ contains=@Spell
syn region dDelimString start=+q"\z(.\)+ end=+\z1"+ contains=@Spell
syn region dHereString start=+q"\z(\I\i*\)\n+ end=+\n\z1"+ contains=@Spell
" Nesting delimited string contents
"
syn region dNestParenString start=+(+ end=+)+ contained transparent contains=dNestParenString,@Spell
syn region dNestBrackString start=+\[+ end=+\]+ contained transparent contains=dNestBrackString,@Spell
syn region dNestAngleString start=+<+ end=+>+ contained transparent contains=dNestAngleString,@Spell
syn region dNestCurlyString start=+{+ end=+}+ contained transparent contains=dNestCurlyString,@Spell
" Nesting delimited strings
"
syn region dParenString matchgroup=dParenString start=+q"(+ end=+)"+ contains=dNestParenString,@Spell
syn region dBrackString matchgroup=dBrackString start=+q"\[+ end=+\]"+ contains=dNestBrackString,@Spell
syn region dAngleString matchgroup=dAngleString start=+q"<+ end=+>"+ contains=dNestAngleString,@Spell
syn region dCurlyString matchgroup=dCurlyString start=+q"{+ end=+}"+ contains=dNestCurlyString,@Spell
hi link dParenString dNestString
hi link dBrackString dNestString
hi link dAngleString dNestString
hi link dCurlyString dNestString
syn cluster dTokens add=dString,dRawString,dHexString,dDelimString,dNestString
" Token strings
"
syn region dNestTokenString start=+{+ end=+}+ contained contains=dNestTokenString,@dTokens
syn region dTokenString matchgroup=dTokenStringBrack transparent start=+q{+ end=+}+ contains=dNestTokenString,@dTokens
syn cluster dTokens add=dTokenString
" Numbers
"
@@ -177,6 +240,8 @@ syn match dHexFloat display "\<0x[0-9a-f_]\+\.[0-9a-f_]*\(p[-+]\=[0-9_]\+\)\=[fl
"floating point number, without dot, with exponent
syn match dHexFloat display "\<0x[0-9a-f_]\+p[-+]\=[0-9_]\+[fl]\=i\=\>"
syn cluster dTokens add=dDec,dHex,dOctal,dOctalError,dBinary,dFloat,dHexFloat
syn case match
" Pragma (preprocessor) support
@@ -205,6 +270,10 @@ hi def link dScopeDecl dStorageClass
hi def link dStorageClass StorageClass
hi def link dBoolean Boolean
hi def link dUnicode Special
hi def link dTokenStringBrack String
hi def link dHereString String
hi def link dNestString String
hi def link dDelimString String
hi def link dRawString String
hi def link dString String
hi def link dHexString String
@@ -213,9 +282,10 @@ hi def link dEscSequence SpecialChar
hi def link dSpecialCharError Error
hi def link dOctalError Error
hi def link dOperator Operator
hi def link dOpOverload Operator
hi def link dOpOverload Identifier
hi def link dConstant Constant
hi def link dTypedef Typedef
hi def link dEnum Structure
hi def link dStructure Structure
hi def link dTodo Todo
hi def link dType Type
@@ -224,7 +294,8 @@ hi def link dBlockComment Comment
hi def link dNestedComment Comment
hi def link dExternal Include
hi def link dPragma PreProc
hi def link dAnnotation PreProc
let b:current_syntax = "d"
" vim: ts=8 noet

View File

@@ -1,15 +1,10 @@
" Vim syntax file
" Language: Matlab
" Maintainer: Maurizio Tranchero - maurizio.tranchero@gmail.com
" Maintainer: Maurizio Tranchero - maurizio(.)tranchero(@)gmail(.)com
" Credits: Preben 'Peppe' Guldberg <peppe-vim@wielders.org>
" Original author: Mario Eusebio
" Change History:
" Sat Jul 25 16:14:55 CEST 2009
" - spell check enabled only for comments (thanks to James Vega)
"
" Tue Apr 21 10:03:31 CEST 2009
" - added object oriented support
" - added multi-line comments %{ ...\n... %}
" Last Change: Wed Jan 13 11:12:34 CET 2010
" - 'global' and 'persistent' keyword are now recognized
" For version 5.x: Clear all syntax items
" For version 6.x: Quit when a syntax file was already loaded
@@ -28,6 +23,7 @@ syn keyword matlabExceptions try catch
syn keyword matlabOO classdef properties events methods
syn keyword matlabTodo contained TODO
syn keyword matlabScope global persistent
" If you do not want these operators lit, uncommment them and the "hi link" below
syn match matlabArithmeticOperator "[-+]"
@@ -42,7 +38,7 @@ syn match matlabLineContinuation "\.\{3}"
" String
" MT_ADDON - added 'skip' in order to deal with 'tic' escaping sequence
syn region matlabString start=+'+ end=+'+ oneline skip=+''+ contains=@Spell
syn region matlabString start=+'+ end=+'+ oneline skip=+''+
" If you don't like tabs
syn match matlabTab "\t"
@@ -61,10 +57,10 @@ syn match matlabTransposeOperator "[])a-zA-Z0-9.]'"lc=1
syn match matlabSemicolon ";"
syn match matlabComment "%.*$" contains=matlabTodo,matlabTab,@Spell
syn match matlabComment "%.*$" contains=matlabTodo,matlabTab
" MT_ADDON - correctly highlights words after '...' as comments
syn match matlabComment "\.\.\..*$" contains=matlabTodo,matlabTab,@Spell
syn region matlabMultilineComment start=+%{+ end=+%}+ contains=matlabTodo,matlabTab,@Spell
syn match matlabComment "\.\.\..*$" contains=matlabTodo,matlabTab
syn region matlabMultilineComment start=+%{+ end=+%}+ contains=matlabTodo,matlabTab
syn keyword matlabOperator break zeros default margin round ones rand
syn keyword matlabOperator ceil floor size clear zeros eye mean std cov
@@ -109,6 +105,7 @@ if version >= 508 || !exists("did_matlab_syntax_inits")
HiLink matlabSemicolon SpecialChar
HiLink matlabComment Comment
HiLink matlabMultilineComment Comment
HiLink matlabScope Type
HiLink matlabArithmeticOperator matlabOperator
HiLink matlabRelationalOperator matlabOperator

View File

@@ -1,7 +1,7 @@
" Vim syntax file
" Language: screen(1) configuration file
" Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2006-04-19
" Latest Revision: 2010-01-03
if exists("b:current_syntax")
finish
@@ -15,54 +15,219 @@ syn match screenEscape '\\.'
syn keyword screenTodo contained TODO FIXME XXX NOTE
syn region screenComment display oneline start='#' end='$'
\ contains=screenTodo,@Spell
\ contains=screenTodo,@Spell
syn region screenString display oneline start=+"+ skip=+\\"+ end=+"+
\ contains=screenVariable,screenSpecial
\ contains=screenVariable,screenSpecial
syn region screenLiteral display oneline start=+'+ skip=+\\'+ end=+'+
syn match screenVariable contained display '$\(\h\w*\|{\h\w*}\)'
syn match screenVariable contained display '$\%(\h\w*\|{\h\w*}\)'
syn keyword screenBoolean on off
syn match screenNumbers display '\<\d\+\>'
syn match screenSpecials contained
\ '%\([%aAdDhlmMstuwWyY?:{]\|[0-9]*n\|0?cC\)'
\ '%\%([%aAdDhlmMstuwWyY?:{]\|[0-9]*n\|0?cC\)'
syn keyword screenCommands acladd aclchg acldel aclgrp aclumask activity
\ addacl allpartial at attrcolor autodetach
\ bell_msg bind bindkey bufferfile caption chacl
\ chdir clear colon command compacthist console
\ copy copy_regcrlf debug detach digraph dinfo
\ crlf displays dumptermcap echo exec fit focus
\ height help history info kill lastmsg license
\ lockscreen markkeys meta msgminwait msgwait
\ multiuser nethack next nonblock number only
\ other partial_state password paste pastefont
\ pow_break pow_detach_msg prev printcmd process
\ quit readbuf readreg redisplay register
\ remove removebuf reset resize screen select
\ sessionname setenv shelltitle silencewait
\ verbose sleep sorendition split startup_message
\ stuff su suspend time title umask version wall
\ width writebuf xoff xon defmode hardstatus
\ altscreen break breaktype copy_reg defbreaktype
\ defencoding deflog encoding eval ignorecase
\ ins_reg maxwin partial pow_detach setsid source
\ unsetenv windowlist windows defautonuke autonuke
\ defbce bce defc1 c1 defcharset charset defescape
\ escape defflow flow defkanji kanji deflogin
\ login defmonitor monitor defhstatus hstatus
\ defobuflimit obuflimit defscrollback scrollback
\ defshell shell defsilence silence defslowpaste
\ slowpaste defutf8 utf8 defwrap wrap defwritelock
\ writelock defzombie zombie defgr gr hardcopy
\ hardcopy_append hardcopydir hardstatus log
\ logfile login logtstamp mapdefault mapnotnext
\ maptimeout term termcap terminfo termcapinfo
\ vbell vbell_msg vbellwait
syn keyword screenCommands
\ acladd
\ aclchg
\ acldel
\ aclgrp
\ aclumask
\ activity
\ addacl
\ allpartial
\ altscreen
\ at
\ attrcolor
\ autodetach
\ autonuke
\ backtick
\ bce
\ bd_bc_down
\ bd_bc_left
\ bd_bc_right
\ bd_bc_up
\ bd_bell
\ bd_braille_table
\ bd_eightdot
\ bd_info
\ bd_link
\ bd_lower_left
\ bd_lower_right
\ bd_ncrc
\ bd_port
\ bd_scroll
\ bd_skip
\ bd_start_braille
\ bd_type
\ bd_upper_left
\ bd_upper_right
\ bd_width
\ bell
\ bell_msg
\ bind
\ bindkey
\ blanker
\ blankerprg
\ break
\ breaktype
\ bufferfile
\ c1
\ caption
\ chacl
\ charset
\ chdir
\ clear
\ colon
\ command
\ compacthist
\ console
\ copy
\ crlf
\ debug
\ defautonuke
\ defbce
\ defbreaktype
\ defc1
\ defcharset
\ defencoding
\ defescape
\ defflow
\ defgr
\ defhstatus
\ defkanji
\ deflog
\ deflogin
\ defmode
\ defmonitor
\ defnonblock
\ defobuflimit
\ defscrollback
\ defshell
\ defsilence
\ defslowpaste
\ defutf8
\ defwrap
\ defwritelock
\ detach
\ digraph
\ dinfo
\ displays
\ dumptermcap
\ echo
\ encoding
\ escape
\ eval
\ exec
\ fit
\ flow
\ focus
\ gr
\ hardcopy
\ hardcopy_append
\ hardcopydir
\ hardstatus
\ height
\ help
\ history
\ hstatus
\ idle
\ ignorecase
\ info
\ kanji
\ kill
\ lastmsg
\ layout
\ license
\ lockscreen
\ log
\ logfile
\ login
\ logtstamp
\ mapdefault
\ mapnotnext
\ maptimeout
\ markkeys
\ maxwin
\ meta
\ monitor
\ msgminwait
\ msgwait
\ multiuser
\ nethack
\ next
\ nonblock
\ number
\ obuflimit
\ only
\ other
\ partial
\ password
\ paste
\ pastefont
\ pow_break
\ pow_detach
\ pow_detach_msg
\ prev
\ printcmd
\ process
\ quit
\ readbuf
\ readreg
\ redisplay
\ register
\ remove
\ removebuf
\ reset
\ resize
\ screen
\ scrollback
\ select
\ sessionname
\ setenv
\ setsid
\ shell
\ shelltitle
\ silence
\ silencewait
\ sleep
\ slowpaste
\ sorendition
\ source
\ split
\ startup_message
\ stuff
\ su
\ suspend
\ term
\ termcap
\ termcapinfo
\ terminfo
\ time
\ title
\ umask
\ unsetenv
\ utf8
\ vbell
\ vbell_msg
\ vbellwait
\ verbose
\ version
\ wall
\ width
\ windowlist
\ windows
\ wrap
\ writebuf
\ writelock
\ xoff
\ xon
\ zmodem
\ zombie
hi def link screenEscape Special
hi def link screenComment Comment

View File

@@ -32,4 +32,6 @@ vim_vs_net.cmd: MS-Windows command file to use Vim with MS Visual Studio 7 and
xcmdsrv_client.c: Example for a client program that communicates with a Vim
server through the X-Windows interface.
unicode.vim Vim script to generate tables for src/mbyte.c.
[xxd (and tee for OS/2) can be found in the src directory]

280
runtime/tools/unicode.vim Normal file
View File

@@ -0,0 +1,280 @@
" Script to extract tables from Unicode .txt files, to be used in src/mbyte.c.
" The format of the UnicodeData.txt file is explained here:
" http://www.unicode.org/Public/5.1.0/ucd/UCD.html
" For the other files see the header.
"
" Usage: Vim -S <this-file>
"
" Author: Bram Moolenaar
" Last Update: 2010 Jan 12
" Parse lines of UnicodeData.txt. Creates a list of lists in s:dataprops.
func! ParseDataToProps()
let s:dataprops = []
let lnum = 1
while lnum <= line('$')
let l = split(getline(lnum), '\s*;\s*', 1)
if len(l) != 15
echoerr 'Found ' . len(l) . ' items in line ' . lnum . ', expected 15'
return
endif
call add(s:dataprops, l)
let lnum += 1
endwhile
endfunc
" Parse lines of CaseFolding.txt. Creates a list of lists in s:foldprops.
func! ParseFoldProps()
let s:foldprops = []
let lnum = 1
while lnum <= line('$')
let line = getline(lnum)
if line !~ '^#' && line !~ '^\s*$'
let l = split(line, '\s*;\s*', 1)
if len(l) != 4
echoerr 'Found ' . len(l) . ' items in line ' . lnum . ', expected 4'
return
endif
call add(s:foldprops, l)
endif
let lnum += 1
endwhile
endfunc
" Parse lines of EastAsianWidth.txt. Creates a list of lists in s:widthprops.
func! ParseWidthProps()
let s:widthprops = []
let lnum = 1
while lnum <= line('$')
let line = getline(lnum)
if line !~ '^#' && line !~ '^\s*$'
let l = split(line, '\s*;\s*', 1)
if len(l) != 2
echoerr 'Found ' . len(l) . ' items in line ' . lnum . ', expected 2'
return
endif
call add(s:widthprops, l)
endif
let lnum += 1
endwhile
endfunc
" Build the toLower or toUpper table in a new buffer.
" Uses s:dataprops.
func! BuildCaseTable(name, index)
let start = -1
let end = -1
let step = 0
let add = -1
let ranges = []
for p in s:dataprops
if p[a:index] != ''
let n = ('0x' . p[0]) + 0
let nl = ('0x' . p[a:index]) + 0
if start >= 0 && add == nl - n && (step == 0 || n - end == step)
" continue with same range.
let step = n - end
let end = n
else
if start >= 0
" produce previous range
call Range(ranges, start, end, step, add)
endif
let start = n
let end = n
let step = 0
let add = nl - n
endif
endif
endfor
if start >= 0
call Range(ranges, start, end, step, add)
endif
" New buffer to put the result in.
new
exe "file to" . a:name
call setline(1, "static convertStruct to" . a:name . "[] =")
call setline(2, "{")
call append('$', ranges)
call setline('$', getline('$')[:-2]) " remove last comma
call setline(line('$') + 1, "};")
wincmd p
endfunc
" Build the foldCase table in a new buffer.
" Uses s:foldprops.
func! BuildFoldTable()
let start = -1
let end = -1
let step = 0
let add = -1
let ranges = []
for p in s:foldprops
if p[1] == 'C' || p[1] == 'S'
let n = ('0x' . p[0]) + 0
let nl = ('0x' . p[2]) + 0
if start >= 0 && add == nl - n && (step == 0 || n - end == step)
" continue with same range.
let step = n - end
let end = n
else
if start >= 0
" produce previous range
call Range(ranges, start, end, step, add)
endif
let start = n
let end = n
let step = 0
let add = nl - n
endif
endif
endfor
if start >= 0
call Range(ranges, start, end, step, add)
endif
" New buffer to put the result in.
new
file foldCase
call setline(1, "static convertStruct foldCase[] =")
call setline(2, "{")
call append('$', ranges)
call setline('$', getline('$')[:-2]) " remove last comma
call setline(line('$') + 1, "};")
wincmd p
endfunc
func! Range(ranges, start, end, step, add)
let s = printf("\t{0x%x,0x%x,%d,%d},", a:start, a:end, a:step == 0 ? -1 : a:step, a:add)
call add(a:ranges, s)
endfunc
" Build the combining table.
" Uses s:dataprops.
func! BuildCombiningTable()
let start = -1
let end = -1
let ranges = []
for p in s:dataprops
if p[2] == 'Mn' || p[2] == 'Mc' || p[2] == 'Me'
let n = ('0x' . p[0]) + 0
if start >= 0 && end + 1 == n
" continue with same range.
let end = n
else
if start >= 0
" produce previous range
call add(ranges, printf("\t{0x%04x, 0x%04x},", start, end))
endif
let start = n
let end = n
endif
endif
endfor
if start >= 0
call add(ranges, printf("\t{0x%04x, 0x%04x},", start, end))
endif
" New buffer to put the result in.
new
file combining
call setline(1, " static struct interval combining[] =")
call setline(2, " {")
call append('$', ranges)
call setline('$', getline('$')[:-2]) " remove last comma
call setline(line('$') + 1, " };")
wincmd p
endfunc
" Build the ambiguous table in a new buffer.
" Uses s:widthprops and s:dataprops.
func! BuildAmbiguousTable()
let start = -1
let end = -1
let ranges = []
let dataidx = 0
for p in s:widthprops
if p[1][0] == 'A'
let n = ('0x' . p[0]) + 0
" Find this char in the data table.
while 1
let dn = ('0x' . s:dataprops[dataidx][0]) + 0
if dn >= n
break
endif
let dataidx += 1
endwhile
if dn != n
echoerr "Cannot find character " . n . " in data table"
endif
" Only use the char when it's not a composing char.
let dp = s:dataprops[dataidx]
if dp[2] != 'Mn' && dp[2] != 'Mc' && dp[2] != 'Me'
if start >= 0 && end + 1 == n
" continue with same range.
let end = n
else
if start >= 0
" produce previous range
call add(ranges, printf("\t{0x%04x, 0x%04x},", start, end))
endif
let start = n
if p[0] =~ '\.\.'
let end = ('0x' . substitute(p[0], '.*\.\.', '', '')) + 0
else
let end = n
endif
endif
endif
endif
endfor
if start >= 0
call add(ranges, printf("\t{0x%04x, 0x%04x},", start, end))
endif
" New buffer to put the result in.
new
file ambiguous
call setline(1, " static struct interval ambiguous[] =")
call setline(2, " {")
call append('$', ranges)
call setline('$', getline('$')[:-2]) " remove last comma
call setline(line('$') + 1, " };")
wincmd p
endfunc
" Edit the Unicode text file. Requires the netrw plugin.
edit http://unicode.org/Public/UNIDATA/UnicodeData.txt
" Parse each line, create a list of lists.
call ParseDataToProps()
" Build the toLower table.
call BuildCaseTable("Lower", 13)
" Build the toUpper table.
call BuildCaseTable("Upper", 12)
" Build the ranges of composing chars.
call BuildCombiningTable()
" Edit the case folding text file. Requires the netrw plugin.
edit http://www.unicode.org/Public/UNIDATA/CaseFolding.txt
" Parse each line, create a list of lists.
call ParseFoldProps()
" Build the foldCase table.
call BuildFoldTable()
" Edit the width text file. Requires the netrw plugin.
edit http://www.unicode.org/Public/UNIDATA/EastAsianWidth.txt
" Parse each line, create a list of lists.
call ParseWidthProps()
" Build the ambiguous table.
call BuildAmbiguousTable()

View File

@@ -6475,6 +6475,7 @@ list_join(gap, l, sep, echo, copyID)
vim_free(tofree);
if (s == NULL)
return FAIL;
line_breakcheck();
}
return OK;
}

File diff suppressed because it is too large Load Diff

View File

@@ -4,8 +4,6 @@
# Created: 1993-05-16
# Public domain
# $Id$
errstatus=0
for file

View File

@@ -7873,6 +7873,9 @@ nv_g_cmd(cap)
&& vim_iswhite(ptr[curwin->w_cursor.col]))
--curwin->w_cursor.col;
curwin->w_set_curswant = TRUE;
#ifdef FEAT_VISUAL
adjust_for_sel(cap);
#endif
}
break;

View File

@@ -681,6 +681,12 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
331,
/**/
330,
/**/
329,
/**/
328,
/**/