changeset 33:f6033dcbaf31

updated for version 7.0020
author vimboss
date Sun, 24 Oct 2004 19:18:58 +0000
parents 41f9fd58cf13
children 7f788cd27415
files runtime/doc/eval.txt runtime/doc/fold.txt runtime/doc/if_cscop.txt runtime/doc/netbeans.txt runtime/doc/options.txt runtime/doc/tags runtime/doc/term.txt runtime/doc/vim.1 runtime/filetype.vim runtime/lang/menu_ja.euc-jp.vim runtime/lang/menu_ja.eucjp.vim runtime/syntax/pascal.vim runtime/syntax/tpp.vim src/buffer.c src/edit.c src/ex_docmd.c src/ex_getln.c src/fileio.c src/fold.c src/globals.h src/gui_w32.c src/nbdebug.c src/nbdebug.h src/netbeans.c src/normal.c src/ops.c src/os_unix.c src/po/de.po src/proto/fileio.pro src/proto/netbeans.pro src/screen.c src/undo.c src/vim.h
diffstat 33 files changed, 3379 insertions(+), 2118 deletions(-) [+]
line wrap: on
line diff
--- a/runtime/doc/eval.txt
+++ b/runtime/doc/eval.txt
@@ -1,4 +1,4 @@
-*eval.txt*      For Vim version 7.0aa.  Last change: 2004 Oct 11
+*eval.txt*      For Vim version 7.0aa.  Last change: 2004 Oct 24
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -2977,6 +2977,7 @@ multi_byte_ime		Compiled with support fo
 multi_lang		Compiled with support for multiple languages.
 mzscheme		Compiled with MzScheme interface |mzscheme|.
 netbeans_intg		Compiled with support for |netbeans|.
+netbeans_enabled	Compiled with support for |netbeans| and it's used.
 ole			Compiled with OLE automation support for Win32.
 os2			OS/2 version of Vim.
 osfiletype		Compiled with support for osfiletypes |+osfiletype|
--- a/runtime/doc/fold.txt
+++ b/runtime/doc/fold.txt
@@ -1,4 +1,4 @@
-*fold.txt*      For Vim version 7.0aa.  Last change: 2004 Jun 14
+*fold.txt*      For Vim version 7.0aa.  Last change: 2004 Oct 15
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -190,11 +190,11 @@ 2. If a marker with a higher fold level 
 3. if a marker with a lower fold level is found, all folds up to and including
    this level end and a fold with the specified level starts.
 
-The number indicates the fold level.  A zero cannot be used.
-You can use "}}}" with a digit to indicate the level of the fold that
-ends.  The fold level of the following line will be one less than the
-indicated level.  Note that Vim doesn't look back to the level of the matching
-marker (that would take too much time).  Example: >
+The number indicates the fold level.  A zero cannot be used (a marker with
+level zero is ignored).  You can use "}}}" with a digit to indicate the level
+of the fold that ends.  The fold level of the following line will be one less
+than the indicated level.  Note that Vim doesn't look back to the level of the
+matching marker (that would take too much time).  Example: >
 
 	{{{1
 	fold level here is 1
--- a/runtime/doc/if_cscop.txt
+++ b/runtime/doc/if_cscop.txt
@@ -1,4 +1,4 @@
-*if_cscop.txt*  For Vim version 7.0aa.  Last change: 2004 Jul 23
+*if_cscop.txt*  For Vim version 7.0aa.  Last change: 2004 Oct 21
 
 
 		  VIM REFERENCE MANUAL    by Andy Kahn
@@ -245,8 +245,9 @@ results. This is a list of comma-separat
 '-' implies previous results clearance, '0' or command absence - don't use
 quickfix. Search is performed from start until first command occurrence.
 The default value is "" (don't use quickfix anyway). The following value
-seems to be useful: "s-,c-,d-,i-,t-,e-".
-
+seems to be useful: >
+	:set cscopequickfix=s-,c-,d-,i-,t-,e-
+<
 							*cscopetag* *cst*
 If 'cscopetag' set, the commands ":tag" and CTRL-] as well as "vim -t" will
 always use |:cstag| instead of the default :tag behavior.  Effectively, by
--- a/runtime/doc/netbeans.txt
+++ b/runtime/doc/netbeans.txt
@@ -417,6 +417,12 @@ guard off len
 initDone	Mark the buffer as ready for use.  Implicitly makes the buffer
 		the current buffer.  Fires the BufReadPost autocommand event.
 
+insertDone
+		Sent by NetBeans to tell vim an initial file insert is done.
+		This triggers a read message being printed. Prior to version
+		2.3, no read messages were displayed after opening a file.
+		New in version 2.3.
+
 moveAnnoToFront serNum
 		Not implemented.
 
@@ -450,6 +456,12 @@ save		Save the buffer when it was modifi
 		- 'buftype' disallows writing
 		New in version 2.2.
 
+saveDone
+		Sent by NetBeans to tell vim a save is done. This triggers
+		a save message being printed. Prior to version 2.3, no save
+		messages were displayed after a save.
+		New in version 2.3.
+
 setAsUser	Not implemented.
 
 setBufferNumber pathname
@@ -473,6 +485,7 @@ setExitDelay seconds
 		This delay is used to give the IDE a chance to handle things
 		before really exiting.  The default delay is two seconds.
 		New in version 2.1.
+		Obsolete in version 2.3.
 
 setFullName pathname
 		Set the file name to be used for a buffer to "pathname", a
@@ -490,7 +503,14 @@ setModified modified
 		When the boolean argument "modified" is "T" mark the buffer as
 		modified, when it is "F" mark it as unmodified.
 
-setReadOnly	Not implemented.
+setModtime time
+		Update a buffers modification time after NetBeans saves the
+		file.
+		New in version 2.3.
+
+setReadOnly
+		Passed by NetBeans to tell vim a file is readonly.
+		Implemented in verion 2.3.
 
 setStyle	Not implemented.
 
@@ -508,7 +528,11 @@ showBalloon text
 		disappear when the mouse is moved more than a few pixels.
 		New in version 2.1.
 
-specialKeys	Not implemented.
+specialKeys
+		Map a set of keys (mostly function keys) to be passed back
+		to NetBeans for processing. This lets NetBeans hotkeys be
+		used from vim.
+		Implemented in version 2.3.
 
 startAtomic	Begin an atomic operation.  The screen will not be updated
 		until "endAtomic" is given.
@@ -620,6 +644,11 @@ buttonRelease button lnum col
 		in the sign area.
 		New in version 2.2.
 
+disconnect
+		Tell NetBeans that vim is exiting and not to try and read or
+		write more commands.
+		New in version 2.3.
+
 fileClosed	Not implemented.
 
 fileModified	Not implemented.
--- a/runtime/doc/options.txt
+++ b/runtime/doc/options.txt
@@ -1,4 +1,4 @@
-*options.txt*	For Vim version 7.0aa.  Last change: 2004 Oct 08
+*options.txt*	For Vim version 7.0aa.  Last change: 2004 Oct 21
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -918,7 +918,7 @@ A jump table for the options with a shor
 	  impossible!).  Writing may fail because of this.
 	- A directory "." means to put the backup file in the same directory
 	  as the edited file.
-	- A directory starting with "./" (or ".\" for MS-DOS et.al.) means to
+	- A directory starting with "./" (or ".\" for MS-DOS et al.) means to
 	  put the backup file relative to where the edited file is.  The
 	  leading "." is replaced with the path name of the edited file.
 	  ("." inside a directory name has no special meaning).
@@ -2046,7 +2046,7 @@ A jump table for the options with a shor
 	  the edited file.  On Unix, a dot is prepended to the file name, so
 	  it doesn't show in a directory listing.  On MS-Windows the "hidden"
 	  attribute is set and a dot prepended if possible.
-	- A directory starting with "./" (or ".\" for MS-DOS et.al.) means to
+	- A directory starting with "./" (or ".\" for MS-DOS et al.) means to
 	  put the swap file relative to where the edited file is.  The leading
 	  "." is replaced with the path name of the edited file.
 	- For Unix and Win32, if a directory ends in two path separators, the
@@ -2187,10 +2187,11 @@ A jump table for the options with a shor
 			global
 			{not in Vi}
 	When on, all the windows are automatically made the same size after
-	splitting or closing a window.  When off, splitting a window will
-	reduce the size of the current window and leave the other windows the
-	same.  When closing a window the extra lines are given to the window
-	next to it (depending on 'splitbelow' and 'splitright').
+	splitting or closing a window.  This also happens the moment the
+	option is switched on.  When off, splitting a window will reduce the
+	size of the current window and leave the other windows the same.  When
+	closing a window the extra lines are given to the window next to it
+	(depending on 'splitbelow' and 'splitright').
 	When mixing vertically and horizontally split windows, a minimal size
 	is computed and some windows may be larger if there is room.  The
 	'eadirection' option tells in which direction the size is affected.
--- a/runtime/doc/tags
+++ b/runtime/doc/tags
@@ -5223,6 +5223,7 @@ keymap-file-format	mbyte.txt	/*keymap-fi
 keymap-hebrew	mbyte.txt	/*keymap-hebrew*
 keypad-0	intro.txt	/*keypad-0*
 keypad-9	intro.txt	/*keypad-9*
+keypad-comma	term.txt	/*keypad-comma*
 keypad-divide	intro.txt	/*keypad-divide*
 keypad-end	intro.txt	/*keypad-end*
 keypad-enter	intro.txt	/*keypad-enter*
--- a/runtime/doc/term.txt
+++ b/runtime/doc/term.txt
@@ -1,4 +1,4 @@
-*term.txt*      For Vim version 7.0aa.  Last change: 2004 Jan 09
+*term.txt*      For Vim version 7.0aa.  Last change: 2004 Oct 20
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -372,9 +372,13 @@ If your terminal supports both inversion
 different modes.  If your terminal supports only one of the modes, both will
 look the same.
 
+							*keypad-comma*
 The keypad keys, when they are not mapped, behave like the equivalent normal
-key.
-							*xterm-codes*
+key.  There is one exception: if you have a comma on the keypad instead of a
+decimal point, Vim will use a dot anyway.  Use these mappings to fix that: >
+	:noremap <kPoint> ,
+	:noremap! <kPoint> ,
+<							*xterm-codes*
 There is a special trick to obtain the key codes which currently only works
 for xterm.  When |t_RV| is defined and a response is received which indicates
 an xterm with patchlevel 141 or higher, Vim uses special escape sequences to
--- a/runtime/doc/vim.1
+++ b/runtime/doc/vim.1
@@ -392,7 +392,7 @@ If the {scriptout} file exists, characte
 Like -w, but an existing file is overwritten.
 .TP
 -x
-Use encryption when writing files.   Will prompt for a crypt key.
+Use encryption when writing files.  Will prompt for a crypt key.
 .TP
 -X
 Don't connect to the X server.  Shortens startup time in a terminal, but the
@@ -415,14 +415,14 @@ Arguments after this will be handled as 
 This can be used to edit a filename that starts with a '-'.
 .TP
 --echo-wid
-GTK GUI only: Echo the Window ID on stdout
+GTK GUI only: Echo the Window ID on stdout.
 .TP
 --help
 Give a help message and exit, just like "-h".
 .TP
 --literal
-Take file name arguments literally, do not expand wildcards.  Not needed on
-Unix, the shell expand wildcards.
+Take file name arguments literally, do not expand wildcards.  This has no
+effect on Unix where the shell expands wildcards.
 .TP
 --noplugin
 Skip loading plugins.  Implied by -u NONE.
--- a/runtime/filetype.vim
+++ b/runtime/filetype.vim
@@ -1,7 +1,7 @@
 " Vim support file to detect file types
 "
 " Maintainer:	Bram Moolenaar <Bram@vim.org>
-" Last Change:	2004 Oct 02
+" Last Change:	2004 Oct 14
 
 " Listen very carefully, I will say this only once
 if exists("did_load_filetypes")
@@ -1520,6 +1520,9 @@ au BufNewFile,BufRead .tidyrc,tidyrc		se
 " TF mud client
 au BufNewFile,BufRead *.tf,.tfrc,tfrc		setf tf
 
+" TPP - Text Presentation Program
+au BufNewFile,BufReadPost *.tpp			setf tpp
+
 " TSS - Geometry
 au BufNewFile,BufReadPost *.tssgm		setf tssgm
 
new file mode 100644
--- /dev/null
+++ b/runtime/lang/menu_ja.euc-jp.vim
@@ -0,0 +1,6 @@
+" Menu Translations:	Japanese (for UNIX)
+" Translated By:	Muraoka Taro  <koron@tka.att.ne.jp>
+" Last Change:		08:50:47 25-Mar-2001.
+
+" eucjp is the same as euc-jp.  Source the other one from here.
+source <sfile>:p:h/menu_ja_jp.euc-jp.vim
new file mode 100644
--- /dev/null
+++ b/runtime/lang/menu_ja.eucjp.vim
@@ -0,0 +1,6 @@
+" Menu Translations:	Japanese (for UNIX)
+" Translated By:	Muraoka Taro  <koron@tka.att.ne.jp>
+" Last Change:		08:50:47 25-Mar-2001.
+
+" eucjp is the same as euc-jp.  Source the other one from here.
+source <sfile>:p:h/menu_ja_jp.euc-jp.vim
--- a/runtime/syntax/pascal.vim
+++ b/runtime/syntax/pascal.vim
@@ -1,13 +1,16 @@
 " Vim syntax file
 " Language:	Pascal
-" Version: 2.7
-" Last Change:	2003 May 11
+" Version: 2.8
+" Last Change:	2004/10/17 17:47:30
 " Maintainer:  Xavier Crégut <xavier.cregut@enseeiht.fr>
 " Previous Maintainer:	Mario Eusebio <bio@dq.fct.unl.pt>
 
-" Contributors: Tim Chase <tchase@csc.com>, Stas Grabois <stsi@vtrails.com>,
+" Contributors: Tim Chase <tchase@csc.com>,
+"	Stas Grabois <stsi@vtrails.com>,
 "	Mazen NEIFER <mazen.neifer.2001@supaero.fr>,
-"	Klaus Hast <Klaus.Hast@arcor.net>
+"	Klaus Hast <Klaus.Hast@arcor.net>,
+"	Austin Ziegler <austin@halostatue.ca>,
+"	Markus Koenig <markus@stber-koenig.de>
 
 " For version 5.x: Clear all syntax items
 " For version 6.x: Quit when a syntax file was already loaded
@@ -34,7 +37,20 @@ syn keyword pascalType		array boolean ch
 syn keyword pascalType		string text variant
 
 
-syn keyword pascalTodo contained	TODO
+    " 20011222az: Added new items.
+syn keyword pascalTodo contained	TODO FIXME XXX DEBUG NOTE
+
+    " 20010723az: When wanted, highlight the trailing whitespace -- this is
+    " based on c_space_errors; to enable, use "pascal_space_errors".
+if exists("pascal_space_errors")
+    if !exists("pascal_no_trail_space_error")
+        syn match pascalSpaceError "\s\+$"
+    endif
+    if !exists("pascal_no_tab_space_error")
+        syn match pascalSpaceError " \+\t"me=e-1
+    endif
+endif
+
 
 
 " String
@@ -93,8 +109,7 @@ if exists("pascal_no_tabs")
   syn match pascalShowTab "\t"
 endif
 
-syn region pascalComment	start="(\*"  end="\*)" contains=pascalTodo
-syn region pascalComment	start="{"  end="}" contains=pascalTodo
+syn region pascalComment	start="(\*\|{"  end="\*)\|}" contains=pascalTodo,pascalSpaceError
 
 
 if !exists("pascal_no_functions")
@@ -113,7 +128,7 @@ if !exists("pascal_no_functions")
 
   if exists("pascal_traditional")
     " These functions do not seem to be defined in Turbo Pascal
-    syn keyword pascalFunction	Get Page Put
+    syn keyword pascalFunction	Get Page Put 
   endif
 
   " ordinal functions
@@ -129,9 +144,9 @@ if !exists("pascal_traditional")
   syn keyword pascalStatement	constructor destructor implementation inherited
   syn keyword pascalStatement	interface unit uses
   syn keyword pascalModifier	absolute assembler external far forward inline
-  syn keyword pascalModifier	interrupt near virtual
-  syn keyword pascalAcces	private public
-  syn keyword pascalStruct	object
+  syn keyword pascalModifier	interrupt near virtual 
+  syn keyword pascalAcces	private public 
+  syn keyword pascalStruct	object 
   syn keyword pascalOperator	shl shr xor
 
   syn region pascalPreProc	start="(\*\$"  end="\*)" contains=pascalTodo
@@ -151,7 +166,7 @@ if !exists("pascal_traditional")
   endif
 
   if exists("pascal_fpc")
-    syn region pascalComment	start="//" end="$"
+    syn region pascalComment        start="//" end="$" contains=pascalTodo,pascalSpaceError
     syn keyword pascalStatement	fail otherwise operator
     syn keyword pascalDirective	popstack
     syn keyword pascalPredefined self
@@ -165,7 +180,7 @@ if !exists("pascal_traditional")
   endif
 
   if exists("pascal_delphi")
-    syn region pascalComment	start="//"  end="$" contains=pascalTodo
+    syn region pascalComment	start="//"  end="$" contains=pascalTodo,pascalSpaceError
     syn keyword pascalType	SmallInt Int64
     syn keyword pascalType	Real48 Currency
     syn keyword pascalType	AnsiChar WideChar
@@ -176,7 +191,7 @@ if !exists("pascal_traditional")
     syn keyword pascalStruct	class dispinterface
     syn keyword pascalException	try except raise at on finally
     syn keyword pascalStatement	out
-    syn keyword pascalStatement	library package
+    syn keyword pascalStatement	library package 
     syn keyword pascalStatement	initialization finalization uses exports
     syn keyword pascalStatement	property out resourcestring threadvar
     syn keyword pascalModifier	contains
@@ -248,7 +263,7 @@ if !exists("pascal_traditional")
     syn keyword pascalConstant LightCyan LightRed LightMagenta Yellow White
     syn keyword pascalConstant Blink ScreenWidth ScreenHeight bw40
     syn keyword pascalConstant co40 bw80 co80 mono
-    syn keyword pascalPredefined TextChar
+    syn keyword pascalPredefined TextChar 
 
     " DOS unit
     syn keyword pascalFunction	AddDisk DiskFree DiskSize DosExitCode DosVersion
@@ -333,6 +348,7 @@ if version >= 508 || !exists("did_pascal
   HiLink pascalPredefined	pascalStatement
   HiLink pascalPreProc		PreProc
   HiLink pascalRepeat		Repeat
+  HiLink pascalSpaceError	Error
   HiLink pascalStatement	Statement
   HiLink pascalString		String
   HiLink pascalStringEscape	Special
new file mode 100644
--- /dev/null
+++ b/runtime/syntax/tpp.vim
@@ -0,0 +1,91 @@
+" Vim syntax file
+" Language:	tpp - Text Presentation Program
+" Maintainer:	Gerfried Fuchs <alfie@ist.org>
+" Filenames:	*.tpp
+" Last Change:	13. October 2004
+" URL:		http://alfie.ist.org/projects/vim/syntax/tpp.vim
+" License:	BSD
+"
+" Comments are very welcome - but please make sure that you are commenting on
+" the latest version of this file.
+" SPAM is _NOT_ welcome - be ready to be reported!
+
+" For version 5.x: Clear all syntax items
+" For version 6.x: Quit when a syntax file was already loaded
+if version < 600
+  syntax clear
+elseif exists("b:current_syntax")
+  finish
+endif
+
+if !exists("main_syntax")
+  let main_syntax = 'tpp'
+endif
+
+
+"" list of the legal switches/options
+syn match tppAbstractOptionKey contained "^--\%(author\|title\|date\) *" nextgroup=tppValue
+syn match tppPageLocalOptionKey contained "^--\%(heading\|center\|right\|sleep\|huge\|exec\) *" nextgroup=tppValue
+syn match tppPageLocalSwitchKey contained "^--\%(horline\|-\|\%(begin\|end\)\%(\%(shell\)\?output\|slide\%(left\|right\|top\|bottom\)\)\|\%(bold\|rev\|ul\)\%(on\|off\)\|withborder\)"
+syn match tppNewPageOptionKey contained "^--newpage *" nextgroup=tppValue
+syn match tppColorOptionKey contained "^--\%(\%(bg\|fg\)\?color\) *"
+syn match tppTimeOptionKey contained "^--sleep *"
+
+syn match tppValue contained ".*"
+syn match tppColor contained "\%(white\|yellow\|red\|green\|blue\|cyan\|magenta\|black\)"
+syn match tppTime contained "\d\+"
+
+syn region tppPageLocalSwitch start="^--" end="$" contains=tppPageLocalSwitchKey oneline
+syn region tppColorOption start="^--\%(\%(bg\|fg\)\?color\)" end="$" contains=tppColorOptionKey,tppColor oneline
+syn region tppTimeOption start="^--sleep" end="$" contains=tppTimeOptionKey,tppTime oneline
+syn region tppNewPageOption start="^--newpage" end="$" contains=tppNewPageOptionKey oneline
+syn region tppPageLocalOption start="^--\%(heading\|center\|right\|sleep\|huge\|exec\)" end="$" contains=tppPageLocalOptionKey oneline
+syn region tppAbstractOption start="^--\%(author\|title\|date\)" end="$" contains=tppAbstractOptionKey oneline
+
+if main_syntax != 'sh'
+  " shell command
+  if version < 600
+    syn include @tppShExec <sfile>:p:h/sh.vim
+  else
+    syn include @tppShExec syntax/sh.vim
+  endif
+  unlet b:current_syntax
+
+  syn region shExec matchgroup=tppPageLocalOptionKey start='^--exec *' keepend end='$' contains=@tppShExec
+
+endif
+
+
+" Define the default highlighting.
+" For version 5.7 and earlier: only when not done already
+" For version 5.8 and later: only when an item doesn't have highlighting yet
+if version >= 508 || !exists("did_tpp_syn_inits")
+  if version < 508
+    let did_tpp_syn_inits = 1
+    command -nargs=+ HiLink hi link <args>
+  else
+    command -nargs=+ HiLink hi def link <args>
+  endif
+
+  HiLink tppAbstractOptionKey		Special
+  HiLink tppPageLocalOptionKey		Keyword
+  HiLink tppPageLocalSwitchKey		Keyword
+  HiLink tppColorOptionKey		Keyword
+  HiLink tppTimeOptionKey		Comment
+  HiLink tppNewPageOptionKey		PreProc
+  HiLink tppValue			String
+  HiLink tppColor			String
+  HiLink tppTime			Number
+  HiLink tppAbstractOption		Error
+  HiLink tppPageLocalOption		Error
+  HiLink tppPageLocalSwitch		Error
+  HiLink tppColorOption			Error
+  HiLink tppNewPageOption		Error
+  HiLink tppTimeOption			Error
+
+  delcommand HiLink
+endif
+
+let b:current_syntax = "tpp"
+
+" vim: ts=8 sw=2
--- a/src/buffer.c
+++ b/src/buffer.c
@@ -1413,6 +1413,12 @@ enter_buffer(buf)
 #endif
 	scroll_cursor_halfway(FALSE);	/* redisplay at correct position */
 
+#ifdef FEAT_NETBEANS_INTG
+    /* Send fileOpened event because we've changed buffers. */
+    if (usingNetbeans && isNetbeansBuffer(curbuf))
+	netbeans_file_activated(curbuf);
+#endif
+
 #if defined(FEAT_NETBEANS_INTG) || defined(FEAT_SUN_WORKSHOP)
     /* Change directories when the acd option is set on. */
     if (p_acd && curbuf->b_ffname != NULL
--- a/src/edit.c
+++ b/src/edit.c
@@ -7478,6 +7478,15 @@ ins_tab()
 		    for (temp = i; --temp >= 0; )
 			replace_join(repl_off);
 	    }
+#ifdef FEAT_NETBEANS_INTG
+	    if (usingNetbeans)
+	    {
+		netbeans_removed(curbuf, fpos.lnum, cursor->col,
+							       (long)(i + 1));
+		netbeans_inserted(curbuf, fpos.lnum, cursor->col,
+							   (char_u *)"\t", 1);
+	    }
+#endif
 	    cursor->col -= i;
 
 #ifdef FEAT_VREPLACE
--- a/src/ex_docmd.c
+++ b/src/ex_docmd.c
@@ -406,6 +406,9 @@ static void	ex_folddo __ARGS((exarg_T *e
 #ifndef FEAT_SUN_WORKSHOP
 # define ex_wsverb		ex_ni
 #endif
+#ifndef FEAT_NETBEANS_INTG
+# define ex_nbkey		ex_ni
+#endif
 
 #ifndef FEAT_EVAL
 # define ex_debug		ex_ni
--- a/src/ex_getln.c
+++ b/src/ex_getln.c
@@ -2892,6 +2892,7 @@ nextwild(xp, type, options)
     vim_free(p2);
 
     redrawcmd();
+    cursorcmd();
 
     /* When expanding a ":map" command and no matches are found, assume that
      * the key is supposed to be inserted literally */
--- a/src/fileio.c
+++ b/src/fileio.c
@@ -61,9 +61,7 @@ static char_u *check_for_cryptkey __ARGS
 #ifdef UNIX
 static void set_file_time __ARGS((char_u *fname, time_t atime, time_t mtime));
 #endif
-static void msg_add_fname __ARGS((buf_T *, char_u *));
 static int msg_add_fileformat __ARGS((int eol_type));
-static void msg_add_lines __ARGS((int, long, long));
 static void msg_add_eol __ARGS((void));
 static int check_mtime __ARGS((buf_T *buf, struct stat *s));
 static int time_differs __ARGS((long t1, long t2));
@@ -2867,7 +2865,9 @@ buf_write(buf, fname, sfname, start, end
 	     */
 	    if (buf->b_changed || isNetbeansModified(buf))
 	    {
-		netbeans_save_buffer(buf);
+		--no_wait_return;		/* may wait for return now */
+		msg_scroll = msg_save;
+		netbeans_save_buffer(buf);	/* no error checking... */
 		return retval;
 	    }
 	    else
@@ -4403,7 +4403,7 @@ nofail:
 /*
  * Put file name into IObuff with quotes.
  */
-    static void
+    void
 msg_add_fname(buf, fname)
     buf_T	*buf;
     char_u	*fname;
@@ -4450,7 +4450,7 @@ msg_add_fileformat(eol_type)
 /*
  * Append line and character count to IObuff.
  */
-    static void
+    void
 msg_add_lines(insert_space, lnum, nchars)
     int	    insert_space;
     long    lnum;
@@ -5919,6 +5919,9 @@ buf_check_timestamp(buf, focus)
 #ifdef FEAT_AUTOCMD
 	    || busy
 #endif
+#ifdef FEAT_NETBEANS_INTG
+	    || isNetbeansBuffer(buf)
+#endif
 	    )
 	return 0;
 
--- a/src/fold.c
+++ b/src/fold.c
@@ -1925,7 +1925,6 @@ get_foldtext(wp, lnum, lnume, foldinfo, 
 	win_T	*save_curwin;
 	int	level;
 	char_u	*p;
-	int	len;
 
 	/* Set "v:foldstart" and "v:foldend". */
 	set_vim_var_nr(VV_FOLDSTART, lnum);
@@ -1959,6 +1958,8 @@ get_foldtext(wp, lnum, lnume, foldinfo, 
 	    for (p = text; *p != NUL; ++p)
 	    {
 # ifdef FEAT_MBYTE
+		int	len;
+
 		if (has_mbyte && (len = (*mb_ptr2len_check)(p)) > 1)
 		{
 		    if (!vim_isprintc((*mb_ptr2char)(p)))
--- a/src/globals.h
+++ b/src/globals.h
@@ -1389,6 +1389,7 @@ EXTERN char_u e_invexprmsg[]	INIT(=N_("E
 #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_("E680: NetBeans does not allow changes in read-only files"));
 #endif
 #ifdef MACOS_X_UNIX
 EXTERN short disallow_gui	INIT(= FALSE);
--- a/src/gui_w32.c
+++ b/src/gui_w32.c
@@ -1224,10 +1224,6 @@ gui_mch_init(void)
     s_findrep_struct.wFindWhatLen = MSWIN_FR_BUFSIZE;
     s_findrep_struct.wReplaceWithLen = MSWIN_FR_BUFSIZE;
 #endif
-#ifdef FEAT_NETBEANS_INTG
-    if (usingNetbeans)
-	netbeans_w32_connect();
-#endif
 
     return OK;
 }
--- a/src/nbdebug.c
+++ b/src/nbdebug.c
@@ -94,7 +94,6 @@ nbdebug_log_init(
 		} else {
 			nb_dlevel = NB_TRACE;	/* default level */
 		}
-		/* XSetErrorHandler(errorHandler); */
 	}
 
 }    /* end nbdebug_log_init */
@@ -126,7 +125,7 @@ nbdbg(
 {
 	va_list		 ap;
 
-	if (nb_debug != NULL) {
+	if (nb_debug != NULL && nb_dlevel & NB_TRACE) {
 		va_start(ap, fmt);
 		vfprintf(nb_debug, fmt, ap);
 		va_end(ap);
@@ -136,6 +135,23 @@ nbdbg(
 }    /* end nbdbg */
 
 
+void
+nbprt(
+	char		*fmt,
+	...)
+{
+	va_list		 ap;
+
+	if (nb_debug != NULL && nb_dlevel & NB_PRINT) {
+		va_start(ap, fmt);
+		vfprintf(nb_debug, fmt, ap);
+		va_end(ap);
+		fflush(nb_debug);
+	}
+
+}    /* end nbprt */
+
+
 static int
 lookup(
 	char		*file)
--- a/src/nbdebug.h
+++ b/src/nbdebug.h
@@ -24,10 +24,12 @@
 #endif
 
 #define nbdebug(a) nbdbg##a
+#define nbprint(a) nbprt##a
 
 #define NB_TRACE		0x00000001
 #define NB_TRACE_VERBOSE	0x00000002
 #define NB_TRACE_COLONCMD	0x00000004
+#define NB_PRINT		0x00000008
 #define NB_DEBUG_ALL		0xffffffff
 
 #define NBDLEVEL(flags)		(nb_debug != NULL && (nb_dlevel & (flags)))
@@ -43,6 +45,7 @@ typedef enum {
 
 
 void		 nbdbg(char *, ...);
+void		 nbprt(char *, ...);
 void		 nbtrace(char *, ...);
 
 void nbdebug_wait __ARGS((u_int wait_flags, char *wait_var, u_int wait_secs));
@@ -58,7 +61,7 @@ extern u_int	 nb_dlevel;		/* nb_debug ve
 #endif
 
 /*
- * The following 2 stubs are needed because a macro cannot be used because of
+ * The following 3 stubs are needed because a macro cannot be used because of
  * the variable number of arguments.
  */
 
@@ -69,6 +72,12 @@ nbdbg(
 {
 }
 
+void
+nbprt(
+	char		*fmt,
+	...)
+{
+}
 
 void
 nbtrace(
--- a/src/netbeans.c
+++ b/src/netbeans.c
@@ -62,12 +62,14 @@
 
 /* The first implementation (working only with Netbeans) returned "1.1".  The
  * protocol implemented here also supports A-A-P. */
-static char *ExtEdProtocolVersion = "2.2";
+static char *ExtEdProtocolVersion = "2.3";
 
 static long pos2off __ARGS((buf_T *, pos_T *));
 static pos_T *off2pos __ARGS((buf_T *, long));
 static pos_T *get_off_or_lnum __ARGS((buf_T *buf, char_u **argp));
 static long get_buf_size __ARGS((buf_T *));
+static void netbeans_keystring __ARGS((int key, char *keystr));
+static void special_keys __ARGS((char_u *args));
 
 static void netbeans_connect __ARGS((void));
 static int getConnInfo __ARGS((char *file, char **host, char **port, char **password));
@@ -102,7 +104,6 @@ static int cmdno;			/* current command n
 static int haveConnection = FALSE;	/* socket is connected and
 					   initialization is done */
 static int oldFire = 1;
-static int exit_delay = 2;		/* exit delay in seconds */
 
 #ifdef FEAT_BEVAL
 # if defined(FEAT_GUI_MOTIF) || defined(FEAT_GUI_ATHENA)
@@ -111,6 +112,20 @@ extern Widget	textArea;
 BalloonEval	*balloonEval = NULL;
 #endif
 
+#ifdef FEAT_GUI_MOTIF
+static void netbeans_Xt_connect __ARGS((void *context));
+#else
+# ifdef FEAT_GUI_GTK
+static void netbeans_gtk_connect __ARGS((void));
+# else
+#  ifdef FEAT_GUI_W32
+static void netbeans_w32_connect __ARGS((void));
+#  endif
+# endif
+#endif
+
+static int dosetvisible = FALSE;
+
 /*
  * Include the debugging code if wanted.
  */
@@ -119,8 +134,8 @@ BalloonEval	*balloonEval = NULL;
 #endif
 
 /* Connect back to Netbeans process */
-#if defined(FEAT_GUI_MOTIF) || defined(PROTO)
-    void
+#ifdef FEAT_GUI_MOTIF
+    static void
 netbeans_Xt_connect(void *context)
 {
     netbeans_connect();
@@ -148,8 +163,8 @@ netbeans_disconnect(void)
 }
 #endif /* FEAT_MOTIF_GUI */
 
-#if defined(FEAT_GUI_GTK) || defined(PROTO)
-    void
+#ifdef FEAT_GUI_GTK
+    static void
 netbeans_gtk_connect(void)
 {
 # ifdef FEAT_BEVAL
@@ -189,7 +204,7 @@ netbeans_disconnect(void)
 }
 #endif /* FEAT_GUI_GTK */
 
-#if defined(FEAT_GUI_W32) || defined(PROTO)
+#ifdef FEAT_GUI_W32
     void
 netbeans_w32_connect(void)
 {
@@ -412,8 +427,6 @@ netbeans_connect(void)
     sprintf(buf, "0:version=0 \"%s\"\n", ExtEdProtocolVersion);
     nb_send(buf, "externaleditor_version");
 
-    nbdebug(("netbeans_connect: Connection succeeded\n"));
-
 /*    nb_init_graphics();  delay until needed */
 
     haveConnection = TRUE;
@@ -839,8 +852,15 @@ nb_parse_cmd(char_u *cmd)
 
     if (nb_do_cmd(bufno, (char_u *)verb, isfunc, cmdno, (char_u *)q) == FAIL)
     {
+#ifdef NBDEBUG
+	/*
+	 * This happens because the ExtEd can send a cammand or 2 after
+	 * doing a stopDocumentListen command. It doesn't harm anything
+	 * so I'm disabling it except for debugging.
+	 */
 	nbdebug(("nb_parse_cmd: Command error for \"%s\"\n", cmd));
 	EMSG("E629: bad return from nb_do_cmd");
+#endif
     }
 }
 
@@ -849,9 +869,10 @@ struct nbbuf_struct
     buf_T		*bufp;
     unsigned int	 fireChanges:1;
     unsigned int	 initDone:1;
+    unsigned int	 insertDone:1;
     unsigned int	 modified:1;
+    int			 nbbuf_number;
     char		*displayname;
-    char_u		*partial_line;
     int			*signmap;
     short_u		 signmaplen;
     short_u		 signmapused;
@@ -871,6 +892,8 @@ static int  mapsigntype __ARGS((nbbuf_T 
 static void addsigntype __ARGS((nbbuf_T *, int localsigntype, char_u *typeName,
 			char_u *tooltip, char_u *glyphfile,
 			int usefg, int fg, int usebg, int bg));
+static void print_read_msg __ARGS((nbbuf_T *buf));
+static void print_save_msg __ARGS((nbbuf_T *buf, long nchars));
 
 static int curPCtype = -1;
 
@@ -894,7 +917,7 @@ nb_getbufno(buf_T *bufp)
     int
 isNetbeansBuffer(buf_T *bufp)
 {
-    return bufp->b_netbeans_file;
+    return usingNetbeans && bufp->b_netbeans_file;
 }
 
 /*
@@ -909,10 +932,15 @@ isNetbeansBuffer(buf_T *bufp)
     int
 isNetbeansModified(buf_T *bufp)
 {
-    int bufno = nb_getbufno(bufp);
-
-    if (bufno > 0)
-	return buf_list[bufno].modified;
+    if (usingNetbeans && bufp->b_netbeans_file)
+    {
+	int bufno = nb_getbufno(bufp);
+
+	if (bufno > 0)
+	    return buf_list[bufno].modified;
+	else
+	    return FALSE;
+    }
     else
 	return FALSE;
 }
@@ -1004,11 +1032,6 @@ netbeans_end(void)
 	if (sd >= 0)
 	    sock_write(sd, buf, STRLEN(buf));  /* ignore errors */
     }
-
-    /* Give NetBeans a chance to write some clean-up cmds to the socket before
-     * we close the connection.  Other clients may set the delay to zero. */
-    if (exit_delay > 0)
-	sleep(exit_delay);
 }
 
 /*
@@ -1049,10 +1072,9 @@ nb_reply_nil(int cmdno)
     if (!haveConnection)
 	return;
 
+    nbdebug(("REP %d: <none>\n", cmdno));
+
     sprintf(reply, "%d\n", cmdno);
-
-    nbdebug(("    REPLY: %s", reply));
-
     nb_send(reply, "nb_reply_nil");
 }
 
@@ -1069,10 +1091,10 @@ nb_reply_text(int cmdno, char_u *result)
     if (!haveConnection)
 	return;
 
+    nbdebug(("REP %d: %s\n", cmdno, (char *)result));
+
     reply = alloc(STRLEN(result) + 32);
     sprintf((char *)reply, "%d %s\n", cmdno, (char *)result);
-
-    nbdebug(("    REPLY: %s", reply));
     nb_send((char *)reply, "nb_reply_text");
 
     vim_free(reply);
@@ -1090,10 +1112,9 @@ nb_reply_nr(int cmdno, long result)
     if (!haveConnection)
 	return;
 
+    nbdebug(("REP %d: %ld\n", cmdno, result));
+
     sprintf(reply, "%d %ld\n", cmdno, result);
-
-    nbdebug(("REPLY: %s", reply));
-
     nb_send(reply, "nb_reply_nr");
 }
 
@@ -1277,13 +1298,6 @@ nb_do_cmd(
 	    else
 	    {
 		len = get_buf_size(buf->bufp);
-		/* adjust for a partial last line */
-		if (buf->partial_line != NULL)
-		{
-		    nbdebug(("    Adjusting buffer len for partial last line: %d\n",
-				STRLEN(buf->partial_line)));
-		    len += STRLEN(buf->partial_line);
-		}
 	    }
 	    nb_reply_nr(cmdno, len);
 /* =====================================================================*/
@@ -1327,8 +1341,8 @@ nb_do_cmd(
 			    p += STRLEN(line);
 			    *p++ = '\\';
 			    *p++ = 'n';
+			    vim_free(line);
 			}
-			vim_free(line);
 		    }
 		    *p++ = '\"';
 		    *p = '\0';
@@ -1448,7 +1462,7 @@ nb_do_cmd(
 	    pos_T	mypos;
 	    char_u	*to_free;
 	    char_u	*nl;
-	    int		lnum;
+	    linenr_T	lnum;
 	    pos_T	old_w_cursor;
 	    int		old_b_changed;
 
@@ -1467,6 +1481,10 @@ nb_do_cmd(
 	    /* get text to be inserted */
 	    args = skipwhite(args);
 	    args = to_free = (char_u *)nb_unquote(args, NULL);
+	    /*
+	    nbdebug(("    CHUNK[%d]: %d bytes at offset %d\n",
+		    buf->bufp->b_ml.ml_line_count, STRLEN(args), off));
+	    */
 
 	    if (buf == NULL || buf->bufp == NULL)
 	    {
@@ -1476,41 +1494,28 @@ nb_do_cmd(
 	    }
 	    else if (args != NULL)
 	    {
-		/* We need to detect EOL style
+		/*
+		 * We need to detect EOL style
 		 * because addAnno passes char-offset
 		 */
 		int    ff_detected = EOL_UNKNOWN;
 		int    buf_was_empty = (buf->bufp->b_ml.ml_flags & ML_EMPTY);
+		char_u lbuf[4096];  /* size of largest insert sent by exted */
+		int    lbuf_len = 0;
 
 		oldFire = netbeansFireChanges;
 		netbeansFireChanges = 0;
+		lbuf[0] = '\0';
 
 		if (curbuf != buf->bufp)
 		    set_curbuf(buf->bufp, DOBUF_GOTO);
 		old_b_changed = buf->bufp->b_changed;
 
-		if (buf->partial_line != NULL)
-		{
-		    nbdebug(("    Combining with partial line\n"));
-		    off -= STRLEN(buf->partial_line);
-		    pos = off2pos(buf->bufp, off);
-		    if (pos && pos->col != 0)
-			off -= pos->col;  /* want start of line */
-		    buf->partial_line = vim_realloc(buf->partial_line,
-				STRLEN(buf->partial_line) + STRLEN(args) + 1);
-		    STRCAT(buf->partial_line, args);
-		    vim_free(to_free);
-		    args = buf->partial_line;
-		    buf->partial_line = NULL;
-		    to_free = args;
-		}
 		pos = off2pos(buf->bufp, off);
 		if (pos)
 		{
 		    if (pos->lnum == 0)
 			pos->lnum = 1;
-		    nbdebug(("    POSITION: line = %d, col = %d\n",
-							pos->lnum, pos->col));
 		}
 		else
 		{
@@ -1522,37 +1527,60 @@ nb_do_cmd(
 		    pos->coladd = 0;
 #endif
 		    pos->lnum = buf->bufp->b_ml.ml_line_count;
-		    nbdebug(("    POSITION: line = %d (EOF)\n", pos->lnum));
 		}
 		lnum = pos->lnum;
 		old_w_cursor = curwin->w_cursor;
 		curwin->w_cursor = *pos;
 
+		if (buf->bufp->b_start_eol == FALSE && lnum > 0)
+		{
+		    /* Append to a partial line */
+		    char_u *partial = ml_get(lnum);
+
+		    if (partial != IObuff)
+			STRCPY(lbuf, partial);
+			lbuf_len = STRLEN(partial);
+			ml_delete(lnum, FALSE);
+		}
+
 		doupdate = 1;
 		while (*args)
 		{
 		    nl = (char_u *)strchr((char *)args, '\n');
-		    if (!nl)
+		    if (nl)
 		    {
-			nbdebug(("    PARTIAL[%d]: %s\n", lnum, args));
-			break;
+			STRNCAT(lbuf, args, nl - args);
+			lbuf[lbuf_len + nl - args] = '\0';
+			args += nl - args + 1;
 		    }
-		    /* EOL detecting.
-		     * Not sure how to deal with '\n' on Mac
-		     * it will fail already in nl = ... above
+		    else
+		    {
+			STRCPY(lbuf, args);
+			args += STRLEN(lbuf);
+		    }
+
+		    /*
+		     * EOL detecting. Not sure how to deal with '\n' on Mac.
 		     */
-		    if (buf_was_empty && /* There is need to detect EOLs */
-			    /* AND: string is empty */
-			    (args == nl
-			     /* OR hasn't '\r' at the end */
-			    || *(nl - 1) != '\r'))
+		    if (buf_was_empty && nl && *(nl - 1) != '\r')
 			ff_detected = EOL_UNIX;
 
-		    *nl = '\0';
-		    nbdebug(("    INSERT[%d]: %s\n", lnum, args));
-		    ml_append((linenr_T)(lnum++ - 1), args,
-						     STRLEN(args) + 1, FALSE);
-		    args = nl + 1;
+		    /* nbdebug(("    INSERT[%d]: %s\n", lnum, lbuf)); */
+		    ml_append((linenr_T)(lnum++ - 1), lbuf,
+						     STRLEN(lbuf) + 1, FALSE);
+		    lbuf[0] = '\0';	/* empty buffer */
+		    lbuf_len = 0;
+		}
+
+		if (*(args - 1) == '\n')
+		{
+		    buf->bufp->b_p_eol = TRUE;
+		    buf->bufp->b_start_eol = TRUE;
+		}
+		else
+		{
+		    buf->bufp->b_p_eol = FALSE;
+		    buf->bufp->b_start_eol = FALSE;
 		}
 
 		appended_lines_mark(pos->lnum - 1, lnum - pos->lnum);
@@ -1566,18 +1594,9 @@ nb_do_cmd(
 			ff_detected = EOL_DOS;
 		    set_fileformat(ff_detected, OPT_LOCAL);
 		    buf->bufp->b_start_ffc = *buf->bufp->b_p_ff;
+		    ml_delete(curbuf->b_ml.ml_line_count, FALSE);
 		}
 
-		if (*args)
-		{
-		    /*
-		     * Incomplete line, squirrel away and wait for next insert.
-		     */
-		    nbdebug(("    PARTIAL-SAVED: %s\n", args));
-		    buf->partial_line = vim_realloc(buf->partial_line,
-							    STRLEN(args) + 1);
-		    STRCPY(buf->partial_line, args);
-		}
 		curwin->w_cursor = old_w_cursor;
 
 		/*
@@ -1614,16 +1633,31 @@ nb_do_cmd(
 	    }
 	    vim_free(buf->displayname);
 	    buf->displayname = NULL;
-	    nbdebug(("    CREATE %d\n", bufno));
 
 	    netbeansReadFile = 0; /* don't try to open disk file */
 	    do_ecmd(0, NULL, 0, 0, ECMD_ONE, ECMD_HIDE + ECMD_OLDBUF);
 	    netbeansReadFile = 1;
 	    buf->bufp = curbuf;
 	    maketitle();
+	    buf->insertDone = FALSE;
 	    gui_update_menus(0);
 /* =====================================================================*/
 	}
+	else if (streq((char *)cmd, "insertDone"))
+	{
+	    buf->bufp->b_start_eol = *args == 'T';
+	    buf->insertDone = TRUE;
+	    args += 2;
+	    buf->bufp->b_p_ro = *args == 'T';
+	    print_read_msg(buf);
+/* =====================================================================*/
+	}
+	else if (streq((char *)cmd, "saveDone"))
+	{
+	    long savedChars = atol((char *) args);
+	    print_save_msg(buf, savedChars);
+/* =====================================================================*/
+	}
 	else if (streq((char *)cmd, "startDocumentListen"))
 	{
 	    if (buf == NULL)
@@ -1642,11 +1676,20 @@ nb_do_cmd(
 		return FAIL;
 	    }
 	    buf->fireChanges = 0;
-	    if (buf->bufp != NULL
-		    && buf->bufp->b_was_netbeans_file
-		    && !buf->bufp->b_netbeans_file)
-		EMSGN(_("E658: NetBeans connection lost for buffer %ld"),
+	    if (buf->bufp != NULL)
+	    {
+		if (buf->bufp->b_was_netbeans_file
+				&& !buf->bufp->b_netbeans_file)
+		    EMSGN(_("E658: NetBeans connection lost for buffer %ld"),
 							   buf->bufp->b_fnum);
+		else
+		{
+		    do_bufdel(DOBUF_DEL, (char_u *)"", 1, buf->bufp->b_fnum,
+				buf->bufp->b_fnum, TRUE);
+		    /* add_to_input_buf((char_u *)"\f", 1); */
+		    vim_memset(buf, 0, sizeof(nbbuf_T));
+		}
+	    }
 /* =====================================================================*/
 	}
 	else if (streq((char *)cmd, "setTitle"))
@@ -1658,7 +1701,6 @@ nb_do_cmd(
 	    }
 	    vim_free(buf->displayname);
 	    buf->displayname = nb_unquote(args, NULL);
-	    nbdebug(("    SETTITLE %d %s\n", bufno, buf->displayname));
 /* =====================================================================*/
 	}
 	else if (streq((char *)cmd, "initDone"))
@@ -1669,7 +1711,7 @@ nb_do_cmd(
 		return FAIL;
 	    }
 	    doupdate = 1;
-	    buf->initDone = 1;
+	    buf->initDone = TRUE;
 	    if (curbuf != buf->bufp)
 		set_curbuf(buf->bufp, DOBUF_GOTO);
 #if defined(FEAT_AUTOCMD)
@@ -1683,7 +1725,7 @@ nb_do_cmd(
 	else if (streq((char *)cmd, "setBufferNumber")
 		|| streq((char *)cmd, "putBufferNumber"))
 	{
-	    char_u	*to_free;
+	    char_u	*path;
 	    buf_T	*bufp;
 
 	    if (buf == NULL)
@@ -1691,17 +1733,18 @@ nb_do_cmd(
 		EMSG("E641: null buf in setBufferNumber");
 		return FAIL;
 	    }
-	    to_free = (char_u *)nb_unquote(args, NULL);
-	    if (to_free == NULL)
+	    path = (char_u *)nb_unquote(args, NULL);
+	    if (path == NULL)
 		return FAIL;
-	    bufp = buflist_findname(to_free);
-	    vim_free(to_free);
+	    bufp = buflist_findname(path);
+	    vim_free(path);
 	    if (bufp == NULL)
 	    {
 		EMSG2("E642: File %s not found in setBufferNumber", args);
 		return FAIL;
 	    }
 	    buf->bufp = bufp;
+	    buf->nbbuf_number = bufp->b_fnum;
 
 	    /* "setBufferNumber" has the side effect of jumping to the buffer
 	     * (don't know why!).  Don't do that for "putBufferNumber". */
@@ -1709,7 +1752,7 @@ nb_do_cmd(
 		coloncmd(":buffer %d", bufp->b_fnum);
 	    else
 	    {
-		buf->initDone = 1;
+		buf->initDone = TRUE;
 
 		/* handle any postponed key commands */
 		handle_key_queue();
@@ -1731,7 +1774,6 @@ nb_do_cmd(
 	    }
 	    vim_free(buf->displayname);
 	    buf->displayname = nb_unquote(args, NULL);
-	    nbdebug(("    SETFULLNAME %d %s\n", bufno, buf->displayname));
 
 	    netbeansReadFile = 0; /* don't try to open disk file */
 	    do_ecmd(0, (char_u *)buf->displayname, 0, 0, ECMD_ONE,
@@ -1752,11 +1794,10 @@ nb_do_cmd(
 	    /* Edit a file: like create + setFullName + read the file. */
 	    vim_free(buf->displayname);
 	    buf->displayname = nb_unquote(args, NULL);
-	    nbdebug(("    EDITFILE %d %s\n", bufno, buf->displayname));
 	    do_ecmd(0, (char_u *)buf->displayname, NULL, NULL, ECMD_ONE,
 						     ECMD_HIDE + ECMD_OLDBUF);
 	    buf->bufp = curbuf;
-	    buf->initDone = 1;
+	    buf->initDone = TRUE;
 	    doupdate = 1;
 #if defined(FEAT_TITLE)
 	    maketitle();
@@ -1771,22 +1812,20 @@ nb_do_cmd(
 /*		EMSG("E645: null bufp in setVisible"); */
 		return FAIL;
 	    }
-	    if (streq((char *)args, "T"))
+	    if (streq((char *)args, "T") && buf->bufp != curbuf)
 	    {
 		exarg_T exarg;
 		exarg.cmd = (char_u *)"goto";
 		exarg.forceit = FALSE;
+		dosetvisible = TRUE;
 		goto_buffer(&exarg, DOBUF_FIRST, FORWARD, buf->bufp->b_fnum);
 		doupdate = 1;
+		dosetvisible = FALSE;
 
 		/* Side effect!!!. */
 		if (!gui.starting)
 		    gui_mch_set_foreground();
 	    }
-	    else
-	    {
-		/* bury the buffer - not yet */
-	    }
 /* =====================================================================*/
 	}
 	else if (streq((char *)cmd, "raise"))
@@ -1819,6 +1858,19 @@ nb_do_cmd(
 	    buf->modified = buf->bufp->b_changed;
 /* =====================================================================*/
 	}
+	else if (streq((char *)cmd, "setModtime"))
+	{
+	    buf->bufp->b_mtime = atoi((char *) args);
+/* =====================================================================*/
+	}
+	else if (streq((char *)cmd, "setReadOnly"))
+	{
+	    if (streq((char *)args, "T"))
+		buf->bufp->b_p_ro = TRUE;
+	    else
+		buf->bufp->b_p_ro = FALSE;
+/* =====================================================================*/
+	}
 	else if (streq((char *)cmd, "setMark"))
 	{
 	    /* not yet */
@@ -1890,7 +1942,7 @@ nb_do_cmd(
 	    /* Quit a hit-return or more prompt. */
 	    if (State == HITRETURN || State == ASKMORE)
 	    {
-		add_to_input_buf((char_u *)"\003", 1);
+		/* add_to_input_buf((char_u *)"\003", 1); */
 #ifdef FEAT_GUI_GTK
 		if (gtk_main_level() > 0)
 		    gtk_main_quit();
@@ -1931,10 +1983,7 @@ nb_do_cmd(
 	}
 	else if (streq((char *)cmd, "setExitDelay"))
 	{
-	    /* New in version 2.1. */
-	    cp = (char *)args;
-	    exit_delay = strtol(cp, &cp, 10);
-	    args = (char_u *)cp;
+	    /* Only used in version 2.1. */
 /* =====================================================================*/
 	}
 	else if (streq((char *)cmd, "defineAnnoType"))
@@ -2124,7 +2173,8 @@ nb_do_cmd(
 	    {
 		first = *pos;
 		pos = off2pos(buf->bufp, off + len - 1);
-		if (pos != NULL && pos->col == 0) {
+		if (pos != NULL && pos->col == 0)
+		{
 			/*
 			 * In Java Swing the offset is a position between 2
 			 * characters. If col == 0 then we really want the
@@ -2185,6 +2235,10 @@ nb_do_cmd(
 	}
 	else if (streq((char *)cmd, "save"))
 	{
+	    /*
+	     * NOTE - This command is obsolete wrt NetBeans. Its left in
+	     * only for historical reasons.
+	     */
 	    if (buf == NULL || buf->bufp == NULL)
 	    {
 		nbdebug(("    null bufp in %s command", cmd));
@@ -2229,9 +2283,19 @@ nb_do_cmd(
 		buf->bufp->b_netbeans_file = FALSE;
 /* =====================================================================*/
 	}
+	else if (streq((char *)cmd, "specialKeys"))
+	{
+	    special_keys(args);
+/* =====================================================================*/
+	}
+	else if (streq((char *)cmd, "actionMenuItem"))
+	{
+	    /* not used yet */
+/* =====================================================================*/
+	}
 	else if (streq((char *)cmd, "version"))
 	{
-	    nbdebug(("    Version = %s\n", (char *) args));
+	    /* not used yet */
 	}
 	/*
 	 * Unrecognized command is ignored.
@@ -2243,6 +2307,12 @@ nb_do_cmd(
 	doupdate = 0;
     }
 
+    /*
+     * Is this needed? I moved the netbeans_Xt_connect() later during startup
+     * and it may no longer be necessary. If its not needed then needupdate
+     * and doupdate can also be removed.
+     */
+
     if (buf != NULL && buf->initDone && doupdate)
     {
 	update_screen(NOT_VALID);
@@ -2253,7 +2323,7 @@ nb_do_cmd(
 	/* Quit a hit-return or more prompt. */
 	if (State == HITRETURN || State == ASKMORE)
 	{
-	    add_to_input_buf((char_u *)"\003", 1);
+	    /* add_to_input_buf((char_u *)"\003", 1);*/
 #ifdef FEAT_GUI_GTK
 	    if (gtk_main_level() > 0)
 		gtk_main_quit();
@@ -2293,6 +2363,59 @@ coloncmd(char *cmd, ...)
 
 
 /*
+ * Parse the specialKeys argument and issue the appropriate map commands.
+ */
+    static void
+special_keys(char_u *args)
+{
+    char *save_str = nb_unquote(args, NULL);
+    char *tok = strtok(save_str, " ");
+    char *sep;
+    char keybuf[64];
+    char cmdbuf[256];
+
+    while (tok != NULL)
+    {
+	int i = 0;
+
+	if ((sep = strchr(tok, '-')) != NULL)
+	{
+	    *sep = NULL;
+	    while (*tok)
+	    {
+		switch (*tok)
+		{
+		    case 'A':
+		    case 'M':
+		    case 'C':
+		    case 'S':
+			keybuf[i++] = *tok;
+			keybuf[i++] = '-';
+			break;
+		}
+		tok++;
+	    }
+	    tok++;
+	}
+
+	strcpy(&keybuf[i], tok);
+	sprintf(cmdbuf, "<silent><%s> :nbkey %s<CR>", keybuf, keybuf);
+	do_map(0, (char_u *)cmdbuf, NORMAL, FALSE);
+	tok = strtok(NULL, " ");
+    }
+    vim_free(save_str);
+}
+
+
+    void
+ex_nbkey(eap)
+    exarg_T	*eap;
+{
+    netbeans_keystring(0, (char *)eap->arg);
+}
+
+
+/*
  * Initialize highlights and signs for use by netbeans  (mostly obsolete)
  */
     static void
@@ -2412,8 +2535,10 @@ netbeans_beval_cb(
 	{
 	    p = nb_quote(text);
 	    if (p != NULL)
+	    {
 		sprintf(buf, "0:balloonText=%d \"%s\"\n", cmdno, p);
-	    vim_free(p);
+		vim_free(p);
+	    }
 	    nbdebug(("EVT: %s", buf));
 	    nb_send(buf, "netbeans_beval_cb");
 	}
@@ -2430,6 +2555,15 @@ netbeans_startup_done(void)
 {
     char *cmd = "0:startupDone=0\n";
 
+    if (usingNetbeans)
+#ifdef FEAT_GUI_MOTIF
+	netbeans_Xt_connect(app_context);
+#else
+# ifdef FEAT_GUI_GTK
+	netbeans_gtk_connect();
+# endif
+#endif
+
     if (!haveConnection)
 	return;
 
@@ -2461,6 +2595,23 @@ netbeans_startup_done(void)
 #endif
 }
 
+/*
+ * Tell netbeans that we're exiting. This should be called right
+ * before calling exit.
+ */
+    void
+netbeans_send_disconnect()
+{
+    char buf[128];
+
+    if (haveConnection)
+    {
+	sprintf(buf, "0:disconnect=%d\n", cmdno);
+	nbdebug(("EVT: %s", buf));
+	nb_send(buf, "netbeans_disconnect");
+    }
+}
+
 #if defined(FEAT_GUI_MOTIF) || defined(FEAT_GUI_W32) || defined(PROTO)
 /*
  * Tell netbeans that the window was moved or resized.
@@ -2475,27 +2626,67 @@ netbeans_frame_moved(int new_x, int new_
 
     sprintf(buf, "0:geometry=%d %d %d %d %d\n",
 		    cmdno, (int)Columns, (int)Rows, new_x, new_y);
-    nbdebug(("EVT: %s", buf));
+    /*nbdebug(("EVT: %s", buf)); happens too many times during a move */
     nb_send(buf, "netbeans_frame_moved");
 }
 #endif
 
 /*
+ * Tell netbeans the user opened or activated a file.
+ */
+    void
+netbeans_file_activated(buf_T *bufp)
+{
+    int bufno = nb_getbufno(bufp);
+    nbbuf_T *bp = nb_get_buf(bufno);
+    char    buffer[2*MAXPATHL];
+    char_u  *q;
+
+    if (!haveConnection || dosetvisible)
+	return;
+
+    q = nb_quote(bufp->b_ffname);
+    if (q == NULL || bp == NULL || bufp == NULL)
+	return;
+
+    sprintf(buffer, "%d:fileOpened=%d \"%s\" %s %s\n",
+	    bufno,
+	    bufno,
+	    (char *)q,
+	    "T",  /* open in NetBeans */
+	    "F"); /* modified */
+
+    vim_free(q);
+    nbdebug(("EVT: %s", buffer));
+
+    nb_send(buffer, "netbeans_file_opened");
+}
+
+/*
  * Tell netbeans the user opened a file.
  */
     void
-netbeans_file_opened(char *filename)
+netbeans_file_opened(buf_T *bufp)
 {
+    int bufno = nb_getbufno(bufp);
     char    buffer[2*MAXPATHL];
     char_u  *q;
+    nbbuf_T *bp = nb_get_buf(nb_getbufno(bufp));
+    int	    bnum;
 
     if (!haveConnection)
 	return;
 
-    q = nb_quote((char_u *)filename);
+    q = nb_quote(bufp->b_ffname);
     if (q == NULL)
 	return;
-    sprintf(buffer, "0:fileOpened=%d \"%s\" %s %s\n",
+    if (bp != NULL)
+	bnum = bufno;
+    else
+	bnum = 0;
+
+    sprintf(buffer, "%d:fileOpened=%d \"%s\" %s %s\n",
+	    bnum,
 	    0,
 	    (char *)q,
 	    "T",  /* open in NetBeans */
@@ -2505,7 +2696,7 @@ netbeans_file_opened(char *filename)
     nbdebug(("EVT: %s", buffer));
 
     nb_send(buffer, "netbeans_file_opened");
-    if (p_acd && vim_chdirfile((char_u *)filename) == OK)
+    if (p_acd && vim_chdirfile(bufp->b_ffname) == OK)
 	shorten_fnames(TRUE);
 }
 
@@ -2524,13 +2715,21 @@ netbeans_file_closed(buf_T *bufp)
 
     if (!netbeansCloseFile)
     {
-	nbdebug(("ignoring file_closed for %s\n", bufp->b_ffname));
+	nbdebug(("Ignoring file_closed for %s. File was closed from IDE\n",
+		    bufp->b_ffname));
 	return;
     }
 
-    nbdebug(("netbeans_file_closed() bufno =  %d, file = %s, displayname = %s\n",
-		bufno, bufp->b_ffname,
-		(nbbuf != NULL) ? nbbuf->displayname : "<>"));
+    nbdebug(("netbeans_file_closed:\n"));
+    nbdebug(("    Closing bufno: %d", bufno));
+    if (curbuf != NULL && curbuf != bufp)
+    {
+	nbdebug(("    Curbuf bufno:  %d\n", nb_getbufno(curbuf)));
+    }
+    else if (curbuf == bufp)
+    {
+	nbdebug(("    curbuf == bufp\n"));
+    }
 
     if (bufno <= 0)
 	return;
@@ -2579,7 +2778,6 @@ netbeans_inserted(
     buf_T	*bufp,
     linenr_T	linenr,
     colnr_T	col,
-    int		oldlen,
     char_u	*txt,
     int		newlen)
 {
@@ -2595,31 +2793,14 @@ netbeans_inserted(
     if (nbbuf == NULL)
 	return;
 
-    nbbuf->modified = 1;
+    /* Don't mark as modified for initial read */
+    if (nbbuf->insertDone)
+	nbbuf->modified = 1;
 
     pos.lnum = linenr;
     pos.col = col;
-
     off = pos2off(bufp, &pos);
 
-/*     nbdebug(("linenr = %d, col = %d, off = %ld\n", linenr, col, off)); */
-
-    buf = alloc(128 + 2*newlen);
-
-    if (oldlen > 0)
-    {
-	/* some chars were replaced; send "remove" EVT */
-	sprintf((char *)buf, "%d:remove=%d %ld %d\n",
-						   bufno, cmdno, off, oldlen);
-	nbdebug(("EVT: %s", buf));
-	nb_send((char *)buf, "netbeans_inserted");
-    }
-    else if (oldlen < 0)
-    {
-	/* can't happen? */
-	nbdebug(("unexpected: oldlen < 0 in netbeans_inserted"));
-    }
-
     /* send the "insert" EVT */
     newtxt = alloc(newlen + 1);
     STRNCPY(newtxt, txt, newlen);
@@ -2627,13 +2808,14 @@ netbeans_inserted(
     p = nb_quote(newtxt);
     if (p != NULL)
     {
+	buf = alloc(128 + 2*newlen);
 	sprintf((char *)buf, "%d:insert=%d %ld \"%s\"\n", bufno, cmdno, off, p);
 	nbdebug(("EVT: %s", buf));
 	nb_send((char *)buf, "netbeans_inserted");
+	vim_free(p);
+	vim_free(buf);
     }
-    vim_free(p);
     vim_free(newtxt);
-    vim_free(buf);
 }
 
 /*
@@ -2732,24 +2914,33 @@ netbeans_button_release(int button)
 
 /*
  * Send a keypress event back to netbeans. This usualy simulates some
- * kind of function key press.
+ * kind of function key press. This function operates on a key code.
  */
     void
 netbeans_keycommand(int key)
 {
+    char	keyName[60];
+
+    netbeans_keyname(key, keyName);
+    netbeans_keystring(key, keyName);
+}
+
+
+/*
+ * Send a keypress event back to netbeans. This usualy simulates some
+ * kind of function key press. This function operates on a key string.
+ */
+    static void
+netbeans_keystring(int key, char *keyName)
+{
     char	buf[2*MAXPATHL];
-    int		bufno;
-    char	keyName[60];
+    int		bufno = nb_getbufno(curbuf);
     long	off;
     char_u	*q;
 
     if (!haveConnection)
 	return;
 
-    /* convert key to netbeans name */
-    netbeans_keyname(key, keyName);
-
-    bufno = nb_getbufno(curbuf);
 
     if (bufno == -1)
     {
@@ -2831,7 +3022,9 @@ netbeans_deleted_all_lines(buf_T *bufp)
     if (nbbuf == NULL)
 	return;
 
-    nbbuf->modified = 1;
+    /* Don't mark as modified for initial read */
+    if (nbbuf->insertDone)
+	nbbuf->modified = 1;
 
     sprintf((char *)buf, "%d:remove=%d 0 -1\n", bufno, cmdno);
     nbdebug(("EVT(suppressed): %s", buf));
@@ -3203,4 +3396,91 @@ pos2off(buf_T *buf, pos_T *pos)
 }
 
 
+/*
+ * This message is printed after NetBeans opens a new file. Its
+ * similar to the message readfile() uses, but since NetBeans
+ * doesn't normally call readfile, we do our own.
+ */
+    static void
+print_read_msg(buf)
+    nbbuf_T	*buf;
+{
+    int	    lnum = buf->bufp->b_ml.ml_line_count;
+    long    nchars = buf->bufp->b_orig_size;
+    char_u  c;
+
+    msg_add_fname(buf->bufp, buf->bufp->b_ffname);
+    c = FALSE;
+
+    if (buf->bufp->b_p_ro)
+    {
+	STRCAT(IObuff, shortmess(SHM_RO) ? _("[RO]") : _("[readonly]"));
+	c = TRUE;
+    }
+    if (!buf->bufp->b_start_eol)
+    {
+	STRCAT(IObuff, shortmess(SHM_LAST) ? _("[noeol]") : _("[Incomplete last line]"));
+	c = TRUE;
+    }
+    msg_add_lines(c, (long)lnum, nchars);
+
+    /* Now display it */
+    vim_free(keep_msg);
+    keep_msg = NULL;
+    msg_scrolled_ign = TRUE;
+    msg_trunc_attr(IObuff, FALSE, 0);
+    msg_scrolled_ign = FALSE;
+}
+
+
+/*
+ * Print a message after NetBeans writes the file. This message should be identical
+ * to the standard message a non-netbeans user would see when writing a file.
+ */
+    static void
+print_save_msg(buf, nchars)
+    nbbuf_T	*buf;
+    long	nchars;
+{
+    char_u	c;
+    char_u	*p;
+
+    if (nchars >= 0)
+    {
+	msg_add_fname(buf->bufp, buf->bufp->b_ffname);   /* fname in IObuff with quotes */
+	c = FALSE;
+
+	msg_add_lines(c, buf->bufp->b_ml.ml_line_count,
+						(long)buf->bufp->b_orig_size);
+
+	vim_free(keep_msg);
+	keep_msg = NULL;
+	msg_scrolled_ign = TRUE;
+	p = msg_trunc_attr(IObuff, FALSE, 0);
+	if ((msg_scrolled && !need_wait_return) || !buf->initDone)
+	{
+	    /* Need to repeat the message after redrawing when:
+	     * - When reading from stdin (the screen will be cleared next).
+	     * - When restart_edit is set (otherwise there will be a delay
+	     *   before redrawing).
+	     * - When the screen was scrolled but there is no wait-return
+	     *   prompt. */
+	    set_keep_msg(p);
+	    keep_msg_attr = 0;
+	}
+	msg_scrolled_ign = FALSE;
+	/* add_to_input_buf((char_u *)"\f", 1); */
+    }
+    else
+    {
+	char_u ebuf[BUFSIZ];
+
+	STRCPY(ebuf, (char_u *)_("E505: "));
+	STRCAT(ebuf, IObuff);
+	STRCAT(ebuf, (char_u *)_("is read-only (add ! to override)"));
+	STRCPY(IObuff, ebuf);
+	emsg(IObuff);
+    }
+}
+
 #endif /* defined(FEAT_NETBEANS_INTG) */
--- a/src/normal.c
+++ b/src/normal.c
@@ -6342,8 +6342,10 @@ nv_replace(cap)
 	    {
 		colnr_T start = (colnr_T)(curwin->w_cursor.col - cap->count1);
 
+		netbeans_removed(curbuf, curwin->w_cursor.lnum, start,
+							    (long)cap->count1);
 		netbeans_inserted(curbuf, curwin->w_cursor.lnum, start,
-			     (int)cap->count1, &ptr[start], (int)cap->count1);
+					       &ptr[start], (int)cap->count1);
 	    }
 #endif
 
@@ -6538,8 +6540,10 @@ n_swapchar(cap)
 		    {
 			ptr = ml_get(pos.lnum);
 			count = STRLEN(ptr) - pos.col;
+			netbeans_removed(curbuf, pos.lnum, pos.col,
+								 (long)count);
 			netbeans_inserted(curbuf, pos.lnum, pos.col,
-						 count, &ptr[pos.col], count);
+							&ptr[pos.col], count);
 		    }
 		    pos.col = 0;
 		    pos.lnum++;
@@ -6563,8 +6567,8 @@ n_swapchar(cap)
     {
 	ptr = ml_get(pos.lnum);
 	count = curwin->w_cursor.col - pos.col;
-	netbeans_inserted(curbuf, pos.lnum, pos.col,
-						 count, &ptr[pos.col], count);
+	netbeans_removed(curbuf, pos.lnum, pos.col, (long)count);
+	netbeans_inserted(curbuf, pos.lnum, pos.col, &ptr[pos.col], count);
     }
 #endif
 
--- a/src/ops.c
+++ b/src/ops.c
@@ -2132,8 +2132,10 @@ op_tilde(oap)
 	    {
 		char_u *ptr = ml_get_buf(curbuf, pos.lnum, FALSE);
 
+		netbeans_removed(curbuf, pos.lnum, bd.textcol,
+							    (long)bd.textlen);
 		netbeans_inserted(curbuf, pos.lnum, bd.textcol,
-				    bd.textlen, &ptr[bd.textcol], bd.textlen);
+				    &ptr[bd.textcol], bd.textlen);
 	    }
 # endif
 	}
@@ -2175,15 +2177,17 @@ op_tilde(oap)
 		{
 		    ptr = ml_get_buf(curbuf, pos.lnum, FALSE);
 		    count = STRLEN(ptr) - pos.col;
+		    netbeans_removed(curbuf, pos.lnum, pos.col, (long)count);
 		    netbeans_inserted(curbuf, pos.lnum, pos.col,
-						 count, &ptr[pos.col], count);
+						 &ptr[pos.col], count);
 		    pos.col = 0;
 		    pos.lnum++;
 		}
 		ptr = ml_get_buf(curbuf, pos.lnum, FALSE);
 		count = oap->end.col - pos.col + 1;
+		netbeans_removed(curbuf, pos.lnum, pos.col, (long)count);
 		netbeans_inserted(curbuf, pos.lnum, pos.col,
-						 count, &ptr[pos.col], count);
+						 &ptr[pos.col], count);
 	    }
 #endif
 	}
--- a/src/os_unix.c
+++ b/src/os_unix.c
@@ -959,6 +959,12 @@ deathtrap SIGDEFARG(sigarg)
 #endif
     preserve_exit();		    /* preserve files and exit */
 
+#ifdef NBDEBUG
+    reset_signals();
+    may_core_dump();
+    abort();
+#endif
+
     SIGRETURN;
 }
 
@@ -2704,6 +2710,10 @@ mch_exit(r)
 	return;
 #endif
 
+#ifdef FEAT_NETBEANS_INTG
+    if (usingNetbeans)
+	netbeans_send_disconnect();
+#endif
     exit(r);
 }
 
--- a/src/po/de.po
+++ b/src/po/de.po
@@ -8,194 +8,193 @@
 # thoughts (Gedanken)
 #
 # - mark    : Markierung oder Marke?
-# - ambigous: Mehrdeutig, Nicht-eindeutig
+# - ambigous: Mehrdeutig
 #
 msgid ""
 msgstr ""
 "Project-Id-Version: Vim(deutsch)\n"
-"POT-Creation-Date: 2002-04-20 18:15+0200\n"
-"PO-Revision-Date: 2004-05-12 20:49+0200\n"
+"POT-Creation-Date: 2004-05-14 18:11+0200\n"
+"PO-Revision-Date: 2004-10-13 17:26+0200\n"
 "Last-Translator: Gerfried Fuchs <alfie@ist.org>\n"
 "Language-Team: German <de@li.org>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=ISO_8859-1\n"
 "Content-Transfer-Encoding: 8-bit\n"
 
-#: buffer.c:97
+#: buffer.c:102
 msgid "E82: Cannot allocate any buffer, exiting..."
 msgstr "E82: Kein Puffer kann alloziert werden; beenden..."
 
-#: buffer.c:100
+#: buffer.c:105
 msgid "E83: Cannot allocate buffer, using other one..."
 msgstr "E83: Puffer kann nicht alloziert werden; benutze einen anderen..."
 
-#: buffer.c:706
-msgid "No buffers were unloaded"
-msgstr "Keine Puffer wurden ausgeladen"
-
-#: buffer.c:708
-msgid "No buffers were deleted"
-msgstr "Keine Puffer wurden gelöscht"
-
-#: buffer.c:710
-msgid "No buffers were wiped out"
-msgstr "Keine Puffer wurden gelöscht"
-
-#: buffer.c:718
+#: buffer.c:805
+msgid "E515: No buffers were unloaded"
+msgstr "E515: Keine Puffer wurden ausgeladen"
+
+#: buffer.c:807
+msgid "E516: No buffers were deleted"
+msgstr "E516: Keine Puffer wurden gelöscht"
+
+#: buffer.c:809
+msgid "E517: No buffers were wiped out"
+msgstr "E517: Keine Puffer wurden gelöscht"
+
+#: buffer.c:817
 msgid "1 buffer unloaded"
 msgstr "1 Puffer ausgeladen"
 
-#: buffer.c:720
+#: buffer.c:819
 #, c-format
 msgid "%d buffers unloaded"
 msgstr "%d Puffer ausgeladen"
 
-#: buffer.c:725
+#: buffer.c:824
 msgid "1 buffer deleted"
 msgstr "1 Puffer gelöscht"
 
-#: buffer.c:727
+#: buffer.c:826
 #, c-format
 msgid "%d buffers deleted"
 msgstr "%d Puffer gelöscht"
 
-#: buffer.c:732
+#: buffer.c:831
 msgid "1 buffer wiped out"
 msgstr "1 Puffer gelöscht"
 
-#: buffer.c:734
+#: buffer.c:833
 #, c-format
 msgid "%d buffers wiped out"
 msgstr "%d Puffer gelöscht"
 
-#: buffer.c:791
+#: buffer.c:894
 msgid "E84: No modified buffer found"
 msgstr "E84: Es wurde keine veränderten Puffer gefunden"
 
 #. back where we started, didn't find anything.
-#: buffer.c:830
+#: buffer.c:933
 msgid "E85: There is no listed buffer"
 msgstr "E85: Es gibt keine angezeigte Puffer"
 
-#: buffer.c:842
-#, c-format
-msgid "E86: Cannot go to buffer %ld"
-msgstr "E86: Kann nicht zum Puffer %ld wechseln"
-
-#: buffer.c:845
+#: buffer.c:945
+#, c-format
+msgid "E86: Buffer %ld does not exist"
+msgstr "E86: Puffer %ld existiert nicht"
+
+#: buffer.c:948
 msgid "E87: Cannot go beyond last buffer"
 msgstr "E87: Kann nicht über den letzten Puffer hinaus gehen"
 
-#: buffer.c:847
+#: buffer.c:950
 msgid "E88: Cannot go before first buffer"
 msgstr "E88: Kann nicht vor den ersten Puffer gehen"
 
-#: buffer.c:871
-#, c-format
-msgid "E89: No write since last change for buffer %ld (use ! to override)"
+#: buffer.c:988
+#, c-format
+msgid "E89: No write since last change for buffer %ld (add ! to override)"
 msgstr ""
-"E89: Puffer %ld wurde seit der letzten Änderung nicht geschrieben (erzwinge "
-"mit !)"
-
-#: buffer.c:887
+"E89: Puffer %ld seit der letzten Änderung nicht geschrieben (erzwinge mit !)"
+
+#: buffer.c:1005
 msgid "E90: Cannot unload last buffer"
 msgstr "E90: letzter Puffer kann nicht heraus-geladen werden"
 
-#: buffer.c:1342
+#: buffer.c:1538
 msgid "W14: Warning: List of file names overflow"
 msgstr "W14: Achtung: Überlauf der Liste der Dateinamen"
 
-#: buffer.c:1508
+#: buffer.c:1709
 #, c-format
 msgid "E92: Buffer %ld not found"
 msgstr "E92: kein Puffer %ld gefunden"
 
-#: buffer.c:1734
+#: buffer.c:1940
 #, c-format
 msgid "E93: More than one match for %s"
 msgstr "E93: Mehr als eine Möglichkeit für %s"
 
-#: buffer.c:1736
+#: buffer.c:1942
 #, c-format
 msgid "E94: No matching buffer for %s"
 msgstr "E94: Kein Puffer passt zu %s"
 
-#: buffer.c:2141 ex_docmd.c:6089
+#: buffer.c:2337
 #, c-format
 msgid "line %ld"
 msgstr "Zeile %ld"
 
-#: buffer.c:2224
+#: buffer.c:2420
 msgid "E95: Buffer with this name already exists"
 msgstr "E95: Ein Puffer mit diesem Namen existiert bereits"
 
-#: buffer.c:2517
+#: buffer.c:2713
 msgid " [Modified]"
 msgstr " [Verändert]"
 
-#: buffer.c:2522
+#: buffer.c:2718
 msgid "[Not edited]"
 msgstr "[Nicht editiert]"
 
-#: buffer.c:2527
+#: buffer.c:2723
 msgid "[New file]"
 msgstr "[Neue Datei]"
 
-#: buffer.c:2528
+#: buffer.c:2724
 msgid "[Read errors]"
 msgstr "[Lese-Fehler]"
 
-#: buffer.c:2530 fileio.c:1777
+#: buffer.c:2726 fileio.c:2112
 msgid "[readonly]"
 msgstr "[nur Lesen]"
 
-#: buffer.c:2545
+#: buffer.c:2747
 #, c-format
 msgid "1 line --%d%%--"
 msgstr "1 Zeile --%d%%--"
 
-#: buffer.c:2547
+#: buffer.c:2749
 #, c-format
 msgid "%ld lines --%d%%--"
 msgstr "%ld Zeilen --%d%%--"
 
-#: buffer.c:2554
+#: buffer.c:2756
 #, c-format
 msgid "line %ld of %ld --%d%%-- col "
 msgstr "Zeile %ld von %ld --%d%%-- Spalte "
 
-#: buffer.c:2642
+#: buffer.c:2864
 msgid "[No file]"
 msgstr "[Keine Datei]"
 
 #. must be a help buffer
-#: buffer.c:2682
+#: buffer.c:2904
 msgid "help"
 msgstr "[Hilfe]"
 
-#: buffer.c:3193 screen.c:4754
+#: buffer.c:3463 screen.c:5075
 msgid "[help]"
 msgstr "[Hilfe]"
 
-#: buffer.c:3225 screen.c:4760
+#: buffer.c:3495 screen.c:5081
 msgid "[Preview]"
 msgstr "[Voransicht]"
 
-#: buffer.c:3431
+#: buffer.c:3775
 msgid "All"
 msgstr "Alles"
 
 # Ende sounds better than "Unten"
-#: buffer.c:3431
+#: buffer.c:3775
 msgid "Bot"
 msgstr "Ende"
 
 # Anfang sounds better than "Oben"
-#: buffer.c:3433
+#: buffer.c:3777
 msgid "Top"
 msgstr "Anfang"
 
-#: buffer.c:4169
+#: buffer.c:4523
 msgid ""
 "\n"
 "# Buffer list:\n"
@@ -203,15 +202,15 @@ msgstr ""
 "\n"
 "# Liste der Puffer:\n"
 
-#: buffer.c:4202
+#: buffer.c:4556
 msgid "[Error List]"
 msgstr "[Fehlerliste]"
 
-#: buffer.c:4215 memline.c:1513
+#: buffer.c:4569 memline.c:1520
 msgid "[No File]"
 msgstr "[Keine Datei]"
 
-#: buffer.c:4435
+#: buffer.c:4882
 msgid ""
 "\n"
 "--- Signs ---"
@@ -219,149 +218,149 @@ msgstr ""
 "\n"
 "--- Optionen ---"
 
-#: buffer.c:4445
+#: buffer.c:4901
 #, c-format
 msgid "Signs for %s:"
 msgstr "Vorzeichen für %s:"
 
-#: buffer.c:4451
+#: buffer.c:4907
 #, c-format
 msgid "    line=%ld  id=%d  name=%s"
 msgstr "    Zeile=%ld  id=%d  Name=%s"
 
-#: diff.c:133
+#: diff.c:139
 #, c-format
 msgid "E96: Can not diff more than %ld buffers"
 msgstr "E96: \"diff\" ist für mehr als %ld Puffer nicht möglich"
 
-#: diff.c:648
+#: diff.c:713
 msgid "E97: Cannot create diffs"
 msgstr "E97: Kann keine \"diffs\" erstellen"
 
-#: diff.c:747
+#: diff.c:818
 msgid "Patch file"
 msgstr "Patch-Datei"
 
-#: diff.c:991
+#: diff.c:1069
 msgid "E98: Cannot read diff output"
 msgstr "E98: \"diff\"-Ausgabe kann nicht gelesen werden"
 
-#: diff.c:1732
+#: diff.c:1819
 msgid "E99: Current buffer is not in diff mode"
 msgstr "E99: Aktueller Puffer ist nicht im \"diff\"-Modus"
 
-#: diff.c:1744
+#: diff.c:1831
 msgid "E100: No other buffer in diff mode"
 msgstr "E100: Kein weiterer Puffer ist im \"diff\"-Modus"
 
-#: diff.c:1752
+#: diff.c:1839
 msgid "E101: More than two buffers in diff mode, don't know which one to use"
 msgstr "E101: mehrdeutig: Mehr als zwei Puffer im \"diff\"-Modus"
 
-#: diff.c:1775
+#: diff.c:1862
 #, c-format
 msgid "E102: Can't find buffer \"%s\""
 msgstr "E102: Puffer \"%s\" kann nicht gefunden werden"
 
-#: diff.c:1781
+#: diff.c:1868
 #, c-format
 msgid "E103: Buffer \"%s\" is not in diff mode"
 msgstr "E103: Puffer \"%s\" ist nicht im \"diff\"-Modus"
 
-#: digraph.c:2172
+#: digraph.c:2199
 msgid "E104: Escape not allowed in digraph"
 msgstr "E104: 'Escape' ist in einem Digraphen nicht erlaubt"
 
-#: digraph.c:2344
-msgid "Keymap file not found"
-msgstr "\"Keymap\"-Datei nicht gefunden"
-
-#: digraph.c:2371
+#: digraph.c:2384
+msgid "E544: Keymap file not found"
+msgstr "E544: \"Keymap\"-Datei nicht gefunden"
+
+#: digraph.c:2411
 msgid "E105: Using :loadkeymap not in a sourced file"
 msgstr "E105: :loadkeymap außerhalb einer eingelesenen Datei"
 
 #: edit.c:40
-msgid " Keyword completion (^N/^P)"
-msgstr " Stichwort-Ergänzung (^N/^P)"
+msgid " Keyword completion (^N^P)"
+msgstr " Stichwort-Ergänzung (^N^P)"
 
 #. ctrl_x_mode == 0, ^P/^N compl.
 #: edit.c:41
-msgid " ^X mode (^E/^Y/^L/^]/^F/^I/^K/^D/^V/^N/^P)"
-msgstr " ^X-Modus (^E/^Y/^L/^]/^F/^I/^K/^D/^V/^N/^P)"
+msgid " ^X mode (^E^Y^L^]^F^I^K^D^V^N^P)"
+msgstr " ^X-Modus (^E^Y^L^]^F^I^K^D^V^N^P)"
 
 #. Scroll has it's own msgs, in it's place there is the msg for local
 #. * ctrl_x_mode = 0 (eg continue_status & CONT_LOCAL)  -- Acevedo
 #: edit.c:44
-msgid " Keyword Local completion (^N/^P)"
-msgstr " lokale Stichwort-Ergänzung (^N/^P)"
+msgid " Keyword Local completion (^N^P)"
+msgstr " lokale Stichwort-Ergänzung (^N^P)"
 
 #: edit.c:45
-msgid " Whole line completion (^L/^N/^P)"
-msgstr " Zeilen-Ergänzung (^L/^N/^P)"
+msgid " Whole line completion (^L^N^P)"
+msgstr " Zeilen-Ergänzung (^L^N^P)"
 
 #: edit.c:46
-msgid " File name completion (^F/^N/^P)"
-msgstr " Datei-Namens-Ergänzung (^F/^N/^P)"
+msgid " File name completion (^F^N^P)"
+msgstr " Dateinamens-Ergänzung (^F^N^P)"
 
 #: edit.c:47
-msgid " Tag completion (^]/^N/^P)"
-msgstr " Tag-Ergänzung (^]/^N/^P)"
+msgid " Tag completion (^]^N^P)"
+msgstr " Tag-Ergänzung (^]^N^P)"
 
 #: edit.c:48
-msgid " Path pattern completion (^N/^P)"
-msgstr " Pfad-Muster-Ergänzung (^N/^P)"
+msgid " Path pattern completion (^N^P)"
+msgstr " Pfadmuster-Ergänzung (^N^P)"
 
 #: edit.c:49
-msgid " Definition completion (^D/^N/^P)"
-msgstr " Definitions-Ergänzung (^D/^N/^P)"
+msgid " Definition completion (^D^N^P)"
+msgstr " Definitions-Ergänzung (^D^N^P)"
 
 #: edit.c:51
-msgid " Dictionary completion (^K/^N/^P)"
-msgstr " Wörterbuch-Ergänzung (^K/^N/^P) "
+msgid " Dictionary completion (^K^N^P)"
+msgstr " Wörterbuch-Ergänzung (^K^N^P) "
 
 #: edit.c:52
-msgid " Thesaurus completion (^T/^N/^P)"
-msgstr " Thesaurus-Ergänzung (^T/^N/^P)"
+msgid " Thesaurus completion (^T^N^P)"
+msgstr " Thesaurus-Ergänzung (^T^N^P)"
 
 #: edit.c:53
-msgid " Command-line completion (^V/^N/^P)"
-msgstr " Kommando-Zeilen-Ergänzung (^V/^N/^P)"
+msgid " Command-line completion (^V^N^P)"
+msgstr " Kommando-Zeilen-Ergänzung (^V^N^P)"
 
 #: edit.c:56
 msgid "Hit end of paragraph"
 msgstr "Stieß an das Ende eines Absatzes"
 
-#: edit.c:907
+#: edit.c:962
 msgid "'thesaurus' option is empty"
 msgstr "Die Option 'thesaurus' ist leer"
 
-#: edit.c:1083
+#: edit.c:1166
 msgid "'dictionary' option is empty"
 msgstr "Die Option 'dictionary' ist leer"
 
-#: edit.c:2007
+#: edit.c:2162
 #, c-format
 msgid "Scanning dictionary: %s"
 msgstr "Durchsuchen des Wörterbuchs: %s"
 
-#: edit.c:2198
+#: edit.c:2368
 msgid " (insert) Scroll (^E/^Y)"
 msgstr " (Einfügen) Scrollen (^E/^Y)"
 
-#: edit.c:2200
+#: edit.c:2370
 msgid " (replace) Scroll (^E/^Y)"
 msgstr " (Ersetzen) Scrollen (^E/^Y)"
 
-#: edit.c:2512
+#: edit.c:2684
 #, c-format
 msgid "Scanning: %s"
 msgstr "Durchsuche: %s"
 
-#: edit.c:2547
+#: edit.c:2719
 msgid "Scanning tags."
 msgstr "Durchsuchen von Tags."
 
-#: edit.c:3207
+#: edit.c:3381
 msgid " Adding"
 msgstr " Hinzufügung der"
 
@@ -369,114 +368,121 @@ msgstr " Hinzufügung der"
 #. * be called before line = ml_get(), or when this address is no
 #. * longer needed.  -- Acevedo.
 #.
-#: edit.c:3256
+#: edit.c:3430
 msgid "-- Searching..."
 msgstr "-- Suche..."
 
-#: edit.c:3312
+#: edit.c:3486
 msgid "Back at original"
 msgstr "Zurück am Ursprung"
 
-#: edit.c:3317
+#: edit.c:3491
 msgid "Word from other line"
 msgstr "Wort aus anderer Zeile"
 
-#: edit.c:3322
+#: edit.c:3496
 msgid "The only match"
 msgstr "Einziger Treffer"
 
-#: edit.c:3381
+#: edit.c:3555
 #, c-format
 msgid "match %d of %d"
 msgstr "Treffer %d von %d"
 
-#: edit.c:3384
+#: edit.c:3558
 #, c-format
 msgid "match %d"
 msgstr "Treffer %d"
 
-#: eval.c:698
+#. Skip further arguments but do continue to
+#. * search for a trailing command.
+#: eval.c:1024
 #, c-format
 msgid "E106: Unknown variable: \"%s\""
 msgstr "E106: Unbekannte Variable: \"%s\""
 
-#: eval.c:977
+#: eval.c:1320
 #, c-format
 msgid "E107: Missing braces: %s"
 msgstr "E107: Fehlende Klammern: %s"
 
-#: eval.c:1057 eval.c:1073
+#: eval.c:1435 eval.c:1449
 #, c-format
 msgid "E108: No such variable: \"%s\""
 msgstr "E108: Keine solche Variable: \"%s\""
 
-#: eval.c:1315
+#: eval.c:1705
 msgid "E109: Missing ':' after '?'"
 msgstr "E109: fehlender ':' nach '?'"
 
-#: eval.c:1929
+#: eval.c:2327
 msgid "E110: Missing ')'"
 msgstr "E110: fehlende ')'"
 
-#: eval.c:1979
+#: eval.c:2389
 msgid "E111: Missing ']'"
 msgstr "E111: fehlende ']'"
 
-#: eval.c:2054
+#: eval.c:2466
 #, c-format
 msgid "E112: Option name missing: %s"
 msgstr "E112: Options-Bezeichnung fehlt: %s"
 
-#: eval.c:2072
+#: eval.c:2484
 #, c-format
 msgid "E113: Unknown option: %s"
 msgstr "E113: Unbekannte Option: %s"
 
-#: eval.c:2134
+#: eval.c:2555
 #, c-format
 msgid "E114: Missing quote: %s"
 msgstr "E114: Fehlendes Anführungszeichen: %s"
 
-#: eval.c:2251
+#: eval.c:2698
 #, c-format
 msgid "E115: Missing quote: %s"
 msgstr "E115: Fehlendes Anführungszeichen: %s"
 
-#: eval.c:2569
+#: eval.c:3054
 #, c-format
 msgid "E116: Invalid arguments for function %s"
 msgstr "E116: Unzulässige Argumente für Funktion %s"
 
-#: eval.c:2570
+#: eval.c:3083
 #, c-format
 msgid "E117: Unknown function: %s"
 msgstr "E117: Unbekannte Funktion: %s"
 
-#: eval.c:2571
+#: eval.c:3084
 #, c-format
 msgid "E118: Too many arguments for function: %s"
 msgstr "E118: Zu viele Argumente für Funktion: %s"
 
-#: eval.c:2572
+#: eval.c:3085
 #, c-format
 msgid "E119: Not enough arguments for function: %s"
 msgstr "E119: Nicht genug Argumente für Funktion: %s"
 
-#: eval.c:2573
+#: eval.c:3086
 #, c-format
 msgid "E120: Using <SID> not in a script context: %s"
 msgstr "E120: <SID> wurde nicht in einer Skript-Umgebung benutzt: %s"
 
-#: eval.c:3172 gui.c:3990
+#.
+#. * Yes this is ugly, I don't particularly like it either.  But doing it
+#. * this way has the compelling advantage that translations need not to
+#. * be touched at all.  See below what 'ok' and 'ync' are used for.
+#.
+#: eval.c:3687 gui.c:4382 gui_gtk.c:2059
 msgid "&Ok"
 msgstr "&Ok"
 
-#: eval.c:3678
+#: eval.c:4226
 #, c-format
 msgid "+-%s%3ld lines: "
 msgstr "+-%s%3ld Zeilen: "
 
-#: eval.c:4794
+#: eval.c:5477
 msgid ""
 "&OK\n"
 "&Cancel"
@@ -484,115 +490,129 @@ msgstr ""
 "&OK\n"
 "&Abbrechen"
 
-#: eval.c:5626
+#: eval.c:5517
+msgid "called inputrestore() more often than inputsave()"
+msgstr "inputrestore() wurde öfter als inputsave() aufgerufen"
+
+#: eval.c:5977
+msgid "E655: Too many symbolic links (cycle?)"
+msgstr "E655: Zu viele symbolische Links (durchgehen?)"
+
+#: eval.c:6622
 msgid "E240: No connection to Vim server"
 msgstr "E240: Keine Verbindung zum Vim-Server"
 
-#: eval.c:5716
+#: eval.c:6720
 msgid "E277: Unable to read a server reply"
 msgstr "E277: Server-Antwort kann nicht gelesen werden"
 
-#: eval.c:5741
+#: eval.c:6748
 msgid "E258: Unable to send to client"
 msgstr "E258: Kann nicht zum Client senden"
 
-#: eval.c:5786
+#: eval.c:6796
 #, c-format
 msgid "E241: Unable to send to %s"
 msgstr "E241: Kann nicht zu %s senden"
 
-#: eval.c:5884
+#: eval.c:6896
 msgid "(Invalid)"
 msgstr "(ungültig)"
 
-#: eval.c:6895
+#: eval.c:8074
 #, c-format
 msgid "E121: Undefined variable: %s"
 msgstr "E121: Variable nicht definiert: %s"
 
-#: eval.c:7593
-#, c-format
-msgid "E122: Function %s already exists, use ! to replace"
-msgstr "E122: Die Funktion %s existiert bereits; ersetze sie mit !"
-
-#: eval.c:7635
+#: eval.c:8506
+#, c-format
+msgid "E461: Illegal variable name: %s"
+msgstr "E461: Unzulässiger Variable-Name: %s"
+
+#: eval.c:8798
+#, c-format
+msgid "E122: Function %s already exists, add ! to replace it"
+msgstr "E122: Funktion %s existiert bereits; ! zum Ersetzen hinzufügen"
+
+#: eval.c:8871
 #, c-format
 msgid "E123: Undefined function: %s"
 msgstr "E123: Funktion nicht definiert: %s"
 
-#: eval.c:7648
+#: eval.c:8884
 #, c-format
 msgid "E124: Missing '(': %s"
 msgstr "E124: fehlendes '(': %s"
 
-#: eval.c:7680
+#: eval.c:8917
 #, c-format
 msgid "E125: Illegal argument: %s"
 msgstr "E125: Unzulässiges Argument: %s"
 
-#: eval.c:7766
+#: eval.c:8996
 msgid "E126: Missing :endfunction"
 msgstr "E126: fehlendes :endfunction"
 
-#: eval.c:7845
+#: eval.c:9103
 #, c-format
 msgid "E127: Cannot redefine function %s: It is in use"
 msgstr "E127: Funktion %s kann nicht umdefiniert werden: sie ist in Verwendung"
 
-#: eval.c:7903
+#: eval.c:9173
+msgid "E129: Function name required"
+msgstr "E129: Funktions-Name wird verlangt"
+
+#: eval.c:9224
 #, c-format
 msgid "E128: Function name must start with a capital: %s"
 msgstr "E128: Funktions-Name muss mit Großbuchstaben beginnen: %s"
 
-#: eval.c:7909
-msgid "E129: Function name required"
-msgstr "E129: Funktions-Name wird verlangt"
-
-#: eval.c:8002
-msgid "function "
-msgstr "Funktion "
-
-#: eval.c:8117
+#: eval.c:9416
 #, c-format
 msgid "E130: Undefined function: %s"
 msgstr "E130: Funktion nicht definiert: %s"
 
-#: eval.c:8122
+#: eval.c:9421
 #, c-format
 msgid "E131: Cannot delete function %s: It is in use"
 msgstr "E131: Funktion %s kann nicht gelöscht werden: sie ist in Verwendung"
 
-#: eval.c:8169
+#: eval.c:9469
 msgid "E132: Function call depth is higher than 'maxfuncdepth'"
 msgstr "E132: Funktionsaufruf-Tiefe überschreitet 'maxfuncdepth'"
 
 #. always scroll up, don't overwrite
-#: eval.c:8220
+#: eval.c:9522
 #, c-format
 msgid "calling %s"
 msgstr "rufe %s auf"
 
+#: eval.c:9584
+#, c-format
+msgid "%s aborted"
+msgstr "%s abgebrochen"
+
+#: eval.c:9586
+#, c-format
+msgid "%s returning #%ld"
+msgstr "%s lieferte #%ld zurück"
+
+#: eval.c:9593
+#, c-format
+msgid "%s returning \"%s\""
+msgstr "%s lieferte \"%s\" zurück"
+
 #. always scroll up, don't overwrite
-#: eval.c:8245 ex_cmds2.c:1988
+#: eval.c:9609 ex_cmds2.c:2365
 #, c-format
 msgid "continuing in %s"
 msgstr "weiter in %s"
 
-#: eval.c:8299
+#: eval.c:9635
 msgid "E133: :return not inside a function"
 msgstr "E133: :return außerhalb einer Funktion"
 
-#: eval.c:8377
-#, c-format
-msgid "%s returning #%ld"
-msgstr "%s lieferte #%ld zurück"
-
-#: eval.c:8380
-#, c-format
-msgid "%s returning \"%s\""
-msgstr "%s lieferte \"%s\" zurück"
-
-#: eval.c:8521
+#: eval.c:9966
 msgid ""
 "\n"
 "# global variables:\n"
@@ -605,80 +625,90 @@ msgstr ""
 msgid "<%s>%s%s  %d,  Hex %02x,  Octal %03o"
 msgstr "<%s>%s%s  %d,  Hex %02x,  Oktal %03o"
 
-#: ex_cmds.c:428
+#: ex_cmds.c:118
+#, c-format
+msgid "> %d, Hex %04x, Octal %o"
+msgstr "> %d, Hex %04x, Oktal %o"
+
+#: ex_cmds.c:119
+#, c-format
+msgid "> %d, Hex %08x, Octal %o"
+msgstr "> %d, Hex %08x, Oktal %o"
+
+#: ex_cmds.c:430
 msgid "E134: Move lines into themselves"
 msgstr "E134: Verschiebe Zeilen in sich selbst"
 
-#: ex_cmds.c:497
+#: ex_cmds.c:499
 msgid "1 line moved"
 msgstr "1 Zeile verschoben"
 
-#: ex_cmds.c:499
+#: ex_cmds.c:501
 #, c-format
 msgid "%ld lines moved"
 msgstr "%ld Zeilen verschoben"
 
-#: ex_cmds.c:890
+#: ex_cmds.c:924
 #, c-format
 msgid "%ld lines filtered"
 msgstr "%ld Zeilen gefiltert"
 
-#: ex_cmds.c:918
+#: ex_cmds.c:952
 msgid "E135: *Filter* Autocommands must not change current buffer"
 msgstr "E135: *Filter*-Auto-Kommandos dürfen den aktuellen Puffer nicht ändern"
 
-#: ex_cmds.c:1003
+#: ex_cmds.c:1037
 msgid "[No write since last change]\n"
 msgstr "[Kein Schreiben seit der letzten Änderung]\n"
 
-#: ex_cmds.c:1248
-#, c-format
-msgid "viminfo: %s in line: "
-msgstr "viminfo: %s in Zeile: "
-
-#: ex_cmds.c:1253
+#: ex_cmds.c:1283
+#, c-format
+msgid "%sviminfo: %s in line: "
+msgstr "%sviminfo: %s in Zeile: "
+
+#: ex_cmds.c:1288
 msgid "E136: viminfo: Too many errors, skipping rest of file"
 msgstr "E136: viminfo: Zu viele Fehler; überspringe Rest der Datei"
 
-#: ex_cmds.c:1282
+#: ex_cmds.c:1323
 #, c-format
 msgid "Reading viminfo file \"%s\"%s%s%s"
 msgstr "Lesen der viminfo-Datei \"%s\"%s%s%s"
 
-#: ex_cmds.c:1283
+#: ex_cmds.c:1324
 msgid " info"
 msgstr " Information"
 
-#: ex_cmds.c:1284
+#: ex_cmds.c:1325
 msgid " marks"
 msgstr "Markierungen"
 
-#: ex_cmds.c:1285
+#: ex_cmds.c:1326
 msgid " FAILED"
 msgstr " DURCHGEFALLEN"
 
-#: ex_cmds.c:1376
+#: ex_cmds.c:1418
 #, c-format
 msgid "E137: Viminfo file is not writable: %s"
 msgstr "E137: Viminfo-Datei ist nicht schreibbar: %s"
 
-#: ex_cmds.c:1501
+#: ex_cmds.c:1543
 #, c-format
 msgid "E138: Can't write viminfo file %s!"
 msgstr "E138: Schreiben in die viminfo-Datei %s ist nicht möglich!"
 
-#: ex_cmds.c:1509
+#: ex_cmds.c:1551
 #, c-format
 msgid "Writing viminfo file \"%s\""
 msgstr "Schreiben der viminfo-Datei \"%s\""
 
 #. Write the info:
-#: ex_cmds.c:1610
+#: ex_cmds.c:1649
 #, c-format
 msgid "# This viminfo file was generated by Vim %s.\n"
 msgstr "# Diese viminfo-Datei wurde von Vim %s generiert.\n"
 
-#: ex_cmds.c:1612
+#: ex_cmds.c:1651
 msgid ""
 "# You may edit it if you're careful!\n"
 "\n"
@@ -686,50 +716,50 @@ msgstr ""
 "# Sie können sie verändern, wenn Sie vorsichtig vorgehen!\n"
 "\n"
 
-#: ex_cmds.c:1614
+#: ex_cmds.c:1653
 msgid "# Value of 'encoding' when this file was written\n"
 msgstr "# Wert von 'encoding', als diese Datei geschrieben wurde\n"
 
-#: ex_cmds.c:1713
+#: ex_cmds.c:1752
 msgid "Illegal starting char"
 msgstr "Unzulässiges Zeichen am Anfang"
 
-#: ex_cmds.c:2053 ex_cmds.c:2310 ex_cmds2.c:602
+#: ex_cmds.c:2097 ex_cmds.c:2362 ex_cmds2.c:763
 msgid "Save As"
 msgstr "Schreibe Als"
 
 #. Overwriting a file that is loaded in another buffer is not a
 #. * good idea.
-#: ex_cmds.c:2096
+#: ex_cmds.c:2140
 msgid "E139: File is loaded in another buffer"
 msgstr "E139: Datei ist in einem anderen Puffer geladen"
 
-#: ex_cmds.c:2130
+#: ex_cmds.c:2174
 msgid "Write partial file?"
 msgstr "Partielle Datei schreiben?"
 
-#: ex_cmds.c:2137
+#: ex_cmds.c:2181
 msgid "E140: Use ! to write partial buffer"
 msgstr "E140: Verwenden Sie ! zum Schreiben von partiellen Puffern"
 
-#: ex_cmds.c:2244
+#: ex_cmds.c:2296
 #, c-format
 msgid "Overwrite existing file \"%.*s\"?"
 msgstr "Überschreibe existierende Datei \"%.*s\"?"
 
 # Cursor: Schreibmarke Positionsmarke
-#: ex_cmds.c:2315
+#: ex_cmds.c:2367
 #, c-format
 msgid "E141: No file name for buffer %ld"
 msgstr "E141: Kein Dateiname für Puffer %ld"
 
-#: ex_cmds.c:2353
+#: ex_cmds.c:2405
 msgid "E142: File not written: Writing is disabled by 'write' option"
 msgstr ""
 "E142: Datei wurde nicht geschrieben: Schreiben ist durch die 'write'-Option "
 "ausgeschaltet"
 
-#: ex_cmds.c:2373
+#: ex_cmds.c:2425
 #, c-format
 msgid ""
 "'readonly' option is set for \"%.*s\".\n"
@@ -738,68 +768,68 @@ msgstr ""
 "'readonly'-Option ist für \"%.*s\" gesetzt.\n"
 "Möchten Sie trotzdem schreiben?"
 
-#: ex_cmds.c:2538
+#: ex_cmds.c:2597
 msgid "Edit File"
 msgstr "Editiere Datei"
 
-#: ex_cmds.c:3061
+#: ex_cmds.c:3205
 #, c-format
 msgid "E143: Autocommands unexpectedly deleted new buffer %s"
 msgstr "E143: Auto-Kommandos löschten unerwartet neuen Puffer %s"
 
-#: ex_cmds.c:3193
+#: ex_cmds.c:3339
 msgid "E144: non-numeric argument to :z"
 msgstr "E144: nicht numerisches Argument für :z"
 
-#: ex_cmds.c:3278
+#: ex_cmds.c:3424
 msgid "E145: Shell commands not allowed in rvim"
 msgstr "E145: Shell Befehle sind in rvim nicht erlaubt"
 
-#: ex_cmds.c:3385
+#: ex_cmds.c:3531
 msgid "E146: Regular expressions can't be delimited by letters"
 msgstr "E146: Reguläre Ausdrücke können nicht durch Buchstaben begrenzt werden"
 
-#: ex_cmds.c:3727
+#: ex_cmds.c:3877
 #, c-format
 msgid "replace with %s (y/n/a/q/l/^E/^Y)?"
 msgstr "ersetze durch %s (y/n/a/q/l/^E/^Y)?"
 
-#: ex_cmds.c:4092
+#: ex_cmds.c:4270
 msgid "(Interrupted) "
 msgstr "(Unterbrochen) "
 
-#: ex_cmds.c:4096
+#: ex_cmds.c:4274
 msgid "1 substitution"
 msgstr "eine Ersetzung"
 
-#: ex_cmds.c:4098
+#: ex_cmds.c:4276
 #, c-format
 msgid "%ld substitutions"
 msgstr "%ld Ersetzungen"
 
-#: ex_cmds.c:4101
+#: ex_cmds.c:4279
 msgid " on 1 line"
 msgstr " auf einer Zeile"
 
-#: ex_cmds.c:4103
+#: ex_cmds.c:4281
 #, c-format
 msgid " on %ld lines"
 msgstr " auf %ld Zeilen"
 
-#: ex_cmds.c:4154
+#: ex_cmds.c:4332
 msgid "E147: Cannot do :global recursive"
 msgstr "E147: Kann :global nicht rekursiv ausführen"
 
-#: ex_cmds.c:4189
+#: ex_cmds.c:4367
 msgid "E148: Regular expression missing from global"
 msgstr "E148: Regulärer Ausdruck fehlt in global"
 
-#: ex_cmds.c:4238
+#: ex_cmds.c:4416
 #, c-format
 msgid "Pattern found in every line: %s"
 msgstr "Muster in jeder Zeile gefunden: %s"
 
-#: ex_cmds.c:4319
+#: ex_cmds.c:4497
 msgid ""
 "\n"
 "# Last Substitute String:\n"
@@ -809,343 +839,410 @@ msgstr ""
 "# Letzte ersetzte Zeichenkette:\n"
 "$"
 
-#: ex_cmds.c:4421
+#: ex_cmds.c:4598
+msgid "E478: Don't panic!"
+msgstr "E478: Nur keine Panik!"
+
+#: ex_cmds.c:4650
+#, c-format
+msgid "E661: Sorry, no '%s' help for %s"
+msgstr "E661: Schade, keine '%s' Hilfe für %s"
+
+#: ex_cmds.c:4653
 #, c-format
 msgid "E149: Sorry, no help for %s"
 msgstr "E149: Schade, keine Hilfe für %s"
 
-#: ex_cmds.c:4455
+#: ex_cmds.c:4687
 #, c-format
 msgid "Sorry, help file \"%s\" not found"
 msgstr "Hilfe-Datei \"%s\" nicht gefunden"
 
-#: ex_cmds.c:4917
+#: ex_cmds.c:5170
 #, c-format
 msgid "E150: Not a directory: %s"
 msgstr "E150: kein Verzeichnis: %s"
 
-#: ex_cmds.c:4945
+#: ex_cmds.c:5309
 #, c-format
 msgid "E152: Cannot open %s for writing"
 msgstr "E152: %s kann nicht zum Schreiben geöffnet werden"
 
-#: ex_cmds.c:4959
+#: ex_cmds.c:5345
 #, c-format
 msgid "E153: Unable to open %s for reading"
 msgstr "E153: %s kann nicht zum Lesen geöffnet werden"
 
-#: ex_cmds.c:5038
+#: ex_cmds.c:5367
+#, c-format
+msgid "E670: Mix of help file encodings within a language: %s"
+msgstr "E670: Mischung von Hilfsdatei-Kodierungen innerhalb einer Sprache: %s"
+
+#: ex_cmds.c:5445
 #, c-format
 msgid "E154: Duplicate tag \"%s\" in file %s"
 msgstr "E154: Tag \"%s\" ist mehrmals in der Datei %s"
 
-#: ex_cmds.c:5139
+#: ex_cmds.c:5557
 #, c-format
 msgid "E160: Unknown sign command: %s"
 msgstr "E160: Unbekannter \"sign\"-Befehl: %s"
 
-#: ex_cmds.c:5159
+#: ex_cmds.c:5577
 msgid "E156: Missing sign name"
 msgstr "E156: Name des Zeichens fehlt"
 
-#: ex_cmds.c:5205
-msgid "E255: Too many signs defined"
-msgstr "E255: Zu viele Zeichen definiert"
-
-#: ex_cmds.c:5247
+#: ex_cmds.c:5623
+msgid "E612: Too many signs defined"
+msgstr "E612: Zu viele Zeichen definiert"
+
+#: ex_cmds.c:5691
 #, c-format
 msgid "E239: Invalid sign text: %s"
 msgstr "E239: Ungültiger Text für ein Zeichen: %s"
 
-#: ex_cmds.c:5271 ex_cmds.c:5457
+#: ex_cmds.c:5722 ex_cmds.c:5913
 #, c-format
 msgid "E155: Unknown sign: %s"
 msgstr "E155: Unbekanntes Zeichen: %s"
 
-#: ex_cmds.c:5317
+#: ex_cmds.c:5771
 msgid "E159: Missing sign number"
 msgstr "E159: Fehlende Zeichen-Nummer"
 
-#: ex_cmds.c:5397
+#: ex_cmds.c:5853
 #, c-format
 msgid "E158: Invalid buffer name: %s"
 msgstr "E158: ungültige Puffer-Nummer: %s"
 
-#: ex_cmds.c:5436
+#: ex_cmds.c:5892
 #, c-format
 msgid "E157: Invalid sign ID: %ld"
 msgstr "E157: ungültige Zeichen-ID: %ld"
 
-#: ex_cmds.c:5607
+#: ex_cmds.c:5962
+msgid " (NOT FOUND)"
+msgstr " (NICHT GEFUNDEN)"
+
+#: ex_cmds.c:5964
+msgid " (not supported)"
+msgstr " (nicht unterstützt)"
+
+#: ex_cmds.c:6063
 msgid "[Deleted]"
 msgstr "[gelöscht]"
 
-#: ex_cmds2.c:70
-msgid "Entering Debug mode.  Type \"cont\" to leave."
-msgstr "Debug-Modus. Geben Sie \"cont\" zum Verlassen ein."
-
-#: ex_cmds2.c:74 ex_docmd.c:771
+#: ex_cmds2.c:92
+msgid "Entering Debug mode.  Type \"cont\" to continue."
+msgstr "Debug-Modus. Geben Sie \"cont\" zum Fortsetzen ein."
+
+#: ex_cmds2.c:96 ex_docmd.c:966
 #, c-format
 msgid "line %ld: %s"
 msgstr "Zeile %ld: %s"
 
-#: ex_cmds2.c:76
+#: ex_cmds2.c:98
 #, c-format
 msgid "cmd: %s"
 msgstr "Befehl: %s"
 
-#: ex_cmds2.c:224
+#: ex_cmds2.c:290
 #, c-format
 msgid "Breakpoint in \"%s%s\" line %ld"
 msgstr "Haltepunkt in \"%s%s\" Zeile %ld"
 
-#: ex_cmds2.c:388
+#: ex_cmds2.c:540
 #, c-format
 msgid "E161: Breakpoint not found: %s"
 msgstr "E161: Haltepunkt nicht gefunden: %s"
 
-#: ex_cmds2.c:414
+#: ex_cmds2.c:566
 msgid "No breakpoints defined"
 msgstr "Keine Haltepunkte definiert"
 
-#: ex_cmds2.c:419
+#: ex_cmds2.c:571
 #, c-format
 msgid "%3d  %s %s  line %ld"
 msgstr "%3d  %s %s  Zeile %ld"
 
-#: ex_cmds2.c:625
+#: ex_cmds2.c:786
 #, c-format
 msgid "Save changes to \"%.*s\"?"
 msgstr "Änderungen in \"%.*s\" speichern?"
 
-#: ex_cmds2.c:627 ex_docmd.c:8673
+#: ex_cmds2.c:788 ex_docmd.c:9378
 msgid "Untitled"
 msgstr "Unbenannt"
 
-#: ex_cmds2.c:763
+#: ex_cmds2.c:915
 #, c-format
 msgid "E162: No write since last change for buffer \"%s\""
 msgstr "E162: Puffer \"%s\" wurde seit der letzten Änderung nicht geschrieben"
 
-#: ex_cmds2.c:832
+#: ex_cmds2.c:984
 msgid "Warning: Entered other buffer unexpectedly (check autocommands)"
 msgstr ""
 "Achtung: Unerwarteter Eintritt in einen andren Puffer (überprüfen Siedie "
 "Autocommands)"
 
-#: ex_cmds2.c:1208
+#: ex_cmds2.c:1387
 msgid "E163: There is only one file to edit"
 msgstr "E163: Es gibt nur eine Datei zum Editieren"
 
-#: ex_cmds2.c:1210
+#: ex_cmds2.c:1389
 msgid "E164: Cannot go before first file"
 msgstr "E164: Kann nicht über die erste Datei hinausgehen"
 
-#: ex_cmds2.c:1212
+#: ex_cmds2.c:1391
 msgid "E165: Cannot go beyond last file"
 msgstr "E165: Kann nicht über die letzte Datei hinausgehen"
 
-#: ex_cmds2.c:1634
+#: ex_cmds2.c:1804
+#, c-format
+msgid "E666: compiler not supported: %s"
+msgstr "E666: Compiler nicht unterstützt: %s"
+
+#: ex_cmds2.c:1897
 #, c-format
 msgid "Searching for \"%s\" in \"%s\""
 msgstr "Suche nach \"%s\" in \"%s\""
 
-#: ex_cmds2.c:1656
+#: ex_cmds2.c:1919
 #, c-format
 msgid "Searching for \"%s\""
 msgstr "Suche nach \"%s\""
 
-#: ex_cmds2.c:1680
+#: ex_cmds2.c:1940
 #, c-format
 msgid "not found in 'runtimepath': \"%s\""
 msgstr "im 'runtimepath' nicht gefunden: \"%s\""
 
-#: ex_cmds2.c:1714
+#: ex_cmds2.c:1974
 msgid "Source Vim script"
 msgstr "Vim Skript"
 
-#: ex_cmds2.c:1832
+#: ex_cmds2.c:2164
 #, c-format
 msgid "Cannot source a directory: \"%s\""
 msgstr "Kann kein Verzeichnis einlesen: \"%s\""
 
-#: ex_cmds2.c:1862
+#: ex_cmds2.c:2202
 #, c-format
 msgid "could not source \"%s\""
 msgstr "\"%s\" konnte nicht gelesen werden"
 
-#: ex_cmds2.c:1864
+#: ex_cmds2.c:2204
 #, c-format
 msgid "line %ld: could not source \"%s\""
 msgstr "Zeile %ld: \"%s\" konnte nicht gelesen werden"
 
-#: ex_cmds2.c:1878
+#: ex_cmds2.c:2218
 #, c-format
 msgid "sourcing \"%s\""
 msgstr "lese \"%s\""
 
-#: ex_cmds2.c:1880
+#: ex_cmds2.c:2220
 #, c-format
 msgid "line %ld: sourcing \"%s\""
 msgstr "Zeile %ld: lese \"%s\""
 
-#: ex_cmds2.c:1986
+#: ex_cmds2.c:2363
 #, c-format
 msgid "finished sourcing %s"
 msgstr "Lesen von %s beendet"
 
-#: ex_cmds2.c:2287
+#: ex_cmds2.c:2707
 msgid "W15: Warning: Wrong line separator, ^M may be missing"
 msgstr "W15: Achtung: Falscher Zeilentrenner, vielleicht fehlt ein ^M"
 
-#: ex_cmds2.c:2336
+#: ex_cmds2.c:2756
 msgid "E167: :scriptencoding used outside of a sourced file"
 msgstr "E167: :scriptencoding außerhalb einer eingelesenen Datei"
 
-#: ex_cmds2.c:2369
+#: ex_cmds2.c:2789
 msgid "E168: :finish used outside of a sourced file"
 msgstr "E168: :finish außerhalb einer eingelesenen Datei"
 
-#: ex_cmds2.c:2838
+#: ex_cmds2.c:3238
+#, c-format
+msgid "Page %d"
+msgstr "Seite %d"
+
+#: ex_cmds2.c:3394
 msgid "No text to be printed"
 msgstr "Kein Text zum Drucken"
 
-#: ex_cmds2.c:2916
+#: ex_cmds2.c:3472
 #, c-format
 msgid "Printing page %d (%d%%)"
 msgstr "Drucke Seite %d (%d%%)"
 
-#: ex_cmds2.c:2925
+#: ex_cmds2.c:3484
 #, c-format
 msgid " Copy %d of %d"
 msgstr " Kopie %d von %d"
 
-#: ex_cmds2.c:2977
+#: ex_cmds2.c:3542
 #, c-format
 msgid "Printed: %s"
 msgstr "Gedruckt: %s"
 
-#: ex_cmds2.c:2984
+#: ex_cmds2.c:3549
 msgid "Printing aborted"
 msgstr "Drucken abgebrochen"
 
-#: ex_cmds2.c:3367
+#: ex_cmds2.c:3914
 msgid "E455: Error writing to PostScript output file"
 msgstr "E455: Fehler beim Schreiben der PostScript Ausgabe-Datei"
 
-#: ex_cmds2.c:4042
+#: ex_cmds2.c:4189
+#, c-format
+msgid "E624: Can't open file \"%s\""
+msgstr "E624: Datei \"%s\" kann nicht geöffnet werden"
+
+#: ex_cmds2.c:4199 ex_cmds2.c:4824
+#, c-format
+msgid "E457: Can't read PostScript resource file \"%s\""
+msgstr "E457: PostScript Ressource-Datei \"%s\" kann nicht gelesen werden"
+
+#: ex_cmds2.c:4207
+#, c-format
+msgid "E618: file \"%s\" is not a PostScript resource file"
+msgstr "E618: Datei \"%s\" ist keine PostScript Ressource-Datei"
+
+#: ex_cmds2.c:4222 ex_cmds2.c:4242 ex_cmds2.c:4257 ex_cmds2.c:4279
+#, c-format
+msgid "E619: file \"%s\" is not a supported PostScript resource file"
+msgstr "E619: Datei \"%s\" ist keine unterstützte PostScript Ressource-Datei"
+
+#: ex_cmds2.c:4309
+#, c-format
+msgid "E621: \"%s\" resource file has wrong version"
+msgstr "E621: \"%s\" Ressource-Datei hat die falsche Version"
+
+#: ex_cmds2.c:4776
 msgid "E324: Can't open PostScript output file"
 msgstr "E324: PostScript Ausgabe-Datei kann nicht geöffnet werden"
 
-#: ex_cmds2.c:4080
+#: ex_cmds2.c:4809
 #, c-format
 msgid "E456: Can't open file \"%s\""
 msgstr "E456: Datei \"%s\" kann nicht geöffnet werden"
 
-#: ex_cmds2.c:4091
-#, c-format
-msgid "E457: Can't read PostScript resource file \"%s\""
-msgstr "E457: PostScript 'resource'-Datei \"%s\" kann nicht gelesen werden"
-
-#: ex_cmds2.c:4289
+#: ex_cmds2.c:4928
+msgid "E456: Can't find PostScript resource file \"prolog.ps\""
+msgstr "E456: PostScript Ressource-Datei \"prolog.ps\" nicht gefunden"
+
+#: ex_cmds2.c:4959
+#, c-format
+msgid "E456: Can't find PostScript resource file \"%s.ps\""
+msgstr "E456: PostScript Ressource-Datei \"%s\" nicht gefunden"
+
+#: ex_cmds2.c:4977
+#, c-format
+#~ msgid "E620: Unable to convert from multi-byte to \"%s\" encoding"
+#~ msgstr ""
+
+#: ex_cmds2.c:5102
 msgid "Sending to printer..."
 msgstr "Schicke zum Drucker..."
 
-#: ex_cmds2.c:4293
+#: ex_cmds2.c:5106
 msgid "E365: Failed to print PostScript file"
 msgstr "E365: Druck der PostScript-Datei schlug fehl"
 
-#: ex_cmds2.c:4295
+#: ex_cmds2.c:5108
 msgid "Print job sent."
 msgstr "Druckauftrag abgeschickt"
 
-#: ex_cmds2.c:4691
+#: ex_cmds2.c:5618
 #, c-format
 msgid "Current %slanguage: \"%s\""
 msgstr "Momentane %sSprache: \"%s\""
 
-#: ex_cmds2.c:4702
+#: ex_cmds2.c:5629
 #, c-format
 msgid "E197: Cannot set language to \"%s\""
 msgstr "E197: Sprache kann nicht auf \"%s\" gesetzt werden"
 
-#: ex_docmd.c:490
+#: ex_docmd.c:525
 msgid "Entering Ex mode.  Type \"visual\" to go to Normal mode."
 msgstr ""
 "Ex-Modus.  Geben Sie \"visual\" ein, um zum Normal-Modus zurückzukehren."
 
 #. must be at EOF
-#: ex_docmd.c:526
-msgid "At end-of-file"
-msgstr "Am Dateiende"
-
-#: ex_docmd.c:601
+#: ex_docmd.c:561
+msgid "E501: At end-of-file"
+msgstr "E501: Am Dateiende"
+
+#: ex_docmd.c:669
 msgid "E169: Command too recursive"
 msgstr "E169: Befehl zu rekursiv"
 
-#: ex_docmd.c:911
-msgid "E170: Missing :endwhile"
-msgstr "E170: fehlendes :endwhile"
-
-#: ex_docmd.c:913
-msgid "E171: Missing :endif"
-msgstr "E171: fehlendes :endif"
-
-#: ex_docmd.c:923
+#: ex_docmd.c:1229
+#, c-format
+msgid "E605: Exception not caught: %s"
+msgstr "E605: Ausnahme nicht aufgefangen: %s"
+
+#: ex_docmd.c:1317
 msgid "End of sourced file"
 msgstr "Ende der eingelesenen Datei"
 
-#: ex_docmd.c:924
+#: ex_docmd.c:1318
 msgid "End of function"
 msgstr "Ende der Funktion"
 
-#: ex_docmd.c:1344
-msgid "Ambiguous use of user-defined command"
-msgstr "Nicht-eindeutige Verwendung eines benutzerdefinierten Befehls"
-
-#: ex_docmd.c:1358
-msgid "Not an editor command"
-msgstr "Kein Editor-Befehl"
-
-#: ex_docmd.c:1441
-msgid "Don't panic!"
-msgstr "Nur keine Panik!"
-
-#: ex_docmd.c:1460
-msgid "Backwards range given"
-msgstr "Bereichsgrenzen rückwärts"
-
-#: ex_docmd.c:1469
+#: ex_docmd.c:1907
+msgid "E464: Ambiguous use of user-defined command"
+msgstr "E464: Mehrdeutige Verwendung eines benutzerdefinierten Befehls"
+
+#: ex_docmd.c:1921
+msgid "E492: Not an editor command"
+msgstr "E492: Kein Editor-Befehl"
+
+#: ex_docmd.c:2028
+msgid "E493: Backwards range given"
+msgstr "E493: Bereichsgrenzen rückwärts"
+
+#: ex_docmd.c:2037
 msgid "Backwards range given, OK to swap"
 msgstr "Bereichsgrenzen rückwärts; vertauschen"
 
-#: ex_docmd.c:1580
-msgid "Use w or w>>"
-msgstr "Verwenden Sie w oder w>>"
-
-#: ex_docmd.c:3097
+#: ex_docmd.c:2160
+msgid "E494: Use w or w>>"
+msgstr "E494: Verwenden Sie w oder w>>"
+
+#: ex_docmd.c:3786
 msgid "E319: Sorry, the command is not available in this version"
 msgstr "E319: Der Befehl ist in dieser Version nicht implementiert"
 
-#: ex_docmd.c:3267
+#: ex_docmd.c:3989
 msgid "E172: Only one file name allowed"
 msgstr "E172: Nur ein Dateiname erlaubt"
 
-#: ex_docmd.c:3823
+#: ex_docmd.c:4569
+msgid "1 more file to edit.  Quit anyway?"
+msgstr "1 weitere Datei zum Editieren. Trotzdem beenden?"
+
+#: ex_docmd.c:4572
 #, c-format
 msgid "%d more files to edit.  Quit anyway?"
 msgstr "%d weitere Dateien zum Editieren.  Trotzdem beenden?"
 
-#: ex_docmd.c:3830
+#: ex_docmd.c:4579
+msgid "E173: 1 more file to edit"
+msgstr "E173: 1 weitere Datei zum Editieren"
+
+#: ex_docmd.c:4581
 #, c-format
 msgid "E173: %ld more files to edit"
 msgstr "E173: %ld weitere Dateien zum Editieren"
 
-#: ex_docmd.c:3924
-msgid "E174: Command already exists: use ! to redefine"
-msgstr "E174: Befehl existiert bereits: verwenden Sie ! zum Umdefinierten"
-
-#: ex_docmd.c:4029
+#: ex_docmd.c:4676
+msgid "E174: Command already exists: add ! to replace it"
+msgstr "E174: Befehl existiert bereits: ! zum Ersetzen hinzufügen"
+
+#: ex_docmd.c:4787
 msgid ""
 "\n"
 "    Name        Args Range Complete  Definition"
@@ -1153,216 +1250,327 @@ msgstr ""
 "\n"
 "   Name        Args Bereich Fertig  Definition"
 
-#: ex_docmd.c:4118
+#: ex_docmd.c:4876
 msgid "No user-defined commands found"
 msgstr "Keine vom Benutzer definierten Befehle gefunden"
 
-#: ex_docmd.c:4149
+#: ex_docmd.c:4908
 msgid "E175: No attribute specified"
 msgstr "E175: Kein Attribut angegeben"
 
-#: ex_docmd.c:4201
+#: ex_docmd.c:4960
 msgid "E176: Invalid number of arguments"
 msgstr "E176: Falsche Anzahl von Argumenten"
 
-#: ex_docmd.c:4216
+#: ex_docmd.c:4975
 msgid "E177: Count cannot be specified twice"
 msgstr "E177: Zähler kann nicht zweimal angegeben werden"
 
-#: ex_docmd.c:4226
+#: ex_docmd.c:4985
 msgid "E178: Invalid default value for count"
 msgstr "E178: Ungültige Voreinstellung für den Zähler"
 
-#: ex_docmd.c:4254
+#: ex_docmd.c:5016
 msgid "E179: argument required for complete"
 msgstr "E179: Argument wird zur Vervollständigung benötigt"
 
-#: ex_docmd.c:4273
+#: ex_docmd.c:5048
 #, c-format
 msgid "E180: Invalid complete value: %s"
 msgstr "E180: Ungültiger Vervollständigungs-Wert: %s"
 
-#: ex_docmd.c:4281
+#: ex_docmd.c:5057
+#~ msgid "E468: Completion argument only allowed for custom completion"
+#~ msgstr ""
+
+#: ex_docmd.c:5063
+#~ msgid "E467: Custom completion requires a function argument"
+#~ msgstr ""
+
+#: ex_docmd.c:5074
 #, c-format
 msgid "E181: Invalid attribute: %s"
 msgstr "E181: Ungültiges Attribut: %s"
 
-#: ex_docmd.c:4322
+#: ex_docmd.c:5117
 msgid "E182: Invalid command name"
 msgstr "E182: Ungültiger Befehls-Name"
 
-#: ex_docmd.c:4337
+#: ex_docmd.c:5132
 msgid "E183: User defined commands must start with an uppercase letter"
 msgstr "E183: Benutzerdefinierte Befehle müssen mit Großbuchstaben beginnen"
 
-#: ex_docmd.c:4406
+#: ex_docmd.c:5203
 #, c-format
 msgid "E184: No such user-defined command: %s"
 msgstr "E184: Unbekannter benutzerdefinierter Befehl: %s"
 
-#: ex_docmd.c:4857
+#: ex_docmd.c:5664
 #, c-format
 msgid "E185: Cannot find color scheme %s"
 msgstr "E185: Zeile %s kann nicht gefunden werden"
 
-#: ex_docmd.c:4865
+#: ex_docmd.c:5672
 msgid "Greetings, Vim user!"
 msgstr "Herzliche Grüße, Vim Benutzer!"
 
-#: ex_docmd.c:5569
+#: ex_docmd.c:6389
 msgid "Edit File in new window"
 msgstr "Editiere Datei in einem neuen Fenster"
 
-#: ex_docmd.c:5839
+#: ex_docmd.c:6684
 msgid "No swap file"
 msgstr "Keine Auslagerungs-Datei"
 
-#: ex_docmd.c:5943
+#: ex_docmd.c:6788
 msgid "Append File"
 msgstr "Füge Datei an"
 
-#: ex_docmd.c:6002
+#: ex_docmd.c:6852
 msgid "E186: No previous directory"
 msgstr "E186: Kein vorheriges Verzeichnis"
 
-#: ex_docmd.c:6079
+#: ex_docmd.c:6934
 msgid "E187: Unknown"
 msgstr "E187: Unbekannt"
 
-#: ex_docmd.c:6197
+#: ex_docmd.c:7019
+msgid "E465: :winsize requires two number arguments"
+msgstr "E465: :winsize benötigt zwei numerische Argumente"
+
+#: ex_docmd.c:7075
 #, c-format
 msgid "Window position: X %d, Y %d"
 msgstr "Fenster-Position: X %d, Y %d"
 
-#: ex_docmd.c:6202
+#: ex_docmd.c:7080
 msgid "E188: Obtaining window position not implemented for this platform"
 msgstr ""
 "E188: die Fenster-Position kann für dieses Terminal nicht bestimmt werden"
 
-#: ex_docmd.c:6474
+#: ex_docmd.c:7090
+msgid "E466: :winpos requires two number arguments"
+msgstr "E466: :winpos benötigt zwei numerische Argumente"
+
+#: ex_docmd.c:7368
 msgid "Save Redirection"
 msgstr "Umleitung Speichern"
 
-#: ex_docmd.c:6623
+#: ex_docmd.c:7558
 msgid "Save View"
 msgstr "Ansichten Speichern"
 
-#: ex_docmd.c:6624
+#: ex_docmd.c:7559
 msgid "Save Session"
 msgstr "Sitzung Speichern"
 
-#: ex_docmd.c:6626
+#: ex_docmd.c:7561
 msgid "Save Setup"
 msgstr "Einstellungen Speichern"
 
-#: ex_docmd.c:6775
-#, c-format
-msgid "E189: \"%s\" exists (use ! to override)"
-msgstr "E189: \"%s\" existiert (erzwinge durch !)"
-
-#: ex_docmd.c:6780
+#: ex_docmd.c:7713
+#, c-format
+msgid "E189: \"%s\" exists (add ! to override)"
+msgstr "E189: \"%s\" existiert (erzwinge mit !)"
+
+#: ex_docmd.c:7718
 #, c-format
 msgid "E190: Cannot open \"%s\" for writing"
 msgstr "E190: \"%s\" kann nicht zum Schreiben geöffnet werden"
 
 #. set mark
-#: ex_docmd.c:6804
+#: ex_docmd.c:7742
 msgid "E191: Argument must be a letter or forward/backward quote"
 msgstr ""
 "E191: Argument muss ein Buchstabe oder vorwärts/rückwärts-Anführungszeichen "
 "sein"
 
-#: ex_docmd.c:6847
+#: ex_docmd.c:7784
 msgid "E192: Recursive use of :normal too deep"
 msgstr "E192: Rekursive Verwendung von :normal zu tief"
 
-#: ex_docmd.c:7208
-msgid ":if nesting too deep"
-msgstr ":if Schachtelung zu tief"
-
-#: ex_docmd.c:7243
-msgid ":endif without :if"
-msgstr ":endif ohne :if"
-
-#: ex_docmd.c:7263
-msgid ":else without :if"
-msgstr ":else ohne :if"
-
-#: ex_docmd.c:7265
-msgid ":elseif without :if"
-msgstr ":elseif ohne :if"
-
-#: ex_docmd.c:7317
-msgid ":while nesting too deep"
-msgstr ":while Schachtelung zu tief"
-
-#: ex_docmd.c:7363
-msgid ":continue without :while"
-msgstr ":continue ohne :while"
-
-#: ex_docmd.c:7390
-msgid ":break without :while"
-msgstr ":break ohne :while"
-
-#: ex_docmd.c:7413 ex_docmd.c:7418
-msgid ":endwhile without :while"
-msgstr ":endwhile ohne :while"
-
-#: ex_docmd.c:7439
-msgid "E193: :endfunction not inside a function"
-msgstr "E193: :endfunction außerhalb einer Funktion"
-
-#: ex_docmd.c:7619
+#: ex_docmd.c:8302
 msgid "E194: No alternate file name to substitute for '#'"
 msgstr "E194: Kein anderer Dateiname zur Ersetzung mit '#'"
 
-#: ex_docmd.c:7650
-msgid "no autocommand file name to substitute for \"<afile>\""
-msgstr "kein Auto-Kommando-Datei-Name zur Ersetzung mit \"<afile>\""
-
-#: ex_docmd.c:7658
-msgid "no autocommand buffer number to substitute for \"<abuf>\""
-msgstr "keine Auto-Kommando-Puffer-Nummer zur Ersetzung mit \"<abuf>\""
-
-#: ex_docmd.c:7669
-msgid "no autocommand match name to substitute for \"<amatch>\""
+#: ex_docmd.c:8333
+msgid "E495: no autocommand file name to substitute for \"<afile>\""
+msgstr "E495: Kein Auto-Kommando-Dateiname zur Ersetzung mit \"<afile>\""
+
+#: ex_docmd.c:8341
+msgid "E496: no autocommand buffer number to substitute for \"<abuf>\""
+msgstr "E496: Keine Auto-Kommando-Puffernummer zur Ersetzung mit \"<abuf>\""
+
+#: ex_docmd.c:8352
+msgid "E497: no autocommand match name to substitute for \"<amatch>\""
 msgstr ""
-"kein passender Name eines Auto-Kommandos zur Ersetzung mit \"<amatch>\""
-
-#: ex_docmd.c:7679
-msgid "no :source file name to substitute for \"<sfile>\""
-msgstr "kein :source Dateiname zur Ersetzung mit \"<sfile>\""
-
-#: ex_docmd.c:7720
+"E497: Kein passender Name eines Auto-Kommandos zur Ersetzung mit \"<amatch>\""
+
+#: ex_docmd.c:8362
+msgid "E498: no :source file name to substitute for \"<sfile>\""
+msgstr "E498: kein :source Dateiname zur Ersetzung mit \"<sfile>\""
+
+#: ex_docmd.c:8403
 #, no-c-format
-msgid "Empty file name for '%' or '#', only works with \":p:h\""
-msgstr "Leerer Dateiname für '%' oder '#', funktioniert nur mit \":p:h\""
-
-#: ex_docmd.c:7722
-msgid "Evaluates to an empty string"
-msgstr "Ergibt eine leere Zeichenkette"
-
-#: ex_docmd.c:8655
+msgid "E499: Empty file name for '%' or '#', only works with \":p:h\""
+msgstr "E499: Leerer Dateiname für '%' oder '#', funktioniert nur mit \":p:h\""
+
+#: ex_docmd.c:8405
+msgid "E500: Evaluates to an empty string"
+msgstr "E500: Ergibt eine leere Zeichenkette"
+
+#: ex_docmd.c:9360
 msgid "E195: Cannot open viminfo file for reading"
 msgstr "E195: viminfo kann nicht zum Lesen geöffnet werden"
 
-#: ex_docmd.c:8828
+#: ex_docmd.c:9533
 msgid "E196: No digraphs in this version"
 msgstr "ed9) Keine Digraphen in dieser Version"
 
-#: ex_getln.c:2833
+#: ex_eval.c:440
+#~ msgid "E608: Cannot :throw exceptions with 'Vim' prefix"
+#~ msgstr ""
+
+#. always scroll up, don't overwrite
+#: ex_eval.c:529
+#, c-format
+msgid "Exception thrown: %s"
+msgstr "Ausnahme geworfen: %s"
+
+#: ex_eval.c:576
+#, c-format
+msgid "Exception finished: %s"
+msgstr "Ausnahme beendet: %s"
+
+#: ex_eval.c:577
+#, c-format
+msgid "Exception discarded: %s"
+msgstr "Ausnahme verworfen: %s"
+
+#: ex_eval.c:620 ex_eval.c:664
+#, c-format
+msgid "%s, line %ld"
+msgstr "%s, Zeile %ld"
+
+#. always scroll up, don't overwrite
+#: ex_eval.c:638
+#, c-format
+msgid "Exception caught: %s"
+msgstr "Ausnahme gefangen: %s"
+
+#: ex_eval.c:713
+#, c-format
+#~ msgid "%s made pending"
+#~ msgstr ""
+
+#: ex_eval.c:716
+#, c-format
+msgid "%s resumed"
+msgstr "%s wieder aufgenommen"
+
+#: ex_eval.c:720
+#, c-format
+msgid "%s discarded"
+msgstr "%s verworfen"
+
+#: ex_eval.c:746
+msgid "Exception"
+msgstr "Ausnahme"
+
+#: ex_eval.c:752
+#, fuzzy
+#~ msgid "Error and interrupt"
+#~ msgstr "Tastatur-Unterbrechung"
+
+#: ex_eval.c:754 gui.c:4381
+msgid "Error"
+msgstr "Fehler"
+
+#. if (pending & CSTP_INTERRUPT)
+#: ex_eval.c:756
+msgid "Interrupt"
+msgstr "Unterbrechung"
+
+#: ex_eval.c:830
+msgid "E579: :if nesting too deep"
+msgstr "E579: :if Schachtelung zu tief"
+
+#: ex_eval.c:867
+msgid "E580: :endif without :if"
+msgstr "E580: :endif ohne :if"
+
+#: ex_eval.c:911
+msgid "E581: :else without :if"
+msgstr "E581: :else ohne :if"
+
+#: ex_eval.c:914
+msgid "E582: :elseif without :if"
+msgstr "E582: :elseif ohne :if"
+
+#: ex_eval.c:921
+msgid "E583: multiple :else"
+msgstr "E583: mehrere :else"
+
+#: ex_eval.c:924
+msgid "E584: :elseif after :else"
+msgstr "E584: :elseif nach :else"
+
+#: ex_eval.c:991
+msgid "E585: :while nesting too deep"
+msgstr "E585: :while Schachtelung zu tief"
+
+#: ex_eval.c:1047
+msgid "E586: :continue without :while"
+msgstr "E586: :continue ohne :while"
+
+#: ex_eval.c:1087
+msgid "E587: :break without :while"
+msgstr "E587: :break ohne :while"
+
+#: ex_eval.c:1286
+msgid "E601: :try nesting too deep"
+msgstr "E601: :try Schachtelung zu tief"
+
+#: ex_eval.c:1366
+msgid "E603: :catch without :try"
+msgstr "E603: :catch ohne :try"
+
+#. Give up for a ":catch" after ":finally" and ignore it.
+#. * Just parse.
+#: ex_eval.c:1388
+msgid "E604: :catch after :finally"
+msgstr "E604: :catch nach :finally"
+
+#: ex_eval.c:1521
+msgid "E606: :finally without :try"
+msgstr "E606: :finally ohne :try"
+
+#. Give up for a multiple ":finally" and ignore it.
+#: ex_eval.c:1545
+msgid "E607: multiple :finally"
+msgstr "E607: mehrere :finally"
+
+#: ex_eval.c:1654
+msgid "E602: :endtry without :try"
+msgstr "E602: :endtry ohne :try"
+
+#: ex_eval.c:1986
+msgid "E193: :endfunction not inside a function"
+msgstr "E193: :endfunction außerhalb einer Funktion"
+
+#: ex_getln.c:3296
 msgid "tagname"
 msgstr "Tag-Name"
 
-#: ex_getln.c:2836
+#: ex_getln.c:3299
 msgid " kind file\n"
 msgstr " verwandte Datei\n"
 
-#: ex_getln.c:4049
+#: ex_getln.c:4752
 msgid "'history' option is zero"
 msgstr "'history'-Option ist Null"
 
-#: ex_getln.c:4289
+#: ex_getln.c:5023
 #, c-format
 msgid ""
 "\n"
@@ -1371,245 +1579,263 @@ msgstr ""
 "\n"
 "# %s Geschichte (neueste bis älteste):\n"
 
-#: ex_getln.c:4290
+#: ex_getln.c:5024
 msgid "Command Line"
 msgstr "Befehlszeile"
 
-#: ex_getln.c:4291
+#: ex_getln.c:5025
 msgid "Search String"
 msgstr "Suchausdruck"
 
-#: ex_getln.c:4292
+#: ex_getln.c:5026
 msgid "Expression"
 msgstr "Ausdruck"
 
-#: ex_getln.c:4293
+#: ex_getln.c:5027
 msgid "Input Line"
 msgstr "Eingabe-Zeile"
 
-#: ex_getln.c:4323
+#: ex_getln.c:5065
 msgid "E198: cmd_pchar beyond the command length"
 msgstr "E198: cmd_pchar über die Länge des Befehls hinaus"
 
-#: ex_getln.c:4491
+#: ex_getln.c:5242
 msgid "E199: Active window or buffer deleted"
 msgstr "E199: aktives Fenster oder Puffer gelöscht"
 
-#: fileio.c:351
+#: fileio.c:377
 msgid "Illegal file name"
 msgstr "unzulässiger Dateiname"
 
-#: fileio.c:375 fileio.c:500 fileio.c:2516 fileio.c:2554
+#: fileio.c:401 fileio.c:535 fileio.c:2913 fileio.c:2954
 msgid "is a directory"
 msgstr "ist ein Verzeichnis"
 
-#: fileio.c:377
+#: fileio.c:403
 msgid "is not a file"
 msgstr "ist keine Datei"
 
-#: fileio.c:522 fileio.c:3646
+#: fileio.c:557 fileio.c:4131
 msgid "[New File]"
 msgstr "[Neue Datei]"
 
-#: fileio.c:540
+#: fileio.c:590
 msgid "[Permission Denied]"
 msgstr "[Keine Erlaubnis]"
 
-#: fileio.c:634
+#: fileio.c:694
 msgid "E200: *ReadPre autocommands made the file unreadable"
 msgstr "E200: *ReadPre Auto-Kommandos haben die Datei unlesbar gemacht"
 
-#: fileio.c:636
+#: fileio.c:696
 msgid "E201: *ReadPre autocommands must not change current buffer"
 msgstr ""
 "E201: *ReadPre Auto-Kommandos dürfen nicht den aktuellen Puffer wechseln"
 
-#: fileio.c:657
+#: fileio.c:717
 msgid "Vim: Reading from stdin...\n"
 msgstr "Vim: Lese von stdin...\n"
 
-#: fileio.c:663
+#: fileio.c:723
 msgid "Reading from stdin..."
 msgstr "Lese von stdin..."
 
 #. Re-opening the original file failed!
-#: fileio.c:892
+#: fileio.c:1000
 msgid "E202: Conversion made file unreadable!"
 msgstr "E202: Datei wurde unlesbar durch Umwandlung"
 
-#: fileio.c:1755
+#: fileio.c:2090
 msgid "[fifo/socket]"
 msgstr "[fifo/socket]"
 
-#: fileio.c:1762
+#: fileio.c:2097
 msgid "[fifo]"
 msgstr "[fifo]"
 
-#: fileio.c:1769
+#: fileio.c:2104
 msgid "[socket]"
 msgstr "[socket]"
 
-#: fileio.c:1777
+#: fileio.c:2112
 msgid "[RO]"
 msgstr "[RO]"
 
-#: fileio.c:1787
+#: fileio.c:2122
 msgid "[CR missing]"
 msgstr "[CR fehlt]"
 
-#: fileio.c:1792
+#: fileio.c:2127
 msgid "[NL found]"
 msgstr "[NL gefunden]"
 
-#: fileio.c:1797
+#: fileio.c:2132
 msgid "[long lines split]"
 msgstr "[lange Zeilen geteilt]"
 
-#: fileio.c:1803 fileio.c:3630
+#: fileio.c:2138 fileio.c:4115
 msgid "[NOT converted]"
 msgstr "[NICHT konvertiert]"
 
-#: fileio.c:1808 fileio.c:3635
+#: fileio.c:2143 fileio.c:4120
 msgid "[converted]"
 msgstr "[konvertiert]"
 
-#: fileio.c:1815 fileio.c:3660
+#: fileio.c:2150 fileio.c:4145
 msgid "[crypted]"
 msgstr "[verschlüsselt]"
 
-#: fileio.c:1822
+#: fileio.c:2157
 msgid "[CONVERSION ERROR]"
 msgstr "[UMWANDLUNGS-FEHLER]"
 
-#: fileio.c:1829
+#: fileio.c:2163
+#, c-format
+msgid "[ILLEGAL BYTE in line %ld]"
+msgstr "[UNZULÄSSIGES BYTE in Zeile %ld]"
+
+#: fileio.c:2170
 msgid "[READ ERRORS]"
 msgstr "[LESE-FEHLER]"
 
-#: fileio.c:2036
+#: fileio.c:2386
 msgid "Can't find temp file for conversion"
 msgstr "temporäre Datei kann nicht zum Umwandeln geöffnet werden"
 
-#: fileio.c:2043
+#: fileio.c:2393
 msgid "Conversion with 'charconvert' failed"
 msgstr "Fehler bei der Umwandlung mit 'charconvert'"
 
-#: fileio.c:2046
+#: fileio.c:2396
 msgid "can't read output of 'charconvert'"
 msgstr "Ausgabe von 'charconvert' kann nicht gelesen werden"
 
-#: fileio.c:2432
+#: fileio.c:2796
 msgid "E203: Autocommands deleted or unloaded buffer to be written"
 msgstr ""
 "E203: Auto-Kommandos haben den zu schreibenden Puffer gelöscht oder heraus "
 "geladen"
 
-#: fileio.c:2455
+#: fileio.c:2819
 msgid "E204: Autocommand changed number of lines in unexpected way"
 msgstr ""
 "E204: Auto-Kommandos haben die Anzahl der Zeilen in unerwarteter Weise "
 "verändert"
 
-#: fileio.c:2521 fileio.c:2538
+#: fileio.c:2857
+#~ msgid "NetBeans dissallows writes of unmodified buffers"
+#~ msgstr ""
+
+#: fileio.c:2865
+#, fuzzy
+#~ msgid "Partial writes disallowed for NetBeans buffers"
+#~ msgstr "Keine Syntax-Elemente definiert für diesen Puffer"
+
+#: fileio.c:2919 fileio.c:2937
 msgid "is not a file or writable device"
 msgstr "ist keine Datei oder beschreibbares Device"
 
-#: fileio.c:2584
-msgid "is read-only (use ! to override)"
-msgstr "ist Schreibgeschützt (erzwinge durch !)"
-
-#: fileio.c:2886
-msgid "Can't write to backup file (use ! to override)"
-msgstr "Sicherungs-Datei kann nicht geschrieben werden (erzwinge mit !)"
-
-#: fileio.c:2898
-msgid "Close error for backup file (use ! to override)"
-msgstr "Fehler beim Schließen der Sicherungs-Datei (erzwinge mit !)"
-
-#: fileio.c:2900
-msgid "Can't read file for backup (use ! to override)"
-msgstr "Datei zum Backup kann nicht gelesen werden (erzwinge mit !)"
-
-#: fileio.c:2916
-msgid "Cannot create backup file (use ! to override)"
-msgstr "Backup-Datei kann nicht angelegt werden (erzwinge mit !)"
-
-#: fileio.c:3018
-msgid "Can't make backup file (use ! to override)"
-msgstr "Backup-Datei kann nicht erstellt werden (erzwinge mit !)"
-
-#: fileio.c:3080
-msgid "The resource fork will be lost (use ! to override)"
-msgstr "Der Resourcefork geht verloren (erzwinge mit !)"
-
-#: fileio.c:3169
+#: fileio.c:2989
+msgid "is read-only (add ! to override)"
+msgstr "ist Schreibgeschützt (erzwinge mit !)"
+
+#: fileio.c:3335
+msgid "E506: Can't write to backup file (add ! to override)"
+msgstr "E506: Sicherungsdatei kann nicht geschrieben werden (erzwinge mit !)"
+
+#: fileio.c:3347
+msgid "E507: Close error for backup file (add ! to override)"
+msgstr "E507: Fehler beim Schließen der Sicherungsdatei (erzwinge mit !)"
+
+#: fileio.c:3349
+msgid "E508: Can't read file for backup (add ! to override)"
+msgstr "E508: Sicherungsdatei kann nicht gelesen werden (erzwinge mit !)"
+
+#: fileio.c:3365
+msgid "E509: Cannot create backup file (add ! to override)"
+msgstr "E509: Sicherungsdatei kann nicht angelegt werden (erzwinge mit !)"
+
+#: fileio.c:3468
+msgid "E510: Can't make backup file (add ! to override)"
+msgstr "E510: Sicherungsdatei kann nicht erstellt werden (erzwinge mit !)"
+
+#: fileio.c:3530
+msgid "E460: The resource fork would be lost (add ! to override)"
+msgstr "E460: Der Ressourcefork geht verloren (erzwinge mit !)"
+
+#: fileio.c:3640
 msgid "E214: Can't find temp file for writing"
 msgstr "E214: temporäre Datei kann nicht zum Schreiben geöffnet werden"
 
-#: fileio.c:3187
-msgid "E213: Cannot convert (use ! to write without conversion)"
+#: fileio.c:3658
+msgid "E213: Cannot convert (add ! to write without conversion)"
 msgstr "E213: Fehler bei der Umwandlung (schreibe ohne Umwandlung mit !)"
 
-#: fileio.c:3222
+#: fileio.c:3693
 msgid "E166: Can't open linked file for writing"
 msgstr "E166: Gelinkte Datei kann nicht zum Schreiben geöffnet werden"
 
-#: fileio.c:3226
+#: fileio.c:3697
 msgid "E212: Can't open file for writing"
 msgstr "E212: Datei kann nicht zum Schreiben geöffnet werden"
 
-#: fileio.c:3475
-msgid "Close failed"
-msgstr "Fehler beim Schließen"
-
-#: fileio.c:3546
-msgid "write error, conversion failed"
-msgstr "Schreib-Fehler, Umwandlung schlug fehl"
-
-#: fileio.c:3552
-msgid "write error (file system full?)"
-msgstr "Schreibfehler (Dateisystem voll?)"
-
-#: fileio.c:3625
+#: fileio.c:3959
+msgid "E667: Fsync failed"
+msgstr "E667: Fsync fehlgeschlagen"
+
+#: fileio.c:3966
+msgid "E512: Close failed"
+msgstr "E512: Fehler beim Schließen"
+
+#: fileio.c:4037
+msgid "E513: write error, conversion failed"
+msgstr "E513: Schreibfehler, Umwandlung schlug fehl"
+
+#: fileio.c:4043
+msgid "E514: write error (file system full?)"
+msgstr "E514: Schreibfehler (Dateisystem voll?)"
+
+#: fileio.c:4110
 msgid " CONVERSION ERROR"
 msgstr "KONVERTIERUNGS-FEHLER"
 
-#: fileio.c:3641
+#: fileio.c:4126
 msgid "[Device]"
 msgstr "[Ausgabegerät]"
 
-#: fileio.c:3646
+#: fileio.c:4131
 msgid "[New]"
 msgstr "[Neu]"
 
-#: fileio.c:3668
+#: fileio.c:4153
 msgid " [a]"
 msgstr " [a]"
 
-#: fileio.c:3668
+#: fileio.c:4153
 msgid " appended"
 msgstr " angefügt"
 
-#: fileio.c:3670
+#: fileio.c:4155
 msgid " [w]"
 msgstr " [w]"
 
-#: fileio.c:3670
+#: fileio.c:4155
 msgid " written"
 msgstr " geschrieben"
 
-#: fileio.c:3720
+#: fileio.c:4205
 msgid "E205: Patchmode: can't save original file"
 msgstr "E205: patchmode: Original-Datei kann nicht gespeichert werden"
 
-#: fileio.c:3742
+#: fileio.c:4227
 msgid "E206: patchmode: can't touch empty original file"
 msgstr "E206: patchmode: leere Original-Datei kann nicht verändert werden"
 
-#: fileio.c:3757
+#: fileio.c:4242
 msgid "E207: Can't delete backup file"
 msgstr "E207: Backup-Datei kann nicht gelöscht werden"
 
-#: fileio.c:3809
+#: fileio.c:4306
 msgid ""
 "\n"
 "WARNING: Original file may be lost or damaged\n"
@@ -1617,96 +1843,96 @@ msgstr ""
 "\n"
 "ACHTUNG: Original-Datei kann verloren oder zerstört sein\n"
 
-#: fileio.c:3811
+#: fileio.c:4308
 msgid "don't quit the editor until the file is successfully written!"
 msgstr "beende nicht den Editor bis die Datei erfolgreich geschrieben wurde!"
 
-#: fileio.c:3891
+#: fileio.c:4397
 msgid "[dos]"
 msgstr "[dos]"
 
-#: fileio.c:3891
+#: fileio.c:4397
 msgid "[dos format]"
 msgstr "[dos Format]"
 
-#: fileio.c:3898
+#: fileio.c:4404
 msgid "[mac]"
 msgstr "[mac]"
 
-#: fileio.c:3898
+#: fileio.c:4404
 msgid "[mac format]"
 msgstr "[mac Format]"
 
-#: fileio.c:3905
+#: fileio.c:4411
 msgid "[unix]"
 msgstr "[unix]"
 
-#: fileio.c:3905
+#: fileio.c:4411
 msgid "[unix format]"
 msgstr "[unix Format]"
 
-#: fileio.c:3932
+#: fileio.c:4438
 msgid "1 line, "
 msgstr "1 Zeile, "
 
-#: fileio.c:3934
+#: fileio.c:4440
 #, c-format
 msgid "%ld lines, "
 msgstr "%ld Zeilen, "
 
-#: fileio.c:3937
+#: fileio.c:4443
 msgid "1 character"
 msgstr "1 Zeichen"
 
-#: fileio.c:3939
+#: fileio.c:4445
 #, c-format
 msgid "%ld characters"
 msgstr "%ld Zeichen"
 
-#: fileio.c:3949
+#: fileio.c:4455
 msgid "[noeol]"
 msgstr "[noeol]"
 
-#: fileio.c:3949
+#: fileio.c:4455
 msgid "[Incomplete last line]"
 msgstr "[Unvollständige letzte Zeile]"
 
 #. don't overwrite messages here
 #. must give this prompt
 #. don't use emsg() here, don't want to flush the buffers
-#: fileio.c:3968
+#: fileio.c:4474
 msgid "WARNING: The file has been changed since reading it!!!"
 msgstr "ACHTUNG: Die Datei wurde seit dem letzten Lesen geändert!!!"
 
-#: fileio.c:3970
+#: fileio.c:4476
 msgid "Do you really want to write to it"
 msgstr "Möchten Sie es wirklich schreiben"
 
-#: fileio.c:4933
+#: fileio.c:5726
 #, c-format
 msgid "E208: Error writing to \"%s\""
 msgstr "E208: Fehler während des Schreibens nach \"%s\""
 
-#: fileio.c:4940
+#: fileio.c:5733
 #, c-format
 msgid "E209: Error closing \"%s\""
 msgstr "E209: Fehler beim Schließen von \"%s\""
 
-#: fileio.c:4943
+#: fileio.c:5736
 #, c-format
 msgid "E210: Error reading \"%s\""
 msgstr "E210: Fehler beim Lesen von \"%s\""
 
-#: fileio.c:5115
+#: fileio.c:5970
 msgid "E246: FileChangedShell autocommand deleted buffer"
 msgstr "E246: FileChangedShell Autokommando löschte Puffer"
 
-#: fileio.c:5123
+#: fileio.c:5977
 #, c-format
 msgid "E211: Warning: File \"%s\" no longer available"
 msgstr "E211: Achtung: Datei \"%s\" ist nicht länger vorhanden"
 
-#: fileio.c:5136
+#: fileio.c:5991
 #, c-format
 msgid ""
 "W12: Warning: File \"%s\" has changed and the buffer was changed in Vim as "
@@ -1715,32 +1941,36 @@ msgstr ""
 "W12: Achtung: Datei \"%s\" wurde verändert und der Puffer wurde ebenfalls in "
 "Vim verändert"
 
-#: fileio.c:5139
+#: fileio.c:5994
 #, c-format
 msgid "W11: Warning: File \"%s\" has changed since editing started"
 msgstr ""
 "W11: Achtung: Datei \"%s\" wurde verändert, seit mit dem Editieren "
 "angefangen wurde"
 
-#: fileio.c:5141
+#: fileio.c:5996
 #, c-format
 msgid "W16: Warning: Mode of file \"%s\" has changed since editing started"
 msgstr ""
 "W11: Achtung: Mode der Datei \"%s\" wurde verändert seit mit dem Editieren "
 "angefangen wurde"
 
-#: fileio.c:5151
+#: fileio.c:6006
 #, c-format
 msgid "W13: Warning: File \"%s\" has been created after editing started"
 msgstr ""
 "W13: Achtug: Datei \"%s\" wurde erstellt, nachdem mit dem Editieren begonnen "
 "wurde"
 
-#: fileio.c:5168
+#: fileio.c:6019
+#~ msgid "See \":help W11\" for more info."
+#~ msgstr ""
+
+#: fileio.c:6033
 msgid "Warning"
 msgstr "Warnung"
 
-#: fileio.c:5169
+#: fileio.c:6034
 msgid ""
 "&OK\n"
 "&Load File"
@@ -1748,33 +1978,43 @@ msgstr ""
 "&OK\n"
 "&Lese Datei"
 
-#: fileio.c:5248
+#: fileio.c:6140
+#, fuzzy, c-format
+#~ msgid "E462: Could not prepare for reloading \"%s\""
+#~ msgstr "E321: \"%s\" konnte nicht neu geladen werden"
+
+#: fileio.c:6159
 #, c-format
 msgid "E321: Could not reload \"%s\""
 msgstr "E321: \"%s\" konnte nicht neu geladen werden"
 
-#: fileio.c:5779
+#: fileio.c:6740
 msgid "--Deleted--"
 msgstr "--gelöscht--"
 
 #. the group doesn't exist
-#: fileio.c:5939
+#: fileio.c:6900
 #, c-format
 msgid "E367: No such group: \"%s\""
 msgstr "E367: Keine solche Gruppe: \"%s\""
 
-#: fileio.c:6064
+#: fileio.c:7026
 #, c-format
 msgid "E215: Illegal character after *: %s"
 msgstr "E215: Unzulässiges Zeichen nach *: %s"
 
-#: fileio.c:6075
+#: fileio.c:7038
 #, c-format
 msgid "E216: No such event: %s"
 msgstr "E216: Kein derartiges Ereignis: %s"
 
+#: fileio.c:7040
+#, c-format
+msgid "E216: No such group or event: %s"
+msgstr "E216: Keine solche Gruppe oder Ereignis: %s"
+
 #. Highlight title
-#: fileio.c:6224
+#: fileio.c:7198
 msgid ""
 "\n"
 "--- Auto-Commands ---"
@@ -1782,147 +2022,150 @@ msgstr ""
 "\n"
 "--- Auto-Kommandos ---"
 
-#: fileio.c:6495
+#: fileio.c:7469
 msgid "E217: Can't execute autocommands for ALL events"
 msgstr "E217: Auto-Kommandos können nicht für ALL Ereignisse ausgeführt werden"
 
-#: fileio.c:6518
+#: fileio.c:7492
 msgid "No matching autocommands"
 msgstr "Keine passenden Auto-Kommandos"
 
-#: fileio.c:6790
+#: fileio.c:7813
 msgid "E218: autocommand nesting too deep"
 msgstr "E218: Auto-Kommando Schachtelung zu tief"
 
-#: fileio.c:7077
+#: fileio.c:8088
 #, c-format
 msgid "%s Auto commands for \"%s\""
 msgstr "%s Auto-Kommandos für \"%s\""
 
-#: fileio.c:7085
+#: fileio.c:8096
 #, c-format
 msgid "Executing %s"
 msgstr "Ausführung von %s"
 
 #. always scroll up, don't overwrite
-#: fileio.c:7153
+#: fileio.c:8164
 #, c-format
 msgid "autocommand %s"
 msgstr "Autokommando %s"
 
-#: fileio.c:7675
+#: fileio.c:8731
 msgid "E219: Missing {."
 msgstr "E219: Es fehlt ein {."
 
-#: fileio.c:7677
+#: fileio.c:8733
 msgid "E220: Missing }."
 msgstr "E220: Es fehlt ein }."
 
-#: fold.c:66
-msgid "No fold found"
-msgstr "Keine Faltung gefunden"
-
-#: fold.c:553
+#: fold.c:68
+msgid "E490: No fold found"
+msgstr "E490: Keine Faltung gefunden"
+
+#: fold.c:593
 msgid "E350: Cannot create fold with current 'foldmethod'"
 msgstr ""
 "E350: Faltung kann mit der eingestellten Methode 'foldmethod' nicht erzeugt "
 "werden"
 
-#: fold.c:555
+#: fold.c:595
 msgid "E351: Cannot delete fold with current 'foldmethod'"
 msgstr ""
 "E351: Faltung kann mit der eingestellten Methode 'foldmethod' nicht entfernt "
 "werden"
 
-#: getchar.c:247
+#: getchar.c:248
 msgid "E222: Add to read buffer"
 msgstr "E222: Zum Lese-Puffer Hinzufügen"
 
-#: getchar.c:2106
+#: getchar.c:2198
 msgid "E223: recursive mapping"
 msgstr "E223: rekursive Zuordnung"
 
-#: getchar.c:2948
+#: getchar.c:3077
 #, c-format
 msgid "E224: global abbreviation already exists for %s"
 msgstr "E224: Globale Abkürzung für %s existiert bereits"
 
-#: getchar.c:2951
+#: getchar.c:3080
 #, c-format
 msgid "E225: global mapping already exists for %s"
 msgstr "E225: Globale Zuordnung für %s existiert bereits"
 
-#: getchar.c:3078
+#: getchar.c:3212
 #, c-format
 msgid "E226: abbreviation already exists for %s"
 msgstr "E226: Abkürzung für %s existiert bereits"
 
-#: getchar.c:3081
+#: getchar.c:3215
 #, c-format
 msgid "E227: mapping already exists for %s"
 msgstr "E227: Zuordnung für %s existiert bereits"
 
-#: getchar.c:3145
+#: getchar.c:3279
 msgid "No abbreviation found"
 msgstr "Keine Abkürzung gefunden"
 
-#: getchar.c:3147
+#: getchar.c:3281
 msgid "No mapping found"
 msgstr "Keine Zuordnung gefunden"
 
-#: getchar.c:3992
+#: getchar.c:4173
 msgid "E228: makemap: Illegal mode"
 msgstr "E228: makemap: Unzulässiger Modus"
 
-#: gui.c:203
+#: gui.c:220
 msgid "E229: Cannot start the GUI"
 msgstr "E229: GUI kann nicht gestartet werden"
 
-#: gui.c:328
+#: gui.c:349
 #, c-format
 msgid "E230: Cannot read from \"%s\""
 msgstr "E230: Kann nicht von \"%s\" lesen"
 
-#: gui.c:453
+#: gui.c:472
+msgid "E665: Cannot start GUI, no valid font found"
+msgstr "E665: GUI kann nicht gestartet werden, keine gültige Schrift gefunden"
+
+#: gui.c:477
 msgid "E231: 'guifontwide' invalid"
 msgstr "E231: 'guifontwide' ungültig"
 
-#: gui.c:3704
+#: gui.c:547
+msgid "E599: Value of 'imactivatekey' is invalid"
+msgstr "E599: Wert von 'imactivatekey' ist ungültig"
+
+#: gui.c:4061
 #, c-format
 msgid "E254: Cannot allocate color %s"
 msgstr "E254: Farbe für %s kann nicht alloziert werden"
 
-#: gui.c:3989
-msgid "Error"
-msgstr "Fehler"
-
-#: gui_at_fs.c:290
+#: gui_at_fs.c:300
 msgid "<cannot open> "
-msgstr "<kann nicht öffnen>"
-
-#: gui_at_fs.c:1115
-#, c-format
-msgid "vim_SelFile: can't get font %s"
-msgstr "vim_SelFile: Schriftart %s kann nicht erhalten werden"
-
-#: gui_at_fs.c:2538
-msgid "vim_SelFile: can't return to current directory"
-msgstr "vim_SelFile: kann nicht zum laufenden Verzeichnis zurückkehren"
-
-#: gui_at_fs.c:2557
+msgstr "<kann nicht öffnen> "
+
+#: gui_at_fs.c:1136
+#, c-format
+msgid "E616: vim_SelFile: can't get font %s"
+msgstr "E616: vim_SelFile: Schriftart %s kann nicht erhalten werden"
+
+#: gui_at_fs.c:2781
+msgid "E614: vim_SelFile: can't return to current directory"
+msgstr "E614: vim_SelFile: kann nicht zum laufenden Verzeichnis zurückkehren"
+
+#: gui_at_fs.c:2801
 msgid "Pathname:"
 msgstr "Pfad:"
 
-#: gui_at_fs.c:2563
-msgid "vim_SelFile: can't get current directory"
-msgstr "vim_SelFile: laufendes Verzeichnis kann nicht ermittelt werden"
-
-#: gui_at_fs.c:2571 gui_motif.c:1619
+#: gui_at_fs.c:2807
+msgid "E615: vim_SelFile: can't get current directory"
+msgstr "E615: vim_SelFile: laufendes Verzeichnis kann nicht ermittelt werden"
+
+#: gui_at_fs.c:2815 gui_motif.c:1623
 msgid "OK"
 msgstr "OK"
 
-#. 'Cancel' button
-#: gui_at_fs.c:2571 gui_gtk.c:1740 gui_motif.c:1614 gui_motif.c:2835
+#: gui_at_fs.c:2815 gui_gtk.c:2731 gui_motif.c:1618 gui_motif.c:2849
 msgid "Cancel"
 msgstr "Abbrechen"
 
@@ -1930,131 +2173,138 @@ msgstr "Abbrechen"
 msgid "Scrollbar Widget: Could not get geometry of thumb pixmap."
 msgstr "Scrollbar Widget: Geometrie des Bildchens kann nicht ermittelt werden"
 
-#: gui_athena.c:1956 gui_motif.c:1867
+#: gui_athena.c:2047 gui_motif.c:1871
 msgid "Vim dialog"
 msgstr "VIM - Dialog..."
 
-#: gui_beval.c:68
+#: gui_beval.c:101 gui_w32.c:3953
 msgid "E232: Cannot create BalloonEval with both message and callback"
 msgstr ""
 "E232: BalloonEval kann nicht mit sowohl \"message\" und \"callback\" erzeugt "
 "werden"
 
-#: gui_gtk.c:1190
+#: gui_gtk.c:1607
 msgid "Vim dialog..."
 msgstr "VIM - Dialog..."
 
-#: gui_gtk.c:1576 gui_motif.c:2754
+#: gui_gtk.c:2060 message.c:2999
+msgid ""
+"&Yes\n"
+"&No\n"
+"&Cancel"
+msgstr ""
+"&Ja\n"
+"&Nein\n"
+"&Abbrechen"
+
+#: gui_gtk.c:2268
+#~ msgid "Input _Methods"
+#~ msgstr ""
+
+#: gui_gtk.c:2534 gui_motif.c:2768
 msgid "VIM - Search and Replace..."
 msgstr "VIM - Suchen und Ersetzen..."
 
-#: gui_gtk.c:1581 gui_motif.c:2756
+#: gui_gtk.c:2542 gui_motif.c:2770
 msgid "VIM - Search..."
 msgstr "VIM - Suchen..."
 
-#: gui_gtk.c:1604 gui_motif.c:2874
+#: gui_gtk.c:2574 gui_motif.c:2888
 msgid "Find what:"
 msgstr "Wonach suchen:"
 
-#: gui_gtk.c:1622 gui_motif.c:2906
+#: gui_gtk.c:2592 gui_motif.c:2920
 msgid "Replace with:"
 msgstr "Ersetzen mit:"
 
-#. exact match only button
-#: gui_gtk.c:1654 gui_motif.c:3008
-msgid "Match exact word only"
-msgstr "Passend für einzelne Wörter"
-
-#: gui_gtk.c:1666 gui_motif.c:2976
+#. whole word only button
+#: gui_gtk.c:2624 gui_motif.c:3036
+#, fuzzy
+#~ msgid "Match whole word only"
+#~ msgstr "Passend für einzelne Wörter"
+
+#. match case button
+#: gui_gtk.c:2635 gui_motif.c:3048
+#, fuzzy
+#~ msgid "Match case"
+#~ msgstr "Patch-Datei"
+
+#: gui_gtk.c:2645 gui_motif.c:2990
 msgid "Direction"
 msgstr "Richtung"
 
 #. 'Up' and 'Down' buttons
-#: gui_gtk.c:1678 gui_motif.c:2988
+#: gui_gtk.c:2657 gui_motif.c:3002
 msgid "Up"
 msgstr "Auf"
 
-#: gui_gtk.c:1682 gui_motif.c:2996
+#: gui_gtk.c:2661 gui_motif.c:3010
 msgid "Down"
 msgstr "Ab"
 
-#. 'Find Next' button
-#: gui_gtk.c:1704 gui_motif.c:2778
+#: gui_gtk.c:2683 gui_gtk.c:2685 gui_motif.c:2792
 msgid "Find Next"
 msgstr "Suche Nächstes"
 
-#. 'Replace' button
-#: gui_gtk.c:1721 gui_motif.c:2795
+#: gui_gtk.c:2702 gui_gtk.c:2704 gui_motif.c:2809
 msgid "Replace"
 msgstr "Ersetzen"
 
-#. 'Replace All' button
-#: gui_gtk.c:1730 gui_motif.c:2808
+#: gui_gtk.c:2715 gui_gtk.c:2717 gui_motif.c:2822
 msgid "Replace All"
 msgstr "Alle Ersetzen"
 
-#: gui_gtk_x11.c:1079 gui_x11.c:1199
-msgid "E233: cannot open display"
-msgstr "E233: Display kann nicht geöffnet werden"
-
-#: gui_gtk_x11.c:2494 gui_x11.c:1999
-#, c-format
-msgid "E234: Unknown fontset: %s"
-msgstr "E234: Unbekannter Fontset: %s"
-
-#: gui_gtk_x11.c:2518
+#: gui_gtk_x11.c:2327
+#~ msgid "Vim: Received \"die\" request from session manager\n"
+#~ msgstr ""
+
+#: gui_gtk_x11.c:3519
+#~ msgid "Vim: Main window unexpectedly destroyed\n"
+#~ msgstr ""
+
+#: gui_gtk_x11.c:4138
 msgid "Font Selection"
 msgstr "Auswahl der Schriftart"
 
-#: gui_gtk_x11.c:2764 gui_mac.c:2982 gui_w48.c:1197 gui_x11.c:1835
-#, c-format
-msgid "E235: Unknown font: %s"
-msgstr "E235: Unbekannte Schriftart: %s"
-
-#: gui_gtk_x11.c:2775 gui_x11.c:1859
-#, c-format
-msgid "E236: Font \"%s\" is not fixed-width"
-msgstr "E236: Schriftart \"%s\" hat keine feste Breite"
-
-#: gui_gtk_x11.c:3580 ui.c:1971
+#: gui_gtk_x11.c:6035 ui.c:2120
 msgid "Used CUT_BUFFER0 instead of empty selection"
 msgstr "CUT_BUFFER0 anstatt der leeren Auswahl benutzt"
 
-#: gui_motif.c:1613 gui_motif.c:1616
+#: gui_motif.c:1617 gui_motif.c:1620
 msgid "Filter"
 msgstr "Filter"
 
-#: gui_motif.c:1615
+#: gui_motif.c:1619
 msgid "Directories"
 msgstr "Verzeichnisse"
 
-#: gui_motif.c:1617
+#: gui_motif.c:1621
 msgid "Help"
 msgstr "Hilfe"
 
-#: gui_motif.c:1618
+#: gui_motif.c:1622
 msgid "Files"
 msgstr "Dateien"
 
-#: gui_motif.c:1620
+#: gui_motif.c:1624
 msgid "Selection"
 msgstr "Auswahl"
 
-#: gui_motif.c:2821
+#: gui_motif.c:2835
 msgid "Undo"
 msgstr "Rückgängig"
 
 #: gui_riscos.c:952
-#, c-format
-msgid "E235: Can't load Zap font '%s'"
-msgstr "E235: Zap-Schriftart '%s' kann nicht geladen werden"
+#, fuzzy, c-format
+#~ msgid "E610: Can't load Zap font '%s'"
+#~ msgstr "E235: Zap-Schriftart '%s' kann nicht geladen werden"
 
 #: gui_riscos.c:1048
-#, c-format
-msgid "E235: Can't use font %s"
-msgstr "E235: Schriftart %s kann nicht verwendet werden"
-
-#: gui_riscos.c:3269
+#, fuzzy, c-format
+#~ msgid "E611: Can't use font %s"
+#~ msgstr "E235: Schriftart %s kann nicht verwendet werden"
+
+#: gui_riscos.c:3270
 msgid ""
 "\n"
 "Sending message to terminate child process.\n"
@@ -2062,73 +2312,68 @@ msgstr ""
 "\n"
 "Sende Nachricht zum Beenden des Kind-Prozesses.\n"
 
-#: gui_w32.c:840
+#: gui_w32.c:842
 #, c-format
 msgid "E243: Argument not supported: \"-%s\"; Use the OLE version."
 msgstr ""
 "E243: Argument wird nicht unterstützt: \"-%s\"; verwende die OLE Version."
 
-#. TODO: May be changed this message
-#: gui_w32.c:3448 gui_w32.c:3481 gui_x11.c:3252
-msgid "E255: Couldn't read in sign data!"
-msgstr "E255: Fehler -- Daten für Debugger-Symbol konnten nicht gelesen werden"
-
-#: gui_w48.c:2081
+#: gui_w48.c:2166
 msgid "Find string (use '\\\\' to find  a '\\')"
 msgstr "Suche Zeichenkette (benütze '\\\\' um ein '\\' zu finden)"
 
-#: gui_w48.c:2106
+#: gui_w48.c:2191
 msgid "Find & Replace (use '\\\\' to find  a '\\')"
 msgstr "Suche & Ersetze (use '\\\\' um ein '\\' zu finden)"
 
-#: gui_x11.c:1419
+#: gui_x11.c:1537
 msgid "Vim E458: Cannot allocate colormap entry, some colors may be incorrect"
 msgstr ""
 "Vim E458: \"Colormap\"-Eintrag kann nicht alloziert werden, einige Farben "
 "können falsch sein"
 
-#: gui_x11.c:1989
+#: gui_x11.c:2118
 #, c-format
 msgid "E250: Fonts for the following charsets are missing in fontset %s:"
 msgstr ""
 "E250: Schriftarten für die folgenden Zeichensätze fehlen im \"fontset\" %s:"
 
-#: gui_x11.c:2032
+#: gui_x11.c:2161
 #, c-format
 msgid "E252: Fontset name: %s"
 msgstr "E252: Fontset Name: %s"
 
-#: gui_x11.c:2033
+#: gui_x11.c:2162
 #, c-format
 msgid "Font '%s' is not fixed-width"
 msgstr "Schriftart '%s' hat keine feste breite"
 
-#: gui_x11.c:2052
+#: gui_x11.c:2181
 #, c-format
 msgid "E253: Fontset name: %s\n"
 msgstr "E253: Fontset Name: %s\n"
 
-#: gui_x11.c:2053
+#: gui_x11.c:2182
 #, c-format
 msgid "Font0: %s\n"
 msgstr "Schriftart 0: %s\n"
 
-#: gui_x11.c:2054
+#: gui_x11.c:2183
 #, c-format
 msgid "Font1: %s\n"
 msgstr "Schriftart 1: %s\n"
 
-#: gui_x11.c:2055
-#, c-format
-msgid "Font%d width is not twice that of font0\n"
-msgstr "Schriftart%d ist nicht doppelt so breit wie Schriftart0\n"
-
-#: gui_x11.c:2056
+#: gui_x11.c:2184
+#, fuzzy, c-format
+#~ msgid "Font%ld width is not twice that of font0\n"
+#~ msgstr "Schriftart%d ist nicht doppelt so breit wie Schriftart0\n"
+
+#: gui_x11.c:2185
 #, c-format
 msgid "Font0 width: %ld\n"
 msgstr "Schriftart0 Breite: %ld\n"
 
-#: gui_x11.c:2057
+#: gui_x11.c:2186
 #, c-format
 msgid ""
 "Font1 width: %ld\n"
@@ -2141,186 +2386,198 @@ msgstr ""
 msgid "E256: Hangul automata ERROR"
 msgstr "E256: Hangul-Automat Fehler"
 
-#: if_cscope.c:26
-#, c-format
-msgid "Usage: cs[cope] %s"
-msgstr "Verwendung: cs[cope] %s"
-
-#: if_cscope.c:67
+#: if_cscope.c:77
 msgid "Add a new database"
 msgstr "Datenbank hinzufügen"
 
-#: if_cscope.c:69
+#: if_cscope.c:79
 msgid "Query for a pattern"
 msgstr "Muster suchen"
 
-#: if_cscope.c:71
+#: if_cscope.c:81
 msgid "Show this message"
 msgstr "diese Nachricht anzeigen"
 
-#: if_cscope.c:73
+#: if_cscope.c:83
 msgid "Kill a connection"
 msgstr "Verbindung abbrechen"
 
-#: if_cscope.c:75
+#: if_cscope.c:85
 msgid "Reinit all connections"
 msgstr "Verbindungen reinitialisieren"
 
-#: if_cscope.c:77
+#: if_cscope.c:87
 msgid "Show connections"
 msgstr "Verbindungen anzeigen"
 
-#: if_cscope.c:108
+#: if_cscope.c:95
+#, fuzzy, c-format
+#~ msgid "E560: Usage: cs[cope] %s"
+#~ msgstr "Verwendung: cs[cope] %s"
+
+#: if_cscope.c:124
 msgid "This cscope command does not support splitting the window.\n"
 msgstr "Dieser cscope-Befehl unterstützt nicht Teilen des Fensters.\n"
 
-#: if_cscope.c:143
-msgid "Usage: cstag <ident>"
-msgstr "Verwendung: cstag <ident>"
-
-#: if_cscope.c:199
+#: if_cscope.c:175
+#, fuzzy
+#~ msgid "E562: Usage: cstag <ident>"
+#~ msgstr "Verwendung: cstag <ident>"
+
+#: if_cscope.c:231
 msgid "E257: cstag: tag not found"
 msgstr "E257: cstag: Tag nicht gefunden"
 
-#: if_cscope.c:407 if_cscope.c:451
-#, c-format
-msgid "stat(%s) error: %d"
-msgstr "stat(%s) Fehler: %d"
-
-#: if_cscope.c:460 if_cscope.c:467
+#: if_cscope.c:409
+#, fuzzy, c-format
+#~ msgid "E563: stat(%s) error: %d"
+#~ msgstr "stat(%s) Fehler: %d"
+
+#: if_cscope.c:419
+#~ msgid "E563: stat error"
+#~ msgstr ""
+
+#: if_cscope.c:516
+#, fuzzy, c-format
+#~ msgid "E564: %s is not a directory or a valid cscope database"
+#~ msgstr "%s ist kein Verzeichnis oder zulässige cscope Datenbank"
+
+#: if_cscope.c:534
 #, c-format
 msgid "Added cscope database %s"
 msgstr "csope Datenbank %s hinzugefügt"
 
-#: if_cscope.c:474
-#, c-format
-msgid "%s is not a directory or a valid cscope database"
-msgstr "%s ist kein Verzeichnis oder zulässige cscope Datenbank"
-
-#: if_cscope.c:557
-#, c-format
-msgid "error reading cscope connection %d"
-msgstr "Fehler beim Lesen aus der cscope Verbindung %d"
-
-#: if_cscope.c:633
-msgid "unknown cscope search type"
-msgstr "unbekannter cscope Suchtyp"
-
-#: if_cscope.c:680
-msgid "Could not create cscope pipes"
-msgstr "cscope Pipes konnten nicht angelegt werden"
-
-#: if_cscope.c:745
+#: if_cscope.c:589
+#, fuzzy, c-format
+#~ msgid "E262: error reading cscope connection %ld"
+#~ msgstr "E262: Fehler beim Lesen aus der cscope Verbindung %d"
+
+#: if_cscope.c:694
+#, fuzzy
+#~ msgid "E561: unknown cscope search type"
+#~ msgstr "unbekannter cscope Suchtyp"
+
+#: if_cscope.c:736
+#, fuzzy
+#~ msgid "E566: Could not create cscope pipes"
+#~ msgstr "cscope Pipes konnten nicht angelegt werden"
+
+#: if_cscope.c:753
+#, fuzzy
+#~ msgid "E622: Could not fork for cscope"
+#~ msgstr "E321: \"%s\" konnte nicht neu geladen werden"
+
+#: if_cscope.c:847 if_cscope.c:897
 msgid "cs_create_connection exec failed"
 msgstr "cs_create_connection exec misslang"
 
-#: if_cscope.c:755
+#: if_cscope.c:898
+#, fuzzy
+#~ msgid "E623: Could not spawn cscope process"
+#~ msgstr "cscope Pipes konnten nicht angelegt werden"
+
+#: if_cscope.c:911
 msgid "cs_create_connection: fdopen for to_fp failed"
 msgstr "cs_create_connection: fdopen von to_fp misslang"
 
-#: if_cscope.c:757
+#: if_cscope.c:913
 msgid "cs_create_connection: fdopen for fr_fp failed"
 msgstr "cs_create_connection: fdopen von fr_fp misslang"
 
-#: if_cscope.c:785
-msgid "no cscope connections"
-msgstr "keine Verbindungen zu cscope"
-
-#: if_cscope.c:855
+#: if_cscope.c:951
+#, fuzzy
+#~ msgid "E567: no cscope connections"
+#~ msgstr "keine Verbindungen zu cscope"
+
+#: if_cscope.c:1025
 #, c-format
 msgid "E259: no matches found for cscope query %s of %s"
 msgstr "E259: keine Treffer gefunden für cscope Anfragen %s aus %s"
 
-#: if_cscope.c:899
+#: if_cscope.c:1082
+#, c-format
+#~ msgid "E469: invalid cscopequickfix flag %c for %c"
+#~ msgstr ""
+
+#: if_cscope.c:1152
 msgid "cscope commands:\n"
 msgstr "cscope Befehle:\n"
 
-#: if_cscope.c:902
-#, c-format
-msgid "%-5s: %-30s (Usage: %s)\n"
-msgstr "%-5s: %-30s (Verwendung: %s)\n"
-
-#: if_cscope.c:970
-msgid "duplicate cscope database not added"
-msgstr "cscope Datenbank nicht doppelt hinzugefügt"
-
-#: if_cscope.c:981
-msgid "maximum number of cscope connections reached"
-msgstr "maximale Anzahl von cscope Verbindungen erreicht"
-
-#: if_cscope.c:1102
-msgid "E260: cscope connection not found"
-msgstr "E260: keine cscope Verbindung gefunden"
-
-#: if_cscope.c:1105
+#: if_cscope.c:1155
+#, fuzzy, c-format
+#~ msgid "%-5s: %-30s (Usage: %s)"
+#~ msgstr "%-5s: %-30s (Verwendung: %s)\n"
+
+#: if_cscope.c:1253
+#, fuzzy, c-format
+#~ msgid "E625: cannot open cscope database: %s"
+#~ msgstr "csope Datenbank %s hinzugefügt"
+
+#: if_cscope.c:1271
+#, fuzzy
+#~ msgid "E626: cannot get cscope database information"
+#~ msgstr "Revertierungs-Information kann nicht gespeichert werden"
+
+#: if_cscope.c:1296
+#, fuzzy
+#~ msgid "E568: duplicate cscope database not added"
+#~ msgstr "cscope Datenbank nicht doppelt hinzugefügt"
+
+#: if_cscope.c:1307
+#, fuzzy
+#~ msgid "E569: maximum number of cscope connections reached"
+#~ msgstr "maximale Anzahl von cscope Verbindungen erreicht"
+
+#: if_cscope.c:1424
 #, c-format
 msgid "E261: cscope connection %s not found"
 msgstr "E261: cscope Verbindung %s nicht gefunden"
 
-#: if_cscope.c:1141
-msgid "cscope connection closed"
-msgstr "cscope Verbindung geschlossen"
-
-#: if_cscope.c:1149
-#, c-format
-msgid "cscope connection %s closed\n"
-msgstr "cscope Verbindung %s geschlossen\n"
+#: if_cscope.c:1458
+#, fuzzy, c-format
+#~ msgid "cscope connection %s closed"
+#~ msgstr "cscope Verbindung %s geschlossen\n"
 
 #. should not reach here
-#: if_cscope.c:1290
-msgid "fatal error in cs_manage_matches"
-msgstr "fataler Fehler in cs_manage_matches"
-
-#: if_cscope.c:1341
-#, c-format
-msgid "E262: error reading cscope connection %d"
-msgstr "E262: Fehler beim Lesen aus der cscope Verbindung %d"
-
-#: if_cscope.c:1449
-msgid "couldn't malloc\n"
-msgstr "Fehler beim allozieren\n"
-
-#: if_cscope.c:1454
-#, c-format
-msgid "Cscope tag: %s\n"
-msgstr "Cscope Tag: %s\n"
-
-#: if_cscope.c:1458
-msgid "   #   line"
-msgstr "   #  Zeile"
-
-#: if_cscope.c:1460
+#: if_cscope.c:1598
+#, fuzzy
+#~ msgid "E570: fatal error in cs_manage_matches"
+#~ msgstr "fataler Fehler in cs_manage_matches"
+
+#: if_cscope.c:1848
+#, fuzzy, c-format
+#~ msgid "Cscope tag: %s"
+#~ msgstr "Cscope Tag: %s\n"
+
+#: if_cscope.c:1870
+#, fuzzy
+#~ msgid ""
+#~ "\n"
+#~ "   #   line"
+#~ msgstr "   #  Zeile"
+
+#: if_cscope.c:1872
 msgid "filename / context / line\n"
 msgstr "Dateiname / Kontext / Zeile\n"
 
-#: if_cscope.c:1718
+#: if_cscope.c:1990
+#, fuzzy, c-format
+#~ msgid "E609: Cscope error: %s"
+#~ msgstr "E40: Fehler-Datei %s kann nicht geöffnet werden"
+
+#: if_cscope.c:2176
 msgid "All cscope databases reset"
 msgstr "alle cscope Datenbanken zurückgesetzt"
 
-#: if_cscope.c:1785
+#: if_cscope.c:2244
 msgid "no cscope connections\n"
 msgstr "keine cscope-Verbindungen\n"
 
-#: if_cscope.c:1789
+#: if_cscope.c:2248
 msgid " # pid    database name                       prepend path\n"
 msgstr " # pid   Datenbank Name\t                    führender Pfad\n"
 
-#: if_cscope.c:1800
-#, c-format
-msgid "%2d %-5ld  %-34s  <none>\n"
-msgstr "%2d %-5ld  %-34s  <keine>\n"
-
-#: if_python.c:255 if_ruby.c:260 if_tcl.c:195 mbyte.c:2633 os_win32.c:269
-#, c-format
-msgid "E370: Could not load library %s"
-msgstr "E370: Bibliothek %s konnte nicht geladen werden"
-
-#: if_python.c:267 if_ruby.c:272 if_tcl.c:206 mbyte.c:2649 os_win32.c:281
-#, c-format
-msgid "E448: Could not load library function %s"
-msgstr "E448: Bibliotheks-Funktion %s konnte nicht geladen werden"
-
-#: if_python.c:392
+#: if_python.c:436
 msgid ""
 "E263: Sorry, this command is disabled, the Python library could not be "
 "loaded."
@@ -2328,116 +2585,121 @@ msgstr ""
 "E263: Dieser Befehl ist nicht verfügbar, die Python Bibliothek konnte nicht "
 "geladen werden"
 
-#: if_python.c:592
+#: if_python.c:500
+#, fuzzy
+#~ msgid "E659: Cannot invoke Python recursively"
+#~ msgstr "E147: Kann :global nicht rekursiv ausführen"
+
+#: if_python.c:701
 msgid "can't delete OutputObject attributes"
 msgstr "OutputObject-Attribute können nicht gelöscht werden"
 
-#: if_python.c:599
+#: if_python.c:708
 msgid "softspace must be an integer"
 msgstr "\"softspace\" muss eine ganze Zahl sein"
 
-#: if_python.c:607
+#: if_python.c:716
 msgid "invalid attribute"
 msgstr "unzulässiges Attribut"
 
-#: if_python.c:646 if_python.c:660
+#: if_python.c:755 if_python.c:769
 msgid "writelines() requires list of strings"
 msgstr "writelines() verlangt eine Liste von Zeichenfolgen"
 
-#: if_python.c:786
+#: if_python.c:895
 msgid "E264: Python: Error initialising I/O objects"
 msgstr "E264: Python: Fehler bei der Initialisierung von I/O Objekten"
 
-#: if_python.c:971 if_tcl.c:1403
+#: if_python.c:1080 if_tcl.c:1402
 msgid "invalid expression"
 msgstr "ungültiger Ausdruck"
 
-#: if_python.c:985 if_tcl.c:1408
+#: if_python.c:1094 if_tcl.c:1407
 msgid "expressions disabled at compile time"
 msgstr "Ausdrücke wurden zur Zeit des Übersetzens nicht zugelassen"
 
-#: if_python.c:998
+#: if_python.c:1107
 msgid "attempt to refer to deleted buffer"
 msgstr "Versuch, Bezug auf einen gelöschten Puffer zu nehmen"
 
-#: if_python.c:1013 if_python.c:1054 if_python.c:1118 if_tcl.c:1215
+#: if_python.c:1122 if_python.c:1163 if_python.c:1227 if_tcl.c:1214
 msgid "line number out of range"
 msgstr "Zeilennummer außerhalb des zulässigen Bereichs"
 
-#: if_python.c:1251
+#: if_python.c:1362
 #, c-format
 msgid "<buffer object (deleted) at %8lX>"
 msgstr "<Pufferobjekt (gelöscht) bei %8lX>"
 
-#: if_python.c:1342 if_tcl.c:837
+#: if_python.c:1453 if_tcl.c:836
 msgid "invalid mark name"
 msgstr "ungültiger Name einer Markierung"
 
-#: if_python.c:1617
+#: if_python.c:1733
 msgid "no such buffer"
 msgstr "kein solcher Puffer vorhanden"
 
-#: if_python.c:1705
+#: if_python.c:1821
 msgid "attempt to refer to deleted window"
 msgstr "Versuch, Bezug auf eine gelöschtes Fenster zu nehmen"
 
-#: if_python.c:1750
+#: if_python.c:1866
 msgid "readonly attribute"
 msgstr "nur-Lesen Attribut"
 
-#: if_python.c:1763
+#: if_python.c:1879
 msgid "cursor position outside buffer"
 msgstr "Cursor Position außerhalb des Puffers"
 
-#: if_python.c:1840
+#: if_python.c:1956
 #, c-format
 msgid "<window object (deleted) at %.8lX>"
 msgstr "<Fensterobjekt (gelöscht) bei %.8lX>"
 
-#: if_python.c:1852
+#: if_python.c:1968
 #, c-format
 msgid "<window object (unknown) at %.8lX>"
 msgstr "<Fensterobjekt (unbekannt) bei %.8lX>"
 
-#: if_python.c:1854
+#: if_python.c:1970
 #, c-format
 msgid "<window %d>"
 msgstr "<Fenster %d>"
 
-#: if_python.c:1930
+#: if_python.c:2046
 msgid "no such window"
 msgstr "ungültiges Fenster"
 
-#: if_python.c:2187 if_python.c:2222 if_python.c:2272 if_python.c:2335
-#: if_python.c:2455 if_python.c:2507 if_tcl.c:685 if_tcl.c:730 if_tcl.c:804
-#: if_tcl.c:874 if_tcl.c:1999
+#: if_python.c:2307 if_python.c:2341 if_python.c:2396 if_python.c:2464
+#: if_python.c:2586 if_python.c:2638 if_tcl.c:684 if_tcl.c:729 if_tcl.c:803
+#: if_tcl.c:873 if_tcl.c:1999
 msgid "cannot save undo information"
 msgstr "Revertierungs-Information kann nicht gespeichert werden"
 
-#: if_python.c:2189 if_python.c:2279 if_python.c:2346
+#: if_python.c:2309 if_python.c:2403 if_python.c:2475
 msgid "cannot delete line"
 msgstr "Zeile kann nicht gelöscht werden"
 
-#: if_python.c:2224 if_python.c:2362 if_tcl.c:691 if_tcl.c:2021
+#: if_python.c:2346 if_python.c:2491 if_tcl.c:690 if_tcl.c:2021
 msgid "cannot replace line"
 msgstr "Zeile kann nicht ersetzt werden"
 
-#: if_python.c:2378 if_python.c:2457 if_python.c:2515
+#: if_python.c:2509 if_python.c:2588 if_python.c:2646
 msgid "cannot insert line"
 msgstr "Zeile kann nicht eingefügt werden"
 
-#: if_python.c:2619
+#: if_python.c:2750
 msgid "string cannot contain newlines"
 msgstr "Zeichenfolge kann keine Zeilen-wechsel enthalten"
 
-#: if_ruby.c:401
+#: if_ruby.c:422
 msgid ""
 "E266: Sorry, this command is disabled, the Ruby library could not be loaded."
 msgstr ""
 "E266: Dieser Befehl ist nicht verfügbar, die Ruby Bibliothek konnte nicht "
 "geladen werden"
 
-#: if_ruby.c:464
+#: if_ruby.c:485
 #, c-format
 msgid "E273: unknown longjmp status %d"
 msgstr "E273: Unbekannter longjmp Status %d"
@@ -2559,65 +2821,65 @@ msgstr "E279: Ist kein SNiFF+ Puffer"
 msgid "Sniff: Error during write. Disconnected"
 msgstr "Sniff: Fehler beim Schreiben. Verbindung abgebrochen"
 
-#: if_tcl.c:419
+#: if_tcl.c:418
 msgid "invalid buffer number"
 msgstr "ungültige Puffer-Nummer"
 
-#: if_tcl.c:465 if_tcl.c:932 if_tcl.c:1111
+#: if_tcl.c:464 if_tcl.c:931 if_tcl.c:1110
 msgid "not implemented yet"
 msgstr "nicht implementiert"
 
-#: if_tcl.c:502
+#: if_tcl.c:501
 msgid "unknown option"
 msgstr "unbekannte Option"
 
 #. ???
-#: if_tcl.c:775
+#: if_tcl.c:774
 msgid "cannot set line(s)"
 msgstr "kann keine Zeile/Zeilen setzen"
 
-#: if_tcl.c:846
+#: if_tcl.c:845
 msgid "mark not set"
 msgstr "Marke nicht gesetzt"
 
-#: if_tcl.c:852 if_tcl.c:1067
+#: if_tcl.c:851 if_tcl.c:1066
 #, c-format
 msgid "row %d column %d"
 msgstr "Zeile %d Spalte %d"
 
-#: if_tcl.c:882
+#: if_tcl.c:881
 msgid "cannot insert/append line"
 msgstr "kann Zeile nicht ein-/anfügen"
 
-#: if_tcl.c:1269
+#: if_tcl.c:1268
 msgid "unknown flag: "
 msgstr "unbekanntes Flag: "
 
-#: if_tcl.c:1339
+#: if_tcl.c:1338
 msgid "unknown vimOption"
 msgstr "unbekannte vim Option"
 
-#: if_tcl.c:1424
+#: if_tcl.c:1423
 msgid "keyboard interrupt"
 msgstr "Tastatur-Unterbrechung"
 
-#: if_tcl.c:1429
+#: if_tcl.c:1428
 msgid "vim error"
 msgstr "vim Fehler"
 
-#: if_tcl.c:1472
+#: if_tcl.c:1471
 msgid "cannot create buffer/window command: object is being deleted"
 msgstr ""
 "Puffer/Fenster-Befehl kann nicht ausgeführt werden: das Objekt wird gelöscht"
 
-#: if_tcl.c:1546
+#: if_tcl.c:1545
 msgid ""
 "cannot register callback command: buffer/window is already being deleted"
 msgstr ""
 "kann keinen Callback-Befehl registrieren: Puffer/Fenster ist bereits gelöscht"
 
 #. This should never happen.  Famous last word?
-#: if_tcl.c:1563
+#: if_tcl.c:1562
 msgid ""
 "E280: TCL FATAL ERROR: reflist corrupt!? Please report this to vim-dev@vim."
 "org"
@@ -2625,19 +2887,21 @@ msgstr ""
 "E280: TCL FATALER FEHLER: reflist kaputt!? Bitte benachrichtigen Sie vim-"
 "dev@vim.org"
 
-#: if_tcl.c:1564
+#: if_tcl.c:1563
 msgid "cannot register callback command: buffer/window reference not found"
 msgstr ""
 "kann keinen Callback-Befehl registrieren: Puffer/Fenster-Referenz nicht "
 "gefunden"
 
-#: if_tcl.c:1725
-msgid "Sorry, this command is disabled: the Tcl library could not be loaded."
-msgstr ""
-"Dieser Befehl ist nicht verfügbar, da die Tcl Bibliothek nicht geladen "
-"werden konnte"
-
-#: if_tcl.c:1887
+#: if_tcl.c:1724
+#, fuzzy
+#~ msgid ""
+#~ "E571: Sorry, this command is disabled: the Tcl library could not be loaded."
+#~ msgstr ""
+#~ "Dieser Befehl ist nicht verfügbar, da die Tcl Bibliothek nicht geladen "
+#~ "werden konnte"
+
+#: if_tcl.c:1886
 msgid ""
 "E281: TCL ERROR: exit code is not int!? Please report this to vim-dev@vim.org"
 msgstr ""
@@ -2648,103 +2912,88 @@ msgstr ""
 msgid "cannot get line"
 msgstr "kann Zeile nicht erhalten"
 
-#: if_xcmdsrv.c:213
+#: if_xcmdsrv.c:225
 msgid "Unable to register a command server name"
 msgstr "Befehls-Server Name kann nicht registriert werden"
 
-#: if_xcmdsrv.c:434 os_mswin.c:2108
-#, c-format
-msgid "E247: no registered server named \"%s\""
-msgstr "E247: Kein registrierter Server-Name \"%s\""
-
-#: if_xcmdsrv.c:463
+#: if_xcmdsrv.c:473
 msgid "E248: Failed to send command to the destination program"
 msgstr "E248: Schicken des Befehls zum Ziel-Programm schlug fehl"
 
-#: if_xcmdsrv.c:732
-#, c-format
-msgid "Invalid server id used: %s"
-msgstr "Ungültige Server-ID verwendet: %s"
-
-#: if_xcmdsrv.c:1079
-msgid "E249: couldn't read VIM instance registry property"
-msgstr "E249: Registry-Eigenschaft der VIM Instanz konnte nicht gelesen werden"
-
-#: if_xcmdsrv.c:1090
+#: if_xcmdsrv.c:747
+#, fuzzy, c-format
+#~ msgid "E573: Invalid server id used: %s"
+#~ msgstr "Ungültige Server-ID verwendet: %s"
+
+#: if_xcmdsrv.c:1110
 msgid "E251: VIM instance registry property is badly formed.  Deleted!"
 msgstr "E251: Registry-Eigenschaft der VIM Instanz ist fehlerhaft.  Gelöscht!"
 
-#: main.c:53 option.c:3162 option.c:3269
+#: main.c:60
 msgid "Unknown option"
 msgstr "Unbekannte Option"
 
-#: main.c:55
+#: main.c:62
 msgid "Too many edit arguments"
 msgstr "Zu viele Editor Argumente"
 
-#: main.c:57
+#: main.c:64
 msgid "Argument missing after"
 msgstr "Argument fehlt nach"
 
-#: main.c:59
+#: main.c:66
 msgid "Garbage after option"
 msgstr "Schrott nach der Option"
 
-#: main.c:61
-msgid "Too many \"+command\" or \"-c command\" arguments"
-msgstr "Zu viele \"+command\" oder \"-c command\" Argumente"
-
-#: main.c:63
+#: main.c:68
+#, fuzzy
+#~ msgid "Too many \"+command\", \"-c command\" or \"--cmd command\" arguments"
+#~ msgstr "Zu viele \"+command\" oder \"-c command\" Argumente"
+
+#: main.c:70
 msgid "Invalid argument for"
 msgstr "Ungültiges Argument für"
 
-#: main.c:450
+#: main.c:466
 msgid "This Vim was not compiled with the diff feature."
 msgstr "Vim wurde nicht mit der \"diff\"-Eigenschaft übersetzt"
 
-#: main.c:875
+#: main.c:932
 msgid "Attempt to open script file again: \""
 msgstr "Versuche, die Skript-Datei erneut zu öffnen: \""
 
-#: main.c:879 main.c:886 main.c:930 memline.c:3673 memline.c:3677
-#: version.c:858 version.c:863 version.c:868 version.c:873 version.c:878
-#: version.c:883 version.c:889 version.c:893 version.c:897 version.c:902
-#: version.c:909 version.c:917 version.c:923
-msgid "\"\n"
-msgstr "\"\n"
-
-#: main.c:884
+#: main.c:941
 msgid "Cannot open for reading: \""
 msgstr "kann nicht zum Lesen geöffnet werden: \""
 
-#: main.c:928
+#: main.c:985
 msgid "Cannot open for script output: \""
 msgstr "kann nicht zur Skript-Ausgabe geöffnet werden: \""
 
-#: main.c:1044
+#: main.c:1132
 #, c-format
 msgid "%d files to edit\n"
 msgstr "%d Dateien zur Bearbeitung\n"
 
-#: main.c:1118
+#: main.c:1233
 msgid "Vim: Warning: Output is not to a terminal\n"
 msgstr "Vim: Warnung: Die Ausgabe erfolgt nicht auf einem Terminal\n"
 
-#: main.c:1120
+#: main.c:1235
 msgid "Vim: Warning: Input is not from a terminal\n"
 msgstr "Vim: Warnung: Die Eingabe kommt nicht von einem Terminal\n"
 
 #. just in case..
-#: main.c:1195
+#: main.c:1297
 msgid "pre-vimrc command line"
 msgstr "pre-vimrc Befehls-Zeile"
 
-#: main.c:1230
+#: main.c:1338
 #, c-format
 msgid "E282: Cannot read from \"%s\""
 msgstr "E282: Kann nicht von \"%s\" lesen"
 
-#: main.c:2209
+#: main.c:2411
 msgid ""
 "\n"
 "More info with: \"vim -h\"\n"
@@ -2752,23 +3001,23 @@ msgstr ""
 "\n"
 "Weitere Informationen mit: \"vim -h\"\n"
 
-#: main.c:2242
+#: main.c:2444
 msgid "[file ..]       edit specified file(s)"
 msgstr "[Datei ..]      editiere die angegebenen Datei(-en)"
 
-#: main.c:2243
+#: main.c:2445
 msgid "-               read text from stdin"
 msgstr "-               lese Text von stdin"
 
-#: main.c:2244
+#: main.c:2446
 msgid "-t tag          edit file where tag is defined"
 msgstr "-t tag          editiere Datei in der der Tag definiert wurde"
 
-#: main.c:2246
+#: main.c:2448
 msgid "-q [errorfile]  edit file with first error"
 msgstr "-q [Fehler-Datei]  editiere Datei mit erstem Fehler"
 
-#: main.c:2255
+#: main.c:2457
 msgid ""
 "\n"
 "\n"
@@ -2778,11 +3027,11 @@ msgstr ""
 "\n"
 "Verwendung:"
 
-#: main.c:2258
+#: main.c:2460
 msgid " vim [arguments] "
 msgstr " vim [Argumente] "
 
-#: main.c:2262
+#: main.c:2464
 msgid ""
 "\n"
 "   or:"
@@ -2790,7 +3039,7 @@ msgstr ""
 "\n"
 "   oder:"
 
-#: main.c:2265
+#: main.c:2467
 msgid ""
 "\n"
 "\n"
@@ -2800,237 +3049,254 @@ msgstr ""
 "\n"
 "Argumente:\n"
 
-#: main.c:2266
+#: main.c:2468
 msgid "--\t\t\tOnly file names after this"
-msgstr "--\t\t\tHiernach nur Datei-Namen"
-
-#: main.c:2268
+msgstr "--\t\t\tHiernach nur Dateinamen"
+
+#: main.c:2470
 msgid "--literal\t\tDon't expand wildcards"
 msgstr "--literal\t\tPlatzhalter werden nicht ausgewertet"
 
-#: main.c:2271
+#: main.c:2473
 msgid "-register\t\tRegister this gvim for OLE"
 msgstr "-register\t\tRegistriere diesen gvim in OLE"
 
-#: main.c:2272
+#: main.c:2474
 msgid "-unregister\t\tUnregister gvim for OLE"
 msgstr "-unregister\t\tDeregistriere gvim aus OLE"
 
-#: main.c:2275
+#: main.c:2477
 msgid "-g\t\t\tRun using GUI (like \"gvim\")"
 msgstr "-g\t\t\tStart als GUI (wie \"gvim\")"
 
-#: main.c:2276
-msgid "-f\t\t\tForeground: Don't fork when starting GUI"
-msgstr "-f\t\t\tFordergrund: Kein \"fork\" beim Start des GUI"
-
-#: main.c:2278
+#: main.c:2478
+#, fuzzy
+#~ msgid "-f  or  --nofork\tForeground: Don't fork when starting GUI"
+#~ msgstr "-f\t\t\tFordergrund: Kein \"fork\" beim Start des GUI"
+
+#: main.c:2480
 msgid "-v\t\t\tVi mode (like \"vi\")"
 msgstr "-v\t\t\tVi Modus (wie \"vi\")"
 
-#: main.c:2279
+#: main.c:2481
 msgid "-e\t\t\tEx mode (like \"ex\")"
 msgstr "-e\t\t\tEx Modus (wie \"ex\")"
 
-#: main.c:2280
+#: main.c:2482
 msgid "-s\t\t\tSilent (batch) mode (only for \"ex\")"
 msgstr "-s\t\t\tLeiser (batch) Modus (nur für \"ex\")"
 
-#: main.c:2282
+#: main.c:2484
 msgid "-d\t\t\tDiff mode (like \"vimdiff\")"
 msgstr "-d\t\t\tDiff Modus (wie \"vimdiff\")"
 
-#: main.c:2284
+#: main.c:2486
 msgid "-y\t\t\tEasy mode (like \"evim\", modeless)"
 msgstr "-y\t\t\tLeichter Modus (wie \"evim\", ohne Modi)"
 
-#: main.c:2285
+#: main.c:2487
 msgid "-R\t\t\tReadonly mode (like \"view\")"
 msgstr "-R\t\t\tModus ohne Schreibrechte (wie \"view\")"
 
-#: main.c:2286
+#: main.c:2488
 msgid "-Z\t\t\tRestricted mode (like \"rvim\")"
 msgstr "-Z\t\t\tEingeschränkter Modus (wie \"rvim\")"
 
-#: main.c:2287
+#: main.c:2489
 msgid "-m\t\t\tModifications (writing files) not allowed"
 msgstr "-m\t\t\tModifikatioen (beim Schreiben von Dateien) sind nicht erlaubt"
 
-#: main.c:2288
+#: main.c:2490
 msgid "-M\t\t\tModifications in text not allowed"
 msgstr "-M\t\t\tModifikatioen im Text nicht erlaubt"
 
-#: main.c:2289
+#: main.c:2491
 msgid "-b\t\t\tBinary mode"
 msgstr "-b\t\t\tBinärmodus"
 
-#: main.c:2291
+#: main.c:2493
 msgid "-l\t\t\tLisp mode"
 msgstr "-l\t\t\tList Modus"
 
-#: main.c:2293
+#: main.c:2495
 msgid "-C\t\t\tCompatible with Vi: 'compatible'"
 msgstr "-C\t\t\tKompatibel zu Vi: 'compatible'"
 
-#: main.c:2294
+#: main.c:2496
 msgid "-N\t\t\tNot fully Vi compatible: 'nocompatible'"
 msgstr "-N\t\t\tNicht ganz kompatibel zu Vi: 'nocompatible'"
 
-#: main.c:2295
+#: main.c:2497
 msgid "-V[N]\t\tVerbose level"
 msgstr "-V[N]\t\tVerbose Stufe"
 
-#: main.c:2296
+#: main.c:2498
 msgid "-D\t\t\tDebugging mode"
 msgstr "-D\t\t\tDebug Modus"
 
-#: main.c:2297
+#: main.c:2499
 msgid "-n\t\t\tNo swap file, use memory only"
 msgstr "-n\t\t\tKeine Auslagerungs-Datei, verwende nur Speicher"
 
-#: main.c:2298
+#: main.c:2500
 msgid "-r\t\t\tList swap files and exit"
 msgstr "-r\t\t\tListe nur Auslagerungs-Dateien auf"
 
-#: main.c:2299
+#: main.c:2501
 msgid "-r (with file name)\tRecover crashed session"
 msgstr "-r (mit Dateiname)\tStelle abgestürzte Session wieder her"
 
-#: main.c:2300
+#: main.c:2502
 msgid "-L\t\t\tSame as -r"
 msgstr "-L\t\t\tGenauso wie z -r"
 
-#: main.c:2302
+#: main.c:2504
 msgid "-f\t\t\tDon't use newcli to open window"
 msgstr "-f\t\t\tVerwende nicht newcli zum Öffnen eines neuen Fensters"
 
-#: main.c:2303
+#: main.c:2505
 msgid "-dev <device>\t\tUse <device> for I/O"
 msgstr "-dev <device>\t\tVerwende <device> for I/O"
 
-#: main.c:2306
-msgid "-H\t\t\tstart in Hebrew mode"
-msgstr "-H\t\t\tStart im Hebräischen Modus"
-
-#: main.c:2309
-msgid "-F\t\t\tstart in Farsi mode"
-msgstr "-F\t\t\tStart im Farsi Modus"
-
-#: main.c:2311
+#: main.c:2508
+#, fuzzy
+#~ msgid "-A\t\t\tstart in Arabic mode"
+#~ msgstr "-F\t\t\tStart im Farsi Modus"
+
+#: main.c:2511
+#, fuzzy
+#~ msgid "-H\t\t\tStart in Hebrew mode"
+#~ msgstr "-H\t\t\tStart im Hebräischen Modus"
+
+#: main.c:2514
+#, fuzzy
+#~ msgid "-F\t\t\tStart in Farsi mode"
+#~ msgstr "-F\t\t\tStart im Farsi Modus"
+
+#: main.c:2516
 msgid "-T <terminal>\tSet terminal type to <terminal>"
 msgstr "-T <terminal>\tSetze Terminal-Typ auf <terminal>"
 
-#: main.c:2312
+#: main.c:2517
 msgid "-u <vimrc>\t\tUse <vimrc> instead of any .vimrc"
 msgstr "-u <vimrc>\t\tBenutze <vimrc> anstatt jeglicher .vimrc"
 
-#: main.c:2314
+#: main.c:2519
 msgid "-U <gvimrc>\t\tUse <gvimrc> instead of any .gvimrc"
 msgstr "-U <gvimrc>\t\tBenutze <gvimrc> anstatt jeglicher .gvimrc"
 
-#: main.c:2316
+#: main.c:2521
 msgid "--noplugin\t\tDon't load plugin scripts"
 msgstr "--noplugin\t\tlade keine \"plugin\"-Skripte"
 
-#: main.c:2317
+#: main.c:2522
 msgid "-o[N]\t\tOpen N windows (default: one for each file)"
 msgstr "-o[N]\t\tÖffne N Fenster (Vorgabe: einzeln für jede Datei)"
 
-#: main.c:2318
-msgid "-O[N]\t\tlike -o but split vertically"
-msgstr "-O[N]\t\twie -o, aber teile vertikal"
-
-#: main.c:2319
+#: main.c:2523
+#, fuzzy
+#~ msgid "-O[N]\t\tLike -o but split vertically"
+#~ msgstr "-O[N]\t\twie -o, aber teile vertikal"
+
+#: main.c:2524
 msgid "+\t\t\tStart at end of file"
 msgstr "+\t\t\tStarte am Ende der Datei"
 
-#: main.c:2320
+#: main.c:2525
 msgid "+<lnum>\t\tStart at line <lnum>"
 msgstr "+<lnum>\t\tStart in Zeile <lnum>"
 
-#: main.c:2322
+#: main.c:2527
 msgid "--cmd <command>\tExecute <command> before loading any vimrc file"
 msgstr "--cmd <Befehl>\tFühre <Befehl> vor dem Laden jeglicher vimrc Datei aus"
 
-#: main.c:2324
+#: main.c:2529
 msgid "-c <command>\t\tExecute <command> after loading the first file"
 msgstr "-c <Befehl>\t\tFühre <Befehl> nach dem Laden der ersten Datei aus"
 
-#: main.c:2325
+#: main.c:2530
 msgid "-S <session>\t\tSource file <session> after loading the first file"
 msgstr "-S <session>\t\tLese Datei <session> nach dem Laden der ersten Datei"
 
-#: main.c:2326
+#: main.c:2531
 msgid "-s <scriptin>\tRead Normal mode commands from file <scriptin>"
 msgstr ""
 "-s <scriptin>\tLese Normal-Modus Befehle aus der Skript-Datei <scriptin>"
 
-#: main.c:2327
+#: main.c:2532
 msgid "-w <scriptout>\tAppend all typed commands to file <scriptout>"
 msgstr "-w <scriptout>\tBefehle am Ende der Skript-Datei <scriptout> anfügen"
 
-#: main.c:2328
+#: main.c:2533
 msgid "-W <scriptout>\tWrite all typed commands to file <scriptout>"
 msgstr "-W <scriptout>\tSchreibe Befehle in die Skript-Datei <scriptout>"
 
-#: main.c:2330
+#: main.c:2535
 msgid "-x\t\t\tEdit encrypted files"
 msgstr "-x\t\t\tEditiere kodierte Dateien"
 
-#: main.c:2334
+#: main.c:2539
 msgid "-display <display>\tConnect vim to this particular X-server"
 msgstr "-display <display>\tStarte vim <display>"
 
-#: main.c:2336
+#: main.c:2541
 msgid "-X\t\t\tDo not connect to X server"
 msgstr "-X\t\t\tstelle keine Verbindung zum X-server her"
 
-#: main.c:2338
-msgid "--socketid <xid>\tOpen Vim inside another GTK widget"
-msgstr "--socketid <xid>\tÖffne Vim in einem anderen GTK widget"
-
-#: main.c:2342
-msgid "--remote <files>\tEdit <files> in a Vim server and exit"
-msgstr "--remote <Dateien>\tEditiere <Dateien> in einem Vim Server und beende"
-
-#: main.c:2343
+#: main.c:2544
+#, fuzzy
+#~ msgid "--remote <files>\tEdit <files> in a Vim server if possible"
+#~ msgstr "--remote <Dateien>\tEditiere <Dateien> in einem Vim Server und beende"
+
+#: main.c:2545
+#~ msgid "--remote-silent <files>  Same, don't complain if there is no server"
+#~ msgstr ""
+
+#: main.c:2546
 msgid ""
 "--remote-wait <files>  As --remote but wait for files to have been edited"
 msgstr ""
 "--remote-wait <Dateien>  Wie --remote, aber warte, bis die <Dateien> "
 "editiert wurden"
 
-#: main.c:2344
+#: main.c:2547
+#~ msgid ""
+#~ "--remote-wait-silent <files>  Same, don't complain if there is no server"
+#~ msgstr ""
+
+#: main.c:2548
 msgid "--remote-send <keys>\tSend <keys> to a Vim server and exit"
 msgstr "--remote-send <keys>\tSchicke <keys> zu einem Vim Server und beende"
 
-#: main.c:2345
+#: main.c:2549
 msgid "--remote-expr <expr>\tEvaluate <expr> in a Vim server and print result"
 msgstr ""
 "--remote-expr <Ausdruck>\tFühre <Ausdruck> in einem Vim Server aus und "
 "drucke das Ergebnis"
 
-#: main.c:2346
+#: main.c:2550
 msgid "--serverlist\t\tList available Vim server names and exit"
 msgstr "--serverlist\t\tDrucke verfügbare Vim Server Namen und beende"
 
-#: main.c:2347
+#: main.c:2551
 msgid "--servername <name>\tSend to/become the Vim server <name>"
 msgstr "--servername <Name>\tBenutze den Vim server <Name>"
 
-#: main.c:2350
+#: main.c:2554
 msgid "-i <viminfo>\t\tUse <viminfo> instead of .viminfo"
 msgstr "-i <viminfo>\t\tBenutze <viminfo> statt .viminfo"
 
-#: main.c:2352
-msgid "-h\t\t\tprint Help (this message) and exit"
-msgstr "-h\t\t\tdrucke nur Hilfe (diese Nachricht)"
-
-#: main.c:2353
-msgid "--version\t\tprint version information and exit"
-msgstr "--version\t\tDrucke nur Versions-Informationen"
-
-#: main.c:2357
+#: main.c:2556
+#, fuzzy
+#~ msgid "-h  or  --help\tPrint Help (this message) and exit"
+#~ msgstr "-h\t\t\tdrucke nur Hilfe (diese Nachricht)"
+
+#: main.c:2557
+#, fuzzy
+#~ msgid "--version\t\tPrint version information and exit"
+#~ msgstr "--version\t\tDrucke nur Versions-Informationen"
+
+#: main.c:2561
 msgid ""
 "\n"
 "Arguments recognised by gvim (Motif version):\n"
@@ -3038,7 +3304,16 @@ msgstr ""
 "\n"
 "Argumente für die gvim Motif Version:\n"
 
-#: main.c:2360
+#: main.c:2565
+#, fuzzy
+#~ msgid ""
+#~ "\n"
+#~ "Arguments recognised by gvim (neXtaw version):\n"
+#~ msgstr ""
+#~ "\n"
+#~ "Argumente für die gvim Athena Version:\n"
+
+#: main.c:2567
 msgid ""
 "\n"
 "Arguments recognised by gvim (Athena version):\n"
@@ -3046,81 +3321,81 @@ msgstr ""
 "\n"
 "Argumente für die gvim Athena Version:\n"
 
-#: main.c:2363
+#: main.c:2571
 msgid "-display <display>\tRun vim on <display>"
 msgstr "-display <display>\tStarte vim auf <display>"
 
-#: main.c:2364
+#: main.c:2572
 msgid "-iconic\t\tStart vim iconified"
 msgstr "-iconic\t\tStarte vim als Icon"
 
-#: main.c:2366
+#: main.c:2574
 msgid "-name <name>\t\tUse resource as if vim was <name>"
 msgstr "-name <name>\t\tBenutze so als ob vim <name> hieße"
 
-#: main.c:2367
+#: main.c:2575
 msgid "\t\t\t  (Unimplemented)\n"
 msgstr "\t\t\t  (Nicht implementiert)\n"
 
-#: main.c:2369
+#: main.c:2577
 msgid "-background <color>\tUse <color> for the background (also: -bg)"
 msgstr ""
 "-background <Farbe>\tBenutze <Farbe> für den Hintergrund (auch mit: -bg)"
 
-#: main.c:2370
+#: main.c:2578
 msgid "-foreground <color>\tUse <color> for normal text (also: -fg)"
 msgstr ""
 "-foreground <Farbe>\tBenutze <Farbe> für den Text Vordergrund (auch mit: -fg)"
 
-#: main.c:2371 main.c:2391
+#: main.c:2579 main.c:2599
 msgid "-font <font>\t\tUse <font> for normal text (also: -fn)"
 msgstr ""
 "-font <Schriftart>\tBenutze <Schriftart> für normalen Text (auch mit: -fn)"
 
-#: main.c:2372
+#: main.c:2580
 msgid "-boldfont <font>\tUse <font> for bold text"
 msgstr "-boldfont <Schriftart>\tBenutze <Schriftart> für Fettschrift"
 
-#: main.c:2373
+#: main.c:2581
 msgid "-italicfont <font>\tUse <font> for italic text"
 msgstr "-italicfont <Schriftart>\tBenutze <Schriftart> für geneigten Text"
 
-#: main.c:2374 main.c:2392
+#: main.c:2582 main.c:2600
 msgid "-geometry <geom>\tUse <geom> for initial geometry (also: -geom)"
 msgstr ""
 "-geometry <geom>\tbenutze <geom> für die Anfangs Abmessungen (auch mit: -"
 "geom)"
 
-#: main.c:2375
+#: main.c:2583
 msgid "-borderwidth <width>\tUse a border width of <width> (also: -bw)"
 msgstr ""
 "-borderwidth <Breite>\tBenutze einen Rahmen der Breite <Breite> (auch mit: -"
 "bw)"
 
-#: main.c:2376
+#: main.c:2584
 msgid "-scrollbarwidth <width>  Use a scrollbar width of <width> (also: -sw)"
 msgstr ""
 "-scrollbarwidth <Breite>  Benutze eine Scrollbar der Breite <Breite> (auch "
 "mit: -sw)"
 
-#: main.c:2378
+#: main.c:2586
 msgid "-menuheight <height>\tUse a menu bar height of <height> (also: -mh)"
 msgstr ""
 "-menuheight <Höhe>\tBenutze einen Menü-Balken der Höhe <Höhe> (auch mit: -mh)"
 
-#: main.c:2380 main.c:2393
+#: main.c:2588 main.c:2601
 msgid "-reverse\t\tUse reverse video (also: -rv)"
 msgstr "-reverse\t\tBenutze invertierte Farben (auch mit: -rv)"
 
-#: main.c:2381
+#: main.c:2589
 msgid "+reverse\t\tDon't use reverse video (also: +rv)"
 msgstr "+reverse\t\tBenutze keine invertierten Farben (auch mit: +rv)"
 
-#: main.c:2382
+#: main.c:2590
 msgid "-xrm <resource>\tSet the specified resource"
-msgstr "-xrm <resource>\tSetze die gegebene Resource"
-
-#: main.c:2385
+msgstr "-xrm <resource>\tSetze die gegebene Ressource"
+
+#: main.c:2593
 msgid ""
 "\n"
 "Arguments recognised by gvim (RISC OS version):\n"
@@ -3128,15 +3403,15 @@ msgstr ""
 "\n"
 "Argumente für die gvim RISC-OS Version:\n"
 
-#: main.c:2386
+#: main.c:2594
 msgid "--columns <number>\tInitial width of window in columns"
 msgstr "--columns <Nummer>\tAnfangsbreite des Fensters in Spalten"
 
-#: main.c:2387
+#: main.c:2595
 msgid "--rows <number>\tInitial height of window in rows"
 msgstr "--rows <Nummer>\tAnfangshöhe des Fensters in Zeilen"
 
-#: main.c:2390
+#: main.c:2598
 msgid ""
 "\n"
 "Arguments recognised by gvim (GTK+ version):\n"
@@ -3144,52 +3419,68 @@ msgstr ""
 "\n"
 "Argumente für die gvim GTK+ Version:\n"
 
-#: main.c:2394
+#: main.c:2602
 msgid "-display <display>\tRun vim on <display> (also: --display)"
 msgstr "-display <display>\tStarte vim auf <display> (auch mit: --display)"
 
-#: main.c:2396
-msgid "--help\t\tShow Gnome arguments"
-msgstr "--help\t\tZeige Gnome-Argumente"
+#: main.c:2604
+#~ msgid "--role <role>\tSet a unique role to identify the main window"
+#~ msgstr ""
+
+#: main.c:2606
+msgid "--socketid <xid>\tOpen Vim inside another GTK widget"
+msgstr "--socketid <xid>\tÖffne Vim in einem anderen GTK widget"
+
+#: main.c:2609
+#~ msgid "-P <parent title>\tOpen Vim inside parent application"
+#~ msgstr ""
+
+#: main.c:2847
+#~ msgid "No display"
+#~ msgstr ""
 
 #. Failed to send, abort.
-#: main.c:2638
-msgid ""
-"\n"
-"Send failed.\n"
-msgstr ""
-"\n"
-"Schicken des Ausdrucks schlug fehl.\n"
+#: main.c:2862
+#, fuzzy
+#~ msgid ": Send failed.\n"
+#~ msgstr ""
+#~ "\n"
+#~ "Schicken des Ausdrucks schlug fehl.\n"
 
 #. Let vim start normally.
-#: main.c:2643
-msgid ""
-"\n"
-"Send failed. Trying to execute locally\n"
-msgstr ""
-"\n"
-"Schicken schlug fehl. Versuche lokal auszuführen\n"
-
-#: main.c:2676 main.c:2697
+#: main.c:2868
+#, fuzzy
+#~ msgid ": Send failed. Trying to execute locally\n"
+#~ msgstr ""
+#~ "\n"
+#~ "Schicken schlug fehl. Versuche lokal auszuführen\n"
+
+#: main.c:2906 main.c:2927
 #, c-format
 msgid "%d of %d edited"
 msgstr "%d von %d editiert"
 
-#: main.c:2720
-msgid "Send expression failed.\n"
-msgstr "Schicken des Ausdrucks schlug fehl.\n"
-
-#: mark.c:660
+#: main.c:2949
+#, fuzzy
+#~ msgid "No display: Send expression failed.\n"
+#~ msgstr "Schicken des Ausdrucks schlug fehl.\n"
+
+#: main.c:2961
+#, fuzzy
+#~ msgid ": Send expression failed.\n"
+#~ msgstr "Schicken des Ausdrucks schlug fehl.\n"
+
+#: mark.c:709
 msgid "No marks set"
 msgstr "Keine Markierungen gesetzt"
 
-#: mark.c:662
+#: mark.c:711
 #, c-format
 msgid "E283: No marks matching \"%s\""
 msgstr "E283: Keine Markierungen passen zu \"%s\""
 
 #. Highlight title
-#: mark.c:673
+#: mark.c:722
 msgid ""
 "\n"
 "mark line  col file/text"
@@ -3198,7 +3489,7 @@ msgstr ""
 "Mark Zeile Sp  Datei/Text"
 
 #. Highlight title
-#: mark.c:711
+#: mark.c:760
 msgid ""
 "\n"
 " jump line  col file/text"
@@ -3206,7 +3497,17 @@ msgstr ""
 "\n"
 " Sprung Zeile Sp Datei/Text"
 
-#: mark.c:1073
+#. Highlight title
+#: mark.c:805
+#, fuzzy
+#~ msgid ""
+#~ "\n"
+#~ "change line  col text"
+#~ msgstr ""
+#~ "\n"
+#~ "Mark Zeile Sp  Datei/Text"
+
+#: mark.c:1281
 msgid ""
 "\n"
 "# File marks:\n"
@@ -3215,7 +3516,7 @@ msgstr ""
 "# Datei-Marken:\n"
 
 #. Write the jumplist with -'
-#: mark.c:1108
+#: mark.c:1316
 msgid ""
 "\n"
 "# Jumplist (newest first):\n"
@@ -3223,7 +3524,7 @@ msgstr ""
 "\n"
 "# Geschichte (neueste bis älteste):\n"
 
-#: mark.c:1203
+#: mark.c:1412
 msgid ""
 "\n"
 "# History of marks within files (newest to oldest):\n"
@@ -3231,48 +3532,49 @@ msgstr ""
 "\n"
 "# Geschichte der Markierungen innerhalb von Dateien (neueste bis älteste):\n"
 
-#: mark.c:1286
+#: mark.c:1501
 msgid "Missing '>'"
 msgstr "'>' fehlt"
 
-#: mbyte.c:395
-msgid "Not a valid codepage"
-msgstr "Ist nicht eine zulässige Code-Seite"
-
-#: mbyte.c:3107
+#: mbyte.c:467
+#, fuzzy
+#~ msgid "E543: Not a valid codepage"
+#~ msgstr "Ist nicht eine zulässige Code-Seite"
+
+#: mbyte.c:4431
 msgid "E284: Cannot set IC values"
 msgstr "E284: Kann die IC Werte nicht setzen"
 
-#: mbyte.c:3259
+#: mbyte.c:4583
 msgid "E285: Failed to create input context"
 msgstr "E285: Eingabe-Kontext konnte nicht erzeugt werden"
 
-#: mbyte.c:3406
+#: mbyte.c:4741
 msgid "E286: Failed to open input method"
 msgstr "E286: Eingabe-Methode konnte geöffnet werden"
 
-#: mbyte.c:3417
+#: mbyte.c:4752
 msgid "E287: Warning: Could not set destroy callback to IM"
 msgstr "E287: Achtung: Destroy Callabck konnte nicht auf IM gesetzt werden"
 
-#: mbyte.c:3423
+#: mbyte.c:4758
 msgid "E288: input method doesn't support any style"
 msgstr "E288: Eingabe-Methode unterstützt keinen einzigen Stil"
 
-#: mbyte.c:3480
+#: mbyte.c:4815
 msgid "E289: input method doesn't support my preedit type"
 msgstr "E289: Eingabe-Methode unterstützt nicht meinen Voreditier-Typen"
 
-#: mbyte.c:3554
+#: mbyte.c:4889
 msgid "E290: over-the-spot style requires fontset"
 msgstr "E290: der Über-dem-Punkt Stil benötigt fontset"
 
-#: mbyte.c:3582
+#: mbyte.c:4925
 msgid "E291: Your GTK+ is older than 1.2.3. Status area disabled"
 msgstr ""
 "E291: Ihr GTK+ ist älter als 1.2.3. Der Status-Bereich wird abgeschaltet"
 
-#: mbyte.c:3849
+#: mbyte.c:5232
 msgid "E292: Input Method Server is not running"
 msgstr "E292: Server der Eingabe-Methode läuft nicht"
 
@@ -3280,23 +3582,23 @@ msgstr "E292: Server der Eingabe-Methode läuft nicht"
 msgid "E293: block was not locked"
 msgstr "E293: Block war nicht gesperrt"
 
-#: memfile.c:989
+#: memfile.c:1010
 msgid "E294: Seek error in swap file read"
 msgstr "E294: Positionier-Fehler beim Lesen der Auslagerungs-Datei"
 
-#: memfile.c:994
+#: memfile.c:1015
 msgid "E295: Read error in swap file"
 msgstr "E295: Lese-Fehler in der Auslagerungs-Datei"
 
-#: memfile.c:1046
+#: memfile.c:1067
 msgid "E296: Seek error in swap file write"
 msgstr "E296: Positionier-Fehler beim Schreiben in die Auslagerungs-Datei"
 
-#: memfile.c:1064
+#: memfile.c:1085
 msgid "E297: Write error in swap file"
 msgstr "E297: Fehler beim Schreiben in die Auslagerungs-Datei"
 
-#: memfile.c:1261
+#: memfile.c:1282
 msgid "E300: Swap file already exists (symlink attack?)"
 msgstr "E300: Auslagerungs-Datei ist bereits vorhanden (symlink Attacke?)"
 
@@ -3395,12 +3697,12 @@ msgstr ""
 msgid "Using swap file \"%s\""
 msgstr "Verwende Auslagerungs-Datei \"%s\""
 
-#: memline.c:915
+#: memline.c:909
 #, c-format
 msgid "Original file \"%s\""
 msgstr "Original-Datei \"%s\""
 
-#: memline.c:934
+#: memline.c:922
 msgid "E308: Warning: Original file may have been changed"
 msgstr "E308: Warnung: Die Original-Datei könnte verändert worden sein"
 
@@ -3450,18 +3752,22 @@ msgstr "???ENDE"
 msgid "E311: Recovery Interrupted"
 msgstr "E311: Wiederherstellung unterbrochen"
 
-#: memline.c:1145
+#: memline.c:1148
 msgid ""
 "E312: Errors detected while recovering; look for lines starting with ???"
 msgstr ""
 "E312: Fehler wurden festgestellt während der Wiederherstellung: suche nach "
 "Zeilen die mit ??? beginnen"
 
-#: memline.c:1148
+#: memline.c:1150
+msgid "See \":help E312\" for more information."
+msgstr "Lesen Sie \":help E312\" für weitere Informationen."
+
+#: memline.c:1155
 msgid "Recovery completed. You should check if everything is OK."
 msgstr "Wiederherstellung beendet. Prüfen Sie, ob alles alles OK ist."
 
-#: memline.c:1149
+#: memline.c:1156
 msgid ""
 "\n"
 "(You might want to write out this file under another name\n"
@@ -3469,11 +3775,11 @@ msgstr ""
 "\n"
 "(Wollen Sie vielleicht diese Datei unter einem neuen Namen speichern\n"
 
-#: memline.c:1150
+#: memline.c:1157
 msgid "and run diff with the original file to check for changes)\n"
 msgstr "und \"diff\" zur Original-Datei machen, um Änderungen zu prüfen)\n"
 
-#: memline.c:1151
+#: memline.c:1158
 msgid ""
 "Delete the .swp file afterwards.\n"
 "\n"
@@ -3482,51 +3788,51 @@ msgstr ""
 "\n"
 
 #. use msg() to start the scrolling properly
-#: memline.c:1207
+#: memline.c:1214
 msgid "Swap files found:"
 msgstr "Auslagerungs-Dateien gefunden:"
 
-#: memline.c:1385
+#: memline.c:1392
 msgid "   In current directory:\n"
 msgstr "   Im laufenden Verzeichnis:\n"
 
-#: memline.c:1387
+#: memline.c:1394
 msgid "   Using specified name:\n"
 msgstr "   Benutze gegebenen Namen:\n"
 
-#: memline.c:1391
+#: memline.c:1398
 msgid "   In directory "
 msgstr "   Im Verzeichnis "
 
-#: memline.c:1409
+#: memline.c:1416
 msgid "      -- none --\n"
 msgstr "      -- Nichts --\n"
 
-#: memline.c:1481
+#: memline.c:1488
 msgid "          owned by: "
 msgstr "      Eigentum von: "
 
-#: memline.c:1483
+#: memline.c:1490
 msgid "   dated: "
 msgstr "     vom: "
 
-#: memline.c:1487 memline.c:3680
+#: memline.c:1494 memline.c:3684
 msgid "             dated: "
 msgstr "               vom: "
 
-#: memline.c:1503
+#: memline.c:1510
 msgid "         [from Vim version 3.0]"
 msgstr "         [von Vim Version 3.0]"
 
-#: memline.c:1507
+#: memline.c:1514
 msgid "         [does not look like a Vim swap file]"
 msgstr "         [sieht nicht wie eine Vim Auslagerungs-Datei aus]"
 
-#: memline.c:1511
+#: memline.c:1518
 msgid "         file name: "
 msgstr "         Dateiname: "
 
-#: memline.c:1523
+#: memline.c:1524
 msgid ""
 "\n"
 "          modified: "
@@ -3534,15 +3840,15 @@ msgstr ""
 "\n"
 "         verändert: "
 
-#: memline.c:1524
+#: memline.c:1525
 msgid "YES"
 msgstr "JA"
 
-#: memline.c:1524
+#: memline.c:1525
 msgid "no"
 msgstr "nein"
 
-#: memline.c:1528
+#: memline.c:1529
 msgid ""
 "\n"
 "         user name: "
@@ -3550,11 +3856,11 @@ msgstr ""
 "\n"
 "     Benutzer Name: "
 
-#: memline.c:1535
+#: memline.c:1536
 msgid "   host name: "
 msgstr "   Host Name: "
 
-#: memline.c:1537
+#: memline.c:1538
 msgid ""
 "\n"
 "         host name: "
@@ -3562,7 +3868,7 @@ msgstr ""
 "\n"
 "         Host Name: "
 
-#: memline.c:1543
+#: memline.c:1544
 msgid ""
 "\n"
 "        process ID: "
@@ -3570,11 +3876,11 @@ msgstr ""
 "\n"
 "        Process ID: "
 
-#: memline.c:1549
+#: memline.c:1550
 msgid " (still running)"
 msgstr " (läuft noch)"
 
-#: memline.c:1561
+#: memline.c:1562
 msgid ""
 "\n"
 "         [not usable with this version of Vim]"
@@ -3582,7 +3888,7 @@ msgstr ""
 "\n"
 "         [nicht verwendbar zusammen mit dieser Vim-Version]"
 
-#: memline.c:1564
+#: memline.c:1565
 msgid ""
 "\n"
 "         [not usable on this computer]"
@@ -3590,92 +3896,92 @@ msgstr ""
 "\n"
 "         [nicht verwendbar auf diesem Rechner]"
 
-#: memline.c:1569
+#: memline.c:1570
 msgid "         [cannot be read]"
 msgstr "         [kann nicht gelesen werden]"
 
-#: memline.c:1573
+#: memline.c:1574
 msgid "         [cannot be opened]"
 msgstr "         [kann nicht geöffnet werden]"
 
-#: memline.c:1763
+#: memline.c:1764
 msgid "E313: Cannot preserve, there is no swap file"
 msgstr "E313: Kann nicht absichern, es gibt keine Auslagerungs-Datei"
 
-#: memline.c:1816
+#: memline.c:1817
 msgid "File preserved"
 msgstr "Datei gesichert"
 
-#: memline.c:1818
+#: memline.c:1819
 msgid "E314: Preserve failed"
 msgstr "E314: Absicherung fehlgeschlagen"
 
-#: memline.c:1889
+#: memline.c:1890
 #, c-format
 msgid "E315: ml_get: invalid lnum: %ld"
 msgstr "E315: ml_get: unzulässige lnum: %ld"
 
-#: memline.c:1915
+#: memline.c:1916
 #, c-format
 msgid "E316: ml_get: cannot find line %ld"
 msgstr "E316: ml_get: Zeile %ld kann nicht gefunden werden"
 
-#: memline.c:2303
+#: memline.c:2306
 msgid "E317: pointer block id wrong 3"
 msgstr "E317: Zeiger-Block id falsch 3"
 
-#: memline.c:2383
+#: memline.c:2386
 msgid "stack_idx should be 0"
 msgstr "stack_idx sollte 0 sein"
 
-#: memline.c:2445
+#: memline.c:2448
 msgid "E318: Updated too many blocks?"
 msgstr "E318: Zu viele Blocks aktualisiert?"
 
-#: memline.c:2602
+#: memline.c:2630
 msgid "E317: pointer block id wrong 4"
 msgstr "E317: Zeiger Block id falsch 4"
 
-#: memline.c:2629
+#: memline.c:2657
 msgid "deleted block 1?"
 msgstr "Block 1 gelöscht?"
 
-#: memline.c:2829
+#: memline.c:2857
 #, c-format
 msgid "E320: Cannot find line %ld"
 msgstr "E320: Zeile %ld kann nicht gefunden werden"
 
-#: memline.c:3072
+#: memline.c:3100
 msgid "E317: pointer block id wrong"
 msgstr "E317: Zeiger Block id ist falsch"
 
-#: memline.c:3088
+#: memline.c:3116
 msgid "pe_line_count is zero"
 msgstr "pe_line_count ist Null"
 
-#: memline.c:3117
+#: memline.c:3145
 #, c-format
 msgid "E322: line number out of range: %ld past the end"
 msgstr "E322: Zeilennummer nicht im zulässigen Bereich: %ld nach dem Ende"
 
-#: memline.c:3121
+#: memline.c:3149
 #, c-format
 msgid "E323: line count wrong in block %ld"
 msgstr "E323: Zeilen Zähler falsch in Block %ld"
 
-#: memline.c:3170
+#: memline.c:3198
 msgid "Stack size increases"
 msgstr "Stapel Größe wächst"
 
-#: memline.c:3216
+#: memline.c:3244
 msgid "E317: pointer block id wrong 2"
 msgstr "E317: Zeiger Block id falsch 2"
 
-#: memline.c:3670
+#: memline.c:3674
 msgid "E325: ATTENTION"
 msgstr "E325: ACHTUNG"
 
-#: memline.c:3671
+#: memline.c:3675
 msgid ""
 "\n"
 "Found a swap file by the name \""
@@ -3683,17 +3989,17 @@ msgstr ""
 "\n"
 "Auslagerungs-Datei mit folgendem Namen gefunden: \""
 
-#: memline.c:3675
+#: memline.c:3679
 msgid "While opening file \""
 msgstr "Beim Öffnen der Datei \""
 
-#: memline.c:3684
+#: memline.c:3688
 msgid "      NEWER than swap file!\n"
 msgstr "      neuer als Auslagerungs-Datei!\n"
 
 #. Some of these messages are long to allow translation to
 #. * other languages.
-#: memline.c:3688
+#: memline.c:3692
 msgid ""
 "\n"
 "(1) Another program may be editing the same file.\n"
@@ -3705,11 +4011,11 @@ msgstr ""
 "    Wenn dies der Fall ist, sollten Sie vorsichtig sein, damit\n"
 "    es nicht zu Überschneidungen kommt.\n"
 
-#: memline.c:3689
+#: memline.c:3693
 msgid "    Quit, or continue with caution.\n"
 msgstr "    Ende, oder Fortsetzung mit Vorsicht.\n"
 
-#: memline.c:3690
+#: memline.c:3694
 msgid ""
 "\n"
 "(2) An edit session for this file crashed.\n"
@@ -3717,12 +4023,12 @@ msgstr ""
 "\n"
 "(2) Eine Editier-Sitzung für diese Datei ist abgestürzt.\n"
 
-#: memline.c:3691
+#: memline.c:3695
 msgid "    If this is the case, use \":recover\" or \"vim -r "
 msgstr ""
 "    Wenn dies der Fall ist, so verwenden Sie \":recover\" oder \"vim -r "
 
-#: memline.c:3693
+#: memline.c:3697
 msgid ""
 "\"\n"
 "    to recover the changes (see \":help recovery\").\n"
@@ -3730,12 +4036,12 @@ msgstr ""
 "\"\n"
 "    um die Änderungen wiederherzustellen (siehe \":help recovery\").\n"
 
-#: memline.c:3694
+#: memline.c:3698
 msgid "    If you did this already, delete the swap file \""
 msgstr ""
 "    Wenn dies bereits geschehen ist, löschen Sie die Auslagerungs-Datei \""
 
-#: memline.c:3696
+#: memline.c:3700
 msgid ""
 "\"\n"
 "    to avoid this message.\n"
@@ -3743,49 +4049,53 @@ msgstr ""
 "\"\n"
 "    um diese Nachricht zu vermeiden.\n"
 
-#: memline.c:3710 memline.c:3714
+#: memline.c:3714 memline.c:3718
 msgid "Swap file \""
 msgstr "Auslagerungs-Datei \""
 
-#: memline.c:3711 memline.c:3717
+#: memline.c:3715 memline.c:3721
 msgid "\" already exists!"
 msgstr "\" ist bereits vorhanden!"
 
-#: memline.c:3720
+#: memline.c:3724
 msgid "VIM - ATTENTION"
 msgstr "VIM - ACHTUNG"
 
-#: memline.c:3722
-msgid "Swap file already exists!"
-msgstr "Auslagerungs-Datei ist bereits vorhanden!"
-
 #: memline.c:3726
-msgid ""
-"&Open Read-Only\n"
-"&Edit anyway\n"
-"&Recover\n"
-"&Quit"
-msgstr ""
-"Öffnen nur zum &Lesen\n"
-"Trotzdem &editieren\n"
-"&Wiederherstellen\n"
-"&Abbrechen"
-
-#: memline.c:3728
-msgid ""
-"&Open Read-Only\n"
-"&Edit anyway\n"
-"&Recover\n"
-"&Quit\n"
-"&Delete it"
-msgstr ""
-"Öffnen nur zum &Lesen\n"
-"Trotzdem &editieren\n"
-"&Wiederherstellen\n"
-"&Abbrechen\n"
-"Ent&fernen"
-
-#: memline.c:3781
+msgid "Swap file already exists!"
+msgstr "Auslagerungs-Datei ist bereits vorhanden!"
+
+#: memline.c:3730
+#, fuzzy
+#~ msgid ""
+#~ "&Open Read-Only\n"
+#~ "&Edit anyway\n"
+#~ "&Recover\n"
+#~ "&Quit\n"
+#~ "&Abort"
+#~ msgstr ""
+#~ "Öffnen nur zum &Lesen\n"
+#~ "Trotzdem &editieren\n"
+#~ "&Wiederherstellen\n"
+#~ "&Abbrechen"
+
+#: memline.c:3732
+#, fuzzy
+#~ msgid ""
+#~ "&Open Read-Only\n"
+#~ "&Edit anyway\n"
+#~ "&Recover\n"
+#~ "&Quit\n"
+#~ "&Abort\n"
+#~ "&Delete it"
+#~ msgstr ""
+#~ "Öffnen nur zum &Lesen\n"
+#~ "Trotzdem &editieren\n"
+#~ "&Wiederherstellen\n"
+#~ "&Abbrechen\n"
+#~ "Ent&fernen"
+
+#: memline.c:3789
 msgid "E326: Too many swap files found"
 msgstr "E326: Zu viele Auslagerungs-Dateien gefunden"
 
@@ -3801,22 +4111,22 @@ msgstr "E328: Menü existiert nur in anderen Modus"
 msgid "E329: No menu of that name"
 msgstr "E329: Kein Menü mit diesem Namen"
 
-#: menu.c:509
+#: menu.c:525
 msgid "E330: Menu path must not lead to a sub-menu"
 msgstr "E330: Menü-Pfad darf nicht zum Untermenü führen"
 
-#: menu.c:548
+#: menu.c:564
 msgid "E331: Must not add menu items directly to menu bar"
 msgstr ""
 "E331: Menü-Punkt können nicht direkt zum Menü-Balken hinzugefügt werden"
 
-#: menu.c:554
+#: menu.c:570
 msgid "E332: Separator cannot be part of a menu path"
 msgstr "E332: Trenner kann nicht Teil des Menü-Pfades sein"
 
 #. Now we have found the matching menu, and we list the mappings
 #. Highlight title
-#: menu.c:1070
+#: menu.c:1097
 msgid ""
 "\n"
 "--- Menus ---"
@@ -3824,79 +4134,79 @@ msgstr ""
 "\n"
 "--- Menüs ---"
 
-#: menu.c:1987
+#: menu.c:2019
 msgid "Tear off this menu"
 msgstr "Reiße dieses Menü ab"
 
-#: menu.c:2052
+#: menu.c:2084
 msgid "E333: Menu path must lead to a menu item"
 msgstr "E333: Menü-Pfad muss zu einem Menü-Punkt führen"
 
-#: menu.c:2072
+#: menu.c:2104
 #, c-format
 msgid "E334: Menu not found: %s"
 msgstr "E334: Menü nicht gefunden: %s"
 
-#: menu.c:2141
+#: menu.c:2173
 #, c-format
 msgid "E335: Menu not defined for %s mode"
 msgstr "E335: Menü ist für %s Modus nicht definiert"
 
-#: menu.c:2179
+#: menu.c:2211
 msgid "E336: Menu path must lead to a sub-menu"
 msgstr "E336: Menü-Pfad muss zum Untermenü führen"
 
-#: menu.c:2200
+#: menu.c:2232
 msgid "E337: Menu not found - check menu names"
 msgstr "E337: Menü nicht gefunden - überprüfe Menü-Namen"
 
-#: message.c:470
+#: message.c:414
 #, c-format
 msgid "Error detected while processing %s:"
 msgstr "Fehler beim Ausführen von \"%s\":"
 
-#: message.c:486
+#: message.c:440
 #, c-format
 msgid "line %4ld:"
 msgstr "Zeile %4ld:"
 
-#: message.c:526
+#: message.c:647
 msgid "[string too long]"
 msgstr "[Zeichenkette zu lang]"
 
-#: message.c:672
+#: message.c:797
 msgid "Messages maintainer: Bram Moolenaar <Bram@vim.org>"
 msgstr "Übersetzt von Johannes Zellner <johannes@zellner.org>"
 
-#: message.c:885
+#: message.c:1025
 msgid "Interrupt: "
 msgstr "Unterbrechung: "
 
-#: message.c:888
+#: message.c:1028
 msgid "Hit ENTER to continue"
 msgstr "weiter mit der EINGABETASTE"
 
-#: message.c:890
+#: message.c:1030
 msgid "Hit ENTER or type command to continue"
 msgstr "Drücken Sie die EINGABETASTE oder geben Sie einen Befehl ein"
 
-#: message.c:1961
+#: message.c:2351
 msgid "-- More --"
 msgstr "-- Mehr --"
 
-#: message.c:1964
+#: message.c:2354
 msgid " (RET/BS: line, SPACE/b: page, d/u: half page, q: quit)"
 msgstr " (RET/BS: Zeile, LEERZEICHEN/b: Seite, d/u: Halbe Seite, q: Ende)"
 
-#: message.c:1965
+#: message.c:2355
 msgid " (RET: line, SPACE: page, d: half page, q: quit)"
 msgstr " (RET: Zeile, LEERZEICHEN: Seite, d: Halbe Seite, q: Ende)"
 
-#: message.c:2441 message.c:2456
+#: message.c:2982 message.c:2997
 msgid "Question"
 msgstr "Frage"
 
-#: message.c:2443
+#: message.c:2984
 msgid ""
 "&Yes\n"
 "&No"
@@ -3904,17 +4214,7 @@ msgstr ""
 "&Ja\n"
 "&Nein"
 
-#: message.c:2458
-msgid ""
-"&Yes\n"
-"&No\n"
-"&Cancel"
-msgstr ""
-"&Ja\n"
-"&Nein\n"
-"&Abbrechen"
-
-#: message.c:2476
+#: message.c:3017
 msgid ""
 "&Yes\n"
 "&No\n"
@@ -3928,59 +4228,59 @@ msgstr ""
 "Alle &Verwerfen\n"
 "&Abbrechen"
 
-#: message.c:2517
+#: message.c:3058
 msgid "Save File dialog"
 msgstr "Datei Speichern Dialog"
 
-#: message.c:2519
+#: message.c:3060
 msgid "Open File dialog"
 msgstr "Datei Öffnen Dialog"
 
 #. TODO: non-GUI file selector here
-#: message.c:2590
+#: message.c:3131
 msgid "E338: Sorry, no file browser in console mode"
 msgstr "E338: kein Datei-Dialog im Konsole-Modus"
 
-#: misc1.c:2462
+#: misc1.c:2773
 msgid "W10: Warning: Changing a readonly file"
 msgstr "W10: Warnung: Ändern einer schreibgeschützten Datei"
 
-#: misc1.c:2691
+#: misc1.c:3021
 msgid "1 more line"
 msgstr "eine Zeile mehr"
 
-#: misc1.c:2693
+#: misc1.c:3023
 msgid "1 line less"
 msgstr "eine Zeile weniger"
 
-#: misc1.c:2698
+#: misc1.c:3028
 #, c-format
 msgid "%ld more lines"
 msgstr "%ld Zeilen mehr"
 
-#: misc1.c:2700
+#: misc1.c:3030
 #, c-format
 msgid "%ld fewer lines"
 msgstr "%ld Zeilen weniger"
 
-#: misc1.c:2703
+#: misc1.c:3033
 msgid " (Interrupted)"
 msgstr " (Unterbrochen)"
 
-#: misc1.c:6321
+#: misc1.c:7588
 msgid "Vim: preserving files...\n"
 msgstr "Vim: Sichern der Dateien...\n"
 
 #. close all memfiles, without deleting
-#: misc1.c:6331
+#: misc1.c:7598
 msgid "Vim: Finished.\n"
 msgstr "Vim: Beendet.\n"
 
-#: misc2.c:666 misc2.c:682
+#: misc2.c:695 misc2.c:711
 msgid "ERROR: "
 msgstr "FEHLER: "
 
-#: misc2.c:686
+#: misc2.c:715
 #, c-format
 msgid ""
 "\n"
@@ -3990,7 +4290,7 @@ msgstr ""
 "[Bytes] gesamt alloziert-frei %lu-%lu, in Verwendung %lu, maximale "
 "Verwendung %lu\n"
 
-#: misc2.c:688
+#: misc2.c:717
 #, c-format
 msgid ""
 "[calls] total re/malloc()'s %lu, total free()'s %lu\n"
@@ -3999,178 +4299,235 @@ msgstr ""
 "[Aufrufe] gesamt re/malloc()s %lu, gesamt free()s %lu\n"
 "\n"
 
-#: misc2.c:743
+#: misc2.c:772
 msgid "E340: Line is becoming too long"
 msgstr "E340: Zeile wird zu lang"
 
-#: misc2.c:787
+#: misc2.c:816
 #, c-format
 msgid "E341: Internal error: lalloc(%ld, )"
 msgstr "E341: Interner Fehler: lalloc(%ld, )"
 
-#: misc2.c:895
+#: misc2.c:924
 #, c-format
 msgid "E342: Out of memory!  (allocating %lu bytes)"
 msgstr "E342: Kein Speicherplatz mehr vorhanden (%lu bytes alloziert)"
 
-#: misc2.c:2546
+#: misc2.c:2594
 #, c-format
 msgid "Calling shell to execute: \"%s\""
 msgstr "Rufe Shell auf, um \"%s\" auszuführen"
 
-#: misc2.c:2745 misc2.c:5230 option.c:4636
-msgid "Missing colon"
-msgstr "fehlendes Komma"
-
-#: misc2.c:2747 misc2.c:2774
-msgid "Illegal mode"
-msgstr "Unzulässiger Modus"
-
-#: misc2.c:2813
-msgid "Illegal mouseshape"
-msgstr "Unzulässige Maus-Form"
-
-#: misc2.c:2853 misc2.c:5250
-msgid "digit expected"
-msgstr "Ziffer erwartet"
-
-#: misc2.c:2858
-msgid "Illegal percentage"
-msgstr "Unzulässige Prozentangabe"
-
-#: misc2.c:3162
+#: misc2.c:2816
+#, fuzzy
+#~ msgid "E545: Missing colon"
+#~ msgstr "fehlendes Komma"
+
+#: misc2.c:2818 misc2.c:2845
+#, fuzzy
+#~ msgid "E546: Illegal mode"
+#~ msgstr "Unzulässiger Modus"
+
+#: misc2.c:2884
+#, fuzzy
+#~ msgid "E547: Illegal mouseshape"
+#~ msgstr "Unzulässige Maus-Form"
+
+#: misc2.c:2924
+#, fuzzy
+#~ msgid "E548: digit expected"
+#~ msgstr "Ziffer erwartet"
+
+#: misc2.c:2929
+#, fuzzy
+#~ msgid "E549: Illegal percentage"
+#~ msgstr "Unzulässige Prozentangabe"
+
+#: misc2.c:3239
 msgid "Enter encryption key: "
 msgstr "Geben Sie bitte den Schlüssel ein: "
 
-#: misc2.c:3163
+#: misc2.c:3240
 msgid "Enter same key again: "
 msgstr "Geben Sie den gleichen Schlüssel nochmals ein:"
 
-#: misc2.c:3173
+#: misc2.c:3250
 msgid "Keys don't match!"
 msgstr "Die Schlüssel stimmen nicht überein!"
 
-#: misc2.c:3712
+#: misc2.c:3799
 #, c-format
 msgid ""
 "E343: Invalid path: '**[number]' must be at the end of the path or be "
 "followed by '%s'."
 msgstr ""
-"E343: Ungültiger Pfad: '**[Nummer]' muss am Ende des Pfads sein, oder von "
-"'%s' gefolgt werden. Siehe :help path."
-
-#: misc2.c:4984
+"E343: Ungültiger Pfad: '**[Nummer]' muss am Ende des Pfads sein, oder von '%"
+"s' gefolgt werden. Siehe :help path."
+
+#: misc2.c:5078
 #, c-format
 msgid "E344: Can't find directory \"%s\" in cdpath"
 msgstr "E344: Verzeichnis \"%s\" kann im 'cdpath' nicht gefunden werden"
 
-#: misc2.c:4987
+#: misc2.c:5081
 #, c-format
 msgid "E345: Can't find file \"%s\" in path"
 msgstr "E345: Datei \"%s\" kann im Pfad nicht gefunden werden"
 
-#: misc2.c:4993
+#: misc2.c:5087
 #, c-format
 msgid "E346: No more directory \"%s\" found in cdpath"
 msgstr "E346: Kein weiteres Verzeichnis \"%s\" im 'cdpath' gefunden"
 
-#: misc2.c:4996
+#: misc2.c:5090
 #, c-format
 msgid "E347: No more file \"%s\" found in path"
 msgstr "E347: Keine weitere Datei \"%s\" im Pfad gefunden"
 
-#: misc2.c:5242
-msgid "Illegal component"
-msgstr "Unzulässige Komponente"
-
-#: normal.c:2857
+#: misc2.c:5324
+#, fuzzy
+#~ msgid "E550: Missing colon"
+#~ msgstr "fehlendes Komma"
+
+#: misc2.c:5336
+#, fuzzy
+#~ msgid "E551: Illegal component"
+#~ msgstr "Unzulässige Komponente"
+
+#: misc2.c:5344
+#, fuzzy
+#~ msgid "E552: digit expected"
+#~ msgstr "Ziffer erwartet"
+
+#. Get here when the server can't be found.
+#: netbeans.c:396
+#~ msgid "Cannot connect to Netbeans #2"
+#~ msgstr ""
+
+#: netbeans.c:404
+#~ msgid "Cannot connect to Netbeans"
+#~ msgstr ""
+
+#: netbeans.c:450
+#, c-format
+#~ msgid "E668: Wrong access mode for NetBeans connection info file: \"%s\""
+#~ msgstr ""
+
+#: netbeans.c:749
+#~ msgid "read from Netbeans socket"
+#~ msgstr ""
+
+#: netbeans.c:1643
+#, fuzzy, c-format
+#~ msgid "E658: NetBeans connection lost for buffer %ld"
+#~ msgstr "E86: Kann nicht zum Puffer %ld wechseln"
+
+#: normal.c:2980
 msgid "Warning: terminal cannot highlight"
 msgstr "Achtung: Terminal unterstützt keine Hervorhebung"
 
-#: normal.c:3052
+#: normal.c:3276
 msgid "E348: No string under cursor"
 msgstr "E348: Keine Zeichenkette unter dem Cursor"
 
 # Identifizierungszeichen/merkmal, Bezeichner
-#: normal.c:3054
+#: normal.c:3278
 msgid "E349: No identifier under cursor"
 msgstr "E349: Kein Merkmal unter dem Cursor"
 
-#: normal.c:4225
+#: normal.c:4519
 msgid "E352: Cannot erase folds with current 'foldmethod'"
 msgstr ""
 "E352: Faltung kann mit der eingestellten Methode 'foldmethod' nicht gelöscht "
 "werden"
 
-#: ops.c:283
+#: normal.c:6740
+#, fuzzy
+#~ msgid "E664: changelist is empty"
+#~ msgstr "E91: Die Option 'shell' ist leer"
+
+#: normal.c:6742
+#~ msgid "E662: At start of changelist"
+#~ msgstr ""
+
+#: normal.c:6744
+#~ msgid "E663: At end of changelist"
+#~ msgstr ""
+
+#: normal.c:8005
+#, fuzzy
+#~ msgid "Type  :quit<Enter>  to exit Vim"
+#~ msgstr "tippe  :q<Enter>                zum Beenden               "
+
+#: ops.c:294
 #, c-format
 msgid "1 line %sed 1 time"
 msgstr "eine Zeile ein Mal %s"
 
-#: ops.c:285
+#: ops.c:296
 #, c-format
 msgid "1 line %sed %d times"
 msgstr "1 Zeile %s %d Mal"
 
-#: ops.c:290
+#: ops.c:301
 #, c-format
 msgid "%ld lines %sed 1 time"
 msgstr "%ld Zeilen %s ein Mal"
 
-#: ops.c:293
+#: ops.c:304
 #, c-format
 msgid "%ld lines %sed %d times"
 msgstr "%ld Zeilen %s %d Mal"
 
-#: ops.c:651
+#: ops.c:662
 #, c-format
 msgid "%ld lines to indent... "
 msgstr "%ld Zeilen zum Einrücken... "
 
-#: ops.c:701
+#: ops.c:712
 msgid "1 line indented "
 msgstr "1 Zeile eingerückt... "
 
-#: ops.c:703
+#: ops.c:714
 #, c-format
 msgid "%ld lines indented "
 msgstr "%ld Zeilen eingerückt... "
 
 #. must display the prompt
-#: ops.c:1546
+#: ops.c:1675
 msgid "cannot yank; delete anyway"
 msgstr "kann nicht kopieren; lösche trotzdem"
 
-#: ops.c:2079
+#: ops.c:2261
 msgid "1 line changed"
 msgstr "1 Zeile ~"
 
-#: ops.c:2081
+#: ops.c:2263
 #, c-format
 msgid "%ld lines changed"
 msgstr "%ld Zeilen geändert"
 
-#: ops.c:2438
+#: ops.c:2647
 #, c-format
 msgid "freeing %ld lines"
 msgstr "gebe %ld Zeilen frei"
 
-#: ops.c:2719
+#: ops.c:2928
 msgid "1 line yanked"
 msgstr "Eine Zeile kopiert"
 
-#: ops.c:2721
+#: ops.c:2930
 #, c-format
 msgid "%ld lines yanked"
 msgstr "%ld Zeilen kopiert"
 
-#: ops.c:3014
+#: ops.c:3215
 #, c-format
 msgid "E353: Nothing in register %s"
 msgstr "E353: Register %s ist leer"
 
 #. Highlight title
-#: ops.c:3572
+#: ops.c:3766
 msgid ""
 "\n"
 "--- Registers ---"
@@ -4178,11 +4535,11 @@ msgstr ""
 "\n"
 "--- Register ---"
 
-#: ops.c:4730
+#: ops.c:5075
 msgid "Illegal register name"
 msgstr "Unzulässiger Register Name"
 
-#: ops.c:4816
+#: ops.c:5163
 msgid ""
 "\n"
 "# Registers:\n"
@@ -4190,49 +4547,60 @@ msgstr ""
 "\n"
 "# Register:\n"
 
-#: ops.c:4844
-#, c-format
-msgid "Unknown register type %d"
-msgstr "Unbekannter Register Typ %d"
-
-#: ops.c:5236
+#: ops.c:5213
+#, fuzzy, c-format
+#~ msgid "E574: Unknown register type %d"
+#~ msgstr "Unbekannter Register Typ %d"
+
+#: ops.c:5698
 #, c-format
 msgid "E354: Invalid register name: '%s'"
 msgstr "E354: Unzulässiger Register Name: '%s'"
 
-#: ops.c:5585
+#: ops.c:6058
 #, c-format
 msgid "%ld Cols; "
 msgstr "%ld Spalten; "
 
-#: ops.c:5592
+#: ops.c:6065
 #, c-format
 msgid "Selected %s%ld of %ld Lines; %ld of %ld Words; %ld of %ld Bytes"
 msgstr "%s%ld von %ld Zeilen; %ld von %ld Worten; %ld von %ld Bytes"
 
-#: ops.c:5608
+#: ops.c:6081
 #, c-format
 msgid "Col %s of %s; Line %ld of %ld; Word %ld of %ld; Byte %ld of %ld"
 msgstr "Spal %s von %s; Zeile %ld von %ld; Wort %ld von %ld; Byte %ld von %ld"
 
-#: ops.c:5619
+#: ops.c:6092
 #, c-format
 msgid "(+%ld for BOM)"
 msgstr "(+%ld für BOM)"
 
-#: option.c:1989
+#: option.c:1643
+#~ msgid "%<%f%h%m%=Page %N"
+#~ msgstr ""
+
+#: option.c:2092
 msgid "Thanks for flying Vim"
 msgstr "Danke für die Benutzung von Vim"
 
-#: option.c:3175
-msgid "Option not supported"
-msgstr "Option nicht unterstützt"
-
-#: option.c:3200
-msgid "Not allowed in a modeline"
-msgstr "Nicht erlaubt in einer 'modeline'"
-
-#: option.c:3256
+#: option.c:3419 option.c:3535
+#, fuzzy
+#~ msgid "E518: Unknown option"
+#~ msgstr "Unbekannte Option"
+
+#: option.c:3432
+#, fuzzy
+#~ msgid "E519: Option not supported"
+#~ msgstr "Option nicht unterstützt"
+
+#: option.c:3457
+#, fuzzy
+#~ msgid "E520: Not allowed in a modeline"
+#~ msgstr "Nicht erlaubt in einer 'modeline'"
+
+#: option.c:3522
 msgid ""
 "\n"
 "\tLast set from "
@@ -4240,140 +4608,163 @@ msgstr ""
 "\n"
 "\tZuletzt gesetzt von "
 
-#: option.c:3395
-msgid "Number required after ="
-msgstr "Brauche Zahl nach ="
-
-#: option.c:3714 option.c:4322
-msgid "Not found in termcap"
-msgstr "Nicht gefunden in termcap"
-
-#: option.c:3780
-#, c-format
-msgid "Illegal character <%s>"
-msgstr "Unzulässiges Zeichen <%s>"
-
-#: option.c:4307 option.c:5573
-msgid "Not allowed here"
-msgstr "hier nicht erlaubt"
-
-#: option.c:4314
-msgid "Cannot set 'term' to empty string"
-msgstr "'term' kann keine leere Zeichenkette sein"
-
-#: option.c:4317
-msgid "Cannot change term in GUI"
-msgstr "'term' kann im GUI nicht verändert werden"
-
-#: option.c:4319
-msgid "Use \":gui\" to start the GUI"
-msgstr "Verwende \":gui\", um die GUI-Version zu starten"
-
-#: option.c:4340
-msgid "'backupext' and 'patchmode' are equal"
-msgstr "'backupext' und 'patchmode' sind gleich"
-
-#: option.c:4638
-msgid "Zero length string"
-msgstr "Zeichenkette der Länge Null"
-
-#: option.c:4706
-#, c-format
-msgid "Missing number after <%s>"
-msgstr "fehlende Zahl nach <%s>"
-
-#: option.c:4720
-msgid "Missing comma"
-msgstr "Komma fehlt"
-
-#: option.c:4727
-msgid "Must specify a ' value"
-msgstr "ein '-Wert muss angegeben werden"
-
-#: option.c:4767
-msgid "contains unprintable character"
-msgstr "enthält nicht-druckbare Zeichen"
-
-#: option.c:4800
-msgid "Invalid font(s)"
-msgstr "Ungültiger Schriftsatz"
+#: option.c:3661
+#, fuzzy
+#~ msgid "E521: Number required after ="
+#~ msgstr "Brauche Zahl nach ="
+
+#: option.c:3989 option.c:4619
+#, fuzzy
+#~ msgid "E522: Not found in termcap"
+#~ msgstr "Nicht gefunden in termcap"
+
+#: option.c:4064
+#, fuzzy, c-format
+#~ msgid "E539: Illegal character <%s>"
+#~ msgstr "Unzulässiges Zeichen <%s>"
+
+#: option.c:4611
+#, fuzzy
+#~ msgid "E529: Cannot set 'term' to empty string"
+#~ msgstr "'term' kann keine leere Zeichenkette sein"
+
+#: option.c:4614
+#, fuzzy
+#~ msgid "E530: Cannot change term in GUI"
+#~ msgstr "'term' kann im GUI nicht verändert werden"
+
+#: option.c:4616
+#, fuzzy
+#~ msgid "E531: Use \":gui\" to start the GUI"
+#~ msgstr "Verwende \":gui\", um die GUI-Version zu starten"
+
+#: option.c:4645
+#, fuzzy
+#~ msgid "E589: 'backupext' and 'patchmode' are equal"
+#~ msgstr "'backupext' und 'patchmode' sind gleich"
+
+#: option.c:4860
+#, fuzzy
+#~ msgid "E617: Cannot be changed in the GTK+ 2 GUI"
+#~ msgstr "'term' kann im GUI nicht verändert werden"
+
+#: option.c:5016
+#, fuzzy
+#~ msgid "E524: Missing colon"
+#~ msgstr "fehlendes Komma"
+
+#: option.c:5018
+#, fuzzy
+#~ msgid "E525: Zero length string"
+#~ msgstr "Zeichenkette der Länge Null"
+
+#: option.c:5086
+#, fuzzy, c-format
+#~ msgid "E526: Missing number after <%s>"
+#~ msgstr "fehlende Zahl nach <%s>"
+
+#: option.c:5100
+#, fuzzy
+#~ msgid "E527: Missing comma"
+#~ msgstr "Komma fehlt"
+
+#: option.c:5107
+#, fuzzy
+#~ msgid "E528: Must specify a ' value"
+#~ msgstr "ein '-Wert muss angegeben werden"
+
+#: option.c:5148
+#, fuzzy
+#~ msgid "E595: contains unprintable or wide character"
+#~ msgstr "enthält nicht-druckbare Zeichen"
+
+#: option.c:5197
+#, fuzzy
+#~ msgid "E596: Invalid font(s)"
+#~ msgstr "Ungültiger Schriftsatz"
 
 # what's the difference ?
-#: option.c:4807
-msgid "can't select fontset"
-msgstr "\"fontset\" kann nicht eingestellt werden"
-
-#: option.c:4809
-msgid "Invalid fontset"
-msgstr "Ungültiger Fontset"
-
-#: option.c:4816
-msgid "can't select wide font"
-msgstr "Weiter Schriftart kann nicht engestellt werden"
-
-#: option.c:4818
-msgid "Invalid wide font"
-msgstr "Ungültiger weiter Schriftsatz"
-
-#: option.c:5088
-#, c-format
-msgid "Illegal character after <%c>"
-msgstr "Unzulässiges Zeichen nach <%c>"
-
-#: option.c:5171
-msgid "comma required"
-msgstr "Komma benötigt"
-
-#: option.c:5179
-#, c-format
-msgid "'commentstring' must be empty or contain %s"
-msgstr "'commentstring' muß leer sein, oder %s enthalten"
-
-#: option.c:5226
-msgid "No mouse support"
-msgstr "Keine Maus-Unterstützung"
+#: option.c:5205
+#, fuzzy
+#~ msgid "E597: can't select fontset"
+#~ msgstr "\"fontset\" kann nicht eingestellt werden"
+
+#: option.c:5207
+#, fuzzy
+#~ msgid "E598: Invalid fontset"
+#~ msgstr "Ungültiger Fontset"
+
+#: option.c:5214
+#, fuzzy
+#~ msgid "E533: can't select wide font"
+#~ msgstr "Weiter Schriftart kann nicht engestellt werden"
+
+#: option.c:5216
+#, fuzzy
+#~ msgid "E534: Invalid wide font"
+#~ msgstr "Ungültiger weiter Schriftsatz"
+
+#: option.c:5486
+#, fuzzy, c-format
+#~ msgid "E535: Illegal character after <%c>"
+#~ msgstr "Unzulässiges Zeichen nach <%c>"
+
+#: option.c:5597
+#, fuzzy
+#~ msgid "E536: comma required"
+#~ msgstr "Komma benötigt"
+
+#: option.c:5607
+#, fuzzy, c-format
+#~ msgid "E537: 'commentstring' must be empty or contain %s"
+#~ msgstr "'commentstring' muß leer sein, oder %s enthalten"
+
+#: option.c:5679
+#, fuzzy
+#~ msgid "E538: No mouse support"
+#~ msgstr "Keine Maus-Unterstützung"
 
 # XXX
-#: option.c:5475
-msgid "Unclosed expression sequence"
-msgstr "Nicht geschlossene Ausdrucks Folge"
-
-#: option.c:5479
-msgid "too many items"
-msgstr "zu viele Punkte"
-
-#: option.c:5481
-msgid "unbalanced groups"
-msgstr "nicht ausgewogene Gruppen"
-
-#: option.c:5696
-msgid "A preview window already exists"
-msgstr "Ein Fenster zur Voransicht existiert bereits"
-
-#: option.c:5957 option.c:5986
-msgid "'winheight' cannot be smaller than 'winminheight'"
-msgstr "'winheight' kann nicht kleiner sein als 'winminheight'"
-
-#: option.c:6002 option.c:6021
-msgid "'winwidth' cannot be smaller than 'winminwidth'"
-msgstr "'winwidth' kann nicht kleiner sein als 'winminwidth'"
-
-#: option.c:6162
-#, c-format
-msgid "Need at least %d lines"
-msgstr "mindestens %d Zeilen werden benötigt"
-
-#: option.c:6171
-#, c-format
-msgid "Need at least %d columns"
-msgstr "mindestens %d Spalten werden benötigt"
-
-#: option.c:6468
+#: option.c:5947
+#, fuzzy
+#~ msgid "E540: Unclosed expression sequence"
+#~ msgstr "Nicht geschlossene Ausdrucks Folge"
+
+#: option.c:5951
+#, fuzzy
+#~ msgid "E541: too many items"
+#~ msgstr "zu viele Punkte"
+
+#: option.c:5953
+#, fuzzy
+#~ msgid "E542: unbalanced groups"
+#~ msgstr "nicht ausgewogene Gruppen"
+
+#: option.c:6193
+#, fuzzy
+#~ msgid "E590: A preview window already exists"
+#~ msgstr "Ein Fenster zur Voransicht existiert bereits"
+
+#: option.c:6450
+#~ msgid "W17: Arabic requires UTF-8, do ':set encoding=utf-8'"
+#~ msgstr ""
+
+#: option.c:6783
+#, fuzzy, c-format
+#~ msgid "E593: Need at least %d lines"
+#~ msgstr "mindestens %d Zeilen werden benötigt"
+
+#: option.c:6793
+#, fuzzy, c-format
+#~ msgid "E594: Need at least %d columns"
+#~ msgstr "mindestens %d Spalten werden benötigt"
+
+#: option.c:7100
 #, c-format
 msgid "E355: Unknown option: %s"
 msgstr "E355: Unbekannte Option: %s"
 
-#: option.c:6577
+#: option.c:7220
 msgid ""
 "\n"
 "--- Terminal codes ---"
@@ -4381,7 +4772,7 @@ msgstr ""
 "\n"
 "--- Terminal Codes ---"
 
-#: option.c:6579
+#: option.c:7222
 msgid ""
 "\n"
 "--- Global option values ---"
@@ -4389,7 +4780,7 @@ msgstr ""
 "\n"
 "--- Werte globaler Optionen ---"
 
-#: option.c:6581
+#: option.c:7224
 msgid ""
 "\n"
 "--- Local option values ---"
@@ -4397,7 +4788,7 @@ msgstr ""
 "\n"
 "--- Werte lokaler Optionen ---"
 
-#: option.c:6583
+#: option.c:7226
 msgid ""
 "\n"
 "--- Options ---"
@@ -4405,161 +4796,152 @@ msgstr ""
 "\n"
 "--- Optionen ---"
 
-#: option.c:7272
+#: option.c:7932
 msgid "E356: get_varp ERROR"
 msgstr "E356: get_varp FEHLER"
 
-#: option.c:8230
+#: option.c:8903
 #, c-format
 msgid "E357: 'langmap': Matching character missing for %s"
 msgstr "E357: 'langmap': Passendes Zeichen fehlt für %s"
 
-#: option.c:8264
+#: option.c:8937
 #, c-format
 msgid "E358: 'langmap': Extra characters after semicolon: %s"
 msgstr "E358: 'langmap': Überschüssige Zeichen nach dem Semikolon: %s"
 
-#: os_amiga.c:273
+#: os_amiga.c:280
 msgid "cannot open "
 msgstr "kann nicht öffnen"
 
-#: os_amiga.c:307
+#: os_amiga.c:314
 msgid "VIM: Can't open window!\n"
 msgstr "VIM: Fenster kann nicht geöffnet werden!\n"
 
-#: os_amiga.c:329
+#: os_amiga.c:338
 msgid "Need Amigados version 2.04 or later\n"
 msgstr "Brauche Amigados Version 2.04 oder neuere\n"
 
-#: os_amiga.c:335
+#: os_amiga.c:344
 #, c-format
 msgid "Need %s version %ld\n"
 msgstr "Benötige %s Version %ld\n"
 
-#: os_amiga.c:407
+#: os_amiga.c:416
 msgid "Cannot open NIL:\n"
 msgstr "Kann NIL nicht öffnen:\n"
 
-#: os_amiga.c:418
+#: os_amiga.c:427
 msgid "Cannot create "
 msgstr "Kann nicht anlegen "
 
-#: os_amiga.c:896
+#: os_amiga.c:905
 #, c-format
 msgid "Vim exiting with %d\n"
 msgstr "Vim steigt aus mit %d\n"
 
-#: os_amiga.c:928
+#: os_amiga.c:941
 msgid "cannot change console mode ?!\n"
 msgstr "kann Konsolen Modus nicht wechseln ?!\n"
 
-#: os_amiga.c:938 os_mac.c:1177 os_mswin.c:629 os_riscos.c:757 os_unix.c:2803
-msgid "E359: Screen mode setting not supported"
-msgstr "E359: Bildschirm Modus wird nicht unterstützt"
-
-#: os_amiga.c:994
+#: os_amiga.c:1012
 msgid "mch_get_shellsize: not a console??\n"
 msgstr "mch_get_winsize: ist keine Konsole??\n"
 
 #. if Vim opened a window: Executing a shell may cause crashes
-#: os_amiga.c:1142
+#: os_amiga.c:1161
 msgid "E360: Cannot execute shell with -f option"
 msgstr "E360: Kann Shell nicht mit der -f Option aus führen"
 
-#: os_amiga.c:1183 os_amiga.c:1273
+#: os_amiga.c:1202 os_amiga.c:1292
 msgid "Cannot execute "
 msgstr "Kann nicht ausführen "
 
-#: os_amiga.c:1186 os_amiga.c:1283
+#: os_amiga.c:1205 os_amiga.c:1302
 msgid "shell "
 msgstr "Shell "
 
-#: os_amiga.c:1206 os_amiga.c:1308
+#: os_amiga.c:1225 os_amiga.c:1327
 msgid " returned\n"
 msgstr " zurückgegeben\n"
 
-#: os_amiga.c:1448
+#: os_amiga.c:1468
 msgid "ANCHOR_BUF_SIZE too small."
 msgstr "ANCHOR_BUF_SIZE zu klein."
 
-#: os_amiga.c:1452
+#: os_amiga.c:1472
 msgid "I/O ERROR"
 msgstr "I/O FEHLER"
 
-#: os_mswin.c:503
+#: os_mswin.c:539
 msgid "...(truncated)"
 msgstr "...(abgeschnitten)"
 
-#: os_mswin.c:604
+#: os_mswin.c:641
 msgid "'columns' is not 80, cannot execute external commands"
 msgstr "'columns' beträgt nicht 80, kann externe Befehle nicht ausführen"
 
-#: os_mswin.c:716 os_unix.c:5116
-#, c-format
-msgid "E364: Library call failed for \"%s()\""
-msgstr "E364: Bibliotheks-Aufruf für \"%s()\" schlug fehl"
-
-#: os_mswin.c:1365
+#: os_mswin.c:1973
 msgid "E237: Printer selection failed"
 msgstr "E237: Drucker-Auswahl fehlgeschlagen"
 
-#: os_mswin.c:1405
+#: os_mswin.c:2013
 #, c-format
 msgid "to %s on %s"
 msgstr "nach %s auf %s"
 
-#: os_mswin.c:1420
-#, c-format
-msgid "E448: Unknown font: %s"
-msgstr "E448: Unbekannte Schriftart: %s"
-
-#: os_mswin.c:1470 os_mswin.c:1480
+#: os_mswin.c:2028
+#, fuzzy, c-format
+#~ msgid "E613: Unknown printer font: %s"
+#~ msgstr "E113: Unbekannte Option: %s"
+
+#: os_mswin.c:2077 os_mswin.c:2087
 #, c-format
 msgid "E238: Print error: %s"
 msgstr "E238: Fehler beim Drucken: %s"
 
-#: os_mswin.c:1481
+#: os_mswin.c:2088
 msgid "Unknown"
 msgstr "Unbekannt"
 
-#: os_mswin.c:1508
+#: os_mswin.c:2115
 #, c-format
 msgid "Printing '%s'"
 msgstr "Drucke '%s'"
 
-#: os_mswin.c:2596
+#: os_mswin.c:3204
 #, c-format
 msgid "E244: Illegal charset name \"%s\" in font name \"%s\""
 msgstr "E244: Unzulässiger Zeichensatz-Name \"%s\" im Schriftart-Namen \"%s\""
 
-#: os_mswin.c:2604
+#: os_mswin.c:3212
 #, c-format
 msgid "E245: Illegal char '%c' in font name \"%s\""
 msgstr "E245: Unzulässiges Zeichen '%c' in der Schriftart \"%s\""
 
-#: os_riscos.c:1256
+#: os_riscos.c:1259
 msgid "E366: Invalid 'osfiletype' option - using Text"
 msgstr "E366: Unzulässige 'osfiletype'-Option - verwende Text"
 
-#: os_unix.c:862
+#: os_unix.c:927
 msgid "Vim: Double signal, exiting\n"
 msgstr "Vim: Doppel-Signal, beenden\n"
 
-#: os_unix.c:868
+#: os_unix.c:933
 #, c-format
 msgid "Vim: Caught deadly signal %s\n"
 msgstr "Vim: Erhielt tödliches Signal %s\n"
 
-#: os_unix.c:871
+#: os_unix.c:936
 msgid "Vim: Caught deadly signal\n"
 msgstr "Vim: Erhielt tödliches Signal\n"
 
-#: os_unix.c:1125
+#: os_unix.c:1199
 #, c-format
 msgid "Opening the X display took %ld msec"
 msgstr "Öffnen des X-Displays dauerte %ld msec"
 
-#: os_unix.c:1152
+#: os_unix.c:1226
 msgid ""
 "\n"
 "Vim: Got X error\n"
@@ -4567,15 +4949,15 @@ msgstr ""
 "\n"
 "Vim: ein X11 Fehler trat auf\n"
 
-#: os_unix.c:1219
+#: os_unix.c:1336
 msgid "Testing the X display failed"
 msgstr "Test des X-Displays schlug fehl"
 
-#: os_unix.c:1363
+#: os_unix.c:1475
 msgid "Opening the X display timed out"
 msgstr "Zeitüberschreitung während des Öffnens des X-Displays"
 
-#: os_unix.c:2976 os_unix.c:3634
+#: os_unix.c:3232 os_unix.c:3912
 msgid ""
 "\n"
 "Cannot execute shell "
@@ -4583,7 +4965,7 @@ msgstr ""
 "\n"
 "Shell kann nicht ausführt werden "
 
-#: os_unix.c:3021
+#: os_unix.c:3280
 msgid ""
 "\n"
 "Cannot execute shell sh\n"
@@ -4591,7 +4973,7 @@ msgstr ""
 "\n"
 "Shell sh kann nicht ausführt werden\n"
 
-#: os_unix.c:3025 os_unix.c:3640
+#: os_unix.c:3284 os_unix.c:3918
 msgid ""
 "\n"
 "shell returned "
@@ -4599,7 +4981,7 @@ msgstr ""
 "\n"
 "Shell beendet "
 
-#: os_unix.c:3159
+#: os_unix.c:3419
 msgid ""
 "\n"
 "Cannot create pipes\n"
@@ -4607,7 +4989,7 @@ msgstr ""
 "\n"
 "Pipes können nicht angelegt werden\n"
 
-#: os_unix.c:3174
+#: os_unix.c:3434
 msgid ""
 "\n"
 "Cannot fork\n"
@@ -4615,7 +4997,7 @@ msgstr ""
 "\n"
 "'fork' schlug fehl\n"
 
-#: os_unix.c:3647
+#: os_unix.c:3925
 msgid ""
 "\n"
 "Command terminated\n"
@@ -4623,53 +5005,80 @@ msgstr ""
 "\n"
 "Befehl beendet\n"
 
-#: os_unix.c:5164
+#: os_unix.c:4189 os_unix.c:4314 os_unix.c:5980
+#, fuzzy
+#~ msgid "XSMP lost ICE connection"
+#~ msgstr "Verbindungen anzeigen"
+
+#: os_unix.c:5563
 msgid "Opening the X display failed"
 msgstr "Öffnen des X-Displays schlug fehl"
 
+#: os_unix.c:5885
+#~ msgid "XSMP handling save-yourself request"
+#~ msgstr ""
+
+#: os_unix.c:6004
+#, fuzzy
+#~ msgid "XSMP opening connection"
+#~ msgstr "keine Verbindungen zu cscope"
+
+#: os_unix.c:6023
+#~ msgid "XSMP ICE connection watch failed"
+#~ msgstr ""
+
+#: os_unix.c:6043
+#, c-format
+#~ msgid "XSMP SmcOpenConnection failed: %s"
+#~ msgstr ""
+
 #: os_vms_mms.c:59
 msgid "At line"
 msgstr "In Zeile"
 
-#: os_w32exe.c:169
-msgid "Could not load vim32.dll!"
-msgstr "Konnte vim32.dll nicht laden!"
-
-#: os_w32exe.c:169 os_w32exe.c:179
+#: os_w32exe.c:65
+#~ msgid "Could not allocate memory for command line."
+#~ msgstr ""
+
+#: os_w32exe.c:66 os_w32exe.c:89 os_w32exe.c:100
 msgid "VIM Error"
 msgstr "VIM Fehler"
 
-#: os_w32exe.c:179
+#: os_w32exe.c:89
+msgid "Could not load vim32.dll!"
+msgstr "Konnte vim32.dll nicht laden!"
+
+#: os_w32exe.c:99
 msgid "Could not fix up function pointers to the DLL!"
 msgstr "Konnte Funktions-Zeiger in der DLL nicht korrigieren!"
 
-#: os_win16.c:578 os_win32.c:3037
+#: os_win16.c:342 os_win32.c:3248
 #, c-format
 msgid "shell returned %d"
 msgstr "Shell gab %d zurück"
 
-#: os_win32.c:2505
+#: os_win32.c:2706
 #, c-format
 msgid "Vim: Caught %s event\n"
 msgstr "Vim: Fing Ereignis %s ein\n"
 
-#: os_win32.c:2507
+#: os_win32.c:2708
 msgid "close"
 msgstr "schließe"
 
-#: os_win32.c:2509
+#: os_win32.c:2710
 msgid "logoff"
 msgstr "aus-loggen"
 
-#: os_win32.c:2510
+#: os_win32.c:2711
 msgid "shutdown"
 msgstr "beenden"
 
-#: os_win32.c:2991
+#: os_win32.c:3201
 msgid "E371: Command not found"
 msgstr "E371: Befehl nicht gefunden"
 
-#: os_win32.c:3004
+#: os_win32.c:3214
 msgid ""
 "VIMRUN.EXE not found in your $PATH.\n"
 "External commands will not pause after completion.\n"
@@ -4677,290 +5086,406 @@ msgid ""
 msgstr ""
 "VIMRUN.EXE wurde im Pfad $PATH nicht gefunden.\n"
 "Externe Befehle werden nach Ausführung nicht anhalten.\n"
-"Siehe  :help win32-vimrun  für mehr Information."
-
-#: os_win32.c:3007
+"Siehe  :help win32-vimrun  für weitere Informationen."
+
+#: os_win32.c:3217
 msgid "Vim Warning"
 msgstr "Vim Warnung"
 
-#: quickfix.c:281
+#: quickfix.c:258
 #, c-format
 msgid "E372: Too many %%%c in format string"
 msgstr "E372: Zu viele %%%c im Format"
 
-#: quickfix.c:294
+#: quickfix.c:271
 #, c-format
 msgid "E373: Unexpected %%%c in format string"
 msgstr "E373: Unerwartetes %%%c im Format"
 
-#: quickfix.c:348
+#: quickfix.c:325
 msgid "E374: Missing ] in format string"
 msgstr "E374: fehlendes ] im Format"
 
-#: quickfix.c:362
+#: quickfix.c:339
 #, c-format
 msgid "E375: Unsupported %%%c in format string"
 msgstr "E375: %%%c wird im Format nicht unterstützt"
 
-#: quickfix.c:380
+#: quickfix.c:357
 #, c-format
 msgid "E376: Invalid %%%c in format string prefix"
 msgstr "E376: Unzulässiges %%%c im Prefix des Formats"
 
-#: quickfix.c:388
+#: quickfix.c:365
 #, c-format
 msgid "E377: Invalid %%%c in format string"
 msgstr "E377: Unzulässiges %%%c im Format"
 
-#: quickfix.c:414
+#: quickfix.c:391
 msgid "E378: 'errorformat' contains no pattern"
 msgstr "E378: 'errorformat' enthält kein Muster"
 
-#: quickfix.c:520
+#: quickfix.c:501
 msgid "E379: Missing or empty directory name"
 msgstr "E379: Fehlender oder leerer Verzeichnisname"
 
-#: quickfix.c:931
-msgid "No more items"
-msgstr "Keine weiteren Punkte"
-
-#: quickfix.c:1152
+#: quickfix.c:990
+#, fuzzy
+#~ msgid "E553: No more items"
+#~ msgstr "Keine weiteren Punkte"
+
+#: quickfix.c:1229
 #, c-format
 msgid "(%d of %d)%s%s: "
 msgstr "(%d aus %d)%s%s: "
 
-#: quickfix.c:1154
+#: quickfix.c:1231
 msgid " (line deleted)"
 msgstr " (Zeile gelöscht)"
 
-#: quickfix.c:1360
+#: quickfix.c:1444
 msgid "E380: At bottom of quickfix stack"
 msgstr "E380: Am Anfang der quickfix Liste"
 
-#: quickfix.c:1369
+#: quickfix.c:1453
 msgid "E381: At top of quickfix stack"
 msgstr "E381: An Ende der quickfix Liste"
 
-#: quickfix.c:1381
+#: quickfix.c:1465
 #, c-format
 msgid "error list %d of %d; %d errors"
 msgstr "Fehlerliste %d aus %d; %d Fehler"
 
-#: quickfix.c:1842
+#: quickfix.c:1943
 msgid "E382: Cannot write, 'buftype' option is set"
 msgstr "E382: Kann nicht schreiben, 'buftype'-Option ist gesetzt"
 
-#: regexp.c:822
+#: regexp.c:319
+#, fuzzy, c-format
+#~ msgid "E369: invalid item in %s%%[]"
+#~ msgstr "E239: Ungültiger Text für ein Zeichen: %s"
+
+#: regexp.c:838
 msgid "E339: Pattern too long"
 msgstr "E339: Muster zu lang"
 
-#: regexp.c:1339
+#: regexp.c:1009
+#, fuzzy
+#~ msgid "E50: Too many \\z("
+#~ msgstr "E76: zu viele ["
+
+#: regexp.c:1020
+#, fuzzy, c-format
+#~ msgid "E51: Too many %s("
+#~ msgstr "E76: zu viele ["
+
+#: regexp.c:1077
+#~ msgid "E52: Unmatched \\z("
+#~ msgstr ""
+
+#: regexp.c:1081
+#, c-format
+#~ msgid "E53: Unmatched %s%%("
+#~ msgstr ""
+
+#: regexp.c:1083
+#, fuzzy, c-format
+#~ msgid "E54: Unmatched %s("
+#~ msgstr "Kein Treffer für: %s"
+
+#: regexp.c:1088
+#, fuzzy, c-format
+#~ msgid "E55: Unmatched %s)"
+#~ msgstr "Kein Treffer für: %s"
+
+#: regexp.c:1258
+#, c-format
+#~ msgid "E56: %s* operand could be empty"
+#~ msgstr ""
+
+#: regexp.c:1261
+#, c-format
+#~ msgid "E57: %s+ operand could be empty"
+#~ msgstr ""
+
+#: regexp.c:1316
+#, fuzzy, c-format
+#~ msgid "E59: invalid character after %s@"
+#~ msgstr "E215: Unzulässiges Zeichen nach *: %s"
+
+#: regexp.c:1344
+#, c-format
+#~ msgid "E58: %s{ operand could be empty"
+#~ msgstr ""
+
+#: regexp.c:1354
+#, c-format
+#~ msgid "E60: Too many complex %s{...}s"
+#~ msgstr ""
+
+#: regexp.c:1370
 #, c-format
 msgid "E61: Nested %s*"
 msgstr "E61: Verschachteltes %s*"
 
-#: regexp.c:1342
+#: regexp.c:1373
 #, c-format
 msgid "E62: Nested %s%c"
 msgstr "E62: Verschachteltes %s%c"
 
-#: regexp.c:1493
+#: regexp.c:1491
+#, fuzzy
+#~ msgid "E63: invalid use of \\_"
+#~ msgstr "E176: Falsche Anzahl von Argumenten"
+
+#: regexp.c:1536
 #, c-format
 msgid "E64: %s%c follows nothing"
 msgstr "E64: %s%c nach Nichts"
 
-#: regexp.c:2510
-#, c-format
-msgid "Syntax error in %s{...}"
-msgstr "Syntax Fehler in %s{...}"
-
-#: regexp.c:2757
+#: regexp.c:1592
+#, fuzzy
+#~ msgid "E65: Illegal back reference"
+#~ msgstr "E125: Unzulässiges Argument: %s"
+
+#: regexp.c:1605
+#, fuzzy
+#~ msgid "E66: \\z( not allowed here"
+#~ msgstr "E407: %s ist hier nicht erlaubt"
+
+#: regexp.c:1624
+#, fuzzy
+#~ msgid "E67: \\z1 et al. not allowed here"
+#~ msgstr "E407: %s ist hier nicht erlaubt"
+
+#: regexp.c:1635
+#, fuzzy
+#~ msgid "E68: Invalid character after \\z"
+#~ msgstr "E215: Unzulässiges Zeichen nach *: %s"
+
+#: regexp.c:1684
+#, fuzzy, c-format
+#~ msgid "E69: Missing ] after %s%%["
+#~ msgstr "E109: fehlender ':' nach '?'"
+
+#: regexp.c:1700
+#, c-format
+#~ msgid "E70: Empty %s%%[]"
+#~ msgstr ""
+
+#: regexp.c:1760
+#, fuzzy, c-format
+#~ msgid "E71: Invalid character after %s%%"
+#~ msgstr "E215: Unzulässiges Zeichen nach *: %s"
+
+#: regexp.c:2557
+#, fuzzy, c-format
+#~ msgid "E554: Syntax error in %s{...}"
+#~ msgstr "Syntax Fehler in %s{...}"
+
+#: regexp.c:2863 regexp.c:3016
 msgid "E361: Crash intercepted; regexp too complex?"
 msgstr "E361: Absturz verhindert; Ist der reguläre Ausdruck zu kompliziert?"
 
-#: regexp.c:2892
+#: regexp.c:3004 regexp.c:3013
 msgid "E363: pattern caused out-of-stack error"
 msgstr "E363: Muster erzeugte einen Stapel-Überlauf-Fehler"
 
-#: regexp.c:3128
+#: regexp.c:3258
 msgid "External submatches:\n"
 msgstr "externe 'submatches':\n"
 
-#: screen.c:2063
+#: screen.c:2184
 #, c-format
 msgid "+--%3ld lines folded "
 msgstr "+--%3ld Zeilen gefaltet "
 
-#: screen.c:7535
+#: screen.c:7996
 msgid " VREPLACE"
 msgstr " V-ERSETZEN"
 
-#: screen.c:7539
+#: screen.c:8000
 msgid " REPLACE"
 msgstr " ERSETZEN"
 
-#: screen.c:7544
+#: screen.c:8005
 msgid " REVERSE"
 msgstr " INVERTIERT"
 
-#: screen.c:7546
+#: screen.c:8007
 msgid " INSERT"
 msgstr " EINFÜGEN"
 
-#: screen.c:7549
+#: screen.c:8010
 msgid " (insert)"
 msgstr " (einfügen)"
 
-#: screen.c:7551
+#: screen.c:8012
 msgid " (replace)"
 msgstr " (ersetzen)"
 
-#: screen.c:7553
+#: screen.c:8014
 msgid " (vreplace)"
 msgstr " (v-ersetzen)"
 
-#: screen.c:7556
+#: screen.c:8017
 msgid " Hebrew"
 msgstr " Hebräisch"
 
-#: screen.c:7564
+#: screen.c:8028
+#~ msgid " Arabic"
+#~ msgstr ""
+
+#: screen.c:8031
 msgid " (lang)"
 msgstr " (Sprache)"
 
 # einkleben ist echt Scheiße, aber einfügen
 # gibts schon ...
-#: screen.c:7567
+#: screen.c:8035
 msgid " (paste)"
 msgstr " (einkleben)"
 
-#: screen.c:7573
-msgid " SELECT"
-msgstr " AUSWAHL"
-
-#: screen.c:7575
+#: screen.c:8048
 msgid " VISUAL"
 msgstr " VISUELL"
 
-#: screen.c:7577
-msgid " BLOCK"
-msgstr "ER BLOCK"
-
-#: screen.c:7579
-msgid " LINE"
-msgstr "E ZEILE"
-
-#: screen.c:7592 screen.c:7652
+#: screen.c:8049
+#, fuzzy
+#~ msgid " VISUAL LINE"
+#~ msgstr " VISUELL"
+
+#: screen.c:8050
+#, fuzzy
+#~ msgid " VISUAL BLOCK"
+#~ msgstr " VISUELL"
+
+#: screen.c:8051
+msgid " SELECT"
+msgstr " AUSWAHL"
+
+#: screen.c:8052
+#, fuzzy
+#~ msgid " SELECT LINE"
+#~ msgstr " AUSWAHL"
+
+#: screen.c:8053
+#, fuzzy
+#~ msgid " SELECT BLOCK"
+#~ msgstr " AUSWAHL"
+
+#: screen.c:8068 screen.c:8131
 msgid "recording"
 msgstr "aufzeichnen"
 
-#: search.c:36
+#: search.c:37
 msgid "search hit TOP, continuing at BOTTOM"
 msgstr "Suche erreichte den ANFANG und wurde am ENDE fortgesetzt"
 
-#: search.c:37
+#: search.c:38
 msgid "search hit BOTTOM, continuing at TOP"
 msgstr "Suche erreichte das ENDE und wurde am ANFANG fortgesetzt"
 
-#: search.c:455
+#: search.c:526
 #, c-format
 msgid "E383: Invalid search string: %s"
 msgstr "E383: Unzulässiges Suchmuster: %s"
 
-#: search.c:782
+#: search.c:853
 #, c-format
 msgid "E384: search hit TOP without match for: %s"
 msgstr "E384: Suche erreichte den ANFANG ohne Treffer für: %s"
 
-#: search.c:784
+#: search.c:856
 #, c-format
 msgid "E385: search hit BOTTOM without match for: %s"
 msgstr "E385: Suche erreichte das ENDE ohne Treffer für: %s"
 
-#: search.c:1157
+#: search.c:1249
 msgid "E386: Expected '?' or '/'  after ';'"
 msgstr "E386: Erwarte '?' oder '/'  nach ';'"
 
-#: search.c:3537
+#: search.c:3759
 msgid " (includes previously listed match)"
 msgstr " (enthält bereits vorher aufgezählte Treffer)"
 
 #. cursor at status line
-#: search.c:3557
+#: search.c:3779
 msgid "--- Included files "
 msgstr "--- Eingefügte Dateien "
 
-#: search.c:3559
+#: search.c:3781
 msgid "not found "
 msgstr "nicht gefunden "
 
-#: search.c:3560
+#: search.c:3782
 msgid "in path ---\n"
 msgstr "im Pfad ---\n"
 
-#: search.c:3599
+#: search.c:3839
 msgid "  (Already listed)"
 msgstr "  (Bereits aufgelistet)"
 
-#: search.c:3601
+#: search.c:3841
 msgid "  NOT FOUND"
 msgstr "  NICHT GEFUNDEN"
 
-#: search.c:3653
+#: search.c:3893
 #, c-format
 msgid "Scanning included file: %s"
 msgstr "Scanne eingefügte Datei: %s"
 
-#: search.c:3871
+#: search.c:4111
 msgid "E387: Match is on current line"
 msgstr "E387: Treffer ist auf der momentanen Zeile"
 
-#: search.c:4011
+#: search.c:4254
 msgid "All included files were found"
 msgstr "Alle eingefügten Dateien wurden gefunden"
 
-#: search.c:4013
+#: search.c:4256
 msgid "No included files"
 msgstr "Keine eingefügten Dateien"
 
-#: search.c:4029
+#: search.c:4272
 msgid "E388: Couldn't find definition"
 msgstr "E388: Definition konnte nicht gefunden werden"
 
-#: search.c:4031
+#: search.c:4274
 msgid "E389: Couldn't find pattern"
 msgstr "E389: Muster konnte nicht gefunden werden"
 
-#: syntax.c:2999
+#: syntax.c:3050
 #, c-format
 msgid "E390: Illegal argument: %s"
 msgstr "E390: Unzulässiges Argument: %s"
 
-#: syntax.c:3179
+#: syntax.c:3230
 #, c-format
 msgid "E391: No such syntax cluster: %s"
 msgstr "E391: Kein solches Syntax-Cluster: %s"
 
-#: syntax.c:3343
+#: syntax.c:3394
 msgid "No Syntax items defined for this buffer"
 msgstr "Keine Syntax-Elemente definiert für diesen Puffer"
 
-#: syntax.c:3351
+#: syntax.c:3402
 msgid "syncing on C-style comments"
 msgstr "Synchronisation an C-Stil Kommentaren"
 
-#: syntax.c:3359
+#: syntax.c:3410
 msgid "no syncing"
 msgstr "keine Synchronisation"
 
-#: syntax.c:3362
+#: syntax.c:3413
 msgid "syncing starts "
 msgstr "Synchronisation beginnt "
 
-#: syntax.c:3364 syntax.c:3439
+#: syntax.c:3415 syntax.c:3490
 msgid " lines before top line"
 msgstr " Zeilen vor der obersten Zeile"
 
-#: syntax.c:3369
+#: syntax.c:3420
 msgid ""
 "\n"
 "--- Syntax sync items ---"
@@ -4968,7 +5493,7 @@ msgstr ""
 "\n"
 "--- Syntax Synchronisations-Elemente ---"
 
-#: syntax.c:3374
+#: syntax.c:3425
 msgid ""
 "\n"
 "syncing on items"
@@ -4976,7 +5501,7 @@ msgstr ""
 "\n"
 "Synchronisation an Elementen"
 
-#: syntax.c:3380
+#: syntax.c:3431
 msgid ""
 "\n"
 "--- Syntax items ---"
@@ -4984,200 +5509,213 @@ msgstr ""
 "\n"
 "--- Satzbau Elemente ---"
 
-#: syntax.c:3403
+#: syntax.c:3454
 #, c-format
 msgid "E392: No such syntax cluster: %s"
 msgstr "E392: Kein solches Syntax-Cluster: %s"
 
-#: syntax.c:3429
+#: syntax.c:3480
 msgid "minimal "
 msgstr "minimal "
 
-#: syntax.c:3436
+#: syntax.c:3487
 msgid "maximal "
 msgstr "maximal "
 
-#: syntax.c:3448
+#: syntax.c:3499
 msgid "; match "
 msgstr "; Treffer "
 
-#: syntax.c:3450
+#: syntax.c:3501
 msgid " line breaks"
 msgstr " Zeilen-Umbrüche"
 
-#: syntax.c:4078
+#: syntax.c:4135
 msgid "E393: group[t]here not accepted here"
 msgstr "E393: \"group[t]here\" ist an dieser Stelle ungültig"
 
-#: syntax.c:4102
+#: syntax.c:4159
 #, c-format
 msgid "E394: Didn't find region item for %s"
 msgstr "E394: \"region\"-Element für \"%s\" konnte nicht gefunden werden"
 
-#: syntax.c:4130
+#: syntax.c:4187
 msgid "E395: contains argument not accepted here"
 msgstr "E395: \"contains\"-Argument ist an dieser Stelle ungültig"
 
-#: syntax.c:4141
+#: syntax.c:4198
 msgid "E396: containedin argument not accepted here"
 msgstr "E396: \"containedin\"-Argument ist an dieser Stelle ungültig"
 
-#: syntax.c:4219
+#: syntax.c:4276
 msgid "E397: Filename required"
 msgstr "E397: Dateiname wird benötigt"
 
-#: syntax.c:4557
+#: syntax.c:4614
 #, c-format
 msgid "E398: Missing '=': %s"
 msgstr "E398: Fehlendes '=': %s"
 
-#: syntax.c:4715
+#: syntax.c:4772
 #, c-format
 msgid "E399: Not enough arguments: syntax region %s"
 msgstr "E399: Nicht ausreichend viele Argumente: syntax region %s"
 
-#: syntax.c:5046
+#: syntax.c:5103
 msgid "E400: No cluster specified"
 msgstr "E400: Kein Cluster angegeben"
 
-#: syntax.c:5083
+#: syntax.c:5140
 #, c-format
 msgid "E401: Pattern delimiter not found: %s"
 msgstr "E401: Muster Abgrenzer nicht gefunden: %s"
 
-#: syntax.c:5158
+#: syntax.c:5215
 #, c-format
 msgid "E402: Garbage after pattern: %s"
 msgstr "E402: Schrott nach Muster: %s"
 
-#: syntax.c:5245
+#: syntax.c:5305
 msgid "E403: syntax sync: line continuations pattern specified twice"
 msgstr "E403: syntax sync: Zeilen Fortsetzungs Muster zweifach angegeben"
 
-#: syntax.c:5302
+#: syntax.c:5362
 #, c-format
 msgid "E404: Illegal arguments: %s"
 msgstr "E404: Unzulässige Argumente; %s"
 
-#: syntax.c:5352
+#: syntax.c:5412
 #, c-format
 msgid "E405: Missing equal sign: %s"
 msgstr "E405: Gleichheitszeichen fehlt: %s"
 
-#: syntax.c:5358
+#: syntax.c:5418
 #, c-format
 msgid "E406: Empty argument: %s"
 msgstr "E406: Leeres Argument: %s"
 
-#: syntax.c:5385
+#: syntax.c:5445
 #, c-format
 msgid "E407: %s not allowed here"
 msgstr "E407: %s ist hier nicht erlaubt"
 
-#: syntax.c:5392
+#: syntax.c:5452
 #, c-format
 msgid "E408: %s must be first in contains list"
 msgstr ""
 "E408: %s muss als Erstes in der Liste der enthaltenen Elemente auftreten"
 
-#: syntax.c:5462
+#: syntax.c:5522
 #, c-format
 msgid "E409: Unknown group name: %s"
 msgstr "E409: Unbekannter Gruppen-Name: %s"
 
-#: syntax.c:5692
+#: syntax.c:5755
 #, c-format
 msgid "E410: Invalid :syntax subcommand: %s"
 msgstr "E410: Ungültiger :syntax Befehl: %s"
 
-#: syntax.c:6071
+#: syntax.c:6136
 #, c-format
 msgid "E411: highlight group not found: %s"
 msgstr "E411: Hervorhebungs-Gruppe nicht gefunden: %s"
 
-#: syntax.c:6095
+#: syntax.c:6160
 #, c-format
 msgid "E412: Not enough arguments: \":highlight link %s\""
 msgstr "E412: Nicht ausreichend viele Argumente: \":highlight link %s\""
 
-#: syntax.c:6102
+#: syntax.c:6167
 #, c-format
 msgid "E413: Too many arguments: \":highlight link %s\""
 msgstr "E412: Zu viele Argumente: \":highlight link %s\""
 
-#: syntax.c:6122
+#: syntax.c:6187
 msgid "E414: group has settings, highlight link ignored"
 msgstr "E414: Gruppe hat Einstellungen, Unterstreichungs Link ignoriert"
 
-#: syntax.c:6251
+#: syntax.c:6316
 #, c-format
 msgid "E415: unexpected equal sign: %s"
 msgstr "E415: unerwartetes Gleichheitszeichen: %s"
 
-#: syntax.c:6287
+#: syntax.c:6352
 #, c-format
 msgid "E416: missing equal sign: %s"
 msgstr "E416: fehlendes Gleichheitszeichen: %s"
 
-#: syntax.c:6309
+#: syntax.c:6380
 #, c-format
 msgid "E417: missing argument: %s"
 msgstr "E417: fehlendes Argument: %s"
 
-#: syntax.c:6346
+#: syntax.c:6417
 #, c-format
 msgid "E418: Illegal value: %s"
 msgstr "E418: Unzulässiger Wert: %s"
 
-#: syntax.c:6465
+#: syntax.c:6536
 msgid "E419: FG color unknown"
 msgstr "E419: FG Farbe unbekannt"
 
-#: syntax.c:6476
+#: syntax.c:6547
 msgid "E420: BG color unknown"
 msgstr "E420: BG Farbe unbekannt"
 
-#: syntax.c:6537
+#: syntax.c:6608
 #, c-format
 msgid "E421: Color name or number not recognized: %s"
 msgstr "E421: Unbekannte Farb-Bezeichnung oder -Nummer: %s"
 
-#: syntax.c:6745
+#: syntax.c:6814
 #, c-format
 msgid "E422: terminal code too long: %s"
 msgstr "E422: Terminal-Code zu lang: %s"
 
-#: syntax.c:6792
+#: syntax.c:6861
 #, c-format
 msgid "E423: Illegal argument: %s"
 msgstr "E423: Unzulässiges Argument: %s"
 
-#: syntax.c:7321
+#: syntax.c:7390
 msgid "E424: Too many different highlighting attributes in use"
 msgstr "E424: Zu viele verschieden Hervorhebungs-Attribute in Gebrauch"
 
+#: syntax.c:7911
+#~ msgid "E669: Unprintable character in group name"
+#~ msgstr ""
+
+#. This is an error, but since there previously was no check only
+#. * give a warning.
+#: syntax.c:7918
+#, fuzzy
+#~ msgid "W18: Invalid character in group name"
+#~ msgstr "E182: Ungültiger Befehls-Name"
+
 #: tag.c:90
-msgid "at bottom of tag stack"
-msgstr "am Anfang der Tag-Liste"
+#, fuzzy
+#~ msgid "E555: at bottom of tag stack"
+#~ msgstr "am Anfang der Tag-Liste"
 
 #: tag.c:91
-msgid "at top of tag stack"
-msgstr "am Ende der Tag-Liste"
-
-#: tag.c:392
+#, fuzzy
+#~ msgid "E556: at top of tag stack"
+#~ msgstr "am Ende der Tag-Liste"
+
+#: tag.c:412
 msgid "E425: Cannot go before first matching tag"
 msgstr "E425: Kann nicht vor den ersten passenden Tag hinausgehen"
 
-#: tag.c:512
+#: tag.c:550
 #, c-format
 msgid "E426: tag not found: %s"
 msgstr "E426: Tag \"%s\" konnte nicht gefunden werden"
 
-#: tag.c:545
+#: tag.c:583
 msgid "  # pri kind tag"
 msgstr "   # pri verw. tag"
 
-#: tag.c:548
+#: tag.c:586
 msgid "file\n"
 msgstr "Datei\n"
 
@@ -5185,44 +5723,44 @@ msgstr "Datei\n"
 #. * Ask to select a tag from the list.
 #. * When using ":silent" assume that <CR> was entered.
 #.
-#: tag.c:706
+#: tag.c:744
 msgid "Enter nr of choice (<CR> to abort): "
 msgstr "Gewünschte Nummer (abbrechen mit <CR>): "
 
-#: tag.c:746
+#: tag.c:784
 msgid "E427: There is only one matching tag"
 msgstr "E427: Es gibt nur einen passenden Tag"
 
-#: tag.c:748
+#: tag.c:786
 msgid "E428: Cannot go beyond last matching tag"
 msgstr "E428: Kann nicht über den letzten passenden Tag hinausgehen"
 
-#: tag.c:768
+#: tag.c:810
 #, c-format
 msgid "File \"%s\" does not exist"
 msgstr "Die Datei \"%s\" existiert nicht"
 
 #. Give an indication of the number of matching tags
-#: tag.c:780
+#: tag.c:823
 #, c-format
 msgid "tag %d of %d%s"
 msgstr "Tag %d aus %d%s"
 
-#: tag.c:783
+#: tag.c:826
 msgid " or more"
 msgstr " oder mehr"
 
-#: tag.c:785
+#: tag.c:828
 msgid "  Using tag with different case!"
 msgstr "  Verwendung eines Tags mit abgewandelter Groß/Klein-Schreibung"
 
-#: tag.c:828
+#: tag.c:872
 #, c-format
 msgid "E429: File \"%s\" does not exist"
 msgstr "E429: Die Datei \"%s\" existiert nicht"
 
 #. Highlight title
-#: tag.c:897
+#: tag.c:941
 msgid ""
 "\n"
 "  # TO tag         FROM line  in file/text"
@@ -5230,84 +5768,79 @@ msgstr ""
 "\n"
 "  # NACH TAG       VON Zeile  in Datei/Text"
 
-#: tag.c:1144
-msgid "Linear tag search"
-msgstr "Lineare Tag-Suche"
-
-#: tag.c:1146
-msgid "Binary tag search"
-msgstr "Binäre Tag-Suche"
-
-#: tag.c:1172
+#: tag.c:1363
 #, c-format
 msgid "Searching tags file %s"
 msgstr "tags file %s wird durchsucht"
 
-#: tag.c:1356
+#: tag.c:1550
 #, c-format
 msgid "E430: Tag file path truncated for %s\n"
 msgstr "E430: Tag-Dateipfad wurde abgeschnitten für %s\n"
 
-#: tag.c:1847
+#: tag.c:2203
 #, c-format
 msgid "E431: Format error in tags file \"%s\""
 msgstr "E431: Format Fehler in Tag-Datei \"%s\""
 
-#: tag.c:1851
+#: tag.c:2207
 #, c-format
 msgid "Before byte %ld"
 msgstr "vor byte %ld"
 
-#: tag.c:1872
+#: tag.c:2240
 #, c-format
 msgid "E432: Tags file not sorted: %s"
 msgstr "E432: Tag-Datei ist nicht sortiert: %s"
 
 #. never opened any tags file
-#: tag.c:1911
+#: tag.c:2280
 msgid "E433: No tags file"
 msgstr "E433: Keine Tag-Datei"
 
-#: tag.c:2583
+#: tag.c:3016
 msgid "E434: Can't find tag pattern"
 msgstr "E434: Tag-Muster kann nicht gefunden werden"
 
-#: tag.c:2594
+#: tag.c:3027
 msgid "E435: Couldn't find tag, just guessing!"
 msgstr "E435: Tag konnte nicht gefunden werden, das ist nur eine Vermutung!"
 
-#: term.c:1737
+#: term.c:1759
 msgid "' not known. Available builtin terminals are:"
 msgstr ""
 "' nicht bekannt. Zur Verfügung stehen die folgenden eingebauten Terminals:"
 
-#: term.c:1761
+#: term.c:1783
 msgid "defaulting to '"
 msgstr "Voreinstellung '"
 
-#: term.c:2114
-msgid "Cannot open termcap file"
-msgstr "termpcap-Datei kann nicht geöffnet werden"
-
-#: term.c:2117
-msgid "Terminal entry not found in terminfo"
-msgstr "Terminal-Eintrag konnte in der terminfo-Datei nicht gefunden werden"
-
-#: term.c:2119
-msgid "Terminal entry not found in termcap"
-msgstr "Terminal-Eintrag konnte in der termcap-Datei nicht gefunden werden"
-
-#: term.c:2278
+#: term.c:2141
+#, fuzzy
+#~ msgid "E557: Cannot open termcap file"
+#~ msgstr "termpcap-Datei kann nicht geöffnet werden"
+
+#: term.c:2145
+#, fuzzy
+#~ msgid "E558: Terminal entry not found in terminfo"
+#~ msgstr "Terminal-Eintrag konnte in der terminfo-Datei nicht gefunden werden"
+
+#: term.c:2147
+#, fuzzy
+#~ msgid "E559: Terminal entry not found in termcap"
+#~ msgstr "Terminal-Eintrag konnte in der termcap-Datei nicht gefunden werden"
+
+#: term.c:2306
 #, c-format
 msgid "E436: No \"%s\" entry in termcap"
 msgstr "E436: Kein \"%s\" Eintrag in termcap"
 
-#: term.c:2752
+#: term.c:2780
 msgid "E437: terminal capability \"cm\" required"
 msgstr "E437: Terminal-Fähigkeit \"cm\" wird benötigt"
 
 #. Highlight title
-#: term.c:4891
+#: term.c:4990
 msgid ""
 "\n"
 "--- Terminal keys ---"
@@ -5315,43 +5848,43 @@ msgstr ""
 "\n"
 "--- Terminal Tasten ---"
 
-#: ui.c:251
+#: ui.c:258
 msgid "new shell started\n"
 msgstr "neue Shell gestartet\n"
 
-#: ui.c:1747
+#: ui.c:1841
 msgid "Vim: Error reading input, exiting...\n"
 msgstr "Vim: Fehler beim Lesen der Eingabe, Abbruch...\n"
 
 # TODO: need more work!
 #. must display the prompt
-#: undo.c:383
+#: undo.c:405
 msgid "No undo possible; continue anyway"
 msgstr "Rückgängigmachung nicht möglich; setze trotz dem fort"
 
-#: undo.c:538
+#: undo.c:561
 msgid "E438: u_undo: line numbers wrong"
 msgstr "E438: u_undo: Zeilennummer falsch"
 
-#: undo.c:707
+#: undo.c:757
 msgid "1 change"
 msgstr "1 Änderung"
 
-#: undo.c:709
+#: undo.c:759
 #, c-format
 msgid "%ld changes"
 msgstr "%ld Änderungen"
 
-#: undo.c:753
+#: undo.c:812
 msgid "E439: undo list corrupt"
 msgstr "E439: Rückgangbarkeitsliste kaputt"
 
-#: undo.c:785
+#: undo.c:844
 msgid "E440: undo line missing"
 msgstr "E440: Rückgangbarkeitsliste fehlt"
 
 #. Only MS VC 4.1 and earlier can do Win32s
-#: version.c:691
+#: version.c:747
 msgid ""
 "\n"
 "MS-Windows 16/32 bit GUI version"
@@ -5359,7 +5892,7 @@ msgstr ""
 "\n"
 "MS-Windows 16/32 Bit GUI Version"
 
-#: version.c:693
+#: version.c:749
 msgid ""
 "\n"
 "MS-Windows 32 bit GUI version"
@@ -5367,15 +5900,15 @@ msgstr ""
 "\n"
 "MS-Windows 32 Bit GUI Version"
 
-#: version.c:696
+#: version.c:752
 msgid " in Win32s mode"
 msgstr " in Win32s Modus"
 
-#: version.c:698
+#: version.c:754
 msgid " with OLE support"
 msgstr " mit OLE Unterstützung"
 
-#: version.c:701
+#: version.c:757
 msgid ""
 "\n"
 "MS-Windows 32 bit console version"
@@ -5383,7 +5916,7 @@ msgstr ""
 "\n"
 "MS-Windows 32 Bit Konsolen Version"
 
-#: version.c:705
+#: version.c:761
 msgid ""
 "\n"
 "MS-Windows 16 bit version"
@@ -5391,7 +5924,7 @@ msgstr ""
 "\n"
 "MS-Windows 16 Bit Version"
 
-#: version.c:709
+#: version.c:765
 msgid ""
 "\n"
 "32 bit MS-DOS version"
@@ -5399,7 +5932,7 @@ msgstr ""
 "\n"
 "32 Bit MS-DOS Version"
 
-#: version.c:711
+#: version.c:767
 msgid ""
 "\n"
 "16 bit MS-DOS version"
@@ -5407,7 +5940,7 @@ msgstr ""
 "\n"
 "16 Bit MS-DOS Version"
 
-#: version.c:717
+#: version.c:773
 msgid ""
 "\n"
 "MacOS X (unix) version"
@@ -5415,7 +5948,7 @@ msgstr ""
 "\n"
 "MacOS X (unix) Version"
 
-#: version.c:719
+#: version.c:775
 msgid ""
 "\n"
 "MacOS X version"
@@ -5423,7 +5956,7 @@ msgstr ""
 "\n"
 "MacOS X Version"
 
-#: version.c:722
+#: version.c:778
 msgid ""
 "\n"
 "MacOS version"
@@ -5431,7 +5964,7 @@ msgstr ""
 "\n"
 "MacOS Version"
 
-#: version.c:727
+#: version.c:783
 msgid ""
 "\n"
 "RISC OS version"
@@ -5439,7 +5972,7 @@ msgstr ""
 "\n"
 "RISC OS Version"
 
-#: version.c:737
+#: version.c:793
 msgid ""
 "\n"
 "Included patches: "
@@ -5447,11 +5980,11 @@ msgstr ""
 "\n"
 "Inclusive der Korrekturen: "
 
-#: version.c:763 version.c:1098
+#: version.c:819 version.c:1187
 msgid "Modified by "
 msgstr "Verändert von "
 
-#: version.c:770
+#: version.c:826
 msgid ""
 "\n"
 "Compiled "
@@ -5459,11 +5992,11 @@ msgstr ""
 "\n"
 "Übersetzt "
 
-#: version.c:773
+#: version.c:829
 msgid "by "
 msgstr "von "
 
-#: version.c:785
+#: version.c:841
 msgid ""
 "\n"
 "Huge version "
@@ -5471,7 +6004,7 @@ msgstr ""
 "\n"
 "Monster Version "
 
-#: version.c:788
+#: version.c:844
 msgid ""
 "\n"
 "Big version "
@@ -5479,7 +6012,7 @@ msgstr ""
 "\n"
 "Große Version "
 
-#: version.c:791
+#: version.c:847
 msgid ""
 "\n"
 "Normal version "
@@ -5487,7 +6020,7 @@ msgstr ""
 "\n"
 "Normale Version "
 
-#: version.c:794
+#: version.c:850
 msgid ""
 "\n"
 "Small version "
@@ -5495,7 +6028,7 @@ msgstr ""
 "\n"
 "Kleine Version "
 
-#: version.c:796
+#: version.c:852
 msgid ""
 "\n"
 "Tiny version "
@@ -5503,272 +6036,332 @@ msgstr ""
 "\n"
 "Winzige Version "
 
-#: version.c:802
+#: version.c:858
 msgid "without GUI."
 msgstr "ohne GUI."
 
-#: version.c:806
+#: version.c:863
+#, fuzzy
+#~ msgid "with GTK2-GNOME GUI."
+#~ msgstr "mit GTK-GNOME GUI."
+
+#: version.c:865
 msgid "with GTK-GNOME GUI."
 msgstr "mit GTK-GNOME GUI."
 
-#: version.c:808
+#: version.c:869
+#, fuzzy
+#~ msgid "with GTK2 GUI."
+#~ msgstr "mit GTK GUI."
+
+#: version.c:871
 msgid "with GTK GUI."
 msgstr "mit GTK GUI."
 
-#: version.c:812
+#: version.c:876
 msgid "with X11-Motif GUI."
 msgstr "mit X11-Motif GUI."
 
-#: version.c:815
+#: version.c:880
+#, fuzzy
+#~ msgid "with X11-neXtaw GUI."
+#~ msgstr "mit X11-Athena GUI."
+
+#: version.c:882
 msgid "with X11-Athena GUI."
 msgstr "mit X11-Athena GUI."
 
-#: version.c:818
+#: version.c:886
 msgid "with BeOS GUI."
 msgstr "mit BeOS GUI."
 
-#: version.c:821
+#: version.c:889
 msgid "with Photon GUI."
 msgstr "mit Photon GUI."
 
-#: version.c:824
+#: version.c:892
 msgid "with GUI."
 msgstr "mit GTK."
 
-#: version.c:827
+#: version.c:895
 msgid "with Carbon GUI."
 msgstr "mit Carbon GUI."
 
-#: version.c:830
+#: version.c:898
 msgid "with Cocoa GUI."
 msgstr "mit Cocoa GUI."
 
-#: version.c:833
+#: version.c:901
 msgid "with (classic) GUI."
 msgstr "mit (klassischem) GUI."
 
-#: version.c:844
+#: version.c:912
 msgid "  Features included (+) or not (-):\n"
 msgstr " Ein- (+) oder ausschließlich (-) der Eigenschaften:\n"
 
-#: version.c:856
+#: version.c:924
 msgid "   system vimrc file: \""
 msgstr "          System-vimrc-Datei: \""
 
-#: version.c:861
+#: version.c:929
 msgid "     user vimrc file: \""
 msgstr "        Benutzer-vimrc-Datei: \""
 
-#: version.c:866
+#: version.c:934
 msgid " 2nd user vimrc file: \""
 msgstr " zweite Benutzer-vimrc-Datei: \""
 
-#: version.c:871
+#: version.c:939
 msgid " 3rd user vimrc file: \""
 msgstr " dritte Benutzer-vimrc-Datei: \""
 
-#: version.c:876
+#: version.c:944
 msgid "      user exrc file: \""
 msgstr "         Benutzer-exrc-Datei: \""
 
-#: version.c:881
+#: version.c:949
 msgid "  2nd user exrc file: \""
 msgstr " zweite Benutzer-vimrc-Datei: \""
 
-#: version.c:887
+#: version.c:955
 msgid "  system gvimrc file: \""
 msgstr "         System-gvimrc-Datei: \""
 
-#: version.c:891
+#: version.c:959
 msgid "    user gvimrc file: \""
 msgstr "       Benutzer-gvimrc-Datei: \""
 
-#: version.c:895
+#: version.c:963
 msgid "2nd user gvimrc file: \""
 msgstr "zweite Benutzer-gvimrc-Datei: \""
 
-#: version.c:900
+#: version.c:968
 msgid "3rd user gvimrc file: \""
 msgstr "dritte Benutzer-gvimrc-Datei: \""
 
-#: version.c:907
+#: version.c:975
 msgid "    system menu file: \""
 msgstr "           System-Menü-Datei: \""
 
-#: version.c:915
+#: version.c:983
 msgid "  fall-back for $VIM: \""
 msgstr "     Voreinstellung für $VIM: \""
 
-#: version.c:921
+#: version.c:989
 msgid " f-b for $VIMRUNTIME: \""
 msgstr "         und für $VIMRUNTIME: \""
 
-#: version.c:925
+#: version.c:993
 msgid "Compilation: "
 msgstr "Übersetzt: "
 
-#: version.c:931
+#: version.c:999
 msgid "Compiler: "
 msgstr "Compiler: "
 
-#: version.c:936
+#: version.c:1004
 msgid "Linking: "
 msgstr "Linken: "
 
-#: version.c:941
+#: version.c:1009
 msgid "  DEBUG BUILD"
 msgstr "  DEBUG-VERSION"
 
-#: version.c:977
+#: version.c:1048
 msgid "VIM - Vi IMproved"
 msgstr "VIM - verbesserter Vi"
 
-#: version.c:979
+#: version.c:1050
 msgid "version "
 msgstr "Version "
 
-#: version.c:980
+#: version.c:1051
 msgid "by Bram Moolenaar et al."
 msgstr "von Bram Moolenaar und Anderen"
 
-#: version.c:984
+#: version.c:1055
 msgid "Vim is open source and freely distributable"
 msgstr "Vim ist Open Source und kann frei weitergegeben werden"
 
-#: version.c:986
+#: version.c:1057
 msgid "Help poor children in Uganda!"
 msgstr "Helfen Sie armen Kindern in Uganda!"
 
-#: version.c:987
+#: version.c:1058
 msgid "type  :help iccf<Enter>       for information "
 msgstr "tippe  :help iccf<Enter>        für Informationen darüber "
 
-#: version.c:989
+#: version.c:1060
 msgid "type  :q<Enter>               to exit         "
 msgstr "tippe  :q<Enter>                zum Beenden               "
 
-#: version.c:990
+#: version.c:1061
 msgid "type  :help<Enter>  or  <F1>  for on-line help"
 msgstr "tippe  :help<Enter>  oder <F1>  für Online Hilfe          "
 
-#: version.c:991
+#: version.c:1062
 msgid "type  :help version6<Enter>   for version info"
 msgstr "tippe  :help version6<Enter>    für Versions-Informationen"
 
-#: version.c:994
+#: version.c:1065
 msgid "Running in Vi compatible mode"
 msgstr "Vi kompatible Einstellung"
 
-#: version.c:995
+#: version.c:1066
 msgid "type  :set nocp<Enter>        for Vim defaults"
 msgstr "tippe  :set nocp<Enter>         für Vim-Voreinstellungen  "
 
-#: version.c:996
+#: version.c:1067
 msgid "type  :help cp-default<Enter> for info on this"
 msgstr "tippe  :help cp-default<Enter>  für Informationen darüber "
 
-#: version.c:1011
+#: version.c:1082
 msgid "menu  Help->Orphans           for information    "
 msgstr "Menü  Hilfe->Waisen           für Informationen darüber    "
 
-#: version.c:1013
+#: version.c:1084
 msgid "Running modeless, typed text is inserted"
 msgstr "Mode-freier Betrieb, getippter Text wird eingefügt"
 
-#: version.c:1014
+#: version.c:1085
 msgid "menu  Edit->Global Settings->Toggle Insert Mode  "
-msgstr "Menü  Editieren->Globale Einstellung->Einfüge-Modus ein- und ausschalten  "
-
-#: version.c:1015
+msgstr ""
+"Menü  Editieren->Globale Einstellung->Einfüge-Modus ein- und ausschalten  "
+
+#: version.c:1086
 msgid "                              for two modes      "
 msgstr "                              für zwei Modi       "
 
-#: version.c:1019
+#: version.c:1090
 msgid "menu  Edit->Global Settings->Toggle Vi Compatible"
-msgstr "Menü  Editieren->Globale Einstellung->Vi-Kompatibilität ein- und ausschalten"
-
-#: version.c:1020
+msgstr ""
+"Menü  Editieren->Globale Einstellung->Vi-Kompatibilität ein- und ausschalten"
+
+#: version.c:1091
 msgid "                              for Vim defaults   "
 msgstr "                              für Vim Voreinstellungen   "
 
-#: version.c:1066
+#: version.c:1138
+#~ msgid "Sponsor Vim development!"
+#~ msgstr ""
+
+#: version.c:1139
+#~ msgid "Become a registered Vim user!"
+#~ msgstr ""
+
+#: version.c:1142
+#, fuzzy
+#~ msgid "type  :help sponsor<Enter>    for information "
+#~ msgstr "tippe  :help iccf<Enter>        für Informationen darüber "
+
+#: version.c:1143
+#, fuzzy
+#~ msgid "type  :help register<Enter>   for information "
+#~ msgstr "tippe  :help iccf<Enter>        für Informationen darüber "
+
+#: version.c:1145
+#, fuzzy
+#~ msgid "menu  Help->Sponsor/Register  for information    "
+#~ msgstr "Menü  Hilfe->Waisen           für Informationen darüber    "
+
+#: version.c:1155
 msgid "WARNING: Windows 95/98/ME detected"
 msgstr "ACHTUNG: Windows 95/98/ME wurde erkannt"
 
-#: version.c:1069
+#: version.c:1158
 msgid "type  :help windows95<Enter>  for info on this"
 msgstr "tippe  :help windows95<Enter>   für Informationen darüber "
 
-#: window.c:201
+#: window.c:203
 msgid "E441: There is no preview window"
 msgstr "E441: Es gibt kein Fenster zur Voransicht"
 
 # should read: topleft / botright
-#: window.c:580
+#: window.c:581
 msgid "E442: Can't split topleft and botright at the same time"
 msgstr "E442: topleft und botright können nicht gleichzeitig verwendet werden"
 
-#: window.c:1339
+#: window.c:1340
 msgid "E443: Cannot rotate when another window is split"
 msgstr "E443: Rotieren nicht möglich wenn ein anderes Fenster geteilt ist"
 
-#: window.c:1841
+#: window.c:1836
 msgid "E444: Cannot close last window"
 msgstr "E444: Letztes Fenster kann nicht geschlossen werden"
 
-#: window.c:2505
+#: window.c:2567
 msgid "Already only one window"
 msgstr "Bereits nur ein Fenster"
 
-#: window.c:2552
+#: window.c:2614
 msgid "E445: Other window contains changes"
 msgstr "E445: Anderes Fenster enthält Änderungen"
 
 # Cursor: Schreibmarke Positionsmarke
-#: window.c:4379
+#: window.c:4480
 msgid "E446: No file name under cursor"
 msgstr "E446: Kein Dateiname unter dem Cursor"
 
-#: window.c:4498
+#: window.c:4599
 #, c-format
 msgid "E447: Can't find file \"%s\" in path"
 msgstr "E447: Datei \"%s\" kann im Pfad nicht gefunden werden"
 
-#: ../GvimExt/gvimext.cpp:586
+#: if_perl.xs:326 globals.h:1239
+#, c-format
+msgid "E370: Could not load library %s"
+msgstr "E370: Bibliothek %s konnte nicht geladen werden"
+
+#: if_perl.xs:554
+#, fuzzy
+#~ msgid "Sorry, this command is disabled: the Perl library could not be loaded."
+#~ msgstr ""
+#~ "Dieser Befehl ist nicht verfügbar, da die Tcl Bibliothek nicht geladen "
+#~ "werden konnte"
+
+#: if_perl.xs:607
+#~ msgid "E299: Perl evaluation forbidden in sandbox without the Safe module"
+#~ msgstr ""
+
+#: GvimExt/gvimext.cpp:583
 msgid "Edit with &multiple Vims"
 msgstr "Editiere mit &mehreren Vims"
 
-#: ../GvimExt/gvimext.cpp:592
+#: GvimExt/gvimext.cpp:589
 msgid "Edit with single &Vim"
 msgstr "Editiere mit einem &Vim"
 
-#: ../GvimExt/gvimext.cpp:604
+#: GvimExt/gvimext.cpp:598
+#, fuzzy
+#~ msgid "&Diff with Vim"
+#~ msgstr "Editiere mit &Vim"
+
+#: GvimExt/gvimext.cpp:611
 msgid "Edit with &Vim"
 msgstr "Editiere mit &Vim"
 
 #. Now concatenate
-#: ../GvimExt/gvimext.cpp:628
+#: GvimExt/gvimext.cpp:633
 msgid "Edit with existing Vim - &"
 msgstr "Editiere mit existierendem Vim - &"
 
-#: ../GvimExt/gvimext.cpp:752
+#: GvimExt/gvimext.cpp:746
 msgid "Edits the selected file(s) with Vim"
 msgstr "Editiere die ausgewählten Datei(en) mit Vim"
 
-#: ../GvimExt/gvimext.cpp:891 ../GvimExt/gvimext.cpp:969
+#: GvimExt/gvimext.cpp:885 GvimExt/gvimext.cpp:966
 msgid "Error creating process: Check if gvim is in your path!"
 msgstr "Fehler beim Starten des Prozesses: Ist gvim im Pfad?"
 
-#: ../GvimExt/gvimext.cpp:892 ../GvimExt/gvimext.cpp:906
-#: ../GvimExt/gvimext.cpp:970
+#: GvimExt/gvimext.cpp:886 GvimExt/gvimext.cpp:900 GvimExt/gvimext.cpp:967
 msgid "gvimext.dll error"
 msgstr "gvimext.dll Fehler"
 
-#: ../GvimExt/gvimext.cpp:905
+#: GvimExt/gvimext.cpp:899
 msgid "Path length too long!"
 msgstr "Pfad-Länge zu lang!"
 
-#: globals.h:900
+#: globals.h:1029
 msgid "--No lines in buffer--"
 msgstr "--Keine Zeilen im Puffer--"
 
@@ -5776,316 +6369,467 @@ msgstr "--Keine Zeilen im Puffer--"
 #. * The error messages that can be shared are included here.
 #. * Excluded are errors that are only used once and debugging messages.
 #.
-#: globals.h:1048
-msgid "Command aborted"
-msgstr "Befehl abgebrochen"
-
-#: globals.h:1049
-msgid "Argument required"
-msgstr "Argument wird benötigt"
-
-#: globals.h:1050
+#: globals.h:1192
+#, fuzzy
+#~ msgid "E470: Command aborted"
+#~ msgstr "Befehl abgebrochen"
+
+#: globals.h:1193
+#, fuzzy
+#~ msgid "E471: Argument required"
+#~ msgstr "Argument wird benötigt"
+
+#: globals.h:1194
 msgid "E10: \\ should be followed by /, ? or &"
 msgstr "E10: \\ sollte von /, ? or & gefolgt werden"
 
-#: globals.h:1052
+#: globals.h:1196
 msgid "E11: Invalid in command-line window; <CR> executes, CTRL-C quits"
 msgstr ""
 "E11: Ungültig im Kommando-Zeilen Fenster; <CR> führt aus, CTRL-C beendet"
 
-#: globals.h:1054
+#: globals.h:1198
 msgid "E12: Command not allowed from exrc/vimrc in current dir or tag search"
 msgstr ""
 "E12: Befehl nicht zulässig vom exrc/vimrc in der momentanen Verzeichnis- "
 "oder Tag-Suche"
 
-#: globals.h:1055
+#: globals.h:1200
+msgid "E171: Missing :endif"
+msgstr "E171: fehlendes :endif"
+
+#: globals.h:1201
+#, fuzzy
+#~ msgid "E600: Missing :endtry"
+#~ msgstr "E171: fehlendes :endif"
+
+#: globals.h:1202
+msgid "E170: Missing :endwhile"
+msgstr "E170: fehlendes :endwhile"
+
+#: globals.h:1203
+#, fuzzy
+#~ msgid "E588: :endwhile without :while"
+#~ msgstr ":endwhile ohne :while"
+
+#: globals.h:1205
 msgid "E13: File exists (add ! to override)"
-msgstr "E13: Datei existiert bereits (erzwinge durch !)"
-
-#: globals.h:1056
-msgid "Command failed"
-msgstr "Befehl schlug fehl"
-
-#: globals.h:1057
-msgid "Internal error"
-msgstr "Interner Fehler"
-
-#: globals.h:1058
+msgstr "E13: Datei existiert bereits (erzwinge mit !)"
+
+#: globals.h:1206
+#, fuzzy
+#~ msgid "E472: Command failed"
+#~ msgstr "Befehl schlug fehl"
+
+#: globals.h:1208
+#, c-format
+msgid "E234: Unknown fontset: %s"
+msgstr "E234: Unbekannter Fontset: %s"
+
+#: globals.h:1212
+#, c-format
+msgid "E235: Unknown font: %s"
+msgstr "E235: Unbekannte Schriftart: %s"
+
+#: globals.h:1215
+#, c-format
+msgid "E236: Font \"%s\" is not fixed-width"
+msgstr "E236: Schriftart \"%s\" hat keine feste Breite"
+
+#: globals.h:1217
+#, fuzzy
+#~ msgid "E473: Internal error"
+#~ msgstr "Interner Fehler"
+
+#: globals.h:1218
 msgid "Interrupted"
 msgstr "Unterbrochen"
 
-#: globals.h:1059
+#: globals.h:1219
 msgid "E14: Invalid address"
 msgstr "E14: Ungültige Adresse"
 
-#: globals.h:1060
-msgid "Invalid argument"
-msgstr "Ungültiges Argument"
-
-#: globals.h:1061
-#, c-format
-msgid "Invalid argument: %s"
-msgstr "Ungültiges Argument: %s"
-
-#: globals.h:1063
+#: globals.h:1220
+#, fuzzy
+#~ msgid "E474: Invalid argument"
+#~ msgstr "Ungültiges Argument"
+
+#: globals.h:1221
+#, fuzzy, c-format
+#~ msgid "E475: Invalid argument: %s"
+#~ msgstr "Ungültiges Argument: %s"
+
+#: globals.h:1223
 #, c-format
 msgid "E15: Invalid expression: %s"
 msgstr "E15: ungültiger Ausdruck: %s"
 
-#: globals.h:1065
+#: globals.h:1225
 msgid "E16: Invalid range"
 msgstr "E16: Ungültiger Bereich"
 
-#: globals.h:1066
-msgid "Invalid command"
-msgstr "Ungültiger Befehls-Name"
-
-#: globals.h:1068
+#: globals.h:1226
+#, fuzzy
+#~ msgid "E476: Invalid command"
+#~ msgstr "Ungültiger Befehls-Name"
+
+#: globals.h:1228
 #, c-format
 msgid "E17: \"%s\" is a directory"
 msgstr "E17: \"%s\" ist ein Verzeichnis"
 
-#: globals.h:1071
+#: globals.h:1231
 msgid "E18: Unexpected characters before '='"
 msgstr "E18: Unerwartetes Zeichen vor '='"
 
-#: globals.h:1073
+#: globals.h:1234
+#, c-format
+msgid "E364: Library call failed for \"%s()\""
+msgstr "E364: Bibliotheks-Aufruf für \"%s()\" schlug fehl"
+
+#: globals.h:1240
+#, c-format
+msgid "E448: Could not load library function %s"
+msgstr "E448: Bibliotheks-Funktion %s konnte nicht geladen werden"
+
+#: globals.h:1242
 msgid "E19: Mark has invalid line number"
 msgstr "E19: Marke hat ungültige Zeilennummer"
 
-#: globals.h:1074
+#: globals.h:1243
 msgid "E20: Mark not set"
 msgstr "E20: Marke nicht gesetzt"
 
-#: globals.h:1075
+#: globals.h:1244
 msgid "E21: Cannot make changes, 'modifiable' is off"
 msgstr "E21: Kann keine Änderungen machen, 'modifiable' ist aus"
 
-#: globals.h:1076
+#: globals.h:1245
 msgid "E22: Scripts nested too deep"
 msgstr "E22: Skript-Schachtelung zu tief"
 
-#: globals.h:1077
+#: globals.h:1246
 msgid "E23: No alternate file"
 msgstr "E23: Keine alternative Datei"
 
-#: globals.h:1078
+#: globals.h:1247
 msgid "E24: No such abbreviation"
 msgstr "E24: Keine Abkürzung gefunden"
 
-#: globals.h:1079
-msgid "No ! allowed"
-msgstr "! nicht erlaubt"
-
-#: globals.h:1081
+#: globals.h:1248
+#, fuzzy
+#~ msgid "E477: No ! allowed"
+#~ msgstr "! nicht erlaubt"
+
+#: globals.h:1250
 msgid "E25: GUI cannot be used: Not enabled at compile time"
 msgstr ""
 "E25: GUI kann nicht benutzt werden: wurde zum Zeitpunkt des Übersetzens "
 "nicht eingeschaltet."
 
-#: globals.h:1084
+#: globals.h:1253
 msgid "E26: Hebrew cannot be used: Not enabled at compile time\n"
 msgstr ""
 "E26: Hebräisch kann nicht benutzt werden: wurde zum Zeitpunkt des "
 "Übersetzens nicht eingeschaltet.\n"
 
-#: globals.h:1087
+#: globals.h:1256
 msgid "E27: Farsi cannot be used: Not enabled at compile time\n"
 msgstr ""
 "E27: Farsi kann nicht benutzt werden: wurde zum Zeitpunkt des Übersetzens "
 "nicht eingeschaltet.\n"
 
-#: globals.h:1090
+#: globals.h:1259
+#, fuzzy
+#~ msgid "E800: Arabic cannot be used: Not enabled at compile time\n"
+#~ msgstr ""
+#~ "E27: Farsi kann nicht benutzt werden: wurde zum Zeitpunkt des Übersetzens "
+#~ "nicht eingeschaltet.\n"
+
+#: globals.h:1262
 #, c-format
 msgid "E28: No such highlight group name: %s"
 msgstr "E28: Hervorhebungs-Gruppe existiert nicht: %s"
 
-#: globals.h:1092
+#: globals.h:1264
 msgid "E29: No inserted text yet"
 msgstr "E29: Noch kein eingefügter Text"
 
-#: globals.h:1093
+#: globals.h:1265
 msgid "E30: No previous command line"
 msgstr "E30: Keine vorherige Befehlszeile"
 
-#: globals.h:1094
+#: globals.h:1266
 msgid "E31: No such mapping"
 msgstr "E31: Keine Zuordnung gefunden"
 
-#: globals.h:1095
-msgid "No match"
-msgstr "Kein Treffer"
-
-#: globals.h:1096
-#, c-format
-msgid "No match: %s"
-msgstr "Kein Treffer für: %s"
-
-#: globals.h:1097
+#: globals.h:1267
+#, fuzzy
+#~ msgid "E479: No match"
+#~ msgstr "Kein Treffer"
+
+#: globals.h:1268
+#, fuzzy, c-format
+#~ msgid "E480: No match: %s"
+#~ msgstr "Kein Treffer für: %s"
+
+#: globals.h:1269
 msgid "E32: No file name"
 msgstr "E32: Kein Dateiname"
 
-#: globals.h:1098
+#: globals.h:1270
 msgid "E33: No previous substitute regular expression"
 msgstr "E33: Kein vorheriger regulärer Ersetzungs-Ausdruck"
 
-#: globals.h:1099
+#: globals.h:1271
 msgid "E34: No previous command"
 msgstr "E34: Kein vorheriger Befehl"
 
-#: globals.h:1100
+#: globals.h:1272
 msgid "E35: No previous regular expression"
 msgstr "E35: Keine vorheriger regulärer Ausdruck"
 
-#: globals.h:1101
-msgid "No range allowed"
-msgstr "Bereich unzulässig"
-
-#: globals.h:1103
+#: globals.h:1273
+#, fuzzy
+#~ msgid "E481: No range allowed"
+#~ msgstr "Bereich unzulässig"
+
+#: globals.h:1275
 msgid "E36: Not enough room"
 msgstr "E36: zu wenig Platz"
 
-#: globals.h:1105
-#, c-format
-msgid "Can't create file %s"
-msgstr "Datei kann nicht erzeugt werden: %s"
-
-#: globals.h:1106
-msgid "Can't get temp file name"
-msgstr "temp-Datei kann nicht erzeugt werden"
-
-#: globals.h:1107
-#, c-format
-msgid "Can't open file %s"
-msgstr "Datei %s kann nicht geöffnet werden"
-
-#: globals.h:1108
-#, c-format
-msgid "Can't read file %s"
-msgstr "Datei %s kann nicht gelesen werden"
-
-#: globals.h:1109
-msgid "E37: No write since last change (use ! to override)"
-msgstr ""
-"E37: seit der letzten Änderung wurde nicht geschrieben (erzwinge mit !)"
-
-#: globals.h:1110
+#: globals.h:1278
+#, c-format
+msgid "E247: no registered server named \"%s\""
+msgstr "E247: Kein registrierter Server-Name \"%s\""
+
+#: globals.h:1280
+#, fuzzy, c-format
+#~ msgid "E482: Can't create file %s"
+#~ msgstr "Datei kann nicht erzeugt werden: %s"
+
+#: globals.h:1281
+#, fuzzy
+#~ msgid "E483: Can't get temp file name"
+#~ msgstr "temp-Datei kann nicht erzeugt werden"
+
+#: globals.h:1282
+#, fuzzy, c-format
+#~ msgid "E484: Can't open file %s"
+#~ msgstr "E456: Datei \"%s\" kann nicht geöffnet werden"
+
+#: globals.h:1283
+#, fuzzy, c-format
+#~ msgid "E485: Can't read file %s"
+#~ msgstr "Datei %s kann nicht gelesen werden"
+
+#: globals.h:1284
+#, fuzzy
+#~ msgid "E37: No write since last change (add ! to override)"
+#~ msgstr ""
+#~ "E37: seit der letzten Änderung wurde nicht geschrieben (erzwinge mit !)"
+
+#: globals.h:1285
 msgid "E38: Null argument"
 msgstr "E38: Null-Argument"
 
-#: globals.h:1112
+#: globals.h:1287
 msgid "E39: Number expected"
 msgstr "E39: Nummer erwartet"
 
-#: globals.h:1115
+#: globals.h:1290
 #, c-format
 msgid "E40: Can't open errorfile %s"
 msgstr "E40: Fehler-Datei %s kann nicht geöffnet werden"
 
-#: globals.h:1118
+#: globals.h:1293
+msgid "E233: cannot open display"
+msgstr "E233: Display kann nicht geöffnet werden"
+
+#: globals.h:1295
 msgid "E41: Out of memory!"
 msgstr "E41: Speicher erschöpft!"
 
-#: globals.h:1121
+#: globals.h:1297
 msgid "Pattern not found"
 msgstr "Muster nicht gefunden"
 
-#: globals.h:1123
-#, c-format
-msgid "Pattern not found: %s"
-msgstr "Muster nicht gefunden: %s"
-
-#: globals.h:1124
-msgid "Argument must be positive"
-msgstr "Argument muss positiv sein"
-
-#: globals.h:1126
+#: globals.h:1299
+#, fuzzy, c-format
+#~ msgid "E486: Pattern not found: %s"
+#~ msgstr "Muster nicht gefunden: %s"
+
+#: globals.h:1300
+#, fuzzy
+#~ msgid "E487: Argument must be positive"
+#~ msgstr "Argument muss positiv sein"
+
+#: globals.h:1302
+#, fuzzy
+#~ msgid "E459: Cannot go back to previous directory"
+#~ msgstr "E186: Kein vorheriges Verzeichnis"
+
+#: globals.h:1306
 msgid "E42: No Errors"
 msgstr "E42: Kein Fehler"
 
-#: globals.h:1128
+#: globals.h:1308
 msgid "E43: Damaged match string"
 msgstr "E43: Beschädigter Suchausdruck"
 
-#: globals.h:1129
+#: globals.h:1309
 msgid "E44: Corrupted regexp program"
 msgstr "E44: schadhaftes regexp Programm"
 
-#: globals.h:1130
-msgid "E45: 'readonly' option is set (use ! to override)"
-msgstr ""
-"E45: Die Schreibschutz-Option 'readonly' ist gesetzt (erzwinge durch !)"
-
-#: globals.h:1132
+#: globals.h:1310
+#, fuzzy
+#~ msgid "E45: 'readonly' option is set (add ! to override)"
+#~ msgstr ""
+#~ "E45: Die Schreibschutz-Option 'readonly' ist gesetzt (erzwinge mit !)"
+
+#: globals.h:1312
 #, c-format
 msgid "E46: Cannot set read-only variable \"%s\""
 msgstr "E46: Variable \"%s\" kann nur gelesen werden"
 
-#: globals.h:1135
+#: globals.h:1315
 msgid "E47: Error while reading errorfile"
 msgstr "E47: Fehler während des Lesens der Fehler-Datei"
 
-#: globals.h:1138
+#: globals.h:1318
 msgid "E48: Not allowed in sandbox"
 msgstr "E48: In einer Sandbox nicht erlaubt"
 
-#: globals.h:1140
+#: globals.h:1320
+#, fuzzy
+#~ msgid "E523: Not allowed here"
+#~ msgstr "hier nicht erlaubt"
+
+#: globals.h:1323
+msgid "E359: Screen mode setting not supported"
+msgstr "E359: Bildschirm Modus wird nicht unterstützt"
+
+#: globals.h:1325
 msgid "E49: Invalid scroll size"
 msgstr "E49: Ungültige Scroll-Größe"
 
-#: globals.h:1141
+#: globals.h:1326
 msgid "E91: 'shell' option is empty"
 msgstr "E91: Die Option 'shell' ist leer"
 
-#: globals.h:1142
+#: globals.h:1328
+msgid "E255: Couldn't read in sign data!"
+msgstr "E255: Fehler -- Daten für Debugger-Symbol konnten nicht gelesen werden"
+
+#: globals.h:1330
 msgid "E72: Close error on swap file"
 msgstr "E72: Fehler beim Schließen der Auslagerungs-Datei"
 
-#: globals.h:1143
+#: globals.h:1331
 msgid "E73: tag stack empty"
 msgstr "E73: tag Stapel leer."
 
-#: globals.h:1144
+#: globals.h:1332
 msgid "E74: Command too complex"
 msgstr "E74: Befehl zu kompliziert"
 
-#: globals.h:1145
+#: globals.h:1333
 msgid "E75: Name too long"
 msgstr "E75: Name zu lang"
 
-#: globals.h:1146
+#: globals.h:1334
 msgid "E76: Too many ["
 msgstr "E76: zu viele ["
 
-#: globals.h:1147
+#: globals.h:1335
 msgid "E77: Too many file names"
-msgstr "E77: zu viele Datei-Namen"
-
-#: globals.h:1148
-msgid "Trailing characters"
-msgstr "Überschüssige Zeichen"
-
-#: globals.h:1149
+msgstr "E77: zu viele Dateinamen"
+
+#: globals.h:1336
+#, fuzzy
+#~ msgid "E488: Trailing characters"
+#~ msgstr "Überschüssige Zeichen"
+
+#: globals.h:1337
 msgid "E78: Unknown mark"
 msgstr "E78: Unbekannte Mark"
 
-#: globals.h:1150
+#: globals.h:1338
 msgid "E79: Cannot expand wildcards"
 msgstr "E79: Kann \"wildcards\" nicht erweitern"
 
-#: globals.h:1151
+#: globals.h:1340
+#, fuzzy
+#~ msgid "E591: 'winheight' cannot be smaller than 'winminheight'"
+#~ msgstr "'winheight' kann nicht kleiner sein als 'winminheight'"
+
+#: globals.h:1342
+#, fuzzy
+#~ msgid "E592: 'winwidth' cannot be smaller than 'winminwidth'"
+#~ msgstr "'winwidth' kann nicht kleiner sein als 'winminwidth'"
+
+#: globals.h:1345
 msgid "E80: Error while writing"
 msgstr "E80: Fehler während des Schreibens"
 
-#: globals.h:1152
+#: globals.h:1346
 msgid "Zero count"
 msgstr "Null-Zähler"
 
-#: globals.h:1154
+#: globals.h:1348
 msgid "E81: Using <SID> not in a script context"
 msgstr "E81: <SID> wurde nicht in einer Skript-Umgebung benutzt"
 
-#: globals.h:1157
+#: globals.h:1351
 msgid "E449: Invalid expression received"
 msgstr "E449: ungültiger Ausdruck"
+
+#: globals.h:1354
+#~ msgid "E463: Region is guarded, cannot modify"
+#~ msgstr ""
+
+#~ msgid "function "
+#~ msgstr "Funktion "
+
+#~ msgid "error reading cscope connection %d"
+#~ msgstr "Fehler beim Lesen aus der cscope Verbindung %d"
+
+#~ msgid "E260: cscope connection not found"
+#~ msgstr "E260: keine cscope Verbindung gefunden"
+
+#~ msgid "cscope connection closed"
+#~ msgstr "cscope Verbindung geschlossen"
+
+#~ msgid "couldn't malloc\n"
+#~ msgstr "Fehler beim allozieren\n"
+
+#~ msgid "%2d %-5ld  %-34s  <none>\n"
+#~ msgstr "%2d %-5ld  %-34s  <keine>\n"
+
+#~ msgid "E249: couldn't read VIM instance registry property"
+#~ msgstr ""
+#~ "E249: Registry-Eigenschaft der VIM Instanz konnte nicht gelesen werden"
+
+#~ msgid "\"\n"
+#~ msgstr "\"\n"
+
+#~ msgid "--help\t\tShow Gnome arguments"
+#~ msgstr "--help\t\tZeige Gnome-Argumente"
+
+#~ msgid "E448: Unknown font: %s"
+#~ msgstr "E448: Unbekannte Schriftart: %s"
+
+#~ msgid " BLOCK"
+#~ msgstr "ER BLOCK"
+
+#~ msgid " LINE"
+#~ msgstr "E ZEILE"
+
+#~ msgid "Linear tag search"
+#~ msgstr "Lineare Tag-Suche"
+
+#~ msgid "Binary tag search"
+#~ msgstr "Binäre Tag-Suche"
+
+#~ msgid "Can't open file %s"
+#~ msgstr "Datei %s kann nicht geöffnet werden"
--- a/src/proto/fileio.pro
+++ b/src/proto/fileio.pro
@@ -3,6 +3,8 @@ void filemess __ARGS((buf_T *buf, char_u
 int readfile __ARGS((char_u *fname, char_u *sfname, linenr_T from, linenr_T lines_to_skip, linenr_T lines_to_read, exarg_T *eap, int flags));
 int prep_exarg __ARGS((exarg_T *eap, buf_T *buf));
 int buf_write __ARGS((buf_T *buf, char_u *fname, char_u *sfname, linenr_T start, linenr_T end, exarg_T *eap, int append, int forceit, int reset_changed, int filtering));
+void msg_add_fname __ARGS((buf_T *buf, char_u *fname));
+void msg_add_lines __ARGS((int insert_space, long lnum, long nchars));
 char_u *shorten_fname __ARGS((char_u *full_path, char_u *dir_name));
 void shorten_fnames __ARGS((int force));
 void shorten_filenames __ARGS((char_u **fnames, int count));
--- a/src/proto/netbeans.pro
+++ b/src/proto/netbeans.pro
@@ -1,16 +1,16 @@
 /* netbeans.c */
-void netbeans_Xt_connect __ARGS((void *context));
-void netbeans_gtk_connect __ARGS((void));
-void netbeans_w32_connect __ARGS((void));
 void messageFromNetbeansW32 __ARGS((void));
 int isNetbeansBuffer __ARGS((buf_T *bufp));
 int isNetbeansModified __ARGS((buf_T *bufp));
 void netbeans_end __ARGS((void));
+void ex_nbkey __ARGS((exarg_T *eap));
 void netbeans_startup_done __ARGS((void));
+void netbeans_send_disconnect __ARGS((void));
 void netbeans_frame_moved __ARGS((int new_x, int new_y));
-void netbeans_file_opened __ARGS((char *filename));
+void netbeans_file_activated __ARGS((buf_T *bufp));
+void netbeans_file_opened __ARGS((buf_T *bufp));
 void netbeans_file_closed __ARGS((buf_T *bufp));
-void netbeans_inserted __ARGS((buf_T *bufp, linenr_T linenr, colnr_T col, int oldlen, char_u *txt, int newlen));
+void netbeans_inserted __ARGS((buf_T *bufp, linenr_T linenr, colnr_T col, char_u *txt, int newlen));
 void netbeans_removed __ARGS((buf_T *bufp, linenr_T linenr, colnr_T col, long len));
 void netbeans_unmodified __ARGS((buf_T *bufp));
 void netbeans_button_release __ARGS((int button));
--- a/src/screen.c
+++ b/src/screen.c
@@ -2019,7 +2019,6 @@ fold_line(wp, fold_count, foldinfo, lnum
     pos_T	*top, *bot;
     linenr_T	lnume = lnum + fold_count - 1;
     int		len;
-    char_u	*p;
     char_u	*text;
     int		fdc;
     int		col;
@@ -2154,6 +2153,7 @@ fold_line(wp, fold_count, foldinfo, lnum
 	int	u8c, u8c_c1, u8c_c2;
 	int	idx;
 	int	c_len;
+	char_u	*p;
 # ifdef FEAT_ARABIC
 	int	prev_c = 0;		/* previous Arabic character */
 	int	prev_c1 = 0;		/* first composing char for prev_c */
--- a/src/undo.c
+++ b/src/undo.c
@@ -185,10 +185,18 @@ u_savecommon(top, bot, newbot)
      * Netbeans defines areas that cannot be modified.  Bail out here when
      * trying to change text in a guarded area.
      */
-    if (usingNetbeans && netbeans_is_guarded(top, bot))
+    if (usingNetbeans)
     {
-	EMSG(_(e_guarded));
-	return FAIL;
+	if (netbeans_is_guarded(top, bot))
+	{
+	    EMSG(_(e_guarded));
+	    return FAIL;
+	}
+	if (curbuf->b_p_ro)
+	{
+	    EMSG(_(e_nbreadonly));
+	    return FAIL;
+	}
     }
 #endif
 
@@ -693,6 +701,10 @@ u_undoredo()
     if (old_flags & UH_CHANGED)
 	changed();
     else
+#ifdef FEAT_NETBEANS_INTG
+	/* per netbeans undo rules, keep it as modified */
+	if (!isNetbeansModified(curbuf))
+#endif
 	unchanged(curbuf, FALSE);
 
     /*
--- a/src/vim.h
+++ b/src/vim.h
@@ -1784,6 +1784,7 @@ typedef int VimClipboard;	/* This is req
 # include "nbdebug.h"
 #else
 # define nbdebug(a)
+# define nbprint(a)
 #endif
 
 #ifdef IN_PERL_FILE