changeset 761:6252da4e8223

updated for version 7.0224
author vimboss
date Tue, 14 Mar 2006 23:07:19 +0000
parents 08360213aa1d
children 8a6982d59d8e
files runtime/doc/todo.txt runtime/doc/version7.txt src/ui.c
diffstat 3 files changed, 32 insertions(+), 15 deletions(-) [+]
line wrap: on
line diff
--- a/runtime/doc/todo.txt
+++ b/runtime/doc/todo.txt
@@ -1,4 +1,4 @@
-*todo.txt*      For Vim version 7.0aa.  Last change: 2006 Mar 13
+*todo.txt*      For Vim version 7.0aa.  Last change: 2006 Mar 14
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -31,21 +31,14 @@ be worked on, but only if you sponsor Vi
 -------------------- Known bugs and current work -----------------------
 
 -   UNDO TREE:
-    Make proper test for "g+" and "g-"
+    Make proper test for "g+" and "g-", :earlier, :later
     Verify there are no memory leaks.
-    Docs for "g+" and "g-", note in version7.txt
-    Command to jump so many seconds forward/backward?
-    Show the list of changes in a window to be able to select a version?
 
 Win32: Describe how to do debugging. (George Reilly)
 
-Mac unicode patch (Da Woon Jung):
--   Mac: Unicode input and display (Eckehard Berns)
-    Included patch from Da Woon Jung, not complete yet.
+Mac unicode patch (Da Woon Jung, Eckehard Berns):
 8   Add patch from Muraoka Taro (Mar 16) to support input method on Mac?
     New patch 2004 Jun 16
-- Add default key mappings for the command key (Alan Schmitt)
-    use http://macvim.org/OSX/files/gvimrc
 - selecting proportional font breaks display
 - UTF-8 text causes display problems.  Font replacement causes this.
 - Command-key mappings do not work. (Alan Schmitt)
--- a/runtime/doc/version7.txt
+++ b/runtime/doc/version7.txt
@@ -1,4 +1,4 @@
-*version7.txt*  For Vim version 7.0aa.  Last change: 2006 Mar 13
+*version7.txt*  For Vim version 7.0aa.  Last change: 2006 Mar 14
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -24,6 +24,7 @@ Omni completion				|new-omni-completion|
 MzScheme interface			|new-MzScheme|
 Printing multi-byte text		|new-print-multi-byte|
 Tab pages				|new-tab-pages|
+Undo branches				|new-undo-branches|
 Extended Unicode support		|new-more-unicode|
 More highlighting			|new-more-highlighting|
 Translated manual pages			|new-manpage-trans|
@@ -263,6 +264,28 @@ already running Vim server.
 More info here: |tabpage|
 
 
+Undo branches						*new-undo-branches*
+-------------
+
+Previously there was only one line of undo-redo.  If, after undoing a number
+of changes, a new change was made all the undone changes were lost.  This
+could lead to accidentally losing text.
+
+Vim now makes an undo branch in this situation.  Thus you can go back to the
+text after any change, even if they were undone.  So long as you do not run
+into 'undolevels', undo information is freed up to limit the memory use.
+
+To be able to navigate the undo branches each change is numbered sequentially.
+The commands |g-| and |:earlier| go back in time, to older changes.  The
+commands |g+| and |:later| go forward in time, to newer changes.  
+
+The changes are also timestamped.  Use ":earlier 10m" to go to the text as it
+was about ten minutes earlier.
+
+There is no graphical display of the tree with changes, navigation can be
+quite confusing.
+
+
 Extended Unicode support				*new-more-unicode*
 ------------------------
 
@@ -785,7 +808,7 @@ The Netbeans interface was updated for S
 goes from 2.2 to 2.3. (Gordon Prieur)
 
 Mac: When starting up Vim will load the $VIMRUNTIME/macmap.vim script to
-define default command-key mappings.
+define default command-key mappings. (mostly by Benji Fisher)
 
 Mac: Add the selection type to the clipboard, so that Block, line and
 character selections can be used between two Vims. (Eckehard Berns)
--- a/src/ui.c
+++ b/src/ui.c
@@ -1235,6 +1235,7 @@ clip_copy_modeless_selection(both)
 	    {
 		int	off;
 		int	i;
+		int	ci;
 
 		off = LineOffset[row];
 		for (i = start_col; i < end_col; ++i)
@@ -1246,12 +1247,12 @@ clip_copy_modeless_selection(both)
 		    else
 		    {
 			bufp += utf_char2bytes(ScreenLinesUC[off + i], bufp);
-			for (i = 0; i < Screen_mco; ++i)
+			for (ci = 0; ci < Screen_mco; ++ci)
 			{
 			    /* Add a composing character. */
-			    if (ScreenLinesC[i][off + i] == 0)
+			    if (ScreenLinesC[ci][off + i] == 0)
 				break;
-			    bufp += utf_char2bytes(ScreenLinesC[i][off + i],
+			    bufp += utf_char2bytes(ScreenLinesC[ci][off + i],
 									bufp);
 			}
 		    }