diff --git a/runtime/doc/cmdline.txt b/runtime/doc/cmdline.txt
index 6e42025..1368dbf 100644
--- a/runtime/doc/cmdline.txt
+++ b/runtime/doc/cmdline.txt
@@ -1,4 +1,4 @@
-*cmdline.txt*   For Vim version 7.3.  Last change: 2010 Sep 18
+*cmdline.txt*   For Vim version 7.3.  Last change: 2010 Nov 28
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -372,10 +372,10 @@
 - Mappings: Only after a ":map" or similar command.
 - Variable and function names: Only after a ":if", ":call" or similar command.
 
-When Vim was compiled with the |+cmdline_compl| feature disabled, only file
-names, directories and help items can be completed.  The number of help item
-matches is limited (currently to 300) to avoid a long delay when there are
-very many matches.
+When Vim was compiled without the |+cmdline_compl| feature only file names,
+directories and help items can be completed.  The number of help item matches
+is limited (currently to 300) to avoid a long delay when there are very many
+matches.
 
 These are the commands that can be used:
 
@@ -782,30 +782,34 @@
 			       *:<cword>* *:<cWORD>* *:<cfile>* *<cfile>*
 			       *:<sfile>* *<sfile>* *:<afile>* *<afile>*
 			       *:<abuf>* *<abuf>* *:<amatch>* *<amatch>*
-			       *E495* *E496* *E497* *E498* *E499* *E500*
+			       *E495* *E496* *E497* *E499* *E500*
 Note: these are typed literally, they are not special keys!
 	<cword>    is replaced with the word under the cursor (like |star|)
 	<cWORD>    is replaced with the WORD under the cursor (see |WORD|)
 	<cfile>    is replaced with the path name under the cursor (like what
 		   |gf| uses)
-	<afile>    when executing autocommands, is replaced with the file name
-		   for a file read or write
-	<abuf>     when executing autocommands, is replaced with the currently
+	<afile>    When executing autocommands, is replaced with the file name
+		   for a file read or write.
+	<abuf>     When executing autocommands, is replaced with the currently
 		   effective buffer number (for ":r file" and ":so file" it is
 		   the current buffer, the file being read/sourced is not in a
 		   buffer).
-	<amatch>   when executing autocommands, is replaced with the match for
+	<amatch>   When executing autocommands, is replaced with the match for
 		   which this autocommand was executed.  It differs from
 		   <afile> only when the file name isn't used to match with
 		   (for FileType, Syntax and SpellFileMissing events).
-	<sfile>    when executing a ":source" command, is replaced with the
-		   file name of the sourced file;
-		   when executing a function, is replaced with
+	<sfile>    When executing a ":source" command, is replaced with the
+		   file name of the sourced file.  *E498* 
+		   When executing a function, is replaced with
 		   "function {function-name}"; function call nesting is
 		   indicated like this:
 		   "function {function-name1}..{function-name2}".  Note that
 		   filename-modifiers are useless when <sfile> is used inside
 		   a function.
+	<slnum>	   When executing a ":source" command, is replaced with the
+	           line number.  *E842*
+		   When executing a function it's the line number relative to
+		   the start of the function.
 
 							 *filename-modifiers*
 	 *:_%:* *::8* *::p* *::.* *::~* *::h* *::t* *::r* *::e* *::s* *::gs*
diff --git a/runtime/doc/diff.txt b/runtime/doc/diff.txt
index d9dc24d..01767f9 100644
--- a/runtime/doc/diff.txt
+++ b/runtime/doc/diff.txt
@@ -1,4 +1,4 @@
-*diff.txt*      For Vim version 7.3.  Last change: 2010 Nov 03
+*diff.txt*      For Vim version 7.3.  Last change: 2010 Dec 08
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -375,7 +375,7 @@
 
 The self-installing Vim for MS-Windows includes a diff program.  If you don't
 have it you might want to download a diff.exe.  For example from
