vi21maobk9vp comments on Tool ideology - Less Wrong

25 Post author: PhilGoetz 09 September 2011 10:37PM

You are viewing a comment permalink. View the original post to see all comments and the full post content.

Comments (66)

You are viewing a single comment's thread. Show more comments above.

Comment author: vi21maobk9vp 14 September 2011 08:04:57AM 3 points [-]

It looks like an estimation, not a VCS link.

Think of it this way: Vim undo history is a tree which you can walk visiting every branch (not that it's a thing you want to do). Now, writing all this data out has some cost in IO bandwidth - comparable to bandwidth of the keyboard, i.e. kBytes/minute. Vim users don't notice the cost of maintaining the tree in RAM.

Synchronising it at first opportunity is also not hard if you do it in the background and so latency can be tolerated most of the time.

The merges.. you can try to do them mostly on marked commits, and then they can be done just like they are done now.

But implementing all that is a great undertaking, to be sure.

Comment author: PhilGoetz 21 September 2011 08:09:18PM 5 points [-]

Wait - vim undo is a tree? So I can get back the revisions that I lost by undoing the last 100 operations and then carelessly inserting a character? HOW?

Comment author: wedrifid 21 September 2011 08:49:17PM 3 points [-]

Wow! It is? I had no idea!

From the looks of it this script might be a helpful way to use the feature.

Comment author: vi21maobk9vp 21 September 2011 08:48:58PM 2 points [-]

Well, now that you new that it is there, you could just type :help undo-tree. Basically, it is about g+/g-.

And the next chapter of undo.txt tells you about saving undo history.

Comment author: sketerpot 14 September 2011 11:29:12PM 2 points [-]

The limiting case of merge frequency is to do a branch and merge on every keystroke, and create something like Etherpad. This is completely practical.

Comment author: RobinZ 14 September 2011 02:25:16PM 0 points [-]

Ooh, I hadn't thought about it that way - sure, it'd take thousands of those to clog a modern high-speed connection.