diff --git a/README_os2.txt b/README_os2.txt
index 249f241..570c963 100644
--- a/README_os2.txt
+++ b/README_os2.txt
@@ -5,28 +5,28 @@
 
 
 NOTE: You will need two archives:
-  vim62rt.zip	contains the runtime files (same as for the PC version)
-  vim62os2.zip	contains the OS/2 executables
+  vim70rt.zip	contains the runtime files (same as for the PC version)
+  vim70os2.zip	contains the OS/2 executables
 
 1. Go to the directory where you want to put the Vim files.  Examples:
 	cd C:\
 	cd D:\editors
 
-2. Unpack the zip archives.  This will create a new directory "vim/vim62",
+2. Unpack the zip archives.  This will create a new directory "vim/vim70",
    in which all the distributed Vim files are placed.  Since the directory
    name includes the version number, it is unlikely that you overwrite
    existing files.
    Examples:
-	pkunzip -d vim62os2.zip
-	unzip vim62os2.zip
+	pkunzip -d vim70os2.zip
+	unzip vim70os2.zip
 
    After you unpacked the files, you can still move the whole directory tree
    to another location.
 
 3. Add the directory where vim.exe is to your path.  The simplest is to add a
    line to your autoexec.bat.  Examples:
-	set path=%path%;C:\vim\vim62
-	set path=%path%;D:\editors\vim\vim62
+	set path=%path%;C:\vim\vim70
+	set path=%path%;D:\editors\vim\vim70
 
 That's it!
 
@@ -41,10 +41,10 @@
 	C:\vim\_viminfo			Dynamic info for 'viminfo'.
 	C:\vim\...			Other files you made.
   Distributed files:
-	C:\vim\vim62\vim.exe		The Vim version 6.2 executable.
-	C:\vim\vim62\doc\*.txt		The version 6.2 documentation files.
-	C:\vim\vim62\bugreport.vim	A Vim version 6.2 script.
-	C:\vim\vim62\...		Other version 6.2 distributed files.
+	C:\vim\vim70\vim.exe		The Vim version 7.0 executable.
+	C:\vim\vim70\doc\*.txt		The version 7.0 documentation files.
+	C:\vim\vim70\bugreport.vim	A Vim version 7.0 script.
+	C:\vim\vim70\...		Other version 7.0 distributed files.
   In this case the $VIM environment variable would be set like this:
 	set VIM=C:\vim
 
diff --git a/runtime/compiler/msvc.vim b/runtime/compiler/msvc.vim
index 056225c..99fd35e 100644
--- a/runtime/compiler/msvc.vim
+++ b/runtime/compiler/msvc.vim
@@ -1,7 +1,7 @@
 " Vim compiler file
 " Compiler:	Miscrosoft Visual C
 " Maintainer:	Bram Moolenaar <Bram@vim.org>
-" Last Change:	2005 Jun 22
+" Last Change:	2005 Nov 30
 
 if exists("current_compiler")
   finish
@@ -9,5 +9,5 @@
 let current_compiler = "msvc"
 
 " The errorformat for MSVC is the default.
-setlocal errorformat&
-setlocal makeprg=nmake
+CompilerSet errorformat&
+CompilerSet makeprg=nmake
diff --git a/runtime/doc/syntax.txt b/runtime/doc/syntax.txt
index 579a530..02a4ea0 100644
--- a/runtime/doc/syntax.txt
+++ b/runtime/doc/syntax.txt
@@ -1,4 +1,4 @@
-*syntax.txt*	For Vim version 7.0aa.  Last change: 2005 Oct 12
+*syntax.txt*	For Vim version 7.0aa.  Last change: 2005 Nov 30
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -2135,29 +2135,58 @@
 
 RUBY						*ruby.vim* *ft-ruby-syntax*
 
-There are a few options to the Ruby syntax highlighting.
+There are a number of options to the Ruby syntax highlighting.
 
 By default, the "end" keyword is colorized according to the opening statement
-of the block it closes.  While useful, this feature can be expensive: if you
+of the block it closes.  While useful, this feature can be expensive; if you
 experience slow redrawing (or you are on a terminal with poor color support)
 you may want to turn it off by defining the "ruby_no_expensive" variable: >
+
 	:let ruby_no_expensive = 1
+
 In this case the same color will be used for all control keywords.
 
 If you do want this feature enabled, but notice highlighting errors while
 scrolling backwards, which are fixed when redrawing with CTRL-L, try setting
 the "ruby_minlines" variable to a value larger than 50: >
+
 	:let ruby_minlines = 100
+
 Ideally, this value should be a number of lines large enough to embrace your
 largest class or module.
 
-Finally, if you do not like to see too many color items around, you can define
+Highlighting of special identifiers can be disabled by defining
 "ruby_no_identifiers": >
+
 	:let ruby_no_identifiers = 1
+
 This will prevent highlighting of special identifiers like "ConstantName",
-"$global_var", "@instance_var", "| iterator |", and ":symbol".
+"$global_var", "@@class_var", "@instance_var", "| block_param |", and
+":symbol".
 
+Significant methods of Kernel, Module and Object are highlighted by default.
+This can be disabled by defining "ruby_no_special_methods": >
 
+	:let ruby_no_special_methods = 1
+
+This will prevent highlighting of important methods such as "require", "attr",
+"private", "raise" and "proc".
+
+Whitespace errors can be highlighted by defining "ruby_space_errors": >
+
+	:let ruby_space_errors = 1
+
+This will highlight trailing whitespace and tabs preceded by a space character
+as errors.  This can be refined by defining "ruby_no_trail_space_error" and
+"ruby_no_tab_space_error" which will ignore trailing whitespace and tabs after
+spaces respectively.
+
+Folding can be enabled by defining "ruby_fold": >
+
+	:let ruby_fold = 1
+
+This will set the 'foldmethod' option to "syntax" and allow folding of
+classes, modules, methods, code blocks, heredocs and comments.
 SCHEME						*scheme.vim* *ft-scheme-syntax*
 
 By default only R5RS keywords are highlighted and properly indented.
diff --git a/runtime/doc/todo.txt b/runtime/doc/todo.txt
index bd037fe..3a3689e 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 Nov 28
+*todo.txt*      For Vim version 7.0aa.  Last change: 2005 Dec 01
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -30,11 +30,6 @@
 							*known-bugs*
 -------------------- Known bugs and current work -----------------------
 
-Using chown() is unsafe. (Jinpeng Wei)
-    ex_cmds.c: viminfo tempfile: use mch_open(O_EXCL) and fdopen()
-    fileio.c: use fchown() instead of chown()
-    vim.h: define O_NOFOLLOW if needed.  Not in Vim 6.4?
-
 Go over all changes between 6.3 and 6.4 and make sure they are included in 7.
 
 Using ":read" in an empty buffer in Ex mode, then undo leaves a line behind.
@@ -47,8 +42,14 @@
 
 "make unixall": remove split in floppy-size archives.
 
+":helpgrep" sometimes results in wrong text in the error list:
+"^[.?!]\_[\])'"   ]\+"
+Using string that was freed or buffer that is overwritten?
+
 Using pipes for filter commands: provide some way to type a password, keep
-stderr in/out open for this?
+stderr in/out open for this? (Konstanti Rozinov)
+New problem: password is echoed.  Put terminal in cooked mode and don't read
+from terminal?
 
 To support mapping <F4> to be used as <F4>{motion}: Add operator that
 executes a user defined function. '[ and '] marks are at start and end of
@@ -60,13 +61,16 @@
 	:e ++enc=xxx ++bad=keep foo.txt
 	:e ++enc=xxx ++bad=drop foo.txt
 	:e ++enc=xxx ++bad=? foo.txt
+(patch 29 November)
+
+ml_get error with specific vimrc and lots of plugins. (Tomi Mickelsson)
 
 Win32: preserve the hidden attribute of the viminfo file.
 
 Add ":startgreplace" to do "gR", like ":startreplace" does "R".
 
 When 'delcombine' is set in Select mode before a character with a combining
-char the combinging char is deleted when it shouldn't. (Tony Mechelynck, Nov
+char the combining char is deleted when it shouldn't. (Tony Mechelynck, Nov
 27)
 
 ccomplete:
@@ -82,7 +86,7 @@
 
 spelling:
 - "z?" was to be used for searching in folded text.  Use something else for
-  suggestions.  "zu"?
+  suggestions.  "z="?
 - When a recognized word ends in a . don't have 'spellcapcheck" match it.
 - Use KEEPCASE instead of "KEP".  It applies to the word including affixes
   Hunspell also uses it.
@@ -96,11 +100,19 @@
     obtain).  But new Myspell wordlist will come (Hagen)
 - Finding suggestions with sound folding is slow.  Somehow store the
   sound-folded words and link to the words it comes from?
+- Also use the spelling dictionary for dictionary completion.
+- Have "zg" and "zw" report the file that was modified. (Marvin Renich)
+- Add a command like "zg" that selects one of the files 'spellfile'.
 
 When editing a file "a" that is a symbolic link to "b", while another Vim is
 editing "b", there is no warning.  Follow symlink to make swap file name?
 Patch from Stefano Zacchiroli.
 
+Support saving and restoring session for X windows?  It should work to do
+":mksession" and use "-S fname" for the restart command.  The
+gui_x11_wm_protocol_handler() already takes care of the rest.
+global_event_filter() for GTK.
+
 In diff mode deleting lines is very slow.  E.g., when diffing two .po files
 and then sourcing po/cleaup.vim.
 
@@ -123,7 +135,8 @@
 Mac: drop support for OS 9.  Most people are now using OS/X and Vim 6.4 can be
 used for others.  Will make maintaining the code simpler.
 
-Patch to add a few flags to search(). (Benji Fisher, Nov 22)
+Patch to add a few flags to search(). (Benji Fisher, Nov 29, doc update Dec 1)
+Also add search???() function that returns list with lnum and col.
 
 Win32: Use the free downloadable compiler 7.1.  Figure out how to do debugging
 (with Agide?) and describe it. (George Reilly)
@@ -289,7 +302,7 @@
     Roman, 2004 Dec 15.  Should then also work with Oracle Jdeveloper, see JSR
     198 standard http://www.jcp.org/en/jsr/detail?id=198.
     Eclim does it: http://eclim.sourceforge.net/  (Eric Van Dewoestine)
-    Plugin that uses a terminal emulator: http://ls10-www.cs.uni-dortmund.de/~menge/private/vimplugin.html
+    Plugin that uses a terminal emulator: http://vimplugin.sf.net
 -   STICKY CURSOR: Add a way of scrolling that leaves the cursor where it is.
     Especially when using the scrollbar.  Typing a cursor-movement command
     scrolls back to where the cursor is.
@@ -313,7 +326,7 @@
 -   Running a shell command from the GUI still has limitations.  Look into how
     the Vim shell project can help: http://vimshell.wana.at
 -   Displaying size of Visual area: use 24-33 column display.
-    When selecting multiple lines, up to about a screenfull, also count the
+    When selecting multiple lines, up to about a screenful, also count the
     characters.
 -   Mac: Unicode input and display (Eckehard Berns, 2004 June 27)
     Other patch from Da Woon Jung, 2005 Jan 16.
diff --git a/runtime/doc/version7.txt b/runtime/doc/version7.txt
index 65ecbc8..af59203 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 Nov 23
+*version7.txt*  For Vim version 7.0aa.  Last change: 2005 Dec 01
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -1407,4 +1407,7 @@
 In an empty line "ix<CTRL-O>0" moved the cursor to after the line instead of
 sticking to the first column.
 
+When using ":wq" and a BufWriteCmd autocmd uses inputsecret() the text was
+echoed anyway.  Set terminal to raw mode in getcmdline().
+
  vim:tw=78:ts=8:ft=help:norl:
diff --git a/runtime/keymap/persian-iranian_utf-8.vim b/runtime/keymap/persian-iranian_utf-8.vim
index c4f3960..2cd5699 100644
--- a/runtime/keymap/persian-iranian_utf-8.vim
+++ b/runtime/keymap/persian-iranian_utf-8.vim
@@ -1,10 +1,8 @@
 " Vim Keymap file for Persian Standard Keyboard Layout
-" Maintainers: Behnam Esfahbod <behnam@bamdad.org>,
-"	       Amir Hedayaty <amir@bamdad.org>
-" Last Change: 2004 May 16
+" Maintainers: Behnam 'ZWNJ' Esfahbod <behnam@zwnj.org>,
+"	       Amir Hedayaty <hedayaty@gmail.com>
+" Last Change: 2005 Nov 30
 
-" All characters are given literally, conversion to another encoding (e.g.,
-" UTF-8) should work.
 scriptencoding utf-8
 
 " Use this short name in the status line.
diff --git a/runtime/syntax/2html.vim b/runtime/syntax/2html.vim
index f03b54e..3317f73 100644
--- a/runtime/syntax/2html.vim
+++ b/runtime/syntax/2html.vim
@@ -1,6 +1,6 @@
 " Vim syntax support file
 " Maintainer: Bram Moolenaar <Bram@vim.org>
-" Last Change: 2005 Feb 26
+" Last Change: 2005 Dec 01
 "	       (modified by David Ne\v{c}as (Yeti) <yeti@physics.muni.cz>)
 "	       (XHTML support by Panagiotis Issaris <takis@lumumba.luc.ac.be>)
 
diff --git a/runtime/tools/README.txt b/runtime/tools/README.txt
index 3133f13..f5274df 100644
--- a/runtime/tools/README.txt
+++ b/runtime/tools/README.txt
@@ -18,8 +18,6 @@
 
 shtags.*:	Perl script to create a tags file from a shell script.
 
-tcltags:	Shell + Awk script to create a tags file from a TCL file.
-
 vim132:		Shell script to edit in 132 column mode on vt100 compatible
 		terminals.
 
diff --git a/src/memline.c b/src/memline.c
index 6633164..a2ec5b2 100644
--- a/src/memline.c
+++ b/src/memline.c
@@ -4541,6 +4541,9 @@
     {
 	curwin->w_cursor.lnum = lnum;
 	curwin->w_cursor.col = (colnr_T)boff;
+# ifdef FEAT_VIRTUALEDIT
+	curwin->w_cursor.coladd = 0;
+# endif
 	curwin->w_set_curswant = TRUE;
     }
     check_cursor();
diff --git a/src/search.c b/src/search.c
index 85689fc..5311141 100644
--- a/src/search.c
+++ b/src/search.c
@@ -5125,7 +5125,7 @@
     int		magic = FALSE;
     int		no_scs = FALSE;
     int		off_line = FALSE;
-    int		off_end = FALSE;
+    int		off_end = 0;
     long	off = 0;
     int		setlast = FALSE;
 #ifdef FEAT_SEARCH_EXTRA
