updated for version 7.0084
diff --git a/runtime/doc/develop.txt b/runtime/doc/develop.txt
index cceda32..dc3d695 100644
--- a/runtime/doc/develop.txt
+++ b/runtime/doc/develop.txt
@@ -1,4 +1,4 @@
-*develop.txt*   For Vim version 7.0aa.  Last change: 2005 Jun 04
+*develop.txt*   For Vim version 7.0aa.  Last change: 2005 Jun 13
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -375,8 +375,10 @@
 
 - Missing support for multi-byte encodings.  At least UTF-8 must be supported,
   so that more than one language can be used in the same file.
+  Doing on-the-fly conversion is not always possible (would require iconv
+  support).
 - For the programs and libraries: Using them as-is would require installing
-  them separately from Vim.  That's not impossible, but a drawback.
+  them separately from Vim.  That's mostly not impossible, but a drawback.
 - Performance: A few tests showed that it's possible to check spelling on the
   fly (while redrawing), just like syntax highlighting.  But the mechanisms
   used by other code are much slower.  Myspell uses a simplistic hashtable,
@@ -392,7 +394,9 @@
   all English words and highlight non-Canadian words differently.
 - Missing support for rare words.  Many words are correct but hardly ever used
   and could be a misspelled often-used word.
-
+- For making suggestions the speed is less important and requiring to install
+  another program or library would be acceptable.  But the word lists probably
+  differ, the suggestions may be wrong words.
 
 ==============================================================================
 4. Assumptions						*design-assumptions*
diff --git a/runtime/doc/eval.txt b/runtime/doc/eval.txt
index 8c98ff0..a8d54a5 100644
--- a/runtime/doc/eval.txt
+++ b/runtime/doc/eval.txt
@@ -1,4 +1,4 @@
-*eval.txt*      For Vim version 7.0aa.  Last change: 2005 Jun 07
+*eval.txt*      For Vim version 7.0aa.  Last change: 2005 Jun 11
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -235,6 +235,18 @@
 	:echo alist == blist
 <	1
 
+Note about comparing lists: Two lists are considered equal if they have the
+same length and all items compare equal, as with using "==".  There is one
+exception: When comparing a number with a string and the string contains extra
+characters beside the number they are not equal. Example: >
+	echo 4 == "4x"
+<	1 >
+	echo [4] == ["4x"]
+<	0
+
+This is to fix the odd behavior of == that can't be changed for backward
+compatibility reasons.
+
 
 List unpack ~
 
@@ -2593,7 +2605,8 @@
 
 getwinvar({nr}, {varname})				*getwinvar()*
 		The result is the value of option or local window variable
-		{varname} in window {nr}.
+		{varname} in window {nr}.  When {nr} is zero the current
+		window is used.
 		This also works for a global option, buffer-local option and
 		window-local option, but it doesn't work for a global variable
 		or buffer-local variable.
@@ -3692,7 +3705,7 @@
 
 setwinvar({nr}, {varname}, {val})			*setwinvar()*
 		Set option or local variable {varname} in window {nr} to
-		{val}.
+		{val}.  When {nr} is zero the current window is used.
 		This also works for a global or local buffer option, but it
 		doesn't work for a global or local buffer variable.
 		For a local buffer option the global value is unchanged.
@@ -3804,6 +3817,7 @@
 			Number		123
 			Funcref		function('name')
 			List		[item, item]
+			Dictionary	{key: value, key: value}
 		Note that in String values the ' character is doubled.
 
 							*strlen()*
diff --git a/runtime/doc/intro.txt b/runtime/doc/intro.txt
index ee187c9..3f8e35d 100644
--- a/runtime/doc/intro.txt
+++ b/runtime/doc/intro.txt
@@ -1,4 +1,4 @@
-*intro.txt*     For Vim version 7.0aa.  Last change: 2005 Mar 29
+*intro.txt*     For Vim version 7.0aa.  Last change: 2005 Jun 12
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -198,7 +198,7 @@
 introduce Y2K problems, but those are not really part of Vim itself.
 
 ==============================================================================
-3. Credits						*credits* *author*
+3. Credits				*credits* *author* *Bram* *Moolenaar*
 
 Most of Vim was written by Bram Moolenaar <Bram@vim.org>.
 
diff --git a/runtime/doc/spell.txt b/runtime/doc/spell.txt
index 590b80e..aa7c745 100644
--- a/runtime/doc/spell.txt
+++ b/runtime/doc/spell.txt
@@ -1,4 +1,4 @@
-*spell.txt*	For Vim version 7.0aa.  Last change: 2005 Jun 08
+*spell.txt*	For Vim version 7.0aa.  Last change: 2005 Jun 13
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -51,7 +51,7 @@
 [S			Like "]S" but search backwards.
 
 
-To add words to your own word list:
+To add words to your own word list:				*E764*
 
 							*zg*
 zg			Add word under the cursor as a good word to
@@ -73,6 +73,21 @@
 |spell-wordlist-format|.
 
 
+Finding suggestions for bad words:
+
+							*z?*
+z?			For the badly spelled word under the cursor suggest
+			the correctly spelled word.
+			When there is no badly spelled word under the cursor
+			use the one after the cursor, in the same line.
+			The results are sorted on similarity to the badly
+			spelled word.
+			This may take a long time.  Hit CTRL-C when you are
+			bored.
+			You can enter the number of your choice or press
+			<Enter> if you don't want to replace.
+
+
 PERFORMANCE
 
 Note that Vim does on-the-fly spell checking.  To make this work fast the
@@ -170,6 +185,10 @@
 include characters like '-' in 'iskeyword'.  The word characters do depend on
 'encoding'.
 
+The table with word characters is stored in the main .spl file.  Therefore it
+matters what the current locale is when generating it!  A .add.spl file does
+not contain a word table.
+
 A word that starts with a digit is always ignored.  That includes hex numbers
 in the form 0xff and 0XFF.
 
@@ -224,6 +243,9 @@
 <			This combines the English word lists for US, CA and AU
 			into one en.spl file.
 			Up to eight regions can be combined. *E754* *755*
+			The REP and SAL items of the first .aff file where
+			they appear are used. |spell-affix-REP|
+			|spell-affix-SAL|
 
 			When the spell file was written all currently used
 			spell files will be reloaded.
@@ -452,4 +474,53 @@
 a typing mistake anyway.
 
 
+REPLACEMENTS						*spell-affix-REP*
+
+In the affix file REP items can be used to define common mistakes.  This is
+used to make spelling suggestions.  The items define the "from" text and the
+"to" replacement.  Example:
+
+	REP 4 ~
+	REP f ph ~
+	REP ph f ~
+	REP k ch ~
+	REP ch k ~
+
+The first line specifies the number of REP lines following.  Vim ignores it.
+
+
+SIMILAR CHARACTERS					*spell-affix-MAP*
+
+In the affix file MAP items can be used to define letters that very much
+alike.  This is mostly used for a letter with different accents.  This is used
+to prefer suggestions with these letters substituted.  Example:
+
+	MAP 2 ~
+	MAP eéëêè ~
+	MAP uüùúû ~
+
+The first line specifies the number of MAP lines following.  Vim ignores it.
+
+
+SOUNDS-A-LIKE						*spell-affix-SAL*
+
+In the affix file SAL items can be used to define the sounds-a-like mechanism
+to be used.  The main items define the "from" text and the "to" replacement.
+Example:
+
+	SAL CIA                  X ~
+	SAL CH                   X ~
+	SAL C                    K ~
+	SAL K                    K ~
+
+TODO: explain how it works.
+
+There are a few special items:
+
+	SAL followup		true ~
+	SAL collapse_result	true ~
+	SAL remove_accents	true ~
+
+"1" has the same meaning as "true".  Any other value means "false".
+
  vim:tw=78:sw=4:ts=8:ft=help:norl:
diff --git a/runtime/doc/tags b/runtime/doc/tags
index 7eb179e..76030d6 100644
--- a/runtime/doc/tags
+++ b/runtime/doc/tags
@@ -2835,6 +2835,7 @@
 B	motion.txt	/*B*
 BeBox	os_beos.txt	/*BeBox*
 BeOS	os_beos.txt	/*BeOS*
+Bram	intro.txt	/*Bram*
 BufAdd	autocmd.txt	/*BufAdd*
 BufCreate	autocmd.txt	/*BufCreate*
 BufDelete	autocmd.txt	/*BufDelete*
@@ -3805,6 +3806,7 @@
 Macintosh	os_mac.txt	/*Macintosh*
 Mark	motion.txt	/*Mark*
 MiNT	os_mint.txt	/*MiNT*
+Moolenaar	intro.txt	/*Moolenaar*
 MorphOS	os_amiga.txt	/*MorphOS*
 Motif	gui_x11.txt	/*Motif*
 MzScheme	if_mzsch.txt	/*MzScheme*
@@ -5125,6 +5127,7 @@
 hebrew.txt	hebrew.txt	/*hebrew.txt*
 help	various.txt	/*help*
 help-context	help.txt	/*help-context*
+help-tags	tags	1
 help-translated	various.txt	/*help-translated*
 help-xterm-window	various.txt	/*help-xterm-window*
 help.txt	help.txt	/*help.txt*
@@ -6250,9 +6253,12 @@
 spell	spell.txt	/*spell*
 spell-affix-KEP	spell.txt	/*spell-affix-KEP*
 spell-affix-RAR	spell.txt	/*spell-affix-RAR*
+spell-affix-REP	spell.txt	/*spell-affix-REP*
+spell-affix-SAL	spell.txt	/*spell-affix-SAL*
 spell-affix-chars	spell.txt	/*spell-affix-chars*
 spell-affix-mbyte	spell.txt	/*spell-affix-mbyte*
 spell-affix-vim	spell.txt	/*spell-affix-vim*
+spell-dic-format	spell.txt	/*spell-dic-format*
 spell-file-format	spell.txt	/*spell-file-format*
 spell-mkspell	spell.txt	/*spell-mkspell*
 spell-quickstart	spell.txt	/*spell-quickstart*
@@ -7070,6 +7076,7 @@
 z<CR>	scroll.txt	/*z<CR>*
 z<Left>	scroll.txt	/*z<Left>*
 z<Right>	scroll.txt	/*z<Right>*
+z?	spell.txt	/*z?*
 zA	fold.txt	/*zA*
 zC	fold.txt	/*zC*
 zD	fold.txt	/*zD*
diff --git a/runtime/doc/todo.txt b/runtime/doc/todo.txt
index a46f407..f33cc07 100644
--- a/runtime/doc/todo.txt
+++ b/runtime/doc/todo.txt
@@ -1,4 +1,4 @@
-*todo.txt*      For Vim version 7.0aa.  Last change: 2005 Jun 08
+*todo.txt*      For Vim version 7.0aa.  Last change: 2005 Jun 13
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -30,7 +30,15 @@
 							*known-bugs*
 -------------------- Known bugs and current work -----------------------
 
-New menu file doesn't work with older vim.  exists("spell") doesn't work?
+Range(0) should return an empty list (Servatius Brandt).
+
+a few builtin functions call set_var() internally to set a variable.  They do
+not check for a valid variable name.  Example: setbufvar(1, ";", 1) sets a
+variable named ";". (Servatius Brandt)
+
+Patch for if_python to make exit work better with threads. (ugo)
+Still seems to fail 15% of the time.
+Vim 7 breaks, works OK with 6.3 version of if_python (Thakkar)
 
 Add extra list of file locations.  Can be used with:
     :ltag	      list of matching tags, like :tselect
@@ -86,18 +94,25 @@
 -   Win32: tearoff menu window should have a scrollbar when it's taller than
     the screen.
 
-Patch for if_python to make exit work better with threads. (ugo)
-Still seems to fail 15% of the time.
 
 
 PLANNED FOR VERSION 7.0:
 
 -   Add SPELLCHECKER, with support for many languages.
     - Spell checking code todo's:
-	- How about making suggestions?  Use an external program like aspell?
-	  Or include the myspell suggestion code in Vim?
-	- Support for approximate-regexps will help with finding similar words
-	  (agrep http://www.tgries.de/agrep/).
+	- Code for making suggestions:
+	  - Also need to store "toupper" in the .spl file.
+	  - Give better score for words that sound like the bad word?
+	  - "sounds-like" matching: Also try variants of the soundslike word.
+	  - Aspell has the "special" character, useful?
+	  - Support for approximate-regexps will help with finding similar
+	    words (agrep http://www.tgries.de/agrep/).
+	- Give a warning for ":mkspell it_IT wordfile", thus using a region
+	  name with only one input file.
+	- Also put list of word characters in word list file.  Otherwise the
+	  one for Italian may differ from the one used for English.
+	- Somehow mark "frequent" words, so that suggestions with "a" and
+	  "the" can be preferred?
 	- Make "en-rare" spell file.
 	  Convention: use en_US (language_region) and en-rare (language-field)
           Add hl groups to 'spelllang'?
@@ -130,7 +145,8 @@
     Later:
     - Implement compound words when it works for Myspell.  Current idea has
       the problem that "foo/X" always allows "foofoo", there is no way to
-      specify a word can only be at the start or end.
+      specify a word can only be at the start or end, or that only certain
+      words combine.
 
 -   REFACTORING: The main() function is very long.  Move parts to separate
     functions, especially loops.  Ideas from Walter Briscoe (2003 Apr 3, 2004
@@ -266,7 +282,7 @@
 Add strtol() to avoid the problems with leading zero causing octal conversion.
 
 Try new POSIX tests, made after my comments. (Geoff Clare, 2005 April 7)
-Before April 23 if possible.
+Version 1.5 is in ~/src/posix/1.5. (Lynne Canal)
 
 Add a 'tool' window: behaves like a preview window but there can be several.
 Don't count it in only_one_window(). (Alexei Alexandrov)
@@ -2342,6 +2358,9 @@
 
 
 'cindent', 'smartindent':
+8   Wrong indent below ? : with ():
+	if ((a ? (b) : c) != 0)
+		       aligns with ":".
 8   Wrong indent for ":" after a method with line break in arguments:
 	Foo::Foo (int one,
 		    int two)
@@ -2927,12 +2946,8 @@
 8   When using ":mksession", also store a command to reset all options to
     their default value, before setting the options that are not at their
     default value.
-8   Should ":mksession" restore the current directory when writing the
-    session, or the directory where the session file is?  Probably need a word
-    in 'sessionoptions' to make a choice:
-    "curdir" (cd to current directory when session file was generated)
-    "sessiondir" (cd to directory of session file)
-    "nodir" (don't cd at all)
+7   With ":mksession" also store the tag stack and jump history. (Michal
+    Malecki)
 8   Make "old" number options that really give a number of effects into string
     options that are a comma separated list.  The old number values should
     also be supported.
diff --git a/runtime/doc/usr_11.txt b/runtime/doc/usr_11.txt
index 28900b2..05af29e 100644
--- a/runtime/doc/usr_11.txt
+++ b/runtime/doc/usr_11.txt
@@ -1,4 +1,4 @@
-*usr_11.txt*	For Vim version 7.0aa.  Last change: 2005 Apr 01
+*usr_11.txt*	For Vim version 7.0aa.  Last change: 2005 Jun 09
 
 		     VIM USER MANUAL - by Bram Moolenaar
 
@@ -34,7 +34,7 @@
 
 	Using swap file ".help.txt.swp" ~
 	Original file "~/vim/runtime/doc/help.txt" ~
-	Recovery completed.  You should check if everything is OK. ~
+	Recovery completed. You should check if everything is OK. ~
 	(You might want to write out this file under another name ~
 	and run diff with the original file to check for changes) ~
 	Delete the .swp file afterwards. ~
diff --git a/runtime/doc/usr_41.txt b/runtime/doc/usr_41.txt
index ebf44fa..1c0a09d 100644
--- a/runtime/doc/usr_41.txt
+++ b/runtime/doc/usr_41.txt
@@ -1,4 +1,4 @@
-*usr_41.txt*	For Vim version 7.0aa.  Last change: 2005 May 18
+*usr_41.txt*	For Vim version 7.0aa.  Last change: 2005 Jun 09
 
 		     VIM USER MANUAL - by Bram Moolenaar
 
@@ -612,13 +612,13 @@
 	join()			join List items into a String
 	string()		String representation of a List
 	call()			call a function with List as arguments
-	index()			index of a value in a list
+	index()			index of a value in a List
 	max()			maximum value in a List
 	min()			minimum value in a List
 	count()			count number of times a value appears in a List
 
 Dictionary manipulation:
-	get()			get an entries without error for wrong key
+	get()			get an entry without an error for a wrong key
 	len()			number of entries in a Dictionary
 	has_key()		check whether a key appears in a Dictionary
 	empty()			check if Dictionary is empty
@@ -1117,7 +1117,7 @@
 	one ~
 	two ~
 
-The will notice the items are not ordered.  You can sort the list to get a
+The will notice the keys are not ordered.  You can sort the list to get a
 specific order: >
 
 	:for key in sort(keys(uk2nl))
@@ -2237,8 +2237,8 @@
 
 You can put many other functions in the mylib.vim script, you are free to
 organize your functions in library scripts.  But you must use function names
-where the part before the colon matches the script name.  Otherwise Vim
-would not know what script to load.
+where the part before the '#' matches the script name.  Otherwise Vim would
+not know what script to load.
 
 If you get really enthousiastic and write lots of library scripts, you may
 want to use subdirectories.  Example: >
@@ -2256,7 +2256,7 @@
 	endfunction
 
 Notice that the name the function is defined with is exactly the same as the
-name used for calling the function.  And the part before the last colon
+name used for calling the function.  And the part before the last '#'
 exactly matches the subdirectory and script name.
 
 You can use the same mechanism for variables: >
diff --git a/runtime/doc/version7.txt b/runtime/doc/version7.txt
index 31f8ccb..322137f 100644
--- a/runtime/doc/version7.txt
+++ b/runtime/doc/version7.txt
@@ -1,4 +1,4 @@
-*version7.txt*  For Vim version 7.0aa.  Last change: 2005 Jun 07
+*version7.txt*  For Vim version 7.0aa.  Last change: 2005 Jun 13
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -144,6 +144,11 @@
 
 The 'spell' option is used to switch spell checking on or off.
 The 'spelllang' option is used to specify the languages that are accepted.
+The 'spellfile' option specifies where new words are added.
+
+The |[s| and |]s| commands can be used to move to the next or previous error.
+The |zg| and |zw| commands can be used to add good and wrong words.
+The |z?| command can be used to correct the word.
 
 The "undercurl" highlighting attribute was added to nicely point out spelling
 mistakes in the GUI (based on patch from Marcin Dalecki).
@@ -649,6 +654,9 @@
 GTK GUI: use the GTK file dialog when it's available.  Mix from patches by
 Grahame Bowland and Evan Webb.
 
+Added ":scriptnames" to bugreport.vim, so that we can see what plugins were
+used.
+
 ==============================================================================
 COMPILE TIME CHANGES					*compile-changes-7*
 
@@ -1074,6 +1082,7 @@
 
 When using a Python "atexit" function it was not invoked when Vim exits.  Now
 call Py_Finalize() for that. (Ugo Di Girolamo)
+This breaks the thread stuff though, fixed by Ugo.
 
 GTK GUI: using a .vimrc with "set cmdheight=2 lines=43" and ":split" right
 after startup, the window layout is messed up. (Michael Schaap)  Added