When selecting patches, it would be nice to see the effect of the patch once
applied. I propose to add a '$' keybinding in SelectChanges.lhs. This keybinding
would open an external diff-viewer (like kdiff3 or emacs' emerge) between the
version of the working directory with all previously selected changes applied,
and the version of the file with also the current patch applied on top. This
relies on a merge tool that is able to compare directories rather than files
(kdiff3 and ediff are able to do this). This tool would have to be provided
either through an option, or through an environment variable $DARCS_DIFF_VIEWER.
I don't know of any such lightweight tool which we could use as a default
(kdiff3 and ediff depend on kde and emacs respectively), so we'd have to either
find one, write one ourselves, or ask the user for one whenever $ is pressed and
the option is not set.
|