-http://jlb.twu.net/code/unixkit.php.
+http://gnuwin32.sourceforge.net/packages/diffutils.htm.
 
 
 USING PATCHES					*diff-patchexpr*
diff --git a/runtime/doc/editing.txt b/runtime/doc/editing.txt
index 4a651d3..b03487d 100644
--- a/runtime/doc/editing.txt
+++ b/runtime/doc/editing.txt
@@ -1,4 +1,4 @@
-*editing.txt*   For Vim version 7.3.  Last change: 2010 Sep 18
+*editing.txt*   For Vim version 7.3.  Last change: 2010 Dec 08
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -1340,7 +1340,7 @@
 cannot be read without the right key.
 {only available when compiled with the |+cryptv| feature}  *E833*
 
-The text in the swap file and the undo file is also encrypted.
+The text in the swap file and the undo file is also encrypted.  *E843*
 
 Note: The text in memory is not encrypted.  A system administrator may be able
 to see your text while you are editing it.  When filtering text with
diff --git a/runtime/doc/eval.txt b/runtime/doc/eval.txt
index 4f4092b..43ff985 100644
--- a/runtime/doc/eval.txt
+++ b/runtime/doc/eval.txt
@@ -1,4 +1,4 @@
-*eval.txt*	For Vim version 7.3.  Last change: 2010 Nov 13
+*eval.txt*	For Vim version 7.3.  Last change: 2010 Dec 01
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -2720,7 +2720,7 @@
 
 expand({expr} [, {flag}])				*expand()*
 		Expand wildcards and the following special keywords in {expr}.
-		The result is a String.
+		The result is a String.  'wildignorecase' applies.
 
 		When there are several matches, they are separated by <NL>
 		characters.  [Note: in version 5.0 a space was used, which
@@ -2741,6 +2741,7 @@
 			<abuf>		autocmd buffer number (as a String!)
 			<amatch>	autocmd matched name
 			<sfile>		sourced script file name
+			<slnum>		sourced script file line number
 			<cword>		word under the cursor
 			<cWORD>		WORD under the cursor
 			<client>	the {clientid} of the last received
@@ -3434,6 +3435,7 @@
 		the 'suffixes' and 'wildignore' options apply: Names matching
 		one of the patterns in 'wildignore' will be skipped and
 		'suffixes' affect the ordering of matches.
+		'wildignorecase' always applies.
 		If the expansion fails, the result is an empty string.
 		A name for a non-existing file is not included.
 
@@ -5454,8 +5456,8 @@
 		{haystack} of the first occurrence of the String {needle}.
 		If {start} is specified, the search starts at index {start}.
 		This can be used to find a second match: >
-			:let comma1 = stridx(line, ",")
-			:let comma2 = stridx(line, ",", comma1 + 1)
+			:let colon1 = stridx(line, ":")
+			:let colon2 = stridx(line, ":", colon1 + 1)
 <		The search is done case-sensitive.
 		For pattern searches use |match()|.
 		-1 is returned if the {needle} does not occur in {haystack}.
diff --git a/runtime/doc/indent.txt b/runtime/doc/indent.txt
index 85370f9..8570486 100644
--- a/runtime/doc/indent.txt
+++ b/runtime/doc/indent.txt
@@ -1,4 +1,4 @@
-*indent.txt*    For Vim version 7.3.  Last change: 2010 Jul 30
+*indent.txt*    For Vim version 7.3.  Last change: 2010 Nov 27
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -258,6 +258,7 @@
 <
 	bN    If N != 0 Vim will align a final "break" with the case label,
 	      so that case..break looks like a sort of block.  (default: 0).
+	      When using 1, consider adding "0=break" to 'cinkeys'.
 
 		cino=		    cino=b1 >
 		  switch (x)	      switch(x)
diff --git a/runtime/doc/intro.txt b/runtime/doc/intro.txt
index c8a32c3..33eab76 100644
--- a/runtime/doc/intro.txt
+++ b/runtime/doc/intro.txt
@@ -1,4 +1,4 @@
-*intro.txt*     For Vim version 7.3.  Last change: 2010 Nov 03
+*intro.txt*     For Vim version 7.3.  Last change: 2010 Dec 08
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -616,7 +616,6 @@
 Command-line	 *3	  --	  --	 :start	    --		      --
 Ex		 :vi	  --	  --	 --	    --	      --
 
--  NA
 -- not possible
 
 *1 Go from Normal mode to Insert mode by giving the command "i", "I", "a",
@@ -730,7 +729,7 @@
 When the "lastline" flag is present in the 'display' option, you will not see
 '@' characters at the left side of window.  If the last line doesn't fit
 completely, only the part that fits is shown, and the last three characters of
-the last line are replaced with "@@@", like this: >
+the last line are replaced with "@@@", like this:
 
 	+-----------------------+
 	|first line		|
diff --git a/runtime/doc/options.txt b/runtime/doc/options.txt
index 49149cc..25f6c97 100644
--- a/runtime/doc/options.txt
+++ b/runtime/doc/options.txt
@@ -1,4 +1,4 @@
-*options.txt*	For Vim version 7.3.  Last change: 2010 Nov 16
+*options.txt*	For Vim version 7.3.  Last change: 2010 Dec 08
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -1439,7 +1439,7 @@
 			all operations except yank.  Yank shall copy the text
 			into register '+' and also into '*' when "unnamed" is
 			included.
-			Only available with the |+x11| feature.
+			Only available with the |+X11| feature.
 			Availability can be checked with: >
 				if has('unnamedplus')
 <
@@ -2861,6 +2861,9 @@
 	  file only, the option is not changed.
 	When 'binary' is set, the value of 'fileformats' is not used.
 
+	Note that when Vim starts up with an empty buffer this option is not
+	use.  Set 'fileformat' in your .vimrc instead.
+
 	For systems with a Dos-like <EOL> (<CR><NL>), when reading files that
 	are ":source"ed and for vimrc files, automatic <EOL> detection may be
 	done:
@@ -3218,7 +3221,8 @@
 	the internal format mechanism.
 
 	The expression may be evaluated in the |sandbox|, see
-	|sandbox-option|.
+	|sandbox-option|.  That stops the option from working, since changing
+	the buffer text is not allowed.
 
 						*'fsync'* *'fs'*
 'fsync' 'fs'		boolean	(default on)
@@ -6241,7 +6245,7 @@
 	Do smart autoindenting when starting a new line.  Works for C-like
 	programs, but can also be used for other languages.  'cindent' does
 	something like this, works better in most cases, but is more strict,
-	see |C-indenting|.  When 'cindent' is on or 'smartindent' is set,
+	see |C-indenting|.  When 'cindent' is on or 'indentexpr' is set,
 	setting 'si' has no effect.  'indentexpr' is a more advanced
 	alternative.
 	Normally 'autoindent' should also be on when using 'smartindent'.
@@ -7762,7 +7766,7 @@
 	uses another default.
 
 
-			*'wildignorecase* *'wic'* *'nowildignorecase* *'nowic'*
+			*'wildignorecase'* *'wic'* *'nowildignorecase'* *'nowic'*
 'wildignorecase' 'wic'	boolean	(default off)
 			global
 			{not in Vi}
diff --git a/runtime/doc/quickref.txt b/runtime/doc/quickref.txt
index a3e1149..5bf410e 100644
--- a/runtime/doc/quickref.txt
+++ b/runtime/doc/quickref.txt
@@ -1,4 +1,4 @@
-*quickref.txt*  For Vim version 7.3.  Last change: 2010 Sep 14
+*quickref.txt*  For Vim version 7.3.  Last change: 2010 Dec 02
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -934,6 +934,7 @@
 'wildchar'	  'wc'	    command-line character for wildcard expansion
 'wildcharm'	  'wcm'     like 'wildchar' but also works when mapped
 'wildignore'	  'wig'     files matching these patterns are not completed
+'wildignorecase'  'wic'     ignore case when completing file names
 'wildmenu'	  'wmnu'    use menu for command line completion
 'wildmode'	  'wim'     mode for 'wildchar' command-line expansion
 'wildoptions'	  'wop'     specifies how command line completion is done
diff --git a/runtime/doc/spell.txt b/runtime/doc/spell.txt
index 3533005..74aee81 100644
--- a/runtime/doc/spell.txt
+++ b/runtime/doc/spell.txt
@@ -1,4 +1,4 @@
-*spell.txt*	For Vim version 7.3.  Last change: 2010 Apr 11
+*spell.txt*	For Vim version 7.3.  Last change: 2010 Dec 08
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -335,6 +335,9 @@
 |spell-mkspell| about how to create a spell file.  Converting a spell file
 with "iconv" will NOT work!
 
+Note: on VMS ".{enc}.spl" is changed to "_{enc}.spl" to avoid trouble with
+filenames.
+
 						    *spell-sug-file* *E781*
 If there is a file with exactly the same name as the ".spl" file but ending in
 ".sug", that file will be used for giving better suggestions.  It isn't loaded
diff --git a/runtime/doc/syntax.txt b/runtime/doc/syntax.txt
index ae1e08d..40a0f02 100644
--- a/runtime/doc/syntax.txt
+++ b/runtime/doc/syntax.txt
@@ -1,4 +1,4 @@
-*syntax.txt*	For Vim version 7.3.  Last change: 2010 Oct 7
+*syntax.txt*	For Vim version 7.3.  Last change: 2010 Dec 08
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -901,8 +901,8 @@
 
 
 DOCBOOK					*docbk.vim* *ft-docbk-syntax* *docbook*
-DOCBOOK	XML				*docbkxml.vim* *ft-docbkxml-syntax*
-DOCBOOK	SGML				*docbksgml.vim* *ft-docbksgml-syntax*
+DOCBOOK XML				*docbkxml.vim* *ft-docbkxml-syntax*
+DOCBOOK SGML				*docbksgml.vim* *ft-docbksgml-syntax*
 
 There are two types of DocBook files: SGML and XML.  To specify what type you
 are using the "b:docbk_type" variable should be set.  Vim does this for you
diff --git a/runtime/doc/tags b/runtime/doc/tags
index c64874c..e5a5033 100644
--- a/runtime/doc/tags
+++ b/runtime/doc/tags
@@ -659,6 +659,8 @@
 'noweirdinvert'	options.txt	/*'noweirdinvert'*
 'nowfh'	options.txt	/*'nowfh'*
 'nowfw'	options.txt	/*'nowfw'*
+'nowic'	options.txt	/*'nowic'*
+'nowildignorecase'	options.txt	/*'nowildignorecase'*
 'nowildmenu'	options.txt	/*'nowildmenu'*
 'nowinfixheight'	options.txt	/*'nowinfixheight'*
 'nowinfixwidth'	options.txt	/*'nowinfixwidth'*
@@ -1064,10 +1066,12 @@
 'wh'	options.txt	/*'wh'*
 'whichwrap'	options.txt	/*'whichwrap'*
 'wi'	options.txt	/*'wi'*
+'wic'	options.txt	/*'wic'*
 'wig'	options.txt	/*'wig'*
 'wildchar'	options.txt	/*'wildchar'*
 'wildcharm'	options.txt	/*'wildcharm'*
 'wildignore'	options.txt	/*'wildignore'*
+'wildignorecase'	options.txt	/*'wildignorecase'*
 'wildmenu'	options.txt	/*'wildmenu'*
 'wildmode'	options.txt	/*'wildmode'*
 'wildoptions'	options.txt	/*'wildoptions'*
@@ -4219,6 +4223,9 @@
 E839	insert.txt	/*E839*
 E84	windows.txt	/*E84*
 E840	insert.txt	/*E840*
+E841	map.txt	/*E841*
+E842	cmdline.txt	/*E842*
+E843	editing.txt	/*E843*
 E85	options.txt	/*E85*
 E86	windows.txt	/*E86*
 E87	windows.txt	/*E87*
diff --git a/runtime/doc/todo.txt b/runtime/doc/todo.txt
index caa2fdd..10d1440 100644
--- a/runtime/doc/todo.txt
+++ b/runtime/doc/todo.txt
@@ -1,4 +1,4 @@
-*todo.txt*      For Vim version 7.3.  Last change: 2010 Nov 16
+*todo.txt*      For Vim version 7.3.  Last change: 2010 Dec 08
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -30,12 +30,6 @@
 							*known-bugs*
 -------------------- Known bugs and current work -----------------------
 
-Crash when using vimgrep with an ftp file. (Christian Brabandt, 2010 Nov 5)
-Crash with dragn-n-drop of file combined with netrw (Marius Gedminas, 2008 Jun
-11)  I can't reproduce it.  It's probably caused by a handle_drop() call
-in combination with autocommands that invoke a ":redraw" command.
-Another valgrind output Jun 30.
-
 'cursorline' is displayed too short when there are concealed characters and
 'list' is set, 'listchars' at default value. (Dennis Preiser, 2010 Aug 15)
 
@@ -58,19 +52,27 @@
 Building the MingW version without clipboard but with multi-byte doesn't
 work. (Bill Lam, 2010 Sep 18)
 
+When reading from stdin, don't enable signals before finishing reading?
+Otherwise the program producing the text may get killed by SIGWINCH.
+(Benjamin R. Haskell) Xavier: It's because reading from stdin returns -1.
+Patch from Xavier de Gaye, 2010 Dec 7.  More generic solution?
+
 Bug: E685 error for func_unref(). (ZyX, 2010 Aug 5)
 
 Using ":break" or something else that stops executing commands inside a
 ":finally" does not rethrow a previously uncaught exception. (ZyX, 2010 Oct
 15)
 
+Vim using lots of memory when joining lines. (John Little, 2010 Dec 3)
+
 string() can't parse back "inf" and "nan".  Fix documentation or fix code?
 (ZyX, 2010 Aug 23)
 
-maparg() does not show the <script> flag.  How to restore the script ID?
+maparg() does not show the <script> flag.  When temporarily changing a
+mapping, how to restore the script ID?
 
 Patch to fix \%V item in regexp. (Christian Brabandt, 2010 Nov 8)
-Not quite right.
+Update Nov 19.  James Vega: still not right.  Christian: it's difficult.
 
 Highlighting stops working after changing it many times.  Script to reproduce
 it: Pablo Contreras, 2010 Oct 12  Windows XP and 7.  Font is never freed?
@@ -78,21 +80,29 @@
 When 'cursorcolumn' is set locally to a window, ":new" opens a window with the
 same highlighting but 'cursorcolumn' is empty. (Tyru, 2010 Nov 15)
 
+In the sandbox it's not allowed to do many things, but it's possible to change
+or set variables.  Add a way to prevent variables from being changed in the
+sandbox?  E.g.: ":protect g:restore_settings".
+
 GTK: drawing a double-width combining character over single-width characters
 doesn't look right. (Dominique Pelle, 2010 Aug 8)
 
-GTK: patch to fix hitting Enter in a dialog. (Britton Kerin, 2010 Nov 11)
-
 GTK: tear-off menu does not work. (Kurt Sonnenmoser, 2010 Oct 25)
 
+Version of netbeans.c for use with MacVim. (Kazuki Sakamoto, 2010 Nov 18)
+
+7.3.014 changed how backslash at end of line works, but still get a NUL when
+there is one backslash. (Ray Frush, 2010 Nov 18)  What does the original ex
+do?
+
 ":find" completion does not escape space in directory name. (Isz, 2010 Nov 2)
 
+Searching mixed with Visual mode doesn't redraw properly. (James Vega, 2010 Nov
+22)
+
 Win32: When using Chinese tear-off menu doesn't work. (Weasley, 2010 Oct 31)
 Patch by Alex Jakushev, 2010 Nov 2.
 
-Using control characters in 'statusline' doesn't work well. (ZyX, 2010 Nov 1)
-Patch by Caio Ariede, 2010 Nov 3
-
 Using ":call" inside "if 0" does not see that a function returns a Dict and
 gives error for "." as string concatenation.  (Yasuhiro Matsumoto, 2010 Oct 20)
 Patch: Oct 20.
@@ -110,6 +120,14 @@
 Editing a file with a ^M with 'ff' set to "mac", opening a help file, then the
 ^M is displayed as ^J sometimes.  Getting 'ff' value from wrong window/buffer?
 
+Since patch 7.2.46 Yankring plugin has become very slow, eventually make Vim
+crash? (Raiwil, 2010 Nov 17)
+
+Patch to disallow fork() when __APPLE__ is defined. (Hisashi T Fujinaka, 2010
+Nov 25)
+
+GTK: Patch to fix menu popping down. (Hong Xu, 2010 Dec 4, Dec 5)
+
 Patch to add 'systemencoding', convert between 'encoding' and this for file
 names, shell commands and the like.  (Kikuchan, 2010 Oct 14)
 Assume the system converts between the actual encoding of the filesystem to
@@ -118,7 +136,8 @@
 Problem producing tags file when hebrew.frx is present.  It has a BOM.
 Results in E670. (Tony Mechelynck, 2010 May 2)
 
-Patch to support sorting on floating point number.
+Patch to support sorting on floating point number.  (Alex Jakushev, 2010 Oct
+30)
 
 Ruby: ":ruby print $buffer.number" returns zero.
 
@@ -179,6 +198,8 @@
 When 'lines' is 25 and 'scrolloff' is 12, "j" scrolls zero or two lines
 instead of one. (Constantin Pan, 2010 Sep 10)
 
+Crash in setqflist(). (Benoit Mortgat, 2010 Nov 18)
+
 Writing nested List and Dict in viminfo gives error message and can't be read
 back. (Yukihiro Nakadaira, 2010 Nov 13)
 
@@ -255,6 +276,8 @@
 mode. (Israel Chauca, 2010 May 13, more in second msg)
 Break undo when CTRL-R = changes the text?  Or save more lines?
 
+Patch for static code analysis errors in riscOS. (Dominique Pelle, 2010 Dec 3)
+
 Change to C syntax folding to make it work much faster, but a bit less
 reliable. (Lech Lorens, 2009 Nov 9)  Enable with an option?
 Most time is spent in in_id_list().
@@ -262,6 +285,8 @@
 Slow combination of folding and PHP syntax highlighting.  Script to reproduce
 it.  Caused by "syntax sync fromstart" in combination with patch 7.2.274.
 (Christian Brabandt, 2010 May 27)
+Generally, folding with 'foldmethod' set to "syntax" is slow.  Do profiling to
+find out why.
 
 When completion inserts the first match, it may trigger the line to be folded.
 Disable updating folds while completion is active? (Peter Odding, 2010 Jun 9)
@@ -427,6 +452,9 @@
 Directory wrong in session file, caused by ":lcd" in BufEnter autocommand.
 (Felix Kater, 2009 Mar 3)
 
+Session file generates error upon loading, cause bu --remote-silent-tab.
+(7tommm (ytommm) 2010 Nov 24)
+
 Using ~ works OK on 'a' with composing char, but not on 0x0418  with composing
 char 0x0301. (Tony Mechelynck, 2009 Mar 4)
 
@@ -543,9 +571,6 @@
 c.vim: XXX in a comment is colored yellow, but not when it's after "#if 0".
 (Ilya Dogolazky, 2009 Aug 7)
 
-Win32:  ":dis +" shows nothing, but "+p does insert text.  Problem with "* and
-"+ being the same thing?
-
 You can type ":w ++bad=x fname", but the ++bad argument is ignored.  Give an
 error message?  Or is this easy to implement?  (Nathan Stratton Treadway, 2008
 Aug 20)  This is in ucs2bytes(), search for 0xBF.  Using the ++bad argument is
@@ -582,9 +607,6 @@
 either.  Matt Wozniski:  nv_at() calls do_execreg() which uses
 put_in_typebuf().  Char mapped twice?
 
-8   Some file systems are case-sensitive, some are not.  Turn
-    CASE_INSENSITIVE_FILENAME into an option, at least for completion.
-
 Despite adding save_subexpr() this still doesn't work properly:
 Regexp: matchlist('12a4aaa', '^\(.\{-}\)\(\%5c\@<=a\+\)\(.\+\)\?')
 Returns ['12a4', 'aaa', '4aaa'], should be ['12a4', 'aaa', '']
@@ -640,6 +662,9 @@
 Mac: After a ":vsplit" the left scrollbar doesn't appear until 'columns' is
 changed or the window is resized.
 
+GTK: when setting 'columns' in a startup script and doing ":vertical diffsplit"
+the window isn't redrawn properly, see two vertical bars.
+
 Mac: Patch for configure: remove arch from ruby link args. (Knezevic, 2008
 Mar 5)  Alternative: Kazuki Sakamoto, Mar 7.
 
@@ -1149,8 +1174,8 @@
 Also: the window may no longer fit on the screen, thus the command line is not
 visible.
 
-GTK: when setting 'columns' in a startup script and doing ":vertical diffsplit"
-the window isn't redrawn properly, see two vertical bars.
+When right after "vim file", "M" then CTRL-W v the windows are scrolled
+differently and unexpectedly.  Caused by patch 7.2.398?
 
 The magic clipboard format "VimClipboard2" appears in several places.  Should
 be only one.
@@ -4105,6 +4130,9 @@
     should then mean the number of the last buffer.  E.g.: "4,$bdel".
 7   Add an option to mostly use slashes in file names.  Separately for
     internal use and for when executing an external program?
+8   Some file systems are case-sensitive, some are not.  Besides
+    'wildignorecase' there might be more parts inside
+    CASE_INSENSITIVE_FILENAME that are useful on Unix.
 
 
 Swap (.swp) files:
@@ -4503,6 +4531,8 @@
 3   Make "2d%" work like "d%d%" instead of "d2%"?
 7   "g CTRL-O" jumps back to last used buffer.	Skip CTRL-O jumps in the same
     buffer.  Make jumplist remember the last ten accessed buffers?
+7   Make it possible to set the size of the jumplist (also to a smaller number
+    than the default). (Nikolai Weibull)
 -   Add code to disable the CAPS key when going from Insert to Normal mode.
 -   Set date/protection/etc. of the patchfile the same as the original file.
 -   Use growarray for termcodes[] in term.c
diff --git a/runtime/doc/usr_41.txt b/runtime/doc/usr_41.txt
index 34740a4..fc0782f 100644
--- a/runtime/doc/usr_41.txt
+++ b/runtime/doc/usr_41.txt
@@ -1,4 +1,4 @@
-*usr_41.txt*	For Vim version 7.3.  Last change: 2010 Oct 31
+*usr_41.txt*	For Vim version 7.3.  Last change: 2010 Nov 17
 
 		     VIM USER MANUAL - by Bram Moolenaar
 
@@ -794,6 +794,7 @@
 	synIDattr()		get a specific attribute of a syntax ID
 	synIDtrans()		get translated syntax ID
 	synstack()		get list of syntax IDs at a specific position
+	synconcealed()		get info about concealing
 	diff_hlID()		get highlight ID for diff mode at a position
 	matchadd()		define a pattern to highlight (a "match")
 	matcharg()		get info about |:match| arguments
