Mention scripting oriented environment variables in manual page
[dvtm.git] / dvtm.1
blob88a8f90cc4a2301bf481dfec2d516cbb14d98bfb
1 .TH DVTM 1 dvtm\-VERSION
2 .nh
3 .SH NAME
4 dvtm \- dynamic virtual terminal manager
5 .SH SYNOPSIS
6 .B dvtm
7 .RB [ \-v ]
8 .RB [ \-M ]
9 .RB [ \-m
10 .IR modifier ]
11 .RB [ \-d
12 .IR delay ]
13 .RB [ \-h
14 .IR lines ]
15 .RB [ \-t
16 .IR title ]
17 .RB [ \-s
18 .IR status-fifo ]
19 .RB [ \-c
20 .IR cmd-fifo ]
21 .RI [ command \ ... "" ]
22 .SH DESCRIPTION
23 dvtm is a dynamic tiling window manager for the console.
24 As a console window manager it tries to make it easy to work with multiple
25 console based applications.
26 .SH OPTIONS
27 .TP
28 .B \-v
29 Print version information to standard output and exit.
30 .TP
31 .B \-M
32 Toggle default mouse grabbing upon startup. Use this to allow normal mouse operation
33 under X.
34 .TP
35 .BI \-m \ modifier
36 Set command modifier at runtime.
37 .TP
38 .BI \-d \ delay
39 Set the delay ncurses waits before deciding if a character that might be
40 part of an escape sequence is actually part of an escape sequence.
41 .TP
42 .BI \-h \ lines
43 Set the scrollback history buffer size at runtime.
44 .TP
45 .BI \-t \ title
46 Set a static terminal
47 .I title
48 and don't change it to the one of the currently focused window.
49 .TP
50 .BI \-s \ status-fifo
51 Open or create the named pipe
52 .I status-fifo
53 read its content and display it in the statusbar. See the
54 .I dvtm-status
55 script for an usage example.
56 .TP
57 .BI \-c \ cmd-fifo
58 Open or create the named pipe
59 .I cmd-fifo
60 and look for commands to execute which were defined in
61 .IR config.h .
62 .TP
63 .IR command \ ...
64 Execute
65 .IR command (s),
66 each in a separate window.
67 .SH USAGE
68 .SS Keyboard commands
69 .TP
70 .B Mod
71 Each keybinding begins with Mod which defaults to
72 .BR ^g ,
73 but can be changed in
74 .I config.h
75 or with the
76 .B \-m
77 command line option.
78 .TP
79 .B Mod\-c
80 Create a new shell window.
81 .TP
82 .B Mod\-x
83 Close focused window.
84 .TP
85 .B Mod\-l
86 Increases the master area width about 5% (all except grid and
87 fullscreen layout).
88 .TP
89 .B Mod\-h
90 Decreases the master area width about 5% (all except grid and
91 fullscreen layout).
92 .TP
93 .B Mod\-j
94 Focus next window.
95 .TP
96 .B Mod\-k
97 Focus previous window.
98 .TP
99 .BI Mod\- n
100 Focus the
101 .IR n \-th
102 window.
104 .B Mod\-Tab
105 Focus previously selected window.
107 .B Mod\-.
108 Toggle minimization of current window.
110 .B Mod\-u
111 Focus next non minimized window.
113 .B Mod\-i
114 Focus previous non minimized window.
116 .B Mod\-m
117 Maximize current window (change to fullscreen layout).
119 .B Shift\-PageUp
121 .B Mod\-PageUp
122 Scroll up.
124 .B Shift\-PageDown
126 .B Mod\-PageDown
127 Scroll down.
129 .B Mod\-Space
130 Toggle between defined layouts (affects all windows).
132 .B Mod\-Enter
133 Zooms/cycles current window to/from master area.
135 .B Mod\-d
136 Change to vertical stack tiling layout.
138 .B Mod\-b
139 Change to bottom stack tiling layout.
141 .B Mod\-g
142 Change to grid layout.
144 .B Mod\-s
145 Show/hide the status bar.
147 .B Mod\-r
149 .B Mod\-^L
150 Redraw whole screen.
152 .B Mod\-a
153 Toggle keyboard multiplexing mode, if activated keypresses are sent to all
154 visible windows.
156 .B Mod\-B
157 Toggle bell (off by default).
159 .B Mod\-M
160 Toggle dvtm mouse grabbing.
162 .B Mod\-e
163 Enter copy mode (see section below for further information).
165 .B Mod\-/
166 Enter copy mode and start searching forward (assumes a vi-like editor).
168 .B Mod\-p
169 Paste last copied text from copy mode at current cursor position.
171 .B Mod\-?
172 Show this manual page.
174 .B Mod\-Mod
175 Send the Mod key.
177 .B Mod-F[1..n]
179 .B Mod-v-[1..n]
180 View all windows with nth tag.
182 .B Mod-0
183 View all windows with any tag.
185 .B Mod-v-Tab
186 Toggles to the previously selected tags.
188 .B Mod-V-[1..n]
189 Add/remove all windows with nth tag to/from the view.
191 .B Mod-t-[1..n]
192 Apply nth tag to focused window.
194 .B Mod-T-[1..n]
195 Add/remove nth tag to/from focused window.
197 .B Mod\-q
198 Quit dvtm.
199 .SS Mouse commands
201 .B Copy and Paste
202 By default dvtm captures mouse events to provide the actions listed below.
203 Unfortunately this interferes with the standard X copy and paste mechanism.
204 To work around this you need to hold down
205 .B Shift
206 while selecting or pasting text.
207 Alternatively you can disable mouse support at compile time, start dvtm with the
208 .B -M
209 flag or toggle mouse support during runtime with
210 .BR Mod\-M .
212 .B Button1 click
213 Focus window.
215 .B Button1 double click
216 Focus window and toggle maximization.
218 .B Button2 click
219 Zoom/cycle current window to/from master area.
221 .B Button3 click
222 Toggle minimization of current window.
223 .SS Copy mode
224 Copy mode gives easy access to past output by piping it to an editor. What
225 ever the editor prints to stdout upon exiting will be stored in an internal
226 register and can be pasted into other clients (via
227 .B Mod\-p
229 .SH ENVIRONMENT VARIABLES
231 .B DVTM
232 Each process spawned by dvtm will have this variable set to the dvtm version
233 it is running under.
235 .B DVTM_WINDOW_ID
236 Each process also has access to its constant and unique window id.
238 .B DVTM_CMD_FIFO
239 If the -c command line argument was specified upon dvtm startup, this variable
240 will be set to the file name of the named pipe. Thus allowing the process
241 to send commands back to dvtm.
243 .B DVTM_TERM
244 By default dvtm uses its own terminfo file and therefore sets
245 .BR TERM=dvtm
246 within the client windows. This can be overridden by setting the
247 .BR DVTM_TERM
248 environment variable to a valid terminal name before launching dvtm.
250 .B DVTM_EDITOR
251 When entering the copymode dvtm pipes the whole scroll back buffer to
252 .BR DVTM_EDITOR
253 which is launched with
254 .BR \-
255 (indicating to read from stdin) as its only argument.
257 .BR DVTM_EDITOR
258 is not set
259 .BR EDITOR
260 is checked, if this is also not set the default value specified in
261 .BR config.h
262 is used instead.
263 .SH EXAMPLE
264 See the
265 .I dvtm-status
266 script as an example of how to display text in the
267 status bar.
268 .SH CUSTOMIZATION
269 dvtm is customized by creating a custom
270 .I config.h
271 and (re)compiling the source code.
272 This keeps it fast, secure and simple.
273 .SH AUTHOR
274 dvtm is written by Marc AndrĂ© Tanner <mat at brain-dump.org>