diff --git a/runtime/doc/eval.txt b/runtime/doc/eval.txt
index 837ba3c..563e4bb 100644
--- a/runtime/doc/eval.txt
+++ b/runtime/doc/eval.txt
@@ -1,4 +1,4 @@
-*eval.txt*      For Vim version 7.0aa.  Last change: 2006 Jan 20
+*eval.txt*      For Vim version 7.0aa.  Last change: 2006 Jan 24
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -3260,7 +3260,7 @@
 maparg({name}[, {mode}])				*maparg()*
 		Return the rhs of mapping {name} in mode {mode}.  When there
 		is no mapping for {name}, an empty String is returned.
-		These characters can be used for {mode}:
+		{mode} can be one of these strings:
 			"n"	Normal
 			"v"	Visual
 			"o"	Operator-pending
@@ -3268,7 +3268,7 @@
 			"c"	Cmd-line
 			"l"	langmap |language-mapping|
 			""	Normal, Visual and Operator-pending
-		When {mode} is omitted, the modes from "" are used.
+		When {mode} is omitted, the modes for "" are used.
 		The {name} can have special key names, like in the ":map"
 		command.  The returned String has special characters
 		translated like in the output of the ":map" command listing.
diff --git a/runtime/doc/quickfix.txt b/runtime/doc/quickfix.txt
index f97e634..6cd0878 100644
--- a/runtime/doc/quickfix.txt
+++ b/runtime/doc/quickfix.txt
@@ -42,6 +42,13 @@
 'errorformat' option should be set to match the error messages from your
 compiler (see |errorformat| below).
 
+						*location-list* *E776*
+A location list is a window-local quickfix list. Each window can have a
+separate location list. A location list can be associated with only one
+window. When a window with a location list is split, the new window gets a
+copy of the location list. When there are no references to a location list,
+the location list is destroyed.
+
 The following quickfix commands can be used:
 
 							*:cc*
@@ -56,18 +63,32 @@
 			The 'switchbuf' settings are respected when jumping
 			to a buffer.
 
+							*:ll*
+:ll[!] [nr]		Same as ":cc", except the location list for the
+			current window is used instead of the quickfix list.
+
 							*:cn* *:cnext* *E553*
 :[count]cn[ext][!]	Display the [count] next error in the list that
 			includes a file name.  If there are no file names at
 			all, go to the [count] next error.  See |:cc| for
 			[!] and 'switchbuf'.
 
+							*:ln* *:lnext*
+:[count]ln[ext][!]	Same as ":cnext", except the location list for the
+			current window is used instead of the quickfix list.
+
 :[count]cN[ext][!]			*:cp* *:cprevious* *:cN* *:cNext*
 :[count]cp[revious][!]	Display the [count] previous error in the list that
 			includes a file name.  If there are no file names at
 			all, go to the [count] previous error.  See |:cc| for
 			[!] and 'switchbuf'.
 
+					*:lp* *:lprevious* *:lN* *:lNext*
+:[count]lN[ext][!]
+:[count]lp[revious][!]	Same as ":cNext" and ":cprevious", except the location
+			list for the current window is used instead of the
+			quickfix list.
+
 							*:cnf* *:cnfile*
 :[count]cnf[ile][!]	Display the first error in the [count] next file in
 			the list that includes a file name.  If there are no
@@ -75,6 +96,10 @@
 			the [count] next error.  See |:cc| for [!] and
 			'switchbuf'.
 
+							*:lnf* *:lnfile*
+:[count]lnf[ile][!]	Same as ":cnfile", except the location list for the
+			current window is used instead of the quickfix list.
+
 :[count]cNf[ile][!]			*:cpf* *:cpfile* *:cNf* *:cNfile*
 :[count]cpf[ile][!]	Display the last error in the [count] previous file in
 			the list that includes a file name.  If there are no
@@ -82,17 +107,34 @@
 			the [count] previous error.  See |:cc| for [!] and
 			'switchbuf'.
 
