Everywhere
| Keys | Action |
|---|---|
| F7 or Alt+↓ | Next difference (next conflict in a merge) |
| Shift+F7 or Alt+↑ | Previous difference (previous conflict in a merge) |
| Ctrl+W | Close the window (asks first if there are unsaved changes) |
Home screen
| Keys / mouse | Action |
|---|---|
| Enter in Left or Right | Start the comparison |
| Enter in Base, Mine, Theirs or Output | Start the merge |
| Drop files on the window | Fill the paths (and compare when two are dropped) |
Text compare
| Keys / mouse | Action |
|---|---|
| F7 / Alt+↓ | Next difference |
| Shift+F7 / Alt+↑ | Previous difference |
| Alt+→ | Copy the current difference to the right |
| Alt+← | Copy the current difference to the left |
| Ctrl+S | Save the edited side(s) |
| Ctrl+Z | Undo |
| Ctrl+Y or Ctrl+Shift+Z | Redo |
| F5 | Reload both files from disk |
| Ctrl+Home / Ctrl+End | Go to the top / bottom |
| Click a changed line | Make it the current difference |
| Double-click a line | Edit it (see line editor) |
| Arrow buttons in the middle gutter | Copy that difference right or left |
| Click or drag in the overview strip | Jump to that part of the file |
While the line editor is open, Ctrl+Z, Ctrl+Y, Ctrl+Home and Ctrl+End act on the text in the editor.
3-way merge
| Keys / mouse | Action |
|---|---|
| F7 / Alt+↓ | Next conflict (unresolved first) |
| Shift+F7 / Alt+↑ | Previous conflict |
| Alt+1 | Use mine |
| Alt+2 | Use theirs |
| Alt+3 | Mine, then theirs |
| Alt+4 | Theirs, then mine |
| Alt+5 | Use base |
| Alt+0 | Mark the conflict unresolved again |
| Ctrl+S | Save the merge result |
| Ctrl+Z | Undo |
| Ctrl+Y or Ctrl+Shift+Z | Redo |
| Shift+click Mine, Theirs, Mine + Theirs, Theirs + Mine or Base | Apply to every remaining unresolved conflict |
| Double-click a conflict in Mine or Theirs | Take that side |
| Double-click an output line | Edit it (resolve the conflict first) |
| Drag the bar above the output | Resize the panes |
Line editor
Opens when you double-click a line in the text compare or in the merge output.
| Keys | Action |
|---|---|
| Enter | Split the line at the cursor |
| Backspace at the start of a line | Join with the line above |
| Delete at the end of a line | Join the next line |
| ↑ / ↓ | Edit the line above / below, keeping the column |
| Page Up / Page Down | Move the editor 20 lines up / down |
| Tab | Insert a tab character |
| Esc | Close the editor |
| Ctrl+S | Save (works while editing) |
Folder compare
| Keys / mouse | Action |
|---|---|
| F7 / Alt+↓ | Next differing row (expands folders as needed) |
| Shift+F7 / Alt+↑ | Previous differing row |
| ↑ / ↓ | Select the previous / next row |
| Page Up / Page Down | Move the selection 20 rows |
| Ctrl+Home / Ctrl+End | Select the first / last row |
| → | Expand the folder, or step into it when already expanded |
| ← | Collapse the folder, or select its parent folder |
| Enter | Open the selected file pair in a new window (folders expand or collapse) |
| F5 | Scan both folders again |
| Enter in the Exclude box | Apply the exclude patterns |
| Double-click a row | Open the file pair, or expand / collapse the folder |
| Click the arrow before a folder | Expand / collapse it |
The tree keys are ignored while the Exclude box or the compare-mode list has focus.
Hex compare
| Keys / mouse | Action |
|---|---|
| F7 / Alt+↓ | Next differing range |
| Shift+F7 / Alt+↑ | Previous differing range |
| Ctrl+G | Go to offset (focuses the offset box) |
| Enter in the offset box | Jump to the offset (formats) |
| Esc in the offset box | Leave the box |
| Ctrl+Home / Ctrl+End | Go to the start / end |
| F5 | Reload both files |
| Click or drag in the overview strip | Jump to that part of the files |
DiffScope has no menu bar, so these keys and the toolbar buttons are the whole command set. Hover a toolbar button to see its shortcut.
