summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2005-09-05 22:11:52 +0000
committerBram Moolenaar <Bram@vim.org>2005-09-05 22:11:52 +0000
commit92d640fad1808085ca609aecac8b854a6945d7a6 (patch)
tree4f330884549e69d5cc948ad2d3198f7ce5d7cf2e
parent8b96d64cb57e63f92c335d217d685095ab7c59a7 (diff)
downloadvim-git-92d640fad1808085ca609aecac8b854a6945d7a6.tar.gz
updated for version 7.0141
-rw-r--r--runtime/doc/eval.txt24
-rw-r--r--runtime/doc/spell.txt6
-rw-r--r--runtime/doc/tags2
-rw-r--r--runtime/ftplugin/verilog.vim10
-rw-r--r--runtime/spell/ru/main.aap30
-rw-r--r--runtime/spell/ru/ru_RU.diff32
-rw-r--r--runtime/spell/ru/ru_YO.diff32
-rw-r--r--src/globals.h217
-rw-r--r--src/proto/normal.pro1
-rw-r--r--src/screen.c9
-rw-r--r--src/search.c28
-rw-r--r--src/version.h4
12 files changed, 222 insertions, 173 deletions
diff --git a/runtime/doc/eval.txt b/runtime/doc/eval.txt
index bc03f03aa..f55083c93 100644
--- a/runtime/doc/eval.txt
+++ b/runtime/doc/eval.txt
@@ -1,4 +1,4 @@
-*eval.txt* For Vim version 7.0aa. Last change: 2005 Aug 31
+*eval.txt* For Vim version 7.0aa. Last change: 2005 Sep 05
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -1607,6 +1607,7 @@ repeat( {expr}, {count}) String repeat {expr} {count} times
resolve( {filename}) String get filename a shortcut points to
reverse( {list}) List reverse {list} in-place
search( {pattern} [, {flags}]) Number search for {pattern}
+searchdecl({name} [, {global}]) Number search for variable declaration
searchpair( {start}, {middle}, {end} [, {flags} [, {skip}]])
Number search for other end of start/end pair
server2client( {clientid}, {string})
@@ -1622,7 +1623,7 @@ simplify( {filename}) String simplify filename as much as possible
sort( {list} [, {func}]) List sort {list}, using {func} to compare
soundfold( {word}) String sound-fold {word}
spellbadword() String badly spelled word at cursor
-spellsuggest({word} [, {max}]) List spelling suggestions
+spellsuggest( {word} [, {max}]) List spelling suggestions
split( {expr} [, {pat} [, {keepempty}]])
List make List from {pat} separated {expr}
strftime( {format}[, {time}]) String time in specified format
@@ -3709,6 +3710,18 @@ search({pattern} [, {flags}]) *search()*
: let n = n + 1
:endwhile
<
+
+searchdecl({name} [, {global}]) *searchdecl()*
+ Search for the declaration of {name}. Without {global} or
+ with a zero {global} argument this works like |gd|. With a
+ non-zero {global} argument it works like |gD|.
+ Moves the cursor to the found match.
+ Returns zero for success, non-zero for failure.
+ Example: >
+ if searchdecl('myvar') == 0
+ echo getline('.')
+ endif
+<
*searchpair()*
searchpair({start}, {middle}, {end} [, {flags} [, {skip}]])
Search for the match of a nested start-end pair. This can be
@@ -4668,7 +4681,8 @@ builtin functions. To prevent from using the same name in different scripts
avoid obvious, short names. A good habit is to start the function name with
the name of the script, e.g., "HTMLcolor()".
-It's also possible to use curly braces, see |curly-braces-names|.
+It's also possible to use curly braces, see |curly-braces-names|. And the
+|autoload| facility is useful to define a function only when it's called.
*local-function*
A function local to a script must start with "s:". A local script function
@@ -4684,6 +4698,10 @@ instead of "s:" when the mapping is expanded outside of the script.
{name} can also be a Dictionary entry that is a
Funcref: >
:function dict.init
+
+:fu[nction] /{pattern} List functions with a name matching {pattern}.
+ Example that lists all functions ending with "File": >
+ :function /File$
<
*:function-verbose*
When 'verbose' is non-zero, listing a function will also display where it was
diff --git a/runtime/doc/spell.txt b/runtime/doc/spell.txt
index a2d513502..49f727dfd 100644
--- a/runtime/doc/spell.txt
+++ b/runtime/doc/spell.txt
@@ -218,6 +218,12 @@ Specific exception: For German these special regions are used:
de_at Austria
de_ch Switzerland
+ *spell-russian*
+Specific exception: For Russian these special regions are used:
+ ru all Russian words accepted
+ ru_ru "IE" letter spelling
+ ru_yo "YO" letter spelling
+
*spell-yiddish*
Yiddish requires using "utf-8" encoding, because of the special characters
used. If you are using latin1 Vim will use transliterated (romanized) Yiddish
diff --git a/runtime/doc/tags b/runtime/doc/tags
index 870b7bb4e..930f7b5d8 100644
--- a/runtime/doc/tags
+++ b/runtime/doc/tags
@@ -5291,7 +5291,6 @@ hebrew hebrew.txt /*hebrew*
hebrew.txt hebrew.txt /*hebrew.txt*
help various.txt /*help*
help-context help.txt /*help-context*
-help-tags tags 1
help-translated various.txt /*help-translated*
help-xterm-window various.txt /*help-xterm-window*
help.txt help.txt /*help.txt*
@@ -6457,6 +6456,7 @@ spell-midword spell.txt /*spell-midword*
spell-mkspell spell.txt /*spell-mkspell*
spell-quickstart spell.txt /*spell-quickstart*
spell-remarks spell.txt /*spell-remarks*
+spell-russian spell.txt /*spell-russian*
spell-syntax spell.txt /*spell-syntax*
spell-wordlist-format spell.txt /*spell-wordlist-format*
spell-yiddish spell.txt /*spell-yiddish*
diff --git a/runtime/ftplugin/verilog.vim b/runtime/ftplugin/verilog.vim
index 8a8cfbe6b..2f426acde 100644
--- a/runtime/ftplugin/verilog.vim
+++ b/runtime/ftplugin/verilog.vim
@@ -1,7 +1,7 @@
" Vim filetype plugin file
" Language: Verilog HDL
" Maintainer: Chih-Tsun Huang <cthuang@larc.ee.nthu.edu.tw>
-" Last Change: Wed Oct 31 16:16:19 CST 2001
+" Last Change: Mon Sep 5 11:05:54 CST 2005
" URL: http://larc.ee.nthu.edu.tw/~cthuang/vim/ftplugin/verilog.vim
" Only do this when not done yet for this buffer
@@ -12,6 +12,10 @@ endif
" Don't load another plugin for this buffer
let b:did_ftplugin = 1
+" Undo the plugin effect
+let b:undo_ftplugin = "setlocal fo< com< tw<"
+ \ . "| unlet b:browsefilter b:match_ignorecase b:match_words"
+
" Set 'formatoptions' to break comment lines but not other lines,
" and insert the comment leader when hitting <CR> or using "o".
setlocal fo-=t fo+=croqlm1
@@ -20,7 +24,9 @@ setlocal fo-=t fo+=croqlm1
setlocal comments=sO:*\ -,mO:*\ \ ,exO:*/,s1:/*,mb:*,ex:*/,://
" Format comments to be up to 78 characters long
-setlocal tw=75
+if &textwidth == 0
+ setlocal tw=78
+endif
set cpo-=C
diff --git a/runtime/spell/ru/main.aap b/runtime/spell/ru/main.aap
index 85aeca9aa..e3d37a1b8 100644
--- a/runtime/spell/ru/main.aap
+++ b/runtime/spell/ru/main.aap
@@ -6,7 +6,7 @@
@else:
:progsearch VIM vim
-REGIONS = RU IE YO
+REGIONS = RU YO
SPELLDIR = ..
FILES = ru_$*(REGIONS).aff ru_$*(REGIONS).dic
@@ -14,21 +14,18 @@ all: $SPELLDIR/ru.koi8-r.spl $SPELLDIR/ru.utf-8.spl \
$SPELLDIR/ru.cp1251.spl ../README_ru.txt
$SPELLDIR/ru.koi8-r.spl : $FILES
- :sys env LANG=ru_RU.KOI8-R $VIM -u NONE -e -c "mkspell! $SPELLDIR/ru ru_RU ru_IE ru_YO" -c q
+ :sys env LANG=ru_RU.KOI8-R $VIM -u NONE -e -c "mkspell! $SPELLDIR/ru ru_RU ru_YO" -c q
$SPELLDIR/ru.utf-8.spl : $FILES
- :sys env LANG=ru_RU.UTF-8 $VIM -u NONE -e -c "mkspell! $SPELLDIR/ru ru_RU ru_IE ru_YO" -c q
+ :sys env LANG=ru_RU.UTF-8 $VIM -u NONE -e -c "mkspell! $SPELLDIR/ru ru_RU ru_YO" -c q
$SPELLDIR/ru.cp1251.spl : $FILES
- :sys env LANG=ru_RU.CP1251 $VIM -u NONE -e -c "mkspell! $SPELLDIR/ru ru_RU ru_IE ru_YO" -c q
+ :sys env LANG=ru_RU.CP1251 $VIM -u NONE -e -c "mkspell! $SPELLDIR/ru ru_RU ru_YO" -c q
../README_ru.txt: README_ru_$*(REGIONS).txt
:print ru_RU >! $target
:cat README_ru_RU.txt >> $target
:print =================================================== >>$target
- :print ru_IE >> $target
- :cat README_ru_IE.txt >> $target
- :print =================================================== >>$target
:print ru_YO >> $target
:cat README_ru_YO.txt >> $target
@@ -36,7 +33,7 @@ $SPELLDIR/ru.cp1251.spl : $FILES
# Fetching the files from OpenOffice.org.
#
OODIR = http://ftp.services.openoffice.org/pub/OpenOffice.org/contrib/dictionaries
-:attr {fetch = $OODIR/%file%} ru_RU.zip ru_RU_ye.zip ru_RU_yo.zip
+:attr {fetch = $OODIR/%file%} ru_RU.zip ru_RU_yo.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.
@@ -53,21 +50,6 @@ ru_RU.aff ru_RU.dic: {buildcheck=}
@if os.path.exists('ru_RU.diff'):
:sys patch <ru_RU.diff
-ru_IE.aff ru_IE.dic: {buildcheck=}
- :assertpkg unzip
- :fetch ru_RU_ye.zip
- :sys unzip ru_RU_ye.zip
- :delete ru_RU_ye.zip
- :move ru_RU_ie.aff ru_IE.aff
- :move ru_RU_ie.dic ru_IE.dic
- :move README_ru_RU_ie.txt README_ru_IE.txt
- @if not os.path.exists('ru_IE.orig.aff'):
- :copy ru_IE.aff ru_IE.orig.aff
- @if not os.path.exists('ru_IE.orig.dic'):
- :copy ru_IE.dic ru_IE.orig.dic
- @if os.path.exists('ru_IE.diff'):
- :sys patch <ru_IE.diff
-
ru_YO.aff ru_YO.dic: {buildcheck=}
:assertpkg unzip
:fetch ru_RU_yo.zip
@@ -91,8 +73,6 @@ diff:
:assertpkg diff
:sys {force} diff -a -C 1 ru_RU.orig.aff ru_RU.aff >ru_RU.diff
:sys {force} diff -a -C 1 ru_RU.orig.dic ru_RU.dic >>ru_RU.diff
- :sys {force} diff -a -C 1 ru_IE.orig.aff ru_IE.aff >ru_IE.diff
- :sys {force} diff -a -C 1 ru_IE.orig.dic ru_IE.dic >>ru_IE.diff
:sys {force} diff -a -C 1 ru_YO.orig.aff ru_YO.aff >ru_YO.diff
:sys {force} diff -a -C 1 ru_YO.orig.dic ru_YO.dic >>ru_YO.diff
diff --git a/runtime/spell/ru/ru_RU.diff b/runtime/spell/ru/ru_RU.diff
index 18560c3c1..c79fb0c6b 100644
--- a/runtime/spell/ru/ru_RU.diff
+++ b/runtime/spell/ru/ru_RU.diff
@@ -1,5 +1,21 @@
-*** ru_RU.orig.dic Sat Aug 27 22:54:55 2005
---- ru_RU.dic Sun Aug 28 11:46:34 2005
+*** ru_RU.orig.aff Sun Aug 28 21:12:27 2005
+--- ru_RU.aff Sun Sep 4 17:21:40 2005
+***************
+*** 3,4 ****
+--- 3,13 ----
+
++ FOL ÁÂ×ÇÄÅ£ÖÚÉÊËÌÍÎÏÐÒÓÔÕÆÈÃÞÛÝØÙßÜÀÑ
++ LOW ÁÂ×ÇÄÅ£ÖÚÉÊËÌÍÎÏÐÒÓÔÕÆÈÃÞÛÝØÙßÜÀÑ
++ UPP áâ÷çäå³öúéêëìíîïðòóôõæèãþûýøùÿüàñ
++
++ SOFOFROM ÁÂ×ÇÄÅ£ÖÚÉÊËÌÍÎÏÐÒÓÔÕÆÈÃÞÛÝØÙßÜÀÑáâ÷çäå³öúéêëìíîïðòóôõæèãþûýøùÿüàñ
++ SOFOTO ÅÂ×ÇÄÅÅÖÚÅÊËÌÎÎÅÐÒÓÔÅÆÈÃÞÛÛØÅ'ÅÅÅåâ÷çäååöúåêëìîîåðòóôåæèãþûûøå'ååå
++
++ MIDWORD '-
++
+ SFX L Y 52
+*** ru_RU.orig.dic Sun Aug 28 21:12:27 2005
+--- ru_RU.dic Sun Sep 4 17:23:27 2005
***************
*** 8767,8769 ****
ÂÌÅËÌÏÓÔØ/F
@@ -13,11 +29,15 @@
ÒÁÚÕÂÅÄÉ×ÛÉÊ/A
--- 98085,98086 ----
***************
-*** 115007,115009 ****
- ÔÏÌËÉ/B
-- ÔÏÌËÉ/O
+*** 115006,115009 ****
+ ÔÏÌËÁÀÝÉÊÓÑ/A
+! ÔÏÌËÉ/B
+! ÔÏÌËÉ/O
+ ÔÏÌËÌÁ/L
+--- 115004,115006 ----
+ ÔÏÌËÁÀÝÉÊÓÑ/A
+! ÔÏÌËÉ/BO
ÔÏÌËÌÁ/L
---- 115005,115006 ----
***************
*** 119209,119211 ****
ÕÎÉÖÅÎÎÙÊ/ASX
diff --git a/runtime/spell/ru/ru_YO.diff b/runtime/spell/ru/ru_YO.diff
index 2cf8177ff..cd2eb5abb 100644
--- a/runtime/spell/ru/ru_YO.diff
+++ b/runtime/spell/ru/ru_YO.diff
@@ -1,5 +1,21 @@
-*** ru_YO.orig.dic Sat Aug 27 22:54:55 2005
---- ru_YO.dic Sun Aug 28 11:46:58 2005
+*** ru_YO.orig.aff Sun Aug 28 21:12:35 2005
+--- ru_YO.aff Sun Sep 4 17:23:51 2005
+***************
+*** 3,4 ****
+--- 3,13 ----
+
++ FOL ÁÂ×ÇÄÅ£ÖÚÉÊËÌÍÎÏÐÒÓÔÕÆÈÃÞÛÝØÙßÜÀÑ
++ LOW ÁÂ×ÇÄÅ£ÖÚÉÊËÌÍÎÏÐÒÓÔÕÆÈÃÞÛÝØÙßÜÀÑ
++ UPP áâ÷çäå³öúéêëìíîïðòóôõæèãþûýøùÿüàñ
++
++ SOFOFROM ÁÂ×ÇÄÅ£ÖÚÉÊËÌÍÎÏÐÒÓÔÕÆÈÃÞÛÝØÙßÜÀÑáâ÷çäå³öúéêëìíîïðòóôõæèãþûýøùÿüàñ
++ SOFOTO ÅÂ×ÇÄÅÅÖÚÅÊËÌÎÎÅÐÒÓÔÅÆÈÃÞÛÛØÅ'ÅÅÅåâ÷çäååöúåêëìîîåðòóôåæèãþûûøå'ååå
++
++ MIDWORD '-
++
+ SFX L Y 56
+*** ru_YO.orig.dic Sun Aug 28 21:12:35 2005
+--- ru_YO.dic Sun Sep 4 17:24:26 2005
***************
*** 86471,86473 ****
ÐÏÞÔ£ÎÎÙÊ/AS
@@ -7,8 +23,12 @@
ÐÏÞÔÉ/B
--- 86471,86472 ----
***************
-*** 115246,115248 ****
- ÔÏÌËÉ/B
-- ÔÏÌËÉ/O
+*** 115245,115248 ****
+ ÔÏÌËÁÀÝÉÊÓÑ/A
+! ÔÏÌËÉ/B
+! ÔÏÌËÉ/O
+ ÔÏÌËÌÁ/L
+--- 115244,115246 ----
+ ÔÏÌËÁÀÝÉÊÓÑ/A
+! ÔÏÌËÉ/BO
ÔÏÌËÌÁ/L
---- 115245,115246 ----
diff --git a/src/globals.h b/src/globals.h
index 29a643bc8..80d099bdd 100644
--- a/src/globals.h
+++ b/src/globals.h
@@ -152,7 +152,7 @@ EXTERN int info_message INIT(= FALSE); /* printing informative message */
#ifdef FEAT_EVAL
EXTERN int emsg_skip INIT(= 0); /* don't display errors for
expression that is skipped */
-EXTERN int emsg_severe INIT(=FALSE); /* use message of next of several
+EXTERN int emsg_severe INIT(= FALSE); /* use message of next of several
emsg() calls for throw */
EXTERN int did_endif INIT(= FALSE); /* just had ":endif" */
#endif
@@ -1242,187 +1242,190 @@ EXTERN int usingNetbeans INIT(= 0); /* set if -nb flag is used */
* The error messages that can be shared are included here.
* Excluded are errors that are only used once and debugging messages.
*/
-EXTERN char_u e_abort[] INIT(=N_("E470: Command aborted"));
-EXTERN char_u e_argreq[] INIT(=N_("E471: Argument required"));
-EXTERN char_u e_backslash[] INIT(=N_("E10: \\ should be followed by /, ? or &"));
+EXTERN char_u e_abort[] INIT(= N_("E470: Command aborted"));
+EXTERN char_u e_argreq[] INIT(= N_("E471: Argument required"));
+EXTERN char_u e_backslash[] INIT(= N_("E10: \\ should be followed by /, ? or &"));
#ifdef FEAT_CMDWIN
-EXTERN char_u e_cmdwin[] INIT(=N_("E11: Invalid in command-line window; <CR> executes, CTRL-C quits"));
+EXTERN char_u e_cmdwin[] INIT(= N_("E11: Invalid in command-line window; <CR> executes, CTRL-C quits"));
#endif
-EXTERN char_u e_curdir[] INIT(=N_("E12: Command not allowed from exrc/vimrc in current dir or tag search"));
+EXTERN char_u e_curdir[] INIT(= N_("E12: Command not allowed from exrc/vimrc in current dir or tag search"));
#ifdef FEAT_EVAL
-EXTERN char_u e_endif[] INIT(=N_("E171: Missing :endif"));
-EXTERN char_u e_endtry[] INIT(=N_("E600: Missing :endtry"));
-EXTERN char_u e_endwhile[] INIT(=N_("E170: Missing :endwhile"));
-EXTERN char_u e_endfor[] INIT(=N_("E170: Missing :endfor"));
-EXTERN char_u e_while[] INIT(=N_("E588: :endwhile without :while"));
-EXTERN char_u e_for[] INIT(=N_("E588: :endfor without :for"));
-#endif
-EXTERN char_u e_exists[] INIT(=N_("E13: File exists (add ! to override)"));
-EXTERN char_u e_failed[] INIT(=N_("E472: Command failed"));
+EXTERN char_u e_endif[] INIT(= N_("E171: Missing :endif"));
+EXTERN char_u e_endtry[] INIT(= N_("E600: Missing :endtry"));
+EXTERN char_u e_endwhile[] INIT(= N_("E170: Missing :endwhile"));
+EXTERN char_u e_endfor[] INIT(= N_("E170: Missing :endfor"));
+EXTERN char_u e_while[] INIT(= N_("E588: :endwhile without :while"));
+EXTERN char_u e_for[] INIT(= N_("E588: :endfor without :for"));
+#endif
+EXTERN char_u e_exists[] INIT(= N_("E13: File exists (add ! to override)"));
+EXTERN char_u e_failed[] INIT(= N_("E472: Command failed"));
#if defined(FEAT_GUI) && defined(FEAT_XFONTSET)
-EXTERN char_u e_fontset[] INIT(=N_("E234: Unknown fontset: %s"));
+EXTERN char_u e_fontset[] INIT(= N_("E234: Unknown fontset: %s"));
#endif
#if defined(FEAT_GUI_X11) || defined(FEAT_GUI_GTK) || defined(MACOS) \
|| defined(FEAT_GUI_PHOTON) || defined(FEAT_GUI_MSWIN)
-EXTERN char_u e_font[] INIT(=N_("E235: Unknown font: %s"));
+EXTERN char_u e_font[] INIT(= N_("E235: Unknown font: %s"));
#endif
#if (defined(FEAT_GUI_X11) || defined(FEAT_GUI_GTK)) && !defined(HAVE_GTK2)
-EXTERN char_u e_fontwidth[] INIT(=N_("E236: Font \"%s\" is not fixed-width"));
+EXTERN char_u e_fontwidth[] INIT(= N_("E236: Font \"%s\" is not fixed-width"));
#endif
-EXTERN char_u e_internal[] INIT(=N_("E473: Internal error"));
-EXTERN char_u e_interr[] INIT(=N_("Interrupted"));
-EXTERN char_u e_invaddr[] INIT(=N_("E14: Invalid address"));
-EXTERN char_u e_invarg[] INIT(=N_("E474: Invalid argument"));
-EXTERN char_u e_invarg2[] INIT(=N_("E475: Invalid argument: %s"));
+EXTERN char_u e_internal[] INIT(= N_("E473: Internal error"));
+EXTERN char_u e_interr[] INIT(= N_("Interrupted"));
+EXTERN char_u e_invaddr[] INIT(= N_("E14: Invalid address"));
+EXTERN char_u e_invarg[] INIT(= N_("E474: Invalid argument"));
+EXTERN char_u e_invarg2[] INIT(= N_("E475: Invalid argument: %s"));
#ifdef FEAT_EVAL
-EXTERN char_u e_invexpr2[] INIT(=N_("E15: Invalid expression: %s"));
+EXTERN char_u e_invexpr2[] INIT(= N_("E15: Invalid expression: %s"));
#endif
-EXTERN char_u e_invrange[] INIT(=N_("E16: Invalid range"));
-EXTERN char_u e_invcmd[] INIT(=N_("E476: Invalid command"));
+EXTERN char_u e_invrange[] INIT(= N_("E16: Invalid range"));
+EXTERN char_u e_invcmd[] INIT(= N_("E476: Invalid command"));
#if defined(UNIX) || (defined(FEAT_SYN_HL) && defined(FEAT_MBYTE))
-EXTERN char_u e_isadir2[] INIT(=N_("E17: \"%s\" is a directory"));
+EXTERN char_u e_isadir2[] INIT(= N_("E17: \"%s\" is a directory"));
#endif
#ifdef FEAT_LIBCALL
-EXTERN char_u e_libcall[] INIT(=N_("E364: Library call failed for \"%s()\""));
+EXTERN char_u e_libcall[] INIT(= N_("E364: Library call failed for \"%s()\""));
#endif
#if defined(DYNAMIC_PERL) || defined(DYNAMIC_PYTHON) || defined(DYNAMIC_RUBY) \
|| defined(DYNAMIC_TCL) || defined(DYNAMIC_ICONV) \
|| defined(DYNAMIC_GETTEXT) || defined(DYNAMIC_MZSCHEME)
-EXTERN char_u e_loadlib[] INIT(=N_("E370: Could not load library %s"));
-EXTERN char_u e_loadfunc[] INIT(=N_("E448: Could not load library function %s"));
-#endif
-EXTERN char_u e_markinval[] INIT(=N_("E19: Mark has invalid line number"));
-EXTERN char_u e_marknotset[] INIT(=N_("E20: Mark not set"));
-EXTERN char_u e_modifiable[] INIT(=N_("E21: Cannot make changes, 'modifiable' is off"));
-EXTERN char_u e_nesting[] INIT(=N_("E22: Scripts nested too deep"));
-EXTERN char_u e_noalt[] INIT(=N_("E23: No alternate file"));
-EXTERN char_u e_noabbr[] INIT(=N_("E24: No such abbreviation"));
-EXTERN char_u e_nobang[] INIT(=N_("E477: No ! allowed"));
+EXTERN char_u e_loadlib[] INIT(= N_("E370: Could not load library %s"));
+EXTERN char_u e_loadfunc[] INIT(= N_("E448: Could not load library function %s"));
+#endif
+EXTERN char_u e_markinval[] INIT(= N_("E19: Mark has invalid line number"));
+EXTERN char_u e_marknotset[] INIT(= N_("E20: Mark not set"));
+EXTERN char_u e_modifiable[] INIT(= N_("E21: Cannot make changes, 'modifiable' is off"));
+EXTERN char_u e_nesting[] INIT(= N_("E22: Scripts nested too deep"));
+EXTERN char_u e_noalt[] INIT(= N_("E23: No alternate file"));
+EXTERN char_u e_noabbr[] INIT(= N_("E24: No such abbreviation"));
+EXTERN char_u e_nobang[] INIT(= N_("E477: No ! allowed"));
#ifndef FEAT_GUI
-EXTERN char_u e_nogvim[] INIT(=N_("E25: GUI cannot be used: Not enabled at compile time"));
+EXTERN char_u e_nogvim[] INIT(= N_("E25: GUI cannot be used: Not enabled at compile time"));
#endif
#ifndef FEAT_RIGHTLEFT
-EXTERN char_u e_nohebrew[] INIT(=N_("E26: Hebrew cannot be used: Not enabled at compile time\n"));
+EXTERN char_u e_nohebrew[] INIT(= N_("E26: Hebrew cannot be used: Not enabled at compile time\n"));
#endif
#ifndef FEAT_FKMAP
-EXTERN char_u e_nofarsi[] INIT(=N_("E27: Farsi cannot be used: Not enabled at compile time\n"));
+EXTERN char_u e_nofarsi[] INIT(= N_("E27: Farsi cannot be used: Not enabled at compile time\n"));
#endif
#ifndef FEAT_ARABIC
-EXTERN char_u e_noarabic[] INIT(=N_("E800: Arabic cannot be used: Not enabled at compile time\n"));
+EXTERN char_u e_noarabic[] INIT(= N_("E800: Arabic cannot be used: Not enabled at compile time\n"));
#endif
#if defined(FEAT_SEARCH_EXTRA) || defined(FEAT_SYN_HL)
-EXTERN char_u e_nogroup[] INIT(=N_("E28: No such highlight group name: %s"));
-#endif
-EXTERN char_u e_noinstext[] INIT(=N_("E29: No inserted text yet"));
-EXTERN char_u e_nolastcmd[] INIT(=N_("E30: No previous command line"));
-EXTERN char_u e_nomap[] INIT(=N_("E31: No such mapping"));
-EXTERN char_u e_nomatch[] INIT(=N_("E479: No match"));
-EXTERN char_u e_nomatch2[] INIT(=N_("E480: No match: %s"));
-EXTERN char_u e_noname[] INIT(=N_("E32: No file name"));
-EXTERN char_u e_nopresub[] INIT(=N_("E33: No previous substitute regular expression"));
-EXTERN char_u e_noprev[] INIT(=N_("E34: No previous command"));
-EXTERN char_u e_noprevre[] INIT(=N_("E35: No previous regular expression"));
-EXTERN char_u e_norange[] INIT(=N_("E481: No range allowed"));
+EXTERN char_u e_nogroup[] INIT(= N_("E28: No such highlight group name: %s"));
+#endif
+EXTERN char_u e_noinstext[] INIT(= N_("E29: No inserted text yet"));
+EXTERN char_u e_nolastcmd[] INIT(= N_("E30: No previous command line"));
+EXTERN char_u e_nomap[] INIT(= N_("E31: No such mapping"));
+EXTERN char_u e_nomatch[] INIT(= N_("E479: No match"));
+EXTERN char_u e_nomatch2[] INIT(= N_("E480: No match: %s"));
+EXTERN char_u e_noname[] INIT(= N_("E32: No file name"));
+EXTERN char_u e_nopresub[] INIT(= N_("E33: No previous substitute regular expression"));
+EXTERN char_u e_noprev[] INIT(= N_("E34: No previous command"));
+EXTERN char_u e_noprevre[] INIT(= N_("E35: No previous regular expression"));
+EXTERN char_u e_norange[] INIT(= N_("E481: No range allowed"));
#ifdef FEAT_WINDOWS
-EXTERN char_u e_noroom[] INIT(=N_("E36: Not enough room"));
+EXTERN char_u e_noroom[] INIT(= N_("E36: Not enough room"));
#endif
#ifdef FEAT_CLIENTSERVER
-EXTERN char_u e_noserver[] INIT(=N_("E247: no registered server named \"%s\""));
-#endif
-EXTERN char_u e_notcreate[] INIT(=N_("E482: Can't create file %s"));
-EXTERN char_u e_notmp[] INIT(=N_("E483: Can't get temp file name"));
-EXTERN char_u e_notopen[] INIT(=N_("E484: Can't open file %s"));
-EXTERN char_u e_notread[] INIT(=N_("E485: Can't read file %s"));
-EXTERN char_u e_nowrtmsg[] INIT(=N_("E37: No write since last change (add ! to override)"));
-EXTERN char_u e_null[] INIT(=N_("E38: Null argument"));
+EXTERN char_u e_noserver[] INIT(= N_("E247: no registered server named \"%s\""));
+#endif
+EXTERN char_u e_notcreate[] INIT(= N_("E482: Can't create file %s"));
+EXTERN char_u e_notmp[] INIT(= N_("E483: Can't get temp file name"));
+EXTERN char_u e_notopen[] INIT(= N_("E484: Can't open file %s"));
+EXTERN char_u e_notread[] INIT(= N_("E485: Can't read file %s"));
+EXTERN char_u e_nowrtmsg[] INIT(= N_("E37: No write since last change (add ! to override)"));
+EXTERN char_u e_null[] INIT(= N_("E38: Null argument"));
#ifdef FEAT_DIGRAPHS
-EXTERN char_u e_number_exp[] INIT(=N_("E39: Number expected"));
+EXTERN char_u e_number_exp[] INIT(= N_("E39: Number expected"));
#endif
#ifdef FEAT_QUICKFIX
-EXTERN char_u e_openerrf[] INIT(=N_("E40: Can't open errorfile %s"));
+EXTERN char_u e_openerrf[] INIT(= N_("E40: Can't open errorfile %s"));
#endif
#if defined(FEAT_GUI_GTK) || defined(FEAT_GUI_X11)
-EXTERN char_u e_opendisp[] INIT(=N_("E233: cannot open display"));
+EXTERN char_u e_opendisp[] INIT(= N_("E233: cannot open display"));
#endif
-EXTERN char_u e_outofmem[] INIT(=N_("E41: Out of memory!"));
+EXTERN char_u e_outofmem[] INIT(= N_("E41: Out of memory!"));
#ifdef FEAT_INS_EXPAND
-EXTERN char_u e_patnotf[] INIT(=N_("Pattern not found"));
+EXTERN char_u e_patnotf[] INIT(= N_("Pattern not found"));
#endif
-EXTERN char_u e_patnotf2[] INIT(=N_("E486: Pattern not found: %s"));
-EXTERN char_u e_positive[] INIT(=N_("E487: Argument must be positive"));
+EXTERN char_u e_patnotf2[] INIT(= N_("E486: Pattern not found: %s"));
+EXTERN char_u e_positive[] INIT(= N_("E487: Argument must be positive"));
#if defined(UNIX) || defined(FEAT_SESSION)
-EXTERN char_u e_prev_dir[] INIT(=N_("E459: Cannot go back to previous directory"));
+EXTERN char_u e_prev_dir[] INIT(= N_("E459: Cannot go back to previous directory"));
#endif
#ifdef FEAT_QUICKFIX
-EXTERN char_u e_quickfix[] INIT(=N_("E42: No Errors"));
+EXTERN char_u e_quickfix[] INIT(= N_("E42: No Errors"));
#endif
-EXTERN char_u e_re_damg[] INIT(=N_("E43: Damaged match string"));
-EXTERN char_u e_re_corr[] INIT(=N_("E44: Corrupted regexp program"));
-EXTERN char_u e_readonly[] INIT(=N_("E45: 'readonly' option is set (add ! to override)"));
+EXTERN char_u e_re_damg[] INIT(= N_("E43: Damaged match string"));
+EXTERN char_u e_re_corr[] INIT(= N_("E44: Corrupted regexp program"));
+EXTERN char_u e_readonly[] INIT(= N_("E45: 'readonly' option is set (add ! to override)"));
#ifdef FEAT_EVAL
-EXTERN char_u e_readonlyvar[] INIT(=N_("E46: Cannot change read-only variable \"%s\""));
-EXTERN char_u e_readonlysbx[] INIT(=N_("E46: Cannot set variable in the sandbox: \"%s\""));
+EXTERN char_u e_readonlyvar[] INIT(= N_("E46: Cannot change read-only variable \"%s\""));
+EXTERN char_u e_readonlysbx[] INIT(= N_("E46: Cannot set variable in the sandbox: \"%s\""));
#endif
#ifdef FEAT_QUICKFIX
-EXTERN char_u e_readerrf[] INIT(=N_("E47: Error while reading errorfile"));
+EXTERN char_u e_readerrf[] INIT(= N_("E47: Error while reading errorfile"));
#endif
#ifdef HAVE_SANDBOX
-EXTERN char_u e_sandbox[] INIT(=N_("E48: Not allowed in sandbox"));
+EXTERN char_u e_sandbox[] INIT(= N_("E48: Not allowed in sandbox"));
#endif
-EXTERN char_u e_secure[] INIT(=N_("E523: Not allowed here"));
+EXTERN char_u e_secure[] INIT(= N_("E523: Not allowed here"));
#if defined(AMIGA) || defined(MACOS) || defined(MSWIN) || defined(RISCOS) \
|| defined(UNIX) || defined(VMS) || defined(OS2)
-EXTERN char_u e_screenmode[] INIT(=N_("E359: Screen mode setting not supported"));
+EXTERN char_u e_screenmode[] INIT(= N_("E359: Screen mode setting not supported"));
#endif
-EXTERN char_u e_scroll[] INIT(=N_("E49: Invalid scroll size"));
-EXTERN char_u e_shellempty[] INIT(=N_("E91: 'shell' option is empty"));
+EXTERN char_u e_scroll[] INIT(= N_("E49: Invalid scroll size"));
+EXTERN char_u e_shellempty[] INIT(= N_("E91: 'shell' option is empty"));
#if defined(FEAT_SIGN_ICONS) && !defined(HAVE_GTK2)
-EXTERN char_u e_signdata[] INIT(=N_("E255: Couldn't read in sign data!"));
-#endif
-EXTERN char_u e_swapclose[] INIT(=N_("E72: Close error on swap file"));
-EXTERN char_u e_tagstack[] INIT(=N_("E73: tag stack empty"));
-EXTERN char_u e_toocompl[] INIT(=N_("E74: Command too complex"));
-EXTERN char_u e_longname[] INIT(=N_("E75: Name too long"));
-EXTERN char_u e_toomsbra[] INIT(=N_("E76: Too many ["));
-EXTERN char_u e_toomany[] INIT(=N_("E77: Too many file names"));
-EXTERN char_u e_trailing[] INIT(=N_("E488: Trailing characters"));
-EXTERN char_u e_umark[] INIT(=N_("E78: Unknown mark"));
-EXTERN char_u e_wildexpand[] INIT(=N_("E79: Cannot expand wildcards"));
+EXTERN char_u e_signdata[] INIT(= N_("E255: Couldn't read in sign data!"));
+#endif
+EXTERN char_u e_swapclose[] INIT(= N_("E72: Close error on swap file"));
+EXTERN char_u e_tagstack[] INIT(= N_("E73: tag stack empty"));
+EXTERN char_u e_toocompl[] INIT(= N_("E74: Command too complex"));
+EXTERN char_u e_longname[] INIT(= N_("E75: Name too long"));
+EXTERN char_u e_toomsbra[] INIT(= N_("E76: Too many ["));
+EXTERN char_u e_toomany[] INIT(= N_("E77: Too many file names"));
+EXTERN char_u e_trailing[] INIT(= N_("E488: Trailing characters"));
+EXTERN char_u e_umark[] INIT(= N_("E78: Unknown mark"));
+EXTERN char_u e_wildexpand[] INIT(= N_("E79: Cannot expand wildcards"));
#ifdef FEAT_WINDOWS
-EXTERN char_u e_winheight[] INIT(=N_("E591: 'winheight' cannot be smaller than 'winminheight'"));
+EXTERN char_u e_winheight[] INIT(= N_("E591: 'winheight' cannot be smaller than 'winminheight'"));
# ifdef FEAT_VERTSPLIT
-EXTERN char_u e_winwidth[] INIT(=N_("E592: 'winwidth' cannot be smaller than 'winminwidth'"));
+EXTERN char_u e_winwidth[] INIT(= N_("E592: 'winwidth' cannot be smaller than 'winminwidth'"));
# endif
#endif
-EXTERN char_u e_write[] INIT(=N_("E80: Error while writing"));
-EXTERN char_u e_zerocount[] INIT(=N_("Zero count"));
+EXTERN char_u e_write[] INIT(= N_("E80: Error while writing"));
+EXTERN char_u e_zerocount[] INIT(= N_("Zero count"));
#ifdef FEAT_EVAL
-EXTERN char_u e_usingsid[] INIT(=N_("E81: Using <SID> not in a script context"));
+EXTERN char_u e_usingsid[] INIT(= N_("E81: Using <SID> not in a script context"));
#endif
#ifdef FEAT_CLIENTSERVER
-EXTERN char_u e_invexprmsg[] INIT(=N_("E449: Invalid expression received"));
+EXTERN char_u e_invexprmsg[] INIT(= N_("E449: Invalid expression received"));
#endif
#ifdef FEAT_NETBEANS_INTG
-EXTERN char_u e_guarded[] INIT(=N_("E463: Region is guarded, cannot modify"));
-EXTERN char_u e_nbreadonly[] INIT(=N_("E744: NetBeans does not allow changes in read-only files"));
+EXTERN char_u e_guarded[] INIT(= N_("E463: Region is guarded, cannot modify"));
+EXTERN char_u e_nbreadonly[] INIT(= N_("E744: NetBeans does not allow changes in read-only files"));
#endif
#if defined(FEAT_INS_EXPAND) || defined(FEAT_EVAL) || defined(FEAT_SYN_HL) \
|| defined(PROTO)
-EXTERN char_u e_intern2[] INIT(=N_("E685: Internal error: %s"));
+EXTERN char_u e_intern2[] INIT(= N_("E685: Internal error: %s"));
#endif
-EXTERN char_u e_maxmempat[] INIT(=N_("E363: pattern uses more memory than 'maxmempattern'"));
-EXTERN char_u e_emptybuf[] INIT(=N_("E749: empty buffer"));
+EXTERN char_u e_maxmempat[] INIT(= N_("E363: pattern uses more memory than 'maxmempattern'"));
+EXTERN char_u e_emptybuf[] INIT(= N_("E749: empty buffer"));
#ifdef FEAT_EX_EXTRA
-EXTERN char_u e_invalpat[] INIT(=N_("E682: Invalid search pattern or delimiter"));
+EXTERN char_u e_invalpat[] INIT(= N_("E682: Invalid search pattern or delimiter"));
#endif
-EXTERN char_u e_bufloaded[] INIT(=N_("E139: File is loaded in another buffer"));
+EXTERN char_u e_bufloaded[] INIT(= N_("E139: File is loaded in another buffer"));
#ifdef MACOS_X_UNIX
EXTERN short disallow_gui INIT(= FALSE);
#endif
+EXTERN char top_bot_msg[] INIT(= N_("search hit TOP, continuing at BOTTOM"));
+EXTERN char bot_top_msg[] INIT(= N_("search hit BOTTOM, continuing at TOP"));
+
/*
* Comms. with the session manager (XSMP)
*/
diff --git a/src/proto/normal.pro b/src/proto/normal.pro
index 74364e312..950f1e025 100644
--- a/src/proto/normal.pro
+++ b/src/proto/normal.pro
@@ -16,6 +16,7 @@ void push_showcmd __ARGS((void));
void pop_showcmd __ARGS((void));
void do_check_scrollbind __ARGS((int check));
void check_scrollbind __ARGS((linenr_T topline_diff, long leftcol_diff));
+int find_decl __ARGS((char_u *ptr, int len, int locally, int searchflags));
void scroll_redraw __ARGS((int up, long count));
void do_nv_ident __ARGS((int c1, int c2));
int get_visual_text __ARGS((cmdarg_T *cap, char_u **pp, int *lenp));
diff --git a/src/screen.c b/src/screen.c
index 2c39ac73a..11d89b66e 100644
--- a/src/screen.c
+++ b/src/screen.c
@@ -3026,7 +3026,7 @@ win_line(wp, lnum, startrow, endrow)
}
#endif
- off = (unsigned) (current_ScreenLine - ScreenLines);
+ off = (unsigned)(current_ScreenLine - ScreenLines);
col = 0;
#ifdef FEAT_RIGHTLEFT
if (wp->w_p_rl)
@@ -3423,13 +3423,16 @@ win_line(wp, lnum, startrow, endrow)
else if (mb_l > 1)
mb_c = (c << 8) + p_extra[1];
}
+ if (mb_l == 0) /* at the NUL at end-of-line */
+ mb_l = 1;
+
/* If a double-width char doesn't fit display a '>' in the
* last column. */
- if (
+ if ((
# ifdef FEAT_RIGHTLEFT
wp->w_p_rl ? (col <= 0) :
# endif
- (col >= W_WIDTH(wp) - 1)
+ (col >= W_WIDTH(wp) - 1))
&& (*mb_char2cells)(mb_c) == 2)
{
c = '>';
diff --git a/src/search.c b/src/search.c
index af3215b31..3013d1387 100644
--- a/src/search.c
+++ b/src/search.c
@@ -34,9 +34,6 @@ static void show_pat_in_path __ARGS((char_u *, int,
static void wvsp_one __ARGS((FILE *fp, int idx, char *s, int sc));
#endif
-static char_u *top_bot_msg = (char_u *)N_("search hit TOP, continuing at BOTTOM");
-static char_u *bot_top_msg = (char_u *)N_("search hit BOTTOM, continuing at TOP");
-
/*
* This file contains various searching-related routines. These fall into
* three groups:
@@ -854,17 +851,12 @@ searchit(win, buf, pos, dir, pat, count, options, pat_use)
* written.
*/
if (dir == BACKWARD) /* start second loop at the other end */
- {
lnum = buf->b_ml.ml_line_count;
- if (!shortmess(SHM_SEARCH) && (options & SEARCH_MSG))
- give_warning((char_u *)_(top_bot_msg), TRUE);
- }
else
- {
lnum = 1;
- if (!shortmess(SHM_SEARCH) && (options & SEARCH_MSG))
- give_warning((char_u *)_(bot_top_msg), TRUE);
- }
+ if (!shortmess(SHM_SEARCH) && (options & SEARCH_MSG))
+ give_warning((char_u *)_(dir == BACKWARD
+ ? top_bot_msg : bot_top_msg), TRUE);
}
if (got_int || called_emsg || break_loop)
break;
@@ -2519,12 +2511,12 @@ found:
* Return TRUE if the next paragraph or section was found.
*/
int
-findpar(oap, dir, count, what, both)
- oparg_T *oap;
- int dir;
- long count;
- int what;
- int both;
+findpar(pincl, dir, count, what, both)
+ int *pincl; /* Return: TRUE if last char is to be included */
+ int dir;
+ long count;
+ int what;
+ int both;
{
linenr_T curr;
int did_skip; /* TRUE after separating lines have been skipped */
@@ -2586,7 +2578,7 @@ findpar(oap, dir, count, what, both)
if ((curwin->w_cursor.col = (colnr_T)STRLEN(ml_get(curr))) != 0)
{
--curwin->w_cursor.col;
- oap->inclusive = TRUE;
+ *pincl = TRUE;
}
}
else
diff --git a/src/version.h b/src/version.h
index 0db9ab214..208f7a569 100644
--- a/src/version.h
+++ b/src/version.h
@@ -36,5 +36,5 @@
#define VIM_VERSION_NODOT "vim70aa"
#define VIM_VERSION_SHORT "7.0aa"
#define VIM_VERSION_MEDIUM "7.0aa ALPHA"
-#define VIM_VERSION_LONG "VIM - Vi IMproved 7.0aa ALPHA (2005 Sep 1)"
-#define VIM_VERSION_LONG_DATE "VIM - Vi IMproved 7.0aa ALPHA (2005 Sep 1, compiled "
+#define VIM_VERSION_LONG "VIM - Vi IMproved 7.0aa ALPHA (2005 Sep 5)"
+#define VIM_VERSION_LONG_DATE "VIM - Vi IMproved 7.0aa ALPHA (2005 Sep 5, compiled "