diff runtime/doc/usr_32.txt @ 2281:e41433ea71df vim73

Added ":earlier 1f" and ":later 1f".
author Bram Moolenaar <bram@vim.org>
date Sun, 27 Jun 2010 05:18:54 +0200
parents 7c8c7c95a865
children 12b829477c60
line wrap: on
line diff
--- a/runtime/doc/usr_32.txt
+++ b/runtime/doc/usr_32.txt
@@ -9,16 +9,40 @@ Vim provides multi-level undo.  If you u
 change you create a branch in the undo tree.  This text is about moving
 through the branches.
 
-|32.1|	Numbering changes
-|32.2|	Jumping around the tree
-|32.3|	Time travelling
+|32.1|	Undo up to a file write
+|32.2|	Numbering changes
+|32.3|	Jumping around the tree
+|32.4|	Time travelling
 
      Next chapter: |usr_40.txt|  Make new commands
  Previous chapter: |usr_31.txt|  Exploiting the GUI
 Table of contents: |usr_toc.txt|
 
 ==============================================================================
-*32.1*	Numbering changes
+*32.1*	Undo up to a file write
+
+Sometimes you make several changes, and then discover you want to go back to
+when you have last written the file.  You can do that with this command: >
+
+	:earlier 1f
+
+The "f" stands for "file" here.
+
+You can repeat this command to go further back in the past.  Or use a count
+diferent from 1 to go back faster.
+
+If you go back too far, go forward again with: >
+
+	:later 1f
+
+Note that these commands really work in time sequence.  This matters if you
+made changes after undoing some changes.  It's explained in the next section.
+
+Also note that we are talking about text writes here.  For writing the undo
+information in a file see |undo-persistence|.
+
+==============================================================================
+*32.2*	Numbering changes
 
 In section |02.5| we only discussed one line of undo/redo.  But it is also
 possible to branch off.  This happens when you undo a few changes and then
@@ -66,7 +90,7 @@ it.  But sometimes by the number of one 
 when moving up in the tree, so that you know which change was just undone.
 
 ==============================================================================
-*32.2*	Jumping around the tree
+*32.3*	Jumping around the tree
 
 So how do you get to "one two" now?  You can use this command: >
 
@@ -114,7 +138,7 @@ Using |:undo| is useful if you know what
 You can type a count before |g-| and |g+| to repeat them.
 
 ==============================================================================
-*32.3*	Time travelling
+*32.4*	Time travelling
 
 When you have been working on text for a while the tree grows to become big.
 Then you may want to go to the text of some minutes ago.
@@ -133,10 +157,10 @@ seconds with this command: >
 	:earlier 10s
 
 Depending on how much time you took for the changes you end up at a certain
-position in the tree.  The |:earlier| command argument can be "m" for minutes
-and "h" for hours.  To go all the way back use a big number: >
+position in the tree.  The |:earlier| command argument can be "m" for minutes,
+"h" for hours and "d" for days.  To go all the way back use a big number: >
 
-	:earlier 10h
+	:earlier 100d
 
 To travel forward in time again use the |:later| command: >
 
@@ -144,6 +168,11 @@ To travel forward in time again use the 
 
 The arguments are "s", "m" and "h", just like with |:earlier|.
 
+If you want even more details, or want to manipulate the information, you can
+use the |undotree()| function.  To see what it returns: >
+
+	:echo undotree()
+
 ==============================================================================
 
 Next chapter: |usr_40.txt|  Make new commands