1FvwmTabs(1)                      Fvwm Modules                      FvwmTabs(1)
2
3
4

NAME

6       FvwmTabs - a generic tabbing module for the fvwm window manager.
7

SYNOPSIS

9       FvwmTabs is spawned by fvwm, so no command line invocation is possible.
10

DESCRIPTION

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

INVOCATION

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

INSTALLING DEPENDENCIES

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

CONFIGURATION OPTIONS

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 millisec‐
84           onds. The default value, 250, should be fine for most users. If you
85           are on a very slow machine you may wish to increase this.
86
87       *FvwmTabs: buttonFont font
88           The font to use on the tab buttons. The default font is Helvetica
89           -12 bold.
90
91       *FvwmTabs: titleFont font
92           The font to use on the titlebar. The default font is Helvetica -12.
93
94       *FvwmTabs: menuFont font
95           The font to use on the menus. The default font is Helvetica -12.
96
97       *FvwmTabs: fontSelector fontProgram
98           The external font chooser program to launch when dynamically chang‐
99           ing fonts. The default fontProgram is gfontsel --print -f "%f".
100           Anti-gnome users might try xfontsel -print -pattern "%f". If set to
101           none, no font menu options will appear.
102
103       *FvwmTabs: autoSwallowClass className [tabManagerId], ...
104       *FvwmTabs: autoSwallowResource resourceName [tabManagerId], ...
105       *FvwmTabs: autoSwallowName name [tabManagerId], ...
106           Specify windows to swallow automatically. These are comma-separated
107           lists that specify the class/resource/name of a window & an
108           optional tab-manager id into which the window should be swallowed.
109           By default, the tab-manager id increments from zero - ie. 0 is the
110           first tab-manager created, 1 the second, etc, but it may be overri‐
111           den by specifying an argument to the NewTabber function. (No white‐
112           space is allowed in tabber ids.) You can alternatively specify
113           'any' or 'lastFocus' which will put the window in the tab-manager
114           with the least number of tabs or the last focused tab-manager,
115           respectively. If no tab-manager number is specified, an implicit
116           default value of 'any' is used. Note that className/resource‐
117           Name/name can be a (Perl) regular expression.
118
119       *FvwmTabs: balloonBG color
120           The backgound color of the balloon popups that appear over the tab
121           buttons. The default color is #C0C080.
122
123       *FvwmTabs: balloonFont font
124           The font to use on the balloon popups. The default font is Hel‐
125           vetica -12.
126
127       *FvwmTabs: balloonWait ms
128           How long the mouse cursor must pause (in milliseconds) over a tab
129           button before the balloon pops up. The default value is 250.
130
131       *FvwmTabs: balloonMsg msg
132           Message to display in balloon popups. The default value is
133           %tabNo:\n%iconText\n%title.
134
135       *FvwmTabs: autoResize bool
136           bool can be either true or false. If true, windows in the tab-man‐
137           ager automatically resize to the dimensions of the largest window
138           in the tab-manager. The default value is false. If the user per‐
139           forms an explicit resize of a tab-manager window, all windows in
140           the tab-manager are resized to the new window size.
141
142       *FvwmTabs: stateFile file
143           FvwmTabs has the ability to preserve its state (ie. remember the
144           windows it has swallowed as tabs) b/w fvwm restarts. file specifies
145           the name of a temporary file to record the state in, so it can be
146           reconstructed when FvwmTabs restarts. The default file is
147           "$FVWM_USERDIR/.fvwmtabs.state".
148
149       *FvwmTabs: fixedSizeTabs bool
150           bool can be either true or false. If true, the tab-manager will
151           ensure each tab-button has the same dimensions. If false, the
152           selected tab is expanded so that it is fully visible. The default
153           value is false.
154
155       *FvwmTabs: showTitlebar bool
156           Show internal titlebar. If set to true a titlebar appears below the
157           row of tab-buttons & displays the title associated with the current
158           window. This titlebar is capable of displaying long or multi-line
159           titles. The default value is true.
160
161       *FvwmTabs: useTMTitlebar bool
162           Add the title associated with the selected tab to the tab-manager
163           titlebar. (ie. the titlebar at the top of the window, distinct from
164           the titlebar below the tab-buttons.) Default value is true.
165
166       *FvwmTabs: dragDropIcon imageFile
167           Specify the icon to display when performing a drag-&-drop operation
168           to reorder the tab-buttons. FvwmTabs will search the ImagePath for
169           this image unless an absolute filename (ie. filename begins with
170           '/') is specified. The default value is none. If none (or an
171           invalid file) is specified a * is used.
172
173       *FvwmTabs: bBuggyFocus bool
174           FvwmTabs tries to work around a limitation in Perl/Tk (there is no
175           way to access the timestamp associated with WM_TAKE_FOCUS events).
176           On some systems this doesn't work and sometimes tab-managers have
177           trouble acquiring the focus. If this happens to you, try setting
178           this option to true. This can lead to focussing race-conditions
179           (tab-managers temporarily "steal" focus in some situations) but
180           this is less annoying than not being able to focus at all.
181
182       *FvwmTabs: enableSwallowDND bool
183           Swallow windows that (are moved to) overlap a tabber.  Note:
184           drag-&-drop can be enabled for individual tabbers via the menu.
185           The default value is true.
186
187       *FvwmTabs: swallowDNDTolerance tol
188           Determines how much a window must overlap a tabber for it to be
189           swallowed when drag-&-drop is enabled. If the value has a %-sign
190           appended to it, windows must overlap by the specified percentage of
191           the current size of the tabber. If no %-sign is present, the value
192           is treated in units of pixels.  The default value is 10 (pixels).
193
194       *FvwmTabs: useIconsOnTabs bool
195           Show the mini icon associated with each window on its tab button.
196           Note: mini icons for apps that use EWMH icons look a bit distorted.
197           This is because of the poor image resizing algorithm used in Tk.
198           This should be rectified in the near future.  The default value is
199           true.
200
201       *FvwmTabs: killIcon image
202           Image to use on kill toolbar button. Default is none.
203
204       *FvwmTabs: addIcon image
205           Image to use on add toolbar button. Default is none.
206
207       *FvwmTabs: swallowIcon image
208           Image to use on add toolbar button when tabber will swallow next
209           window to popup. Default is none. By using a separate icon to addI‐
210           con, this option provides visual feedback on when a tabber will
211           unconditionally swallow the next window to popup.
212
213       *FvwmTabs: releaseIcon image
214           Image to use on release toolbar button. Default is none.
215
216       *FvwmTabs: menuIcon image
217           Image to use on menu toolbar button. Default is none.
218

