monotone-devel
[Top][All Lists]
Advanced

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

[Monotone-devel] Re: Text under revision control


From: Hendrik Boom
Subject: [Monotone-devel] Re: Text under revision control
Date: Thu, 5 Mar 2009 15:18:12 +0000 (UTC)
User-agent: Pan/0.132 (Waxed in Black)

On Mon, 02 Mar 2009 13:43:40 -0500, Ethan Blanton wrote:

> address@hidden spake unto us the following wisdom:
>> Now the VCS could use a different difference algorithm when processing
>> them.  Or it could unpack them into something easier to process (like a
>> sequence of words instead of lines).  Or the word-processor could use a
>> better file-format, or be careful to preserve the locations of the
>> meaningless line numbers in the file, or insert many of them in
>> standard places (such as sentence breaks, or punctuation, or between
>> every two words).
> 
> Note that gnu wdiff works reasonably well with several plain-text
> formats, notably latex.  I use wdiff + latex + VCS quite often, with
> reasonably satisfactory results.  There is no 'wpatch', so wdiff is
> useful mainly for review, but that's OK -- one generally doesn't care
> how the VCS actually *stores* the diffs.
> 
> I've not integrated wdiff with monotone's external diff hooks, but I
> don't see why it couldn't be done.

I've considered these matters, and it raises a few questions.

(1) With monotone as it is now, would there be incompatibilities if I 
were to use a wdiff merge hook, and I sync with other data bases that do 
not?

(2) The simplest such hook would seem to be a procedure that breaks the 
input file into s sequence of one-word lines (more or less) then calls 
monotone's default merge to process those, and then converts the result 
back.  Is a default-merge callback available to the lua?

(3) Is there a technical reason why the default merge views files as 
sequences of lines to be inserted, removes, or kept instead of some other 
view, such as a sequence of bytes to be inserted, removed, or kept?  The 
latter would seem to be able to reduce the number of merge conflicts we 
encounter, and increase the number of file formats we play nice with.

-- hendrik





reply via email to

[Prev in Thread] Current Thread [Next in Thread]