Summary
From a diff line (and/or a file-list entry), open that file at the corresponding line in an external editor (VS Code, Visual Studio, or a user-configured command).
Motivation
DiffViewer is a viewer — the natural next action after spotting something in a diff is "open this where I can edit it." Sublime Merge and GitKraken both offer jump-to-editor. Small, on-mission convenience that respects the focused-viewer boundary (we open an editor; we don't become one).
Competitive context
From a competitive review across Sublime Merge, GitKraken, VS Code, and the dedicated diff tools. Triaged as borderline / nice-to-have — small and on-mission, gated mainly on the editor-detection/config surface.
Sketch of scope
- A right-click action (and possibly a keyboard shortcut) on a diff line / file entry that launches
editor file:line.
- Editor selection: detect common editors (VS Code
code -g file:line, Visual Studio) and/or a Settings field for a custom command template with {file} / {line} placeholders.
- Only meaningful for the working-tree side / real on-disk paths — define behavior for commit-vs-commit and PR diffs where a side may be a blob with no working-tree file.
- Reuse the existing external-app launching surface (
IExternalAppLauncher) where possible.
Open questions
- Default editor when none configured / detected.
- What to do when the line maps to the "left" (historical) side that isn't on disk.
Out of scope
- Editing inside DiffViewer.
Filed from a competitive-research session; design + plan to follow before implementation.
Summary
From a diff line (and/or a file-list entry), open that file at the corresponding line in an external editor (VS Code, Visual Studio, or a user-configured command).
Motivation
DiffViewer is a viewer — the natural next action after spotting something in a diff is "open this where I can edit it." Sublime Merge and GitKraken both offer jump-to-editor. Small, on-mission convenience that respects the focused-viewer boundary (we open an editor; we don't become one).
Competitive context
From a competitive review across Sublime Merge, GitKraken, VS Code, and the dedicated diff tools. Triaged as borderline / nice-to-have — small and on-mission, gated mainly on the editor-detection/config surface.
Sketch of scope
editor file:line.code -g file:line, Visual Studio) and/or a Settings field for a custom command template with{file}/{line}placeholders.IExternalAppLauncher) where possible.Open questions
Out of scope
Filed from a competitive-research session; design + plan to follow before implementation.