1FvwmTabs(1) Fvwm Modules FvwmTabs(1)
2
3
4
6 FvwmTabs - a generic tabbing module for the fvwm window manager.
7
9 FvwmTabs is spawned by fvwm, so no command line invocation is possible.
10
12 The FvwmTabs module is capable of swallowing any fvwm window & treating
13 it as a tab in a tab-manager window. A tab-manager is sometimes called
14 a tabber.
15
16 Each tab-manager can store any number of windows, each in its own tab.
17 The number of tab-managers is limited only by system resources. Tab-
18 managers can even be nested/swallowed within other tab-managers. (ie. a
19 tab-manager can be added as an individual tab to another tab-manager.)
20
22 FvwmTabs can be invoked by inserting the line "Module FvwmTabs" in your
23 .fvwmrc file. This can be placed on a line by itself, if FvwmTabs is to
24 be spawned during fvwm's initialization, or can be bound to a menu or
25 mouse button or keystroke to invoke it later.
26
28 FvwmTabs requires 2 CPAN modules (that are NOT distributed with fvwm)
29 to be installed on your system. They are Tk and X11::Protocol.
30
31 They are available at:
32 <http://search.cpan.org/CPAN/authors/id/N/NI/NI-S/Tk-804.027.tar.gz>
33 and <http://search.cpan.org/~smccam/X11-Protocol-0.56/>.
34
35 To install either package:
36
37 tar zxvf $name.tar.gz ; cd $name ; perl Makefile.PL ; make install
38
39 FvwmTabs will tell you if you do not have these packages installed when
40 you (try to) start it.
41
43 FvwmTabs reads the same config file as fvwm when it starts up.
44
45 The following options are recognised by FvwmTabs:
46
47 *FvwmTabs: activeFG color
48 The text color of the button for the visible tab. The default color
49 is yellow.
50
51 *FvwmTabs: activeBG color
52 The backgound color of the button for the visible tab. The default
53 color is MidnightBlue.
54
55 *FvwmTabs: inactiveFG color
56 The text color of the buttons for the invisible tabs. The default
57 color is antiquewhite.
58
59 *FvwmTabs: inactiveBG color>
60 The backgound color of the buttons for the invisible tabs. The
61 default color is royalblue.
62
63 *FvwmTabs: titleFG color
64 The text color used in the titlebar. The default color is black.
65
66 *FvwmTabs: titleBG color
67 The background color used in the titlebar. The default color is
68 antiquewhite.
69
70 *FvwmTabs: activeRelief style
71 The relief style to use for active buttons. style can be either
72 raised, flat or sunken. The default style is sunken.
73
74 *FvwmTabs: inactiveRelief style
75 The relief style to use for inactive buttons. style can be either
76 raised, flat or sunken. The default style is flat.
77
78 *FvwmTabs: buttonYPadding pixels
79 How much padding to use around top and bottom of tab buttons. The
80 default value is 3 pixels.
81
82 *FvwmTabs: pollRate ms
83 Specifies how often to check for X events. ms is time in
84 milliseconds. The default value, 250, should be fine for most
85 users. If you are on a very slow machine you may wish to increase
86 this.
87
88 *FvwmTabs: buttonFont font
89 The font to use on the tab buttons. The default font is Helvetica
90 -12 bold.
91
92 *FvwmTabs: titleFont font
93 The font to use on the titlebar. The default font is Helvetica -12.
94
95 *FvwmTabs: menuFont font
96 The font to use on the menus. The default font is Helvetica -12.
97
98 *FvwmTabs: fontSelector fontProgram
99 The external font chooser program to launch when dynamically
100 changing fonts. The default fontProgram is gfontsel --print -f
101 "%f". Anti-gnome users might try xfontsel -print -pattern "%f". If
102 set to none, no font menu options will appear.
103
104 *FvwmTabs: autoSwallowClass className [tabManagerId], ...
105 *FvwmTabs: autoSwallowResource resourceName [tabManagerId], ...
106 *FvwmTabs: autoSwallowName name [tabManagerId], ...
107 Specify windows to swallow automatically. These are comma-separated
108 lists that specify the class/resource/name of a window & an
109 optional tab-manager id into which the window should be swallowed.
110 By default, the tab-manager id increments from zero - ie. 0 is the
111 first tab-manager created, 1 the second, etc, but it may be
112 overriden by specifying an argument to the NewTabber function. (No
113 whitespace is allowed in tabber ids.) You can alternatively specify
114 'any' or 'lastFocus' which will put the window in the tab-manager
115 with the least number of tabs or the last focused tab-manager,
116 respectively. If no tab-manager number is specified, an implicit
117 default value of 'any' is used. Note that
118 className/resourceName/name can be a (Perl) regular expression.
119
120 *FvwmTabs: balloonBG color
121 The backgound color of the balloon popups that appear over the tab
122 buttons. The default color is #C0C080.
123
124 *FvwmTabs: balloonFont font
125 The font to use on the balloon popups. The default font is
126 Helvetica -12.
127
128 *FvwmTabs: balloonWait ms
129 How long the mouse cursor must pause (in milliseconds) over a tab
130 button before the balloon pops up. The default value is 250.
131
132 *FvwmTabs: balloonMsg msg
133 Message to display in balloon popups. The default value is
134 %tabNo:\n%iconText\n%title.
135
136 *FvwmTabs: autoResize bool
137 bool can be either true or false. If true, windows in the tab-
138 manager automatically resize to the dimensions of the largest
139 window in the tab-manager. The default value is false. If the user
140 performs an explicit resize of a tab-manager window, all windows in
141 the tab-manager are resized to the new window size.
142
143 *FvwmTabs: stateFile file
144 FvwmTabs has the ability to preserve its state (ie. remember the
145 windows it has swallowed as tabs) b/w fvwm restarts. file specifies
146 the name of a temporary file to record the state in, so it can be
147 reconstructed when FvwmTabs restarts. The default file is
148 "$FVWM_USERDIR/.fvwmtabs.state".
149
150 *FvwmTabs: fixedSizeTabs bool
151 bool can be either true or false. If true, the tab-manager will
152 ensure each tab-button has the same dimensions. If false, the
153 selected tab is expanded so that it is fully visible. The default
154 value is false.
155
156 *FvwmTabs: showTitlebar bool
157 Show internal titlebar. If set to true a titlebar appears below the
158 row of tab-buttons & displays the title associated with the current
159 window. This titlebar is capable of displaying long or multi-line
160 titles. The default value is true.
161
162 *FvwmTabs: useTMTitlebar bool
163 Add the title associated with the selected tab to the tab-manager
164 titlebar. (ie. the titlebar at the top of the window, distinct from
165 the titlebar below the tab-buttons.) Default value is true.
166
167 *FvwmTabs: dragDropIcon imageFile
168 Specify the icon to display when performing a drag-&-drop operation
169 to reorder the tab-buttons. FvwmTabs will search the ImagePath for
170 this image unless an absolute filename (ie. filename begins with
171 '/') is specified. The default value is none. If none (or an
172 invalid file) is specified a * is used.
173
174 *FvwmTabs: bBuggyFocus bool
175 FvwmTabs tries to work around a limitation in Perl/Tk (there is no
176 way to access the timestamp associated with WM_TAKE_FOCUS events).
177 On some systems this doesn't work and sometimes tab-managers have
178 trouble acquiring the focus. If this happens to you, try setting
179 this option to true. This can lead to focussing race-conditions
180 (tab-managers temporarily "steal" focus in some situations) but
181 this is less annoying than not being able to focus at all.
182
183 *FvwmTabs: enableSwallowDND bool
184 Swallow windows that (are moved to) overlap a tabber. Note:
185 drag-&-drop can be enabled for individual tabbers via the menu. The
186 default value is true.
187
188 *FvwmTabs: swallowDNDTolerance tol
189 Determines how much a window must overlap a tabber for it to be
190 swallowed when drag-&-drop is enabled. If the value has a %-sign
191 appended to it, windows must overlap by the specified percentage of
192 the current size of the tabber. If no %-sign is present, the value
193 is treated in units of pixels. The default value is 10 (pixels).
194
195 *FvwmTabs: useIconsOnTabs bool
196 Show the mini icon associated with each window on its tab button.
197 Note: mini icons for apps that use EWMH icons look a bit distorted.
198 This is because of the poor image resizing algorithm used in Tk.
199 This should be rectified in the near future. The default value is
200 true.
201
202 *FvwmTabs: killIcon image
203 Image to use on kill toolbar button. Default is none.
204
205 *FvwmTabs: addIcon image
206 Image to use on add toolbar button. Default is none.
207
208 *FvwmTabs: swallowIcon image
209 Image to use on add toolbar button when tabber will swallow next
210 window to popup. Default is none. By using a separate icon to
211 addIcon, this option provides visual feedback on when a tabber will
212 unconditionally swallow the next window to popup.
213
214 *FvwmTabs: releaseIcon image
215 Image to use on release toolbar button. Default is none.
216
217 *FvwmTabs: menuIcon image
218 Image to use on menu toolbar button. Default is none.
219
221 A number of fvwm functions are available once the FvwmTabs module is
222 started.
223
224 NewTabber
225 Create a new tabber. Optional argument is tabber name. No
226 whitespace is allowed in the tabber name. Can also prefix
227 --geometry argument.
228
229 Example: NewTabber --geometry=+200+400 scottie
230
231 Tabize
232 Add a window (as a tab) to a tabber.
233
234 NextTab
235 Show/select the next tab.
236
237 PrevTab
238 Show/select the previous tab.
239
240 LastTab
241 Show/select the last selected tab (if there was one).
242
243 ReleaseTab
244 Release a tabbed window back to fvwm.
245
246 ReleaseIconifyTab
247 Release a tabbed window back to fvwm & iconify it.
248
249 ReleaseAllTabs
250 Release all windows in a tab-manager back to fvwm.
251
252 ReleaseIconifyAllTabs
253 Release all windows in a tab-manager back to fvwm & iconify them.
254
255 CloseTabber
256 Destroy a tab-manager. All windows in the tab-manager are released
257 back to fvwm.
258
259 AddTab
260 Pick a new window to add to a tab-manager. Selecting this option &
261 clicking on a window will add the selected window to the tab-
262 manager.
263
264 MultiAddTab
265 Pick & add new windows to a tab-manager until ESC is pressed.
266
267 ShowTab tabNo
268 Show/select tab tabNo in the tab-manager. tabNo is zero-based. ie.
269 0 is the first tab, 1 is the second, etc.
270
271 AddToTabber
272 Add a window (as a tab) to a tab-manager.
273
274 SwapLeft
275 Swap the selected window with the window on its immediate left.
276
277 SwapRight
278 Swap the selected window with the window on its immediate right.
279
280 SelectTabber
281 Select a tab-manager for a new window to be added to.
282
283 EnableDND
284 Swallow windows that (are moved to) overlap a tabber.
285
287 By default, FvwmTabs reads a default user configuration file FvwmTabs-
288 DefaultSetup which defines several useful key-bindings for FvwmTabs.
289 You can tell FvwmTabs NOT to read this file with "SetEnv
290 FvwmTabs_NoDefaultSetup" - this environment variable must be set before
291 starting the module.
292
293 All of the key bindings can be changed using the standard fvwm Key
294 command & making use of the aforementioned fvwm functions. ie.
295
296 Key (FvwmTabs*) A A CM Function AddTab
297
298 Then, pressing Ctrl-Alt-a (when the focus is in a tab-manager) will
299 allow you to click on a window to add to the tab-manager.
300
301 The default key bindings (set in the FvwmTabs-DefaultSetup file) are:
302
303 Ctrl-Alt-a
304 AddTab
305
306 Ctrl-Alt-c
307 CloseTabber
308
309 Ctrl-Alt-i
310 ReleaseIconifyTab
311
312 Ctrl-Alt-Shift-I
313 ReleaseIconifyAllTabs
314
315 Ctrl-Alt-l
316 LastTab
317
318 Ctrl-Alt-m
319 MultiAddTab
320
321 Ctrl-Alt-n & Ctrl-Alt-Tab
322 NextTab
323
324 Ctrl-Alt-p
325 PrevTab
326
327 Ctrl-Alt-r
328 ReleaseTab
329
330 Ctrl-Alt-Shift-R
331 ReleaseAllTabs
332
333 Ctrl-Alt-t
334 NewTabber
335
336 Ctrl-Alt-num
337 ShowTab num.
338
339 Ctrl-Alt-Left
340 SwapLeft
341
342 Ctrl-Alt-Right
343 SwapRight
344
346 Mouse bindings on Tab Buttons
347
348 Mouse-1 on a tab-button displays the window associated with the tab.
349
350 Mouse-2 on a tab-button releases the window associated with the tab
351 back to the window manager as a standalone window.
352
353 Mouse-3 on a tab-button releases the window associated with the tab
354 back to the window manager & iconifies it.
355
356 The tab-buttons can be reordered with a drag-&-drop operation initiated
357 with Ctrl-Mouse-2. A dragged tab is inserted before the tab-button onto
358 which it is dropped.
359
360 Mouse bindings on Toolbar Icons
361
362 Mouse-1 on the "menu" button will bring up a menu of options. See MENU
363 BINDINGS.
364
365 Mouse-1 on the "release" button will release the selected window from
366 the tabber.
367
368 Mouse-2 on the "release" button will release all windows from the
369 tabber, and iconify them.
370
371 Mouse-3 on the "release" button will release all windows from the
372 tabber.
373
374 Mouse-1 on the "add" button will add the next window you click on to
375 the tabber.
376
377 Mouse-2 on the "add" button will add the next window to popup to the
378 tabber.
379
380 Mouse-3 on the "add" button will add every window you click on (until
381 you press Esc) to the tabber.
382
383 Mouse-1 on the "kill" button will Close the selected window.
384
385 Mouse-2 on the "kill" button causes FvwmTabs to try to kill the
386 selected window itself.
387
388 Mouse-3 on the "kill" button will Kill the selected window.
389
391 Mouse-1 on the "menu" button will bring up a menu of options:
392
393 Release All will release all tabbed programs back to the window manager
394 as standalone windows.
395
396 Release All (Iconify) will release all tabbed programs back to the
397 window manager as iconised standalone windows.
398
399 Add will add the next mouse-clicked window to the tab-manager.
400
401 Add Next will add the next window that is created to the tab-manager.
402
403 Multi Add keeps adding mouse-clicked windows to a tab-manager until the
404 escape key is pressed. Useful for adding multiple windows to a tab-
405 manager at once.
406
407 Font shows a sub-menu enabling you to dynamically configure the
408 button/title/menu fonts, using the external program identified by the
409 fontSelector option.
410
411 Show Titlebar toggles the display of the titlebar below the tab-
412 buttons.
413
414 Window Tabizer Dialog will popup a dialog box for specifying windows to
415 swallow. Windows can be specified explicitly (by name) or by using a
416 (Perl) regular expression matcher. (Note: / character is automatically
417 escaped.)
418
419 The menu options between the separators will display the window/tab
420 associated with the text. (The menu text is actually the title
421 associated with the window. The text on each tab-button is the icon
422 name.)
423
424 About pops up a dialog with version/developer information.
425
426 Close will close the FvwmTabs window, invoking Release All in the
427 process.
428
430 · Tab-managers don't take focus when iconified.
431
432 · FvwmTabs doesn't obey "ClickToFocus" mode.
433
434 · FvwmTabs has a problem swallowing shaded windows.
435
436 · Using "Maximise" to resize tab-manager windows prevents dynamic
437 resizing from working.
438
439 Please send bug reports, feature requests & queries about FvwmTabs to
440 the fvwm mailing list: fvwm@fvwm.org. Be sure to include the word
441 "FvwmTabs" somewhere in the subject line.
442
444 Features to be added to FvwmTabs in the future (in no particular
445 order):
446
447 · Colorset support. (use Colorset tracker from fvwm-perllib)
448
449 · Use Ctrl-Mouse-1 instead of Ctrl-Mouse-2 to reorder (drag-&-drop)
450 windows.
451
452 · option: menu item to sort tabs by name, file extension, etc.
453
454 · For autoSwallow options that specify a tab-manager, create the tab-
455 manager if it doesn't already exist. (default behaviour is not to
456 swallow it)
457
459 There is some useful information about FvwmTabs, including a short
460 tutorial, on the authors website:
461
462 <http://members.optusnet.com.au/~scottsmedley/fvwmtabs/>.
463
465 FvwmTabs is GPL software.
466
467 See <http://www.gnu.org/licenses/gpl.html>
468
470 Scott Smedley <ss@aao.gov.au>
471
472
473
4742.5.28 (from cvs) 2007-08-07 FvwmTabs(1)