DVTM(1)
π DVTM β the dynamic virtual terminal manager π
okay bestie, sit DOWN, because we're talking about dvtm, the dynamic virtual terminal manager, and she is that girl. πΈ
β¨ SYNOPSIS β¨
dvtm [-v] [-M] [-m modifier] [-d delay] [-h lines] [-t title]
[-s status-fifo] [-c cmd-fifo] [command ...]
π¦ DESCRIPTION π¦
dvtm is a dynamic tiling window manager for the console. yes, the console. no X, no wayland, just you and your terminal being iconic together. π
as a console window manager she literally just tries to make it easy to work with multiple console based applications. that's the whole assignment. and she ate.
π OPTIONS π
-vβ print version info to standard output and then dip. bye! π-Mβ toggle default mouse grabbing upon startup. use this one to let normal mouse operation happen under X. (she's being polite, letting X have the mouse back)-mmodifier β set the command modifier at runtime. you know, the magic key. πͺ-ddelay β set the delay ncurses waits before deciding whether a character that might be part of an escape sequence is actually part of an escape sequence. yes it's a whole existential crisis for one character and yes it's real.-hlines β set the scrollback history buffer size at runtime. so many lines. so much history. π-ttitle β set a static terminal title and don't change it to the one of the currently focused window. she's committing to a look. π-sstatus-fifo β open or create the named pipe status-fifo, read its content and display it in the statusbar. see thedvtm-status(1)script for a usage example. π-ccmd-fifo β open or create the named pipe cmd-fifo and look for commands to execute which were defined inconfig.h.command ...β execute command(s), each one in a separate window. go off, multiple commands. π₯
π«Ά USAGE π«Ά
β¨οΈ Keyboard commands β¨οΈ
every single keybinding begins with Mod, which defaults to ^g but can be changed in config.h or with the -m command line option. know her. respect her. ^g is the moment. β¨
Mod-cβ create a new shell window. baby window!! π£Mod-Cβ create a new shell window using the current working directory of the focused window. she's a copycat and we love her for it.Mod-x-xβ close the focused window. rip boo you were doing great π«‘Mod-lβ increases the master area width about 5% (all exceptgridandfullscreenlayout).Mod-hβ decreases the master area width about 5% (all exceptgridandfullscreenlayout).Mod-iβ increase the number of windows displayed in the master area.Mod-dβ decrease the number of windows displayed in the master area.Mod-jβ focus next window.Mod-kβ focus previous window.Mod-Jβ focus window below.Mod-Kβ focus window above.Mod-Hβ focus window to the left.Mod-Lβ focus window to the right.Mod-[0..9]β focus the[0..9]-th window.Mod-Tabβ focus previously selected window. take me back to where we were π₯ΊMod-.β toggle minimization of the current window. she's shy now.Mod-mβ maximize current window (change tofullscreenlayout). main character energy, activated. πShift-PageUp/Mod-PageUpβ scroll up.Shift-PageDown/Mod-PageDownβ scroll down.Mod-Spaceβ toggle between defined layouts (affects all windows). everybody moves together, no cap.Mod-Enterβ zooms/cycles current window to/from the master area.Mod-fβ 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-Sβ toggle position of the status bar between top and bottom. she's indecisive but it's cute.Mod-r/Mod-^Lβ redraw the whole screen.Mod-aβ toggle keyboard multiplexing mode. if activated, keypresses are sent to all visible windows. chaotic. iconic. everyone hears you at once.Mod-Mβ toggledvtmmouse grabbing.Mod-eβ enter copy mode (there's a whole section below, go read it bestie).Mod-/β enter copy mode and start searching forward (assumes a vi-like editor).Mod-pβ paste last copied text from copy mode at current cursor position.Mod-?β show this manual page. hi, you're here, hello. πMod-Modβ send the Mod key.Mod-F[1..n]/Mod-v-[1..n]β view all windows with n-th tag.Mod-0β view all windows with any tag.Mod-v-Tabβ toggles to the previously selected tags.Mod-V-[1..n]β add/remove all windows with nth tag to/from the view.Mod-t-[1..n]β apply nth tag to the focused window.Mod-T-[1..n]β add/remove nth tag to/from the focused window.Mod-q-qβ quitdvtm. it's over bestie, log off, hydrate π
π±οΈ Mouse commands π±οΈ
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, or
- start
dvtmwith the-Mflag, or - toggle mouse support during runtime with
Mod-M. - Button1 click β focus window.
- Button1 double click β focus window and toggle maximization. double tap, main character.
- Button2 click β zoom/cycle current window to/from the master area.
- Button3 click β toggle minimization of the current window.
π Copy mode π
copy mode gives easy access to past output by piping it to dvtm-editor(1) and opening an editor. what the editor writes will be stored in an internal register and can be pasted into other clients (via Mod-p). it's giving clipboard, but make it terminal. π
πΈ ENVIRONMENT VARIABLES πΈ
DVTMβ each process spawned bydvtmwill have this variable set to thedvtmversion it is running under.DVTM_WINDOW_IDβ each process also has access to its constant and unique window id. everybody gets an id, nobody is anonymous here. πͺͺDVTM_CMD_FIFOβ if the-ccommand line argument was specified upondvtmstartup, this variable will be set to the file name of the named pipe. thus allowing the process to send commands back todvtm. it's a two-way street, a situationship with a pipe. πDVTM_TERMβ by defaultdvtmuses its own terminfo file and therefore setsTERM=dvtmwithin the client windows. this can be overridden by setting theDVTM_TERMenvironment variable to a valid terminal name before launchingdvtm.DVTM_EDITORβ when entering the copymodedvtmpipes the whole scroll back buffer todvtm-editor(1)which opens the content inDVTM_EDITOR, with fallbacks toVISUAL,EDITORandvi(1).config.his used instead. (yep, that's exactly what the manpage says, no editing from me, periodt.)
β EXAMPLE β
see the dvtm-status(1) script as an example of how to display text in the status bar.
π§ FILES π§
dvtm is customized by creating a custom config.h and (re)compiling the source code. this keeps it fast, secure and simple. no config file drama, no runtime parsing, just vibes and a compiler. π
π SEE ALSO π
abduco(1), dvtm-status(1)
π AUTHOR π
dvtm is written Marc AndrΓ© Tanner <mat at brain-dump.org>
and that's the whole page bestie!! every flag, every keybinding, every env var, every single detail, all accounted for. no cap. π«Ά
okay so the versioning tea: this is dvtm version 0.15+40.g311a8c0-1build1, dated December 27, 2016 β yes she's a vintage icon, an elder stateswoman, and she still slays. mwah. πβ¨π
π¦ where this page comes from
- ubuntu jammy: dvtm 0.15+40.g311a8c0-1build1 Β· MIT/X
- ubuntu noble: dvtm 0.15+40.g311a8c0-1build1 Β· MIT/X
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms