On Mon, Jun 2, 2008 at 9:40 PM, Kevin Grover <kevin_at_kevingrover.net> wrote:
> On Mon, Jun 2, 2008 at 8:01 PM, Hedley Finger <hfinger_at_handholding.com.au>
> wrote:
>
>>
>> I want to use TortoiseSVN as the poor man's CMS for my XML project (based
>> on DITA DTDs). The built-in diff-merge is line oriented, as are many other
>> diff tools intended for programmers. This can lead to excessive flagging of
>> differences in XML files which, by XML conventions for white space,
>> linebreaks, attribute order, etc. are perfectly identical.
>>
>> Has anybody successfully used <oXygen/> as an XML diff-merge tool with
>> TortoiseSVN or any other programming version management programme? How do
>> you set TortoiseSVN up to invoke <oXygen/> and pass filename parameters,
>> etc.?
>>
>> Any help received will earn my undying and pathetic gratitude!
>>
>
>
> You just need a diff wrapper. I have one I use for meld, that I just
> modified and it almost works for oXygen diff. The command 'diffFiles' is
> linked at /usr/bin for me. My script assumes that it's in the path. If
> not, just modify the command to point to where ever it is. It should be in
> the same directory as the oxygen binary.
>
> This script is for Unix, it should be simple to convert it to a batch
> script for windows.
>
> ------- svn-diff-oxygen
> #!/bin/sh
> # $Id$
> # $URL$
> #
> # SVN Diff Wrapper for oXygen diff
> #
> # KOG 2008-06
> #
> # alias sd='svn diff --diff-cmd ~/bin/svn-diff-oxygen'
>
> left="$6"
> right="$7"
>
> diffFiles "$left" "$right"
> ------- end: svn-diff-oxygen
>
> for a windows batch file, just change the left= and right= lines to:
>
> set left=%6
> set right=%7
>
In case it's not incredibly obvious, the comments and bang line need to be
fixed also:
@echo off
@ $Id$
@ $URL$
@
@ SVN Diff Wrapper for oXygen diff
@
@ KOG 2008-06
set left=%6
set right=%7
diffFiles "$left" "$right"
>
> When I tried this, it seemed to work, but kept asking my to choose a file
> type: I stopped playing with it then. I use a similar script
> (svn-diff-meld) to invoke meld all the time.
>
> Notice: I set an alias called 'sd' (the command used is a comment in the
> script) to invoke svn diff with the gui wrapper. You can also edit the svn
> configuration (~/.subversion/config, or %APPDATA%\Subversion\config in
> windows) to have this happen all the time, but then patching (and any
> scripts that depend on generating a text svn diff) will stop working. For
> windows, I would just create an sb.bat script.
>
> Note: the above is for SVN (cli only). Since this is the SVN group.
>
> If you just want TSVN to use it, you should really post to the TSVN group.
> TSVN has options to set a diff command based on extensions. Look at the
> options pages. Just add one for XML files that uses the diffFiles command
> life above.
>
> - Kevin
>
>
Received on 2008-06-03 06:42:43 CEST