+					*:lpf* *:lpfile* *:lNf* *:lNfile*
+:[count]lNf[ile][!]
+:[count]lpf[ile][!]	Same as ":cNfile" and ":cpfile", except the location
+			list for the current window is used instead of the
+			quickfix list.
+
 							*:crewind* *:cr*
 :cr[ewind][!] [nr]	Display error [nr].  If [nr] is omitted, the FIRST
 			error is displayed.  See |:cc|.
 
+							*:lrewind* *:lr*
+:lr[ewind][!] [nr]	Same as ":crewind", except the location list for the
+			current window is used instead of the quickfix list.
+
 							*:cfirst* *:cfir*
 :cfir[st][!] [nr]	Same as ":crewind".
 
+							*:lfirst* *:lfir*
+:lfir[st][!] [nr]	Same as ":lrewind".
+
 							*:clast* *:cla*
 :cla[st][!] [nr]	Display error [nr].  If [nr] is omitted, the LAST
 			error is displayed.  See |:cc|.
 
+							*:llast* *:lla*
+:lla[st][!] [nr]	Same as ":clast", except the location list for the
+			current window is used instead of the quickfix list.
+
 							*:cq* *:cquit*
 :cq[uit]		Quit Vim with an error code, so that the compiler
 			will not compile the same file again.
@@ -105,16 +147,31 @@
 			name of the errorfile, the 'errorfile' option will
 			be set to [errorfile].  See |:cc| for [!].
 
+							*:lf* *:lfile*
+:lf[ile][!] [errorfile]	Same as ":cfile", except the location list for the
+			current window is used instead of the quickfix list.
+			You can not use the -q command-line option to set
+			the location list.
+
 							*:cg* *:cgetfile*
 :cg[etfile][!] [errorfile]
 			Read the error file.  Just like ":cfile" but don't
 			jump to the first error.
 
+							*:lg* *:lgetfile*
+:lg[etfile][!] [errorfile]
+			Same as ":cgetfile", except the location list for the
+			current window is used instead of the quickfix list.
+
 							*:caddf* *:caddfile*
 :caddf[ile] [errorfile]	Read the error file and add the errors from the
 			errorfile to the current quickfix list. If a quickfix
 			list is not present, then a new list is created.
 
+							*:laddf* *:laddfile*
+:laddf[ile] [errorfile]	Same as ":caddfile", except the location list for the
+			current window is used instead of the quickfix list.
+
 						*:cb* *:cbuffer* *E681*
 :cb[uffer] [bufnr]	Read the error list from the current buffer.
 			When [bufnr] is given it must be the number of a
@@ -123,6 +180,10 @@
 			A range can be specified for the lines to be used.
 			Otherwise all lines in the buffer are used.
 
+						*:lb* *:lbuffer*
+:lb[uffer] [bufnr]	Same as ":cbuffer", except the location list for the
+			current window is used instead of the quickfix list.
+
 							*:cex* *:cexpr* *E777*
 :cex[pr][!] {expr}	Create a quickfix list using the result of {expr} and
 			jump to the first error.  If {expr} is a String, then
@@ -137,6 +198,10 @@
 				:cexpr system('grep -n xyz *')
 				:cexpr getline(1, '$')
 <
+							*:lex* *:lexpr*
+:lex[pr][!] {expr}	Same as ":cexpr", except the location list for the
+			current window is used instead of the quickfix list.
+
 							*:cad* *:caddexpr*
 :cad[dexpr][!] {expr}	Evaluate {expr} and add the resulting lines to the
 			current quickfix list. If a quickfix list is not
@@ -146,6 +211,10 @@
 			Example: >
     :g/mypattern/caddexpr expand("%") . ":" . line(".") .  ":" . getline(".")
 <
+							*:lad* *:laddexpr*
+:lad[dexpr][!] {expr}	Same as ":caddexpr", except the location list for the
+			current window is used instead of the quickfix list.
+
 							*:cl* *:clist*
 :cl[ist] [from] [, [to]]
 			List all errors that are valid |quickfix-valid|.
@@ -158,6 +227,15 @@
 :cl[ist]! [from] [, [to]]
 			List all errors.
 
+							*:lli* *:llist*
+:lli[st] [from] [, [to]]
+			Same as ":clist", except the location list for the
+			current window is used instead of the quickfix list.
+
+:lli[st]! [from] [, [to]]
+			List all the entries in the location list for the
+			current window.
+
 If you insert or delete lines, mostly the correct error location is still
 found because hidden marks are used.  Sometimes, when the mark has been
 deleted for some reason, the message "line changed" is shown to warn you that
@@ -182,14 +260,28 @@
 			the current window.  It is not possible to open a
 			second quickfix window.
 
+							*:lope* *:lopen*
+:lope[n] [height]	Open a window to show the location list for the
+			current window. Works only when the location list for
+			the current window is present. You can have more than
+			one location window opened at a time.  Otherewise,
+			same as ":copen".
+
 							*:ccl* *:cclose*
 :ccl[ose]		Close the quickfix window.
 
+							*:lcl* *:lclose*
+:lcl[ose]		Close the window showing the location list for the
+			current window.
+
 							*:cw* *:cwindow*
 :cw[indow] [height]	Open the quickfix window when there are recognized
 			errors.  If the window is already open and there are
 			no recognized errors, close the window.
 
+							*:lw* *:lwindow*
+:lw[indow] [height]	Same as ":cwindow", except use the window showing the
+			location list for the current window.
 
 Normally the quickfix window is at the bottom of the screen.  If there are
 vertical splits, it's at the bottom of the rightmost column of windows.  To
@@ -230,6 +322,19 @@
 window to a file and use ":cfile" to have it parsed and used as the new error
 list.
 
+						*location-list-window*
+The location list window displays the entries in a location list.  When
+opening a location list window, it is created just below the current window
+and displays the location list for the current window.  The location list
+window is similar to the quickfix window, except that you can have more than
+one location list window opened at a time.
+
+When an entry is selected from the location list window, the file is opened in
+the window with the corresponding location list.  If the window is not found,
+but the file is opened in another window, then cursor is moved to that window.
+Otherwise a new window is opened. The new window gets a copy of the location
+list.
+
 =============================================================================
 3. Using more than one list of errors			*quickfix-error-lists*
 
@@ -243,11 +348,19 @@
 			this [count] times.  When already at the oldest error
 			list, an error message is given.
 
+						*:lolder* *:lol*
+:lol[der] [count]	Same as ":colder", except use the location list for
+			the current window instead of the quickfix list.
+
 						*:cnewer* *:cnew* *E381*
 :cnew[er] [count]	Go to newer error list.  When [count] is given, do
 			this [count] times.  When already at the newest error
 			list, an error message is given.
 
+						*:lnewer* *:lnew*
+:lnew[er] [count]	Same as ":cnewer", except use the location list for
+			the current window instead of the quickfix list.
+
 When adding a new error list, it becomes the current list.
 
 When ":colder" has been used and ":make" or ":grep" is used to add a new error
diff --git a/runtime/doc/spell.txt b/runtime/doc/spell.txt
index aa9c4e4..f9559c8 100644
--- a/runtime/doc/spell.txt
+++ b/runtime/doc/spell.txt
@@ -1,4 +1,4 @@
-*spell.txt*	For Vim version 7.0aa.  Last change: 2006 Jan 23
+*spell.txt*	For Vim version 7.0aa.  Last change: 2006 Jan 25
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -1316,13 +1316,17 @@
 .SUG FILE						*spell-NOSUGFILE*
 
 When soundfolding is specified in the affix file then ":mkspell" will normally
-p ~ ~roduce a .sug file next to the .spl file.  This used to find suggestions by
-their sound-a-like form quickly.  At the cost of a lot of memory.
+produce a .sug file next to the .spl file.  This file is used to find
+suggestions by their sound-a-like form quickly.  At the cost of a lot of
+memory (the amount depends on the number of words, |:mkspell| will display an
+estimate when it's done).
 
 To avoid producing a .sug file use this item in the affix file:
 
 	NOSUGFILE ~
 
+Users can simply omit the .sug file if they don't want to use it.
+
 
 SOUND-A-LIKE						*spell-SAL*
 
diff --git a/runtime/doc/todo.txt b/runtime/doc/todo.txt
index aa6e2fe..2566b8c 100644
--- a/runtime/doc/todo.txt
+++ b/runtime/doc/todo.txt
@@ -1,4 +1,4 @@
-*todo.txt*      For Vim version 7.0aa.  Last change: 2006 Jan 23
+*todo.txt*      For Vim version 7.0aa.  Last change: 2006 Jan 25
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -30,10 +30,7 @@
 							*known-bugs*
 -------------------- Known bugs and current work -----------------------
 
-When ":silent" is used mode message is (should) not be displayed.  Thus don't
-set clear_cmdline to clear it.  Use separate flag to remember whether mode is
-currently displayed (and needs to be cleared).
-
+Include location list commands, patch from Yegappan Lakshmanan.
 
 ccomplete:
 - When an option is set: In completion mode and the user types (identifier)
@@ -62,7 +59,8 @@
 
 spelling:
 - Use runtime/cleanadd script to cleanup .add files.  When to invoke it?
-  After deleting a word and some timestamp difference perhaps?
+  After deleting a word with "zw" and some timestamp difference perhaps?
+  Store it as spell/cleanadd.vim.
 - suggestion for "KG" to "kg" when it's keepcase.
 - Autocommand event for when a spell file is missing.  Allows making a plugin
   that fetches the file over internet.  Pattern == language.
@@ -400,25 +398,9 @@
 
 Add gui_mch_browsedir() for Motif, Mac OS/X.
 
-Add extra list of file locations.  A bit like the quickfix list, but there is
-one per window.  Can be used with:
+Implement:
     :ltag	      list of matching tags, like :tselect
 Patch from Yegappan Lakshmanan, Jan 13.
-Commands to use the location list:
-    :lnext	      next location
-    :lprevious :lNext previous location
-    :lnfile	      location in next file
-    :lNfile :lpfile   location in previous file
-    :lrewind :lfirst  first location
-    :llast	      last location
-    :ll [N]	      go to location N (current one if N omitted)
-    :lwindow	      open window with locations (separate from quickfix window)
-    :lopen	      open window with locations
-    :lclose	      close window with locations
-    :llist	      list locations
-    :lfile	      read locations from file using 'errorformat'
-    :lgetfile	      idem, don't jump to first one
-    :lbuffer	      idem, from current buffer.
 
 HTML indenting can be slow, find out why.  Any way to do some kind of
 profiling for Vim script?  At least add a function to get the current time in
diff --git a/runtime/doc/version7.txt b/runtime/doc/version7.txt
index 0dcc713..ed929f3 100644
--- a/runtime/doc/version7.txt
+++ b/runtime/doc/version7.txt
@@ -1,4 +1,4 @@
-*version7.txt*  For Vim version 7.0aa.  Last change: 2006 Jan 22
+*version7.txt*  For Vim version 7.0aa.  Last change: 2006 Jan 25
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -1608,4 +1608,8 @@
 Win32 installer: The generated _vimrc contained an absolute path to diff.exe.
 After upgrading it becomes invalid.  Now use $VIMRUNTIME instead.
 
+The command line was cleared to often when 'showmode' was set and ":silent
+normal vy" was used.  Don't clear the command line unless the mode was
+actually displayed.  Added the "mode_displayed" variable.
+
  vim:tw=78:ts=8:ft=help:norl:
