Splitting git diff tools into the separate programs.difftastic module
made it impossible to register difftastic as a git difftool without also
forcing it as diff.external, since the boolean git.diffToolMode only
toggled between "external" and "external + difftool".
Replace git.diffToolMode with a git.mode enum ("external", "difftool",
"both") so difftastic can be wired as the difftool only, leaving
`git diff` untouched. The deprecated boolean is migrated automatically
via mkChangedOptionModule (true -> "both", false -> "external"),
preserving existing behavior.
Fixes #8592
|
||
|---|---|---|
| .. | ||
| default.nix | ||
| difftastic-basic.nix | ||
| difftastic-legacy-diff-tool-mode.nix | ||
| difftastic-migration.nix | ||
| difftastic-with-git-both.nix | ||
| difftastic-with-git-difftool.nix | ||
| difftastic-with-git-external-diff.nix | ||
| difftastic-with-git-integration.nix | ||