Dynamic virtual terminal manager
dvtm [-v] [-M] [-m modifier] [-d delay] [-h lines] [-t title] [-s status-fifo] [-c cmd-fifo] [command...]
dvtm is a dynamic tiling window manager for the console. As a console window manager it tries to make it easy to work with multiple console based applications.
-v
Print version information to standard output and exit.
-M
Toggle default mouse grabbing upon startup. Use this to allow normal mouse operation under X.
-mmodifier
Set command modifier at runtime.
-ddelay
Set the delay ncurses waits before deciding if a character that might be part of an escape sequence is actually part of an escape sequence.
-hlines
Set the scrollback history buffer size at runtime.
-ttitle
Set a static terminal title and don't change it to the one of the currently focused window.
-sstatus-fifo
Open or create the named pipe status-fifo read its content and display it in the statusbar. See the dvtm-status script for an usage example.
-ccmd-fifo
Open or create the named pipe cmd-fifo and look for commands to execute which were defined in config.h.
command...
Execute command(s), each in a separate window.
Mod
Each keybinding begins with Mod which defaults to ^g, but can be changed in config.h or with the -m command line option.
Mod-c
Create a new shell window.
Mod-x
Close focused window.
Mod-l
Increases the master area width about 5% (all except grid and fullscreen layout).
Mod-h
Decreases the master area width about 5% (all except grid and fullscreen layout).
Mod-j
Focus next window.
Mod-k
Focus previous window.
Mod-n
Focus the n-th window.
Mod-Tab
Focus previously selected window.
Mod-.
Toggle minimization of current window.
Mod-u
Focus next non minimized window.
Mod-i
Focus previous non minimized window.
Mod-m
Maximize current window (change to fullscreen layout).
Shift-PageUp Mod-PageUp
Scroll up.
Shift-PageDown Mod-PageDown
Scroll down.
Mod-Space
Toggle between defined layouts (affects all windows).
Mod-Enter
Zooms/cycles current window to/from master area.
Mod-t
Change to vertical stack tiling layout.
Mod-b
Change to bottom stack tiling layout.
Mod-g
Change to grid layout.
Mod-s
Show/hide the status bar.
Mod-r
Redraw whole screen.
Mod-a
Toggle keyboard multiplexing mode, if activated keypresses are sent to all visible windows.
Mod-B
Toggle bell (off by default).
Mod-M
Toggle dvtm mouse grabbing.
Mod-v
Enter copy mode (see section below for navigation commands).
Mod-/
Enter copy mode and start searching forward.
Mod-?
Enter copy mode and start searching backwards.
Mod-p
Paste last copied text from copy mode at current cursor position.
Mod-F1
Show this manual page.
Mod-Mod
Send the Mod key.
Mod-q
Quit dvtm.
Copy and Paste
By default dvtm captures mouse events to provide the actions listed below. Unfortunately this interferes with the standard X copy and paste mechanism. To work around this you need to hold down Shift while selecting or pasting text. Alternatively you can disable mouse support at compile time, start dvtm with the -M flag or toggle mouse support during runtime with Mod-M.
Button1 click
Focus window.
Button1 double click
Focus window and toggle maximization.
Button2 click
Zoom/cycle current window to/from master area.
Button3 click
Toggle minimization of current window.
Copy mode gives easy access to past output. The commands use vi style keybindings and support number prefixes as command multipliers.
Entering
Copy mode can be entered with Mod-v.
Navigation
Once in, navigation works with vi style keybindings (h,j,k,l,^,$,g,H,M,L,G) as well as with the Arrows/Home/End/Page-Down/Page-Up keys. CTRL+u can be used as a synonym for Page-Up and similarly CTRL+d corresponds to a Page-Down.
Searching
Search forward with / and backwards with ?. Jump forward to next match with n. Jump backwards to next match with N.
Selecting
To start making a selection press v (similar to visual mode in vi).
Copying
To copy the current selection use y. If you haven't made a selection the current line is copied. Add a number prefix to copy n lines starting from the current line. This command leaves the copy mode.
Pasting
The previously copied text can be pasted at the current cursor position with Mod-p.
Leaving
Copy mode is automatically left upon copying something. To manually exit at any time press either ESC, CTRL+c or q.
By default dvtm uses its own terminfo file and therefore sets TERM=dvtm within the client windows. This can be overridden by setting the DVTM_TERM environment variable to a valid terminal name before launching dvtm.
See the dvtm-status script as an example of how to display text in the status bar.
dvtm is customized by creating a custom config.h and (re)compiling the source code. This keeps it fast, secure and simple.
dvtm is written by Marc André Tanner <mat at brain-dump.org>