FVWM FUNCTIONS FOR KEY BINDINGS

220       A number of fvwm functions are available once the FvwmTabs module is
221       started.
222
223       NewTabber
224           Create a new tabber. Optional argument is tabber name. No white‐
225           space is allowed in the tabber name. Can also prefix --geometry
226           argument.
227
228           Example: NewTabber --geometry=+200+400 scottie
229
230       Tabize
231           Add a window (as a tab) to a tabber.
232
233       NextTab
234           Show/select the next tab.
235
236       PrevTab
237           Show/select the previous tab.
238
239       LastTab
240           Show/select the last selected tab (if there was one).
241
242       ReleaseTab
243           Release a tabbed window back to fvwm.
244
245       ReleaseIconifyTab
246           Release a tabbed window back to fvwm & iconify it.
247
248       ReleaseAllTabs
249           Release all windows in a tab-manager back to fvwm.
250
251       ReleaseIconifyAllTabs
252           Release all windows in a tab-manager back to fvwm & iconify them.
253
254       CloseTabber
255           Destroy a tab-manager. All windows in the tab-manager are released
256           back to fvwm.
257
258       AddTab
259           Pick a new window to add to a tab-manager. Selecting this option &
260           clicking on a window will add the selected window to the tab-man‐
261           ager.
262
263       MultiAddTab
264           Pick & add new windows to a tab-manager until ESC is pressed.
265
266       ShowTab tabNo
267           Show/select tab tabNo in the tab-manager. tabNo is zero-based. ie.
268           0 is the first tab, 1 is the second, etc.
269
270       AddToTabber
271           Add a window (as a tab) to a tab-manager.
272
273       SwapLeft
274           Swap the selected window with the window on its immediate left.
275
276       SwapRight
277           Swap the selected window with the window on its immediate right.
278
279       SelectTabber
280           Select a tab-manager for a new window to be added to.
281
282       EnableDND
283           Swallow windows that (are moved to) overlap a tabber.
284

KEY BINDINGS

286       By default, FvwmTabs reads a default user configuration file FvwmTabs-
287       DefaultSetup which defines several useful key-bindings for FvwmTabs.
288       You can tell FvwmTabs NOT to read this file with "SetEnv FvwmTabs_NoDe‐
289       faultSetup" - this environment variable must be set before starting the
290       module.
291
292       All of the key bindings can be changed using the standard fvwm Key com‐
293       mand & making use of the aforementioned fvwm functions. ie.
294
295       Key (FvwmTabs*) A A CM Function AddTab
296
297       Then, pressing Ctrl-Alt-a (when the focus is in a tab-manager) will
298       allow you to click on a window to add to the tab-manager.
299
300       The default key bindings (set in the FvwmTabs-DefaultSetup file) are:
301
302       Ctrl-Alt-a
303           AddTab
304
305       Ctrl-Alt-c
306           CloseTabber
307
308       Ctrl-Alt-i
309           ReleaseIconifyTab
310
311       Ctrl-Alt-Shift-I
312           ReleaseIconifyAllTabs
313
314       Ctrl-Alt-l
315           LastTab
316
317       Ctrl-Alt-m
318           MultiAddTab
319
320       Ctrl-Alt-n & Ctrl-Alt-Tab
321           NextTab
322
323       Ctrl-Alt-p
324           PrevTab
325
326       Ctrl-Alt-r
327           ReleaseTab
328
329       Ctrl-Alt-Shift-R
330           ReleaseAllTabs
331
332       Ctrl-Alt-t
333           NewTabber
334
335       Ctrl-Alt-num
336           ShowTab num.
337
338       Ctrl-Alt-Left
339           SwapLeft
340
341       Ctrl-Alt-Right
342           SwapRight
343

MOUSE BINDINGS

345       Mouse bindings on Tab Buttons
346
347       Mouse-1 on a tab-button displays the window associated with the tab.
348
349       Mouse-2 on a tab-button releases the window associated with the tab
350       back to the window manager as a standalone window.
351
352       Mouse-3 on a tab-button releases the window associated with the tab
353       back to the window manager & iconifies it.
354
355       The tab-buttons can be reordered with a drag-&-drop operation initiated
356       with Ctrl-Mouse-2. A dragged tab is inserted before the tab-button onto
357       which it is dropped.
358
359       Mouse bindings on Toolbar Icons
360
361       Mouse-1 on the "menu" button will bring up a menu of options. See MENU
362       BINDINGS.
363
364       Mouse-1 on the "release" button will release the selected window from
365       the tabber.
366
367       Mouse-2 on the "release" button will release all windows from the tab‐
368       ber, and iconify them.
369
370       Mouse-3 on the "release" button will release all windows from the tab‐
371       ber.
372
373       Mouse-1 on the "add" button will add the next window you click on to
374       the tabber.
375
376       Mouse-2 on the "add" button will add the next window to popup to the
377       tabber.
378
379       Mouse-3 on the "add" button will add every window you click on (until
380       you press Esc) to the tabber.
381
382       Mouse-1 on the "kill" button will Close the selected window.
383
384       Mouse-2 on the "kill" button causes FvwmTabs to try to kill the
385       selected window itself.
386
387       Mouse-3 on the "kill" button will Kill the selected window.
388
390       Mouse-1 on the "menu" button will bring up a menu of options:
391
392       Release All will release all tabbed programs back to the window manager
393       as standalone windows.
394
395       Release All (Iconify) will release all tabbed programs back to the win‐
396       dow manager as iconised standalone windows.
397
398       Add will add the next mouse-clicked window to the tab-manager.
399
400       Add Next will add the next window that is created to the tab-manager.
401
402       Multi Add keeps adding mouse-clicked windows to a tab-manager until the
403       escape key is pressed. Useful for adding multiple windows to a tab-man‐
404       ager at once.
405
406       Font shows a sub-menu enabling you to dynamically configure the but‐
407       ton/title/menu fonts, using the external program identified by the
408       fontSelector option.
409
410       Show Titlebar toggles the display of the titlebar below the tab-but‐
411       tons.
412
413       Window Tabizer Dialog will popup a dialog box for specifying windows to
414       swallow. Windows can be specified explicitly (by name) or by using a
415       (Perl) regular expression matcher. (Note: / character is automatically
416       escaped.)
417
418       The menu options between the separators will display the window/tab
419       associated with the text. (The menu text is actually the title associ‐
420       ated with the window. The text on each tab-button is the icon name.)
421
422       About pops up a dialog with version/developer information.
423
424       Close will close the FvwmTabs window, invoking Release All in the
425       process.
426

BUGS

428       * Tab-managers don't take focus when iconified.
429       * FvwmTabs doesn't obey "ClickToFocus" mode.
430       * FvwmTabs has a problem swallowing shaded windows.
431       * Using "Maximise" to resize tab-manager windows prevents dynamic
432       resizing from working.
433
434       Please send bug reports, feature requests & queries about FvwmTabs to
435       the fvwm Mailing list: fvwm@fvwm.org. Be sure to include the word
436       "FvwmTabs" somewhere in the subject line.
437

TODO

439       Features to be added to FvwmTabs in the future (in no particular
440       order):
441
442       * Colorset support. (use Colorset tracker from fvwm-perllib)
443       * Use Ctrl-Mouse-1 instead of Ctrl-Mouse-2 to reorder (drag-&-drop)
444       windows.
445       * option: menu item to sort tabs by name, file extension, etc.
446       * For autoSwallow options that specify a tab-manager, create the tab-
447       manager if it doesn't already exist. (default behaviour is not to swal‐
448       low it)
449

FVWMTABS HOMEPAGE

451       There is some useful information about FvwmTabs, including a short
452       tutorial, on the authors website:
453
454       <http://members.optusnet.com.au/~scottsmedley/fvwmtabs/>.
455

LICENSING

457       FvwmTabs is GPL software.
458
459       See <http://www.gnu.org/licenses/gpl.html>
460

AUTHOR

462       Scott Smedley <ss@aao.gov.au>
463
464
465
466FvwmTabs                          2006-10-23                       FvwmTabs(1)
Impressum