[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Please brainstorm: Word-processor compatible with version control



I'd like a word processor compatible with version control systems 
(hereafter abbreviated VCS)  Having been duly impressed for decades now 
how useful VCSs are for programming, I'd like to use them for writing as 
well.

I use monotone as my VCS. but I don't suppose my trials are unique to 
monotone.

There are a few other requirements, too, such as ability to export to 
file formats often demanded by publishers (such as pdf, Word, and plain 
ASCII text)

Here are more details.  Most of the problems is that the file formats 
inflate tiny changes to huge changes.

(1) When I arrive at two versions of a document (maybe one has spelling 
error corrected, and the other is rewritten from a different POV), I'd 
like to be able to merge the changes.  Now often there are one-word 
changes that appear on the same line of text.  Conventional merge tools 
just register this as a conflict, even though it's trivial to resolve.  
THis is because VCS's tend to be line-oriented.

(2) Word processors tend to insert an overkill of layout information.  
Often a simple change of layout policy causes every line of the text to 
be changed, leaving proper merging hopeless.  In the past, Abiword 
suffered form this.  I have no idea if it still does.  Precise layout 
information belongs in a style sheet, not in the main text.  I thought 
this was understood since the days of SGML.

(3) Word processors that leave text in a human-readable form (properly 
word-wrapped, for example) cause insertion of a single character (such as 
a spelling change) to affect the layout of entire paragraphs.

(4) Word processors that use a binary file format are hopelessly 
inaccessible to a VCS.  Word and WordPerfect are examples of this.  So is 
the ODT file format used by Open Office.

I'm currently using an ad-hoc notation in UTF-8, edited in emacs, 
formatted by homebrew code.  I'm careful never to change the source 
layout significantly while editing, but even so I have trouble merging 
multiple independent changes within a line.  Breaking it all up into a 
sequence of one-word lines is technically feasible,m and will work with 
most VCS's, but is a holeless way to edit.

I suspect I'll be able to hack up something to export to *some* of the 
more conventional file-formats.  I'm alreday producing Postscript my 
printer will take, and a weird mark-up that cuts and pastes well into 
Livejournal.

Isn't there something that already does most of what I really need?

-- hendrik





Reply to: