Provided by: fvwm_2.6.5.ds-3_amd64 bug

NAME

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

SYNOPSIS

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

DESCRIPTION

       The FvwmTabs module is capable of swallowing any fvwm window & treating it as a tab in a
       tab-manager window. A tab-manager is sometimes called a tabber.

       Each tab-manager can store any number of windows, each in its own tab. The number of tab-
       managers is limited only by system resources. Tab-managers can even be nested/swallowed
       within other tab-managers. (ie. a tab-manager can be added as an individual tab to another
       tab-manager.)

INVOCATION

       FvwmTabs can be invoked by inserting the line "Module FvwmTabs" in your .fvwmrc file. This
       can be placed on a line by itself, if FvwmTabs is to be spawned during fvwm's
       initialization, or can be bound to a menu or mouse button or keystroke to invoke it later.

INSTALLING DEPENDENCIES

       FvwmTabs requires 2 CPAN modules (that are NOT distributed with fvwm) to be installed on
       your system. They are Tk and X11::Protocol.

       They are available at:
       <http://search.cpan.org/CPAN/authors/id/N/NI/NI-S/Tk-804.027.tar.gz> and
       <http://search.cpan.org/~smccam/X11-Protocol-0.56/>.

       To install either package:

       tar zxvf $name.tar.gz ; cd $name ; perl Makefile.PL ; make install

       FvwmTabs will tell you if you do not have these packages installed when you (try to) start
       it.

CONFIGURATION OPTIONS

       FvwmTabs reads the same config file as fvwm when it starts up.

       The following options are recognised by FvwmTabs:

       *FvwmTabs: activeFG color
           The text color of the button for the visible tab. The default color is yellow.

       *FvwmTabs: activeBG color
           The backgound color of the button for the visible tab. The default color is
           MidnightBlue.

       *FvwmTabs: inactiveFG color
           The text color of the buttons for the invisible tabs. The default color is
           antiquewhite.

       *FvwmTabs: inactiveBG color>
           The backgound color of the buttons for the invisible tabs. The default color is
           royalblue.

       *FvwmTabs: titleFG color
           The text color used in the titlebar. The default color is black.

       *FvwmTabs: titleBG color
           The background color used in the titlebar. The default color is antiquewhite.

       *FvwmTabs: activeRelief style
           The relief style to use for active buttons. style can be either raised, flat or
           sunken. The default style is sunken.

       *FvwmTabs: inactiveRelief style
           The relief style to use for inactive buttons. style can be either raised, flat or
           sunken. The default style is flat.

       *FvwmTabs: buttonYPadding pixels
           How much padding to use around top and bottom of tab buttons. The default value is 3
           pixels.

       *FvwmTabs: pollRate ms
           Specifies how often to check for X events. ms is time in milliseconds. The default
           value, 250, should be fine for most users. If you are on a very slow machine you may
           wish to increase this.

       *FvwmTabs: buttonFont font
           The font to use on the tab buttons. The default font is Helvetica -12 bold.

       *FvwmTabs: titleFont font
           The font to use on the titlebar. The default font is Helvetica -12.

       *FvwmTabs: menuFont font
           The font to use on the menus. The default font is Helvetica -12.

       *FvwmTabs: fontSelector fontProgram
           The external font chooser program to launch when dynamically changing fonts. The
           default fontProgram is gfontsel --print -f "%f". Anti-gnome users might try xfontsel
           -print -pattern "%f". If set to none, no font menu options will appear.

       *FvwmTabs: autoSwallowClass className [tabManagerId], ...
       *FvwmTabs: autoSwallowResource resourceName [tabManagerId], ...
       *FvwmTabs: autoSwallowName name [tabManagerId], ...
           Specify windows to swallow automatically. These are comma-separated lists that specify
           the class/resource/name of a window & an optional tab-manager id into which the window
           should be swallowed. By default, the tab-manager id increments from zero - ie. 0 is
           the first tab-manager created, 1 the second, etc, but it may be overridden by
           specifying an argument to the NewTabber function. (No whitespace is allowed in tabber
           ids.) You can alternatively specify 'any' or 'lastFocus' which will put the window in
           the tab-manager with the least number of tabs or the last focused tab-manager,
           respectively. If no tab-manager number is specified, an implicit default value of
           'any' is used. Note that className/resourceName/name can be a (Perl) regular
           expression.

       *FvwmTabs: balloonBG color
           The backgound color of the balloon popups that appear over the tab buttons. The
           default color is #C0C080.

       *FvwmTabs: balloonFont font
           The font to use on the balloon popups. The default font is Helvetica -12.

       *FvwmTabs: balloonWait ms
           How long the mouse cursor must pause (in milliseconds) over a tab button before the
           balloon pops up. The default value is 250.

       *FvwmTabs: balloonMsg msg
           Message to display in balloon popups. The default value is %tabNo:\n%iconText\n%title.

       *FvwmTabs: autoResize bool
           bool can be either true or false. If true, windows in the tab-manager automatically
           resize to the dimensions of the largest window in the tab-manager. The default value
           is false. If the user performs an explicit resize of a tab-manager window, all windows
           in the tab-manager are resized to the new window size.

       *FvwmTabs: stateFile file
           FvwmTabs has the ability to preserve its state (ie. remember the windows it has
           swallowed as tabs) b/w fvwm restarts. file specifies the name of a temporary file to
           record the state in, so it can be reconstructed when FvwmTabs restarts. The default
           file is "$FVWM_USERDIR/.fvwmtabs.state".

       *FvwmTabs: fixedSizeTabs bool
           bool can be either true or false. If true, the tab-manager will ensure each tab-button
           has the same dimensions. If false, the selected tab is expanded so that it is fully
           visible. The default value is false.

       *FvwmTabs: showTitlebar bool
           Show internal titlebar. If set to true a titlebar appears below the row of tab-buttons
           & displays the title associated with the current window. This titlebar is capable of
           displaying long or multi-line titles. The default value is true.

       *FvwmTabs: useTMTitlebar bool
           Add the title associated with the selected tab to the tab-manager titlebar. (ie. the
           titlebar at the top of the window, distinct from the titlebar below the tab-buttons.)
           Default value is true.

       *FvwmTabs: dragDropIcon imageFile
           Specify the icon to display when performing a drag-&-drop operation to reorder the
           tab-buttons. FvwmTabs will search the ImagePath for this image unless an absolute
           filename (ie. filename begins with '/') is specified. The default value is none. If
           none (or an invalid file) is specified a * is used.

       *FvwmTabs: bBuggyFocus bool
           FvwmTabs tries to work around a limitation in Perl/Tk (there is no way to access the
           timestamp associated with WM_TAKE_FOCUS events). On some systems this doesn't work and
           sometimes tab-managers have trouble acquiring the focus. If this happens to you, try
           setting this option to true. This can lead to focussing race-conditions (tab-managers
           temporarily "steal" focus in some situations) but this is less annoying than not being
           able to focus at all.

       *FvwmTabs: enableSwallowDND bool
           Swallow windows that (are moved to) overlap a tabber. Note: drag-&-drop can be enabled
           for individual tabbers via the menu. The default value is true.

       *FvwmTabs: swallowDNDTolerance tol
           Determines how much a window must overlap a tabber for it to be swallowed when
           drag-&-drop is enabled. If the value has a %-sign appended to it, windows must overlap
           by the specified percentage of the current size of the tabber. If no %-sign is
           present, the value is treated in units of pixels. The default value is 10 (pixels).

       *FvwmTabs: useIconsOnTabs bool
           Show the mini icon associated with each window on its tab button. Note: mini icons for
           apps that use EWMH icons look a bit distorted. This is because of the poor image
           resizing algorithm used in Tk. This should be rectified in the near future. The
           default value is true.

       *FvwmTabs: killIcon image
           Image to use on kill toolbar button. Default is none.

       *FvwmTabs: addIcon image
           Image to use on add toolbar button. Default is none.

       *FvwmTabs: swallowIcon image
           Image to use on add toolbar button when tabber will swallow next window to popup.
           Default is none. By using a separate icon to addIcon, this option provides visual
           feedback on when a tabber will unconditionally swallow the next window to popup.

       *FvwmTabs: releaseIcon image
           Image to use on release toolbar button. Default is none.

       *FvwmTabs: menuIcon image
           Image to use on menu toolbar button. Default is none.

FVWM FUNCTIONS FOR KEY BINDINGS

       A number of fvwm functions are available once the FvwmTabs module is started.

       NewTabber
           Create a new tabber. Optional argument is tabber name. No whitespace is allowed in the
           tabber name. Can also prefix --geometry argument.

           Example: NewTabber --geometry=+200+400 scottie

       Tabize
           Add a window (as a tab) to a tabber.

       NextTab
           Show/select the next tab.

       PrevTab
           Show/select the previous tab.

       LastTab
           Show/select the last selected tab (if there was one).

       ReleaseTab
           Release a tabbed window back to fvwm.

       ReleaseIconifyTab
           Release a tabbed window back to fvwm & iconify it.

       ReleaseAllTabs
           Release all windows in a tab-manager back to fvwm.

       ReleaseIconifyAllTabs
           Release all windows in a tab-manager back to fvwm & iconify them.

       CloseTabber
           Destroy a tab-manager. All windows in the tab-manager are released back to fvwm.

       AddTab
           Pick a new window to add to a tab-manager. Selecting this option & clicking on a
           window will add the selected window to the tab-manager.

       MultiAddTab
           Pick & add new windows to a tab-manager until ESC is pressed.

       ShowTab tabNo
           Show/select tab tabNo in the tab-manager. tabNo is zero-based. ie. 0 is the first tab,
           1 is the second, etc.

       AddToTabber
           Add a window (as a tab) to a tab-manager.

       SwapLeft
           Swap the selected window with the window on its immediate left.

       SwapRight
           Swap the selected window with the window on its immediate right.

       SelectTabber
           Select a tab-manager for a new window to be added to.

       EnableDND
           Swallow windows that (are moved to) overlap a tabber.

KEY BINDINGS

       By default, FvwmTabs reads a default user configuration file FvwmTabs-DefaultSetup which
       defines several useful key-bindings for FvwmTabs. You can tell FvwmTabs NOT to read this
       file with "SetEnv FvwmTabs_NoDefaultSetup" - this environment variable must be set before
       starting the module.

       All of the key bindings can be changed using the standard fvwm Key command & making use of
       the aforementioned fvwm functions. ie.

       Key (FvwmTabs*) A A CM Function AddTab

       Then, pressing Ctrl-Alt-a (when the focus is in a tab-manager) will allow you to click on
       a window to add to the tab-manager.

       The default key bindings (set in the FvwmTabs-DefaultSetup file) are:

       Ctrl-Alt-a
           AddTab

       Ctrl-Alt-c
           CloseTabber

       Ctrl-Alt-i
           ReleaseIconifyTab

       Ctrl-Alt-Shift-I
           ReleaseIconifyAllTabs

       Ctrl-Alt-l
           LastTab

       Ctrl-Alt-m
           MultiAddTab

       Ctrl-Alt-n & Ctrl-Alt-Tab
           NextTab

       Ctrl-Alt-p
           PrevTab

       Ctrl-Alt-r
           ReleaseTab

       Ctrl-Alt-Shift-R
           ReleaseAllTabs

       Ctrl-Alt-t
           NewTabber

       Ctrl-Alt-num
           ShowTab num.

       Ctrl-Alt-Left
           SwapLeft

       Ctrl-Alt-Right
           SwapRight

MOUSE BINDINGS

       Mouse bindings on Tab Buttons

       Mouse-1 on a tab-button displays the window associated with the tab.

       Mouse-2 on a tab-button releases the window associated with the tab back to the window
       manager as a standalone window.

       Mouse-3 on a tab-button releases the window associated with the tab back to the window
       manager & iconifies it.

       The tab-buttons can be reordered with a drag-&-drop operation initiated with Ctrl-Mouse-2.
       A dragged tab is inserted before the tab-button onto which it is dropped.

       Mouse bindings on Toolbar Icons

       Mouse-1 on the "menu" button will bring up a menu of options. See MENU BINDINGS.

       Mouse-1 on the "release" button will release the selected window from the tabber.

       Mouse-2 on the "release" button will release all windows from the tabber, and iconify
       them.

       Mouse-3 on the "release" button will release all windows from the tabber.

       Mouse-1 on the "add" button will add the next window you click on to the tabber.

       Mouse-2 on the "add" button will add the next window to popup to the tabber.

       Mouse-3 on the "add" button will add every window you click on (until you press Esc) to
       the tabber.

       Mouse-1 on the "kill" button will Close the selected window.

       Mouse-2 on the "kill" button causes FvwmTabs to try to kill the selected window itself.

       Mouse-3 on the "kill" button will Kill the selected window.

MENU BINDINGS

       Mouse-1 on the "menu" button will bring up a menu of options:

       Release All will release all tabbed programs back to the window manager as standalone
       windows.

       Release All (Iconify) will release all tabbed programs back to the window manager as
       iconised standalone windows.

       Add will add the next mouse-clicked window to the tab-manager.

       Add Next will add the next window that is created to the tab-manager.

       Multi Add keeps adding mouse-clicked windows to a tab-manager until the escape key is
       pressed. Useful for adding multiple windows to a tab-manager at once.

       Font shows a sub-menu enabling you to dynamically configure the button/title/menu fonts,
       using the external program identified by the fontSelector option.

       Show Titlebar toggles the display of the titlebar below the tab-buttons.

       Window Tabizer Dialog will popup a dialog box for specifying windows to swallow. Windows
       can be specified explicitly (by name) or by using a (Perl) regular expression matcher.
       (Note: / character is automatically escaped.)

       The menu options between the separators will display the window/tab associated with the
       text. (The menu text is actually the title associated with the window. The text on each
       tab-button is the icon name.)

       About pops up a dialog with version/developer information.

       Close will close the FvwmTabs window, invoking Release All in the process.

BUGS

       •   Tab-managers don't take focus when iconified.

       •   FvwmTabs doesn't obey "ClickToFocus" mode.

       •   FvwmTabs has a problem swallowing shaded windows.

       •   Using "Maximise" to resize tab-manager windows prevents dynamic resizing from working.

       Please send bug reports, feature requests & queries about FvwmTabs to the fvwm mailing
       list: fvwm@fvwm.org. Be sure to include the word "FvwmTabs" somewhere in the subject line.

TODO

       Features to be added to FvwmTabs in the future (in no particular order):

       •   Colorset support. (use Colorset tracker from fvwm-perllib)

       •   Use Ctrl-Mouse-1 instead of Ctrl-Mouse-2 to reorder (drag-&-drop) windows.

       •   option: menu item to sort tabs by name, file extension, etc.

       •   For autoSwallow options that specify a tab-manager, create the tab-manager if it
           doesn't already exist. (default behaviour is not to swallow it)

FVWMTABS HOMEPAGE

       There is some useful information about FvwmTabs, including a short tutorial, on the
       authors website:

       <http://members.optusnet.com.au/~scottsmedley/fvwmtabs/>.

LICENSING

       FvwmTabs is GPL software.

       See <http://www.gnu.org/licenses/gpl.html>

AUTHOR

       Scott Smedley <ss@aao.gov.au>