diff --git a/runtime/doc/options.txt b/runtime/doc/options.txt
index a2c05f9..7b37b73 100644
--- a/runtime/doc/options.txt
+++ b/runtime/doc/options.txt
@@ -1,4 +1,4 @@
-*options.txt*	For Vim version 7.0aa.  Last change: 2005 Jun 21
+*options.txt*	For Vim version 7.0aa.  Last change: 2005 Jun 23
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -5640,10 +5640,17 @@
 			{not available when compiled without the |+syntax|
 			feature}
 	Name of the word list file where words are added for the |zg| and |zw|
-	commands.  It must end in ".add".
+	commands.  It must end in ".{encoding}.add".
 	When a word is added while this option is empty Vim will set it for
 	you: Using the first "spell" directory in 'runtimepath' that is
-	writable and the first language name that appears in 'spelllang'.
+	writable and the first language name that appears in 'spelllang',
+	ignoring the region.
+	The resulting ".spl" file will be used for spell checking, it does not
+	have to appear in 'spelllang'.
+	Normally one file is used for all regions, but you can add the region
+	name if you want to.  However, it will then only be used when
+	'spellfile' is set to it, for entries in 'spelllang' only files
+	without region name will be found.
 	This option cannot be set from a |modeline| or in the |sandbox|, for
 	security reasons.
 
@@ -5653,14 +5660,22 @@
 			{not in Vi}
 			{not available when compiled without the |+syntax|
 			feature}
-	A comma separated list of languages.  when the 'spell' option is on
-	spellchecking will be done for these languages.  Example: >
-		set spelllang=en_us,nl
-<	This means both US English and Dutch words are recognized.  Words that
-	are not recognized will be highlighted.
+	A comma separated list of word list names.  When the 'spell' option is
+	on spellchecking will be done for these languages.  Example: >
+		set spelllang=en_us,nl,medical
+<	This means US English, Dutch and medical words are recognized.  Words
+	that are not recognized will be highlighted.
+	The word list name must not include a comma or dot.  Using a dash is
+	recommended to separate the two letter language name from a
+	specification.  Thus "en-rare" is used for rare English words.
+	A region name must come last and have the form "_xx", where "xx" is
+	the two-letter, lower case region name.  You can use more than one
+	region by listing them: "en_us,en_ca" supports both US and Canadian
+	English, but not words specific for Australia, New Zealand or Great
+	Britain.
 	When 'encoding' is set the word lists are reloaded.  Thus it's a good
 	idea to set 'spelllang' after setting 'encoding'.
-	More info at |spell|.
+	How the related spell files are found is explained here: |spell-load|.
 
 						*'spellsuggest'* *'sps'*
 'spellsuggest' 'sps'	string	(default "best")
diff --git a/runtime/doc/spell.txt b/runtime/doc/spell.txt
index 9a72f3b..399fc67 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 22
+*spell.txt*	For Vim version 7.0aa.  Last change: 2005 Jun 23
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -104,10 +104,10 @@
 Note that Vim does on-the-fly spell checking.  To make this work fast the
 word list is loaded in memory.  Thus this uses a lot of memory (1 Mbyte or
 more).  There might also be a noticeable delay when the word list is loaded,
-which happens when 'spelllang' or 'spell' is set.  Each word list is only
-loaded once, they are not deleted when 'spelllang' is made empty or 'spell' is
-reset.  When 'encoding' is set the word lists are reloaded, thus you may
-notice a delay then too.
+which happens when 'spell' is set and when 'spelllang' is set while 'spell'
+was already set.  Each word list is only loaded once, they are not deleted
+when 'spelllang' is made empty or 'spell' is reset.  When 'encoding' is set
+all the word lists are reloaded, thus you may notice a delay then too.
 
 
 REGIONS
@@ -132,17 +132,27 @@
 |spell-wordlist-format|.
 
 
-SPELL FILES
+SPELL FILES						*spell-load*
 
 Vim searches for spell files in the "spell" subdirectory of the directories in
 'runtimepath'.  The name is: LL.EEE.spl, where:
 	LL	the language name
 	EEE	the value of 'encoding'
 
+The value for "LL" comes from 'spelllang', but excludes the region name.
+Examples:
+	'spelllang'	LL ~
+	en_us		en
+	en-rare		en-rare
+	medical_ca	medical
+
 Only the first file is loaded, the one that is first in 'runtimepath'.  If
 this succeeds then additionally files with the name LL.EEE.add.spl are loaded.
 All the ones that are found are used.
 
+Additionally, the file related to 'spellfile' is loaded.  This is the file
+that |zg| and |zw| add good and wrong words to.
+
 Exceptions:
 - Vim uses "latin1" when 'encoding' is "iso-8859-15".  The euro sign doesn't
   matter for spelling.
@@ -261,17 +271,20 @@
 Make sure your current locale is set properly, otherwise Vim doesn't know what
 characters are upper/lower case letters.  If the locale isn't available (e.g.,
 when using an MS-Windows codepage on Unix) add tables to the .aff file
-|spell-affix-chars|.
+|spell-affix-chars|.  If the .aff file doesn't define a table then the word
+table of the currently active spelling is used.  If spelling is not active
+then Vim will try to guess.
 
-:mksp[ell][!] [-ascii] {outname} {inname} ...		*:mksp* *:mkspell*
+							*:mksp* *:mkspell*
+:mksp[ell][!] [-ascii] {outname} {inname} ...
 			Generate a Vim spell file word lists.  Example: >
 		:mkspell nl nl_NL.words
-<
+<								*E751*
 			When {outname} ends in ".spl" it is used as the output
 			file name.  Otherwise it should be a language name,
-			such as "en".  The file written will be
-			{outname}.{encoding}.spl.  {encoding} is the value of
-			the 'encoding' option.
+			such as "en", without the region name.  The file
+			written will be "{outname}.{encoding}.spl", where
+			{encoding} is the value of the 'encoding' option.
 
 			When the output file already exists [!] must be added
 			to overwrite it.
@@ -327,8 +340,29 @@
    You may also need to change xx_YY.aff.
 4. Rename xx_YY.new.dic to xx_YY.orig.dic and xx_YY.new.aff to xx_YY.new.aff.
 
+
+SPELL FILE DUMP
+
+If for some reason you want to check what words are supported by the currently
+used spelling files, use this command:
+
+							*:spelldump* *:spelld*
+:spelld[ump]		Open a new window and fill it with all currently valid
+			words.
+			Note: For some languages the result may be huge and
+			Vim may run out of memory.
+
+The format of the word list is used |spell-wordlist-format|.  You should be
+able to read it with ":mkspell" to generate one .spl file that includes all
+the words.
+
+Only words for the current region are included.  No "/regions" line is
+generated.
+
+Comment lines are used to indicate which .spl file the words came from.
+
 ==============================================================================
-9. Spell file format					*spell-file-format*
+3. Spell file format					*spell-file-format*
 
 This is the format of the files that are used by the person who creates and
 maintains a word list.
@@ -505,10 +539,16 @@
 When the encoding is UTF-8 no word characters need to be specified.
 
 							*E763*
-All spell files for the same encoding must use the same word characters,
-otherwise they can't be combined without errors.  The XX.ascii.spl spell file
-generated with the "-ascii" argument will not contain the table with
-characters, so that it can be combine with spell files for any encoding.
+Vim allows you to use spell checking for several languages in the same file.
+You can list them in the 'spelllang' option.  As a consequence all spell files
+for the same encoding must use the same word characters, otherwise they can't
+be combined without errors.  If you get a warning that the word tables differ
+you may need to generate the .spl file again with |:mkspell|.  Check the FOL,
+LOW and UPP lines in the used .aff file.
+
+The XX.ascii.spl spell file generated with the "-ascii" argument will not
+contain the table with characters, so that it can be combine with spell files
+for any encoding.  The .add.spl files also do not contain the table.
 
 
 AFFIXES
diff --git a/runtime/doc/tags b/runtime/doc/tags
index fe6340e..c4d5d78 100644
--- a/runtime/doc/tags
+++ b/runtime/doc/tags
@@ -6255,6 +6255,7 @@
 special-buffers	windows.txt	/*special-buffers*
 speed-up	tips.txt	/*speed-up*
 spell	spell.txt	/*spell*
+spell-affix-BAD	spell.txt	/*spell-affix-BAD*
 spell-affix-FOL	spell.txt	/*spell-affix-FOL*
 spell-affix-KEP	spell.txt	/*spell-affix-KEP*
 spell-affix-LOW	spell.txt	/*spell-affix-LOW*
diff --git a/runtime/indent/docbk.vim b/runtime/indent/docbk.vim
index 6b807bb..297ad04 100644
--- a/runtime/indent/docbk.vim
+++ b/runtime/indent/docbk.vim
@@ -5,9 +5,15 @@
 " Latest Revision:  2004-05-22
 " arch-tag:	    3d073af7-1d69-42a2-99ad-9a49a21eb28f
 
+if exists("b:did_indent")
+    finish
+endif
+
 " Same as XML indenting for now.
 runtime! indent/xml.vim
 
-setlocal indentexpr=XmlIndentGet(v:lnum,0)
+if exists('*XmlIndentGet')
+  setlocal indentexpr=XmlIndentGet(v:lnum,0)
+endif
 
 " vim: set sts=2 sw=2:
diff --git a/runtime/spell/en.latin1.spl b/runtime/spell/en.latin1.spl
index 38c4c9c..dadeb9c 100644
--- a/runtime/spell/en.latin1.spl
+++ b/runtime/spell/en.latin1.spl
Binary files differ
diff --git a/src/proto/spell.pro b/src/proto/spell.pro
index 2771a90..900f3bf 100644
--- a/src/proto/spell.pro
+++ b/src/proto/spell.pro
@@ -11,4 +11,5 @@
 void init_spell_chartab __ARGS((void));
 void spell_suggest __ARGS((void));
 void spell_suggest_list __ARGS((garray_T *gap, char_u *word, int maxcount));
+void ex_spelldump __ARGS((exarg_T *eap));
 /* vim: set ft=c : */
diff --git a/src/screen.c b/src/screen.c
index 6fb5931..595058a 100644
--- a/src/screen.c
+++ b/src/screen.c
@@ -2504,8 +2504,8 @@
     int		has_spell = FALSE;	/* this buffer has spell checking */
 # define SPWORDLEN 150
     char_u	nextline[SPWORDLEN * 2];/* text with start of the next line */
-    int		nextlinecol;		/* column where nextline[] starts */
-    int		nextline_idx;		/* index in nextline[] where next line
+    int		nextlinecol = 0;	/* column where nextline[] starts */
+    int		nextline_idx = 0;	/* index in nextline[] where next line
 					   starts */
     int		spell_attr = 0;		/* attributes desired by spelling */
     int		word_end = 0;		/* last byte with same spell_attr */
diff --git a/src/version.h b/src/version.h
index 7307eb2..01c298e 100644
--- a/src/version.h
+++ b/src/version.h
@@ -36,5 +36,5 @@
 #define VIM_VERSION_NODOT	"vim70aa"
 #define VIM_VERSION_SHORT	"7.0aa"
 #define VIM_VERSION_MEDIUM	"7.0aa ALPHA"
-#define VIM_VERSION_LONG	"VIM - Vi IMproved 7.0aa ALPHA (2005 Jun 22)"
-#define VIM_VERSION_LONG_DATE	"VIM - Vi IMproved 7.0aa ALPHA (2005 Jun 22, compiled "
+#define VIM_VERSION_LONG	"VIM - Vi IMproved 7.0aa ALPHA (2005 Jun 23)"
+#define VIM_VERSION_LONG_DATE	"VIM - Vi IMproved 7.0aa ALPHA (2005 Jun 23, compiled "
