Keys & console
The two-row shortcut bar sits below the command line. The first row has the function keys; the second has search, collections, and other shortcuts that depend on what you are doing. You can click both rows. Notices replace the second row for a moment.
| Key | Action |
|---|---|
| Up, Down, PgUp, PgDn, Home, End | Move |
| Enter, Right | Open a folder / run or view a file |
| Left | Go to the parent folder |
| Ctrl-PgDn / Ctrl-PgUp | Open the folder or archive under the cursor / go to the parent folder |
| Tab | Switch panels, or move into the quick preview and back to the file list |
| Ctrl-O | Show the shell / return to the panels |
| Alt-I | Count folder sizes in the background / stop counting |
| Ctrl-S | Quick find in the folder |
| Ctrl-\ | Folder hotlist: jump to a pinned or recent folder |
| Ctrl-Q | Quick view: preview the file under the cursor (text, picture or folder) in the other panel |
| Ctrl-L | Info: show size, permissions, owner, dates, free space and the drive in the other panel |
| Insert, Ctrl-T, Shift-Up/Down | Mark files |
+ - * |
Select, unselect or invert by pattern (*.rs, build/) |
| Alt-Enter | Put the marked names (or the current one) on the command line; on .., the parent folder’s path |
| Ctrl-Insert / Alt-Shift-Insert | Copy the marked names / their full paths |
| Shift-F10 | Context menu: what you can copy from the item under the cursor and the keys that act on it |
| Shift-Enter, Ctrl-J | Insert a line break at the cursor on the command line; Enter runs the command, Ctrl-C clears it |
| Alt-A / Alt-Shift-A | Put the path of this panel’s / the other panel’s folder on the command line |
| Shift-PgUp / Shift-PgDn | Scroll back and forth through console output |
| Shift-Home / Shift-End | Go to the oldest console output / back to the live prompt |
| Ctrl-P / Ctrl-N, Ctrl-R | Shell history: previous / next command, search (handled by your shell) |
| Alt-. | Show hidden files |
| Alt-R | Reload the active panel: its folder, search results or collection |
| Alt-H | Remote hosts: paired machines and their sessions |
| Alt-Shift-Left/Right | Resize the panels |
| Ctrl-U | Swap panels |
| Alt-O | Open this panel’s folder in the other panel; in search results or a collection, the folder of the file under the cursor |
| Alt-J | Jobs: pause or cancel running copies, moves and deletes |
| Alt-M | Activity monitor: processes and memory |
| Alt-C | Docker: Compose projects and containers |
| Alt-N | Network: ports, connections and traffic |
| Alt-U | Startup items: what starts on its own, newest change first |
| Alt-L | Alerts: what the process watcher found |
| Alt-T | Time Machine: what backups leave out, on macOS |
| Alt-E | Edit the selected file in this panel, in place of its files, or in the other panel beside results |
| F1 | About |
| F2 | File menu |
| F3 | View (text or picture) |
| F4 / Shift-F4 | Edit in Borg’s editor / in $VISUAL or $EDITOR |
| F5 / F6 | Copy / move to the other panel |
| F7 | Create a folder |
| F8 | Delete |
| F9 | Menu bar |
| F10 | Quit |
Tab, Enter, Home, End, Left, and Right control the panels while the command line is empty. Once you start typing a command, these keys go to the shell. Ctrl-P, Ctrl-N, and Ctrl-R use your shell’s command history. Shift-Enter (or Ctrl-J) inserts a line break without running the command. Multi-line commands, typed or recalled from history, make the prompt area taller and the panels shorter, so the cursor always stays visible. All of your shell’s usual editing and completion keys keep working.
Going back to the parent folder puts the cursor on the folder you came from, on the same screen row, with the list scrolled as it was when you went in. If files came or went in the meantime, or the panel changed height, the cursor still lands on that folder, as close to its old row as the list allows.
Alt-Enter types names as the shell sees them from the panel’s folder. On .. it types the full path
of the parent folder, because the parent’s name alone would point inside the current folder. In
search results and collections it types full paths, since their files come from different folders.
Copies reach your computer’s clipboard through the terminal, even over SSH and in a mirror you control. Borg also remembers your last 20 copies: Ctrl-V or Shift-Insert pastes the latest one into Borg’s own fields, such as dialogs and the memory search, even where the terminal cannot reach your clipboard. On the command line Ctrl-V belongs to the shell, so paste there with your terminal’s paste shortcut. The File menu offers both copy actions for keyboards without an Insert key. Copies too large for the terminal to pass on stay in Borg.
If your terminal keeps the F-keys for itself, press Esc, then a digit within 1.5 seconds: Esc 1 to Esc 9 act as F1 to F9, and Esc 0 as F10. For example, Esc 9 opens the menus and Esc 5 copies. While Borg waits for the digit, the function key row shows which digit to press. If something is open (a notice, results, the quick view or Info), the first Esc closes it, and a second Esc cancels. Alt-1 to Alt-0 work too when the terminal passes Alt through. On macOS, you may need to turn on “Use Option as Meta key” in your terminal.
Hotkeys work with non-Latin keyboard layouts too: Russian, Ukrainian, Belarusian, Kazakh, Greek, Hebrew, Arabic, Georgian, Korean, and Thai. A letter of such a layout held with Ctrl or Alt counts as the key in the same place on a US keyboard, and so does a letter pressed in a screen or dialog that is not waiting for text. With the Russian layout on, Alt-M opens the activity monitor and Ctrl-C reaches the shell. The command line, the editor, and Borg’s fields keep the letters you type. Questions with Yes and No buttons answer to Y and N in every language and to the first letter of each button in Borg’s language, such as S for Sí in Spanish.
Mouse and console
Section titled “Mouse and console”Click a row to move the cursor to it, double-click to open it, and right-click it to open its context menu. Click the menu bar or the shortcut bar to use them. The mouse wheel scrolls through the panel.
Dialogs work with the mouse too. Click a row in a list to choose it; in the theme and language pickers, Remote hosts and Remote access, a second click confirms it. The wheel scrolls lists such as themes, settings, and jobs. The keys shown in a dialog’s border can be clicked: click Esc close to close the dialog, or a button to answer a question. Clicking outside a list, a picker or About closes it, while forms and questions stay open until you answer them.
Ctrl-O switches between the panels and the console. Before you type or open the console, the
shell moves to the active panel’s folder. In zsh this happens silently and the prompt is redrawn;
in bash and fish you see a short cd command in the console instead. If you opened the console
yourself, it stays open after commands and Ctrl-C. “Return to panels after command” only applies
to commands run from the panels. At the shell prompt, Option-Left and Option-Right (Alt on Linux)
move by word.
In the console, the mouse wheel scrolls back through the output without touching the command you are typing. Shift-PgUp and Shift-PgDn scroll by a page, Shift-Home jumps to the oldest output, and Shift-End returns to the live prompt, as does typing. To copy visible output, select it the way your terminal allows, usually by Shift-dragging, then use its normal copy shortcut.
Context menu
Section titled “Context menu”Right-click a row, or press Shift-F10, to see what you can do with the item under the cursor. The menu names the item in its frame, starts with what you can copy from it, and then lists the keys that act on it, so it also reminds you of them. Up and Down pick an entry, Enter or a click runs it, and Esc closes the menu. Terminals that send the Menu key open it too. A right-click puts the cursor on the row first; to mark rows with the mouse, choose Mark in the menu.
What the menu offers depends on the row:
- Files and folders: Copy path, Copy name and Copy folder path, then View, Edit,
Copy, Move and Delete, and Mark, which marks the row as Insert does. With files marked, it
acts on all of them, and each copy holds one line per file. In results it also offers
Reveal original, and Delete becomes Remove / actions. On a contents search result,
Copy path and line copies
path:linefor the first match, ready for an editor that opens a file at a line. - Processes in the activity monitor: Copy PID, Copy name and Copy program path, then Signal or priority… (K), Open files (2), Memory map (1) and Network traffic (Alt-N).
- Open files of a process: Copy path, and View for a regular file.
- Containers: Copy ID and Copy name, then the Docker menu’s Start, Stop, Restart, Pause, Files and Shell.
- Network rows: Copy address, Copy remote address or Copy PID, whichever the row is reached by. A row with a process adds Copy PID, Show in activity monitor and Signal or priority….
- Alerts: Copy PID, Copy program path and Copy command, then Show in activity monitor, Resume, Kill and Allow.
- Startup items: Copy path, Copy program path and Copy command, then Show in panel, View and Edit.
Copies reach the clipboard the same way Ctrl-Insert’s do, and the notice line shows what was copied. An entry acts only on the item the menu names. If that item stops being the one under the cursor while the menu is open, for example when the process list sorts itself again, choosing an entry does nothing and asks you to open the menu again. Delete, Kill and the signals still ask before they act, as they do from their keys.
Jumping to folders
Section titled “Jumping to folders”Type cd on the command line and Borg lists folders to jump to right above it: your hotlist first,
marked ★, then the folders the panels opened, newest first. Each word you add narrows the list and
can match anywhere in the path as the list shows it, so cd pro bo finds ~/Projects/borg. Your
home folder shows as ~, so a word from its own path, such as me in /home/me, matches no folder
inside it. A word that starts with / matches the full path instead. Folders whose name matches the
last word come first, next to the command line. Press Up to step into the list. While the list
shows, Up and Down move only through it and stop at both ends, so the panel’s cursor keeps its
place. Enter opens the chosen folder in the active panel. Tab puts it on the command line after
cd without running it, escaping spaces and other characters the shell would split or expand, and
the list moves on to the folders inside it. A click on a folder opens it too. To run your own cd,
keep typing and press Enter.
Type a path and the list starts with the folders inside it. cd /Volumes lists the mounted volumes,
and cd ~/Projects/bo narrows to the folders in ~/Projects with bo in their names, those that
start with it first. Any other command gets the same list for a path with a /, such as
cp notes.txt ~/Documents/. There Tab or Enter types the chosen folder’s name into the path, escaped
or inside your quotes as the shell needs, and the list moves on to the folders inside it. Esc hides
the list and gives Up and Down back to the panel. The list comes back when you start another word or
erase the one you are typing, and Esc right after a space hides it only until you type. Hidden
folders show once you type a dot, or when the panels show hidden files. Borg reads up to 10,000
subfolders of a folder, and only at this machine’s command line; a container’s or a remote
machine’s console keeps the shell’s own completion.
A command line that only changes folder runs while the panels stay on screen, and the active
panel follows the shell to its new folder. When the folder does not exist, a notice says so and
Ctrl-O shows the shell’s message. A folder that takes a while to open, such as one on a slow
network share, brings up the console until the command finishes. Anything more than a cd, such
as cd src && make, shows the console as usual.
Ctrl-\ or Command → Folder hotlist opens the hotlist with the active panel’s folder chosen. Type to narrow it, choose with Up and Down, and press Enter to open the folder. Insert pins the chosen folder to the hotlist, so Ctrl-\ followed by Insert pins the folder you are in. F8 or Delete takes a folder off the hotlist, or out of the recent folders. Esc clears what you typed, and a second Esc closes the window. The hotlist holds up to 256 folders.
Alt-O or Command → Same folder in other panel opens the active panel’s folder in the other panel, so both show the same place. The folder takes the place of the quick view, Info, or a container’s or remote machine’s files there. If the other panel showed search results or a collection, Alt-Shift-R there brings them back. In search results and collections, Alt-O opens the folder of the file under the cursor, with the cursor on the file, as Reveal original does. Until a search finds something, Alt-O opens the folder it started from. Container and remote folders open in one panel only, so in those Alt-O shows a notice, as it does in an empty collection and while the other panel holds an editor. While you type a command, Alt-O goes to the shell.
The hotlist is saved in config.toml under [folders]. Borg remembers the last 64 folders the
panels opened in its state folder, in a file only you can read. Set history = false under
[folders] to stop keeping them.
This guide follows the main branch · Borg 0.11.0 · 1f6bce6
The latest release may not have everything described here. Release notes