Implement support for calling different diff tools.#10
Implement support for calling different diff tools.#10OscarL wants to merge 2 commits intoHaikuArchives:masterfrom
Conversation
811663e to
005181a
Compare
This is a first, rough attempt. Options are: - Internal - Pe "diff mode" (pending Pe's PR #85) - kdiff3 (untested) - vimdiff (untested) Defaults to Internal for now, until saving/restore settings gets implemented.
005181a to
e9d495f
Compare
|
At the moment, we can only be sure that "Internal" and "Pe diff" is available (Pe being bundled with Haiku, may change in the future, so better check on that, too). I think the app should: |
|
Thanks for your feedback @humdingerb! I agree with your suggestions, of course! The main behaviour I wanted to achieve is, of course: You select too files, "Open with... PonpokoDiff", it uses the diff tool you have selected without popping up other dialog. And while tonight I managed to hack it enough to finally do that "silently use the previously selected diff tool when selecting two files", I created plenty of buggy behavior too :-( To make it work OK I think I would need to turn PonpokoDiff around a bit too much. I only really care about its "OpenDialogForDiffs", and not so much about its diffing capabilities. PonpokoDiff is more centered around its "DiffWindows" than on this "OpenDialog". Considering my limited skills. I'm starting to think that creating a new, simpler app, focused on just supporting external tools (Pe with PR#85 applied, mostly), might be my best option in the end (and simple enough as to let me learn/practice some BLayout GUI coding :-D). Guess time will tell if I manage to do either... or if a better programmer implements cleanly the "proof of concept" on this PR :-D. Thanks again! |
|
I once very briefly looked at changing this app to use layout management, but gave up for one reason or another. |
Agree! Will keep that good idea in mind, thanks. I think writing a proof-of-concept for that, using some |
|
👍 |
This is a first, rough attempt, at implementing support for different diff utilities. Current options are:
(untested)Defaults to Internal
for now, until saving/restore settings gets implemented., but remembers last selected choice.Opening this as a Draft, as to gather some feedback, to see if this sounds more or less OK, or I'm missing the mark by too much.
I guess we could allow adding custom diff tools by reading "tool_name=cmd_line %file1 %file2" or similar from a settings file. For now, mostly due to my limited skills (and short attention spans)... that will be left out as an "exercise for the reader" :-)
Preview (from before

mcdiffwas added):