.\"Generated by db2man.xsl. Don't modify this, modify the source.
.de Sh \" Subsection
.br
.if t .Sp
.ne 5
.PP
\fB\\$1\fR
.PP
..
.de Sp \" Vertical space (when we can't use .PP)
.if t .sp .5v
.if n .sp
..
.de Ip \" List item
.br
.ie \\n(.$>=3 .ne \\$3
.el .ne 3
.IP "\\$1" \\$2
..
.TH "FLUXSTYLE" 1 "" "" ""
.SH NAME
fluxstyle \- A comprehensive look at styles/themes for fluxbox(1).
.SH "SYNOPSIS"

.SH "DESCRIPTION"


What is a Style?


Styles, sometimes referred to as Themes, are a graphical overlay for the fluxbox(1) window manager\&. If you wanted to get to know fluxbox, the styles would be the \fIlook\fR of the \fIlook and feel\fR\&.


Styles are simple ASCII text files that tell fluxbox(1) how to generate the appearance of different components of the window manager\&. The default installation of fluxbox(1) is shipped with many classic examples that show a great deal of what one could do\&. To use one of the standard styles navigate to the \fISystem Styles\fR menu under your main fluxbox(1) menu\&.


fluxbox(1) uses its own graphics class to render its images on the fly\&. By using styles you can determine, at a great level of configurability, what your desktop will look like\&. Since fluxbox(1) was derived from blackbox many often wonder if old themes will work on the latest releases of fluxbox(1)\&. Well they basically do, but you will have to tune them since the fluxbox(1) code has changed quite a bit since the initial grab\&.

.SH "STRUCTURE"


A style is made up of a few major components which then have their own sub\-directives\&. The major components are as follows:


The \fIwindow\&.*\fR directives control the appearance of the window frames, window\&.tab\&.* controls the appearance of the window tabs, \fImenu\&.*\fR controls the appearance of the popup menu that you see when you right click on the desktop\&. \fItoolbar\&.*\fR is the bar you will see at the top or bottom of your screen\&. Finally the \fIslit\&.*\fR has options you can use to customize the appearance of the slit\&. However if you don't set the slit directives specifically, the slit's appearance is controlled by the toolbar directives instead\&.


To understand how the style mechanism works, it is nice to know a little about how X11 resources work\&. X11 resources consist of a key and a value\&. The key is constructed of several smaller keys (sometimes referred to as children), delimited by a period (\&.)\&. Keys may also contain an asterisk (*) to serve as a wildcard, which means that one line of text will match several keys\&. This is useful for styles that are based on one or two colors\&.


A more complete reference to this can be found in X(7), section \fIRESOURCES\fR\&.

.SH "LOCATION"


There are many places to store your styles, the most common is in your \fI~/\&.fluxbox/styles\fR directory\&. The initial installation will place the default styles in \fI/usr/share/fluxbox/styles\fR providing a basic usable configuration\&.


When creating your own style, create a directory (normally the name of your style) in \fI~/\&.fluxbox/styles/\fR (If the \fIstyles\fR directory doesn't exist, create that also)\&. While there isn't an official structure, it is common to create a directory named after your style and place your pixmaps directory (if required) in there along with a file called theme\&.cfg (may also be named style\&.cfg)\&. This file is where you will construct your style using the components covered later in this manual page\&. An example of steps taken when beginning a style project of your own may look like:

.nf
$ cd
$ mkdir \-p ~/\&.fluxbox/styles/YourStyle/pixmaps
$ cd ~/\&.fluxbox/styles/YourStyle
$ nano theme\&.cfg
.fi


Output of a packaged style should look like the following:

.nf
$ cd
$ tar \-tjvf YourStyle\&.tar\&.bz2
 \&.fluxbox/styles/YourStyle/theme\&.cfg
 \&.fluxbox/styles/YourStyle/pixmaps
 \&.fluxbox/styles/YourStyle/pixmaps/stick\&.xpm
 \&.\&.\&.
.fi


Of course, all of these are just preferences, fluxbox(1) allows for the customization of many things, including how you handle your styles\&. Just remember, however, that if you plan to distribute your style you may find some community bickering if you don't follow practices\&. :)

.SH "CREATING YOUR STYLE"


As discussed above, fluxbox(1) allows you to configure its four main components: the toolbar, menus, slit and window decorations\&. Remember that you can customize the slit with its own directives, otherwise the slit will take the appearance of the toolbar\&.


Here are some quick examples to illustrate basic syntax:

.nf
toolbar\&.clock\&.color: green
.fi


This sets the color resource of the toolbar clock to \fIgreen\fR\&. Another example:

.nf
menu*color:     rgb:3/4/5
.fi


This sets the color resource of the menu and all of its \fIchildren\fR to `rgb:3/4/5'\&. (For a description of color names, see X(1)\&.) So this one also applies to \fImenu\&.title\&.color\fR and \fImenu\&.frame\&.color\fR\&. And with

.nf
*font:  \-b&h\-lucida\-medium\-r\-normal\-*\-*\-140\-*
.fi


you set the font resource for all keys to this font name all at once (For information about the fonts installed on your system, you can use a program like xfontsel(1), gtkfontsel, or xlsfonts(1)\&.)


In the last example you will notice the wildcard (*) before font\&. In a Fluxbox style you can set a value with a wildcard\&. The example means that every font in the style will be what is specified\&. You can do this with any component/value\&. For example if you wanted all of the text to be one color you would do:

.nf
*textColor:  rgb:3/4/5
.fi


This means that you can setup a very simple style with very few properties\&. See the EXAMPLES below for an example of this in practice\&. fluxbox(1) also allows you to override wildcards in your style\&. Lets take our example above and add an override for the toolbar\&.clock\&.textColor component:

.nf
*textColor: rgb:3/4/5
toolbar\&.clock\&.textColor: rgb:255/0/0
.fi


With that all of the text will be \fIrgb:3/4/5\fR except the toolbar clock text which will be \fIrgb:255/0/0\fR\&.


Now what makes fluxbox(1) so spectacular is its ability to render textures on the fly\&. A texture is a fillpattern that you see on some styles\&. Texture descriptions are specified directly to the key that they should apply to, e\&.g\&.:

.nf
toolbar\&.clock:  Raised Gradient Diagonal Bevel1
toolbar\&.clock\&.color:    rgb:8/6/4
toolbar\&.clock\&.colorTo:  rgb:4/3/2
.fi


Don't worry, we will explain what these mean\&. A texture description consists of up to five fields, which are as follows:

.PP
gives the component either a flat, raised or sunken appearance\&.

.PP
tells fluxbox(1) to draw either a solid color or a gradient texture\&.

.PP
Select one of these texture types\&. They only work when \fIGradient\fR is specified\&.

.PP
tells fluxbox(1) to interlace the texture (darken every other line)\&. This option is most commonly used with gradiented textures, but it also works in solid textures\&.

.PP
tells fluxbox(1) which type of bevel to use\&. Bevel1 is the default bevel\&. The shading is placed on the edge of the image\&. Bevel2 is an alternative\&. The shading is placed one pixel in from the edge of the image\&.


Instead of a texture description, also the option \fIParentRelative\fR is available, which makes the component appear as a part of its parent, e\&.g\&. totally transparent\&.


Or for even more possibilities Pixmap\&. If pixmap texture is specified (it might not be necessary on every occasion) the pixmap file is specified in a separate pixmap resource\&.

.nf
toolbar\&.clock: pixmap
toolbar\&.clock\&.pixmap: clock_background\&.xpm
.fi


This feature might need some investigation, reports say that sometimes the resources color and colorTo must be set and then they may not be set\&.


All gradiented textures are composed of two color values: the \fIcolor\fR and \fIcolorTo\fR resources\&. When \fIInterlaced\fR is used in \fISolid\fR mode, the \fIcolorTo\fR resource is used to find the interlacing color\&.

.SH "A WORD ABOUT FONTS"


We should comment about fonts before we move on to the complete component list\&. fluxbox(1) supports different options for text\&. These options currently include bold, halo and shadow\&. To set these do this: fontname\-size:options for any of the font components in the style file\&. For example:

.nf
menu\&.title\&.font: sans\-8:bold,shadow
.fi


The latest versions of fluxbox(1) (> 0\&.9\&.8) also support different values for these text options\&. The possibilities are as follows:

.nf
\-\-\-\-\-\-\-\-
Shadow color=<colorname> offsetx=<integer> offsety=<integer> Halo color=<color�\\u20acname>
\-\-\-\-\-\-\-\-
.fi


For the case of completeness, here are some real world examples:

.nf
*\&.font: Verdana\-10:bold,shadow:offsetx=2;offsety=4;color=green
*\&.font: Verdana\-10:halo:color=blue
.fi


Of course this could all be placed on one line\&. Also note that for the offset options, negative integers are allowed\&.

.SS "FONT PROBLEMS"


If you have problems installing fonts or getting them to work, you should read the docs page at xfree\&.org\&. Here is a link to one of these: http://xfree\&.org/4\&.3\&.0/fonts2\&.html#3

.SH "FULL COMPONENT LIST"


Here is the exhaustive component list for fluxbox(1) styles\&. Each one is listed with their type of value required\&. Comments in a style file are preceded with an exclamation point (!) which we also use here so that these can be pasted into a new theme\&.cfg to be customized appropiately\&. Please note that in order to keep styles consistent it is often the practice of stylists to provide all of the theme\-items in their style file even if they are not used\&. This allows the user the ease of changing different components\&.

.SH "WINDOW OPTIONS"


Many, many things you can do with window design in fluxbox(1), below are your options\&. Have fun\&.

.nf
\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-
window\&.bevelWidth:              <integer>
window\&.borderColor:             <color>
window\&.borderWidth:             <integer>
window\&.button\&.focus: <texture type>
window\&.button\&.focus\&.color:  <color>
window\&.button\&.focus\&.colorTo: <color>
window\&.button\&.focus\&.picColor:   <color>
window\&.button\&.focus\&.pixmap:     <filename>
window\&.button\&.pressed: <texture type>
window\&.button\&.pressed\&.color:  <color>
window\&.button\&.pressed\&.colorTo: <color>
window\&.button\&.pressed\&.pixmap:   <filename>
window\&.button\&.unfocus:          <texture type>
window\&.button\&.unfocus\&.color:    <color>
window\&.button\&.unfocus\&.colorTo:  <color>
window\&.button\&.unfocus\&.picColor: <color>
window\&.button\&.unfocus\&.pixmap:   <filename>
window\&.close\&.pixmap:            <filename>
window\&.close\&.pressed\&.pixmap:    <filename>
window\&.close\&.unfocus\&.pixmap:    <filename>
window\&.font:                    <font>
window\&.frame\&.focusColor:        <color>
window\&.frame\&.unfocusColor:      <color>
window\&.grip\&.focus: <texture type>
window\&.grip\&.focus\&.color:  <color>
window\&.grip\&.focus\&.colorTo: <color>
window\&.grip\&.focus\&.pixmap:       <filename>
window\&.grip\&.unfocus: <texture type>
window\&.grip\&.unfocus\&.color:  <color>
window\&.grip\&.unfocus\&.colorTo: <color>
window\&.grip\&.unfocus\&.pixmap:     <filename>
window\&.handle\&.focus:            <texture type>
window\&.handle\&.focus\&.color:      <color>
window\&.handle\&.focus\&.colorTo:    <color>
window\&.handle\&.focus\&.pixmap:     <filename>
window\&.handle\&.unfocus:          <texture type>
window\&.handle\&.unfocus\&.color:    <color>
window\&.handle\&.unfocus\&.colorTo:  <color>
window\&.handle\&.unfocus\&.pixmap:   <filename>
window\&.handleWidth:             <integer>
window\&.iconify\&.pixmap:          <filename>
window\&.iconify\&.pressed\&.pixmap:  <filename>
window\&.iconify\&.unfocus\&.pixmap:  <filename>
window\&.justify:                 <{Left|Right|Center}>
window\&.label\&.active:            <texture type>
window\&.label\&.active\&.textColor:  <color>
window\&.label\&.focus:             <texture type>
window\&.label\&.focus\&.color:       <color>
window\&.label\&.focus\&.colorTo:     <color>
window\&.label\&.focus\&.pixmap:      <filename>
window\&.label\&.unfocus:           <texture type>
window\&.label\&.unfocus\&.color:     <color>
window\&.label\&.unfocus\&.colorTo:   <color>
window\&.label\&.unfocus\&.pixmap:    <filename>
window\&.label\&.focus\&.textColor: <color>
window\&.label\&.unfocus\&.textColor: <color>
window\&.maximize\&.pixmap: <filename>
window\&.maximize\&.pressed\&.pixmap: <filename>
window\&.maximize\&.unfocus\&.pixmap: <filename>
window\&.roundCorners:            <{Top|Bottom}{Left|Right}>
window\&.shade\&.pixmap: <filename>
window\&.shade\&.pressed\&.pixmap: <filename>
window\&.shade\&.unfocus\&.pixmap:    <filename>
window\&.stick\&.pixmap: <filename>
window\&.stick\&.pressed\&.pixmap: <filename>
window\&.stick\&.unfocus\&.pixmap:    <filename>
window\&.stuck\&.pixmap: <filename>
window\&.stuck\&.unfocus\&.pixmap: <filename>
window\&.title\&.focus:             <texture type>
window\&.title\&.focus\&.color:       <color>
window\&.title\&.focus\&.colorTo:     <color>
window\&.title\&.focus\&.pixmap:      <filename>
window\&.title\&.height:            <integer>
window\&.title\&.unfocus:           <texture type>
window\&.title\&.unfocus\&.color:     <color>
window\&.title\&.unfocus\&.colorTo:   <color>
window\&.title\&.unfocus\&.pixmap:    <filename>
\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-
.fi

.SH "MENU OPTIONS"


Everything you need to make your menu look pretty\&.

.nf
\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-
menu\&.bevelWidth:                <integer>
menu\&.borderColor:               <color>
menu\&.borderWidth:               <integer>
menu\&.bullet:                    <{empty|square|triangle|diamond}>
menu\&.bullet\&.position:           <{left|right}>
menu\&.frame:                     <texture type>
menu\&.frame\&.color:               <color>
menu\&.frame\&.colorTo:             <color>
menu\&.frame\&.disableColor:        <color>
menu\&.frame\&.font:                <font>
menu\&.frame\&.justify:             <{Left|Right|Center}>
menu\&.frame\&.pixmap:              <filename>
menu\&.frame\&.textColor:           <color>
menu\&.hilite:                    <texture type>
menu\&.hilite\&.color:              <color>
menu\&.hilite\&.colorTo:            <color>
menu\&.hilite\&.pixmap:             <filename>
menu\&.hilite\&.textColor:          <color>
menu\&.itemHeight:                <integer>
menu\&.title:                     <texture type>
menu\&.title\&.color:               <color>
menu\&.title\&.colorTo:             <color>
menu\&.title\&.font:                <font>
menu\&.title\&.pixmap:              <filename>
menu\&.title\&.textColor:           <color>
menu\&.title\&.justify:             <{Left|Right|Center}>
menu\&.titleHeight:               <integer>
menu\&.roundCorners:              <{Top|Bottom}{Left|Right}>
menu\&.selected\&.pixmap:           <filename>
menu\&.submenu\&.pixmap:            <filename>
menu\&.unselected\&.pixmap:         <filename>
\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-
.fi

.SH "BACKGROUND"


Rarely are you going to want to use this option\&. There is a command that is similar that is used in the init file\&. It is bad style to use this in your style, as it forces the user to use your background\&. So note that it is good practice to leave this blank or out of the style altogether\&.

.nf
background: centered|aspect|tiled|fullscreen|random|solid|gradient <texture>
background\&.pixmap: <file (or directory for random)>
background\&.color: <color>
background\&.colorTo: <color>
.fi

.SH "SLIT"


Here are all of the options for the slit\&.

.nf
\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-
slit: <texture type>
slit\&.bevelWidth: <integer>
slit\&.borderColor: <color>
slit\&.borderWidth:               <integer>
slit\&.color:                     <color>
slit\&.colorTo:                   <color>
slit\&.pixmap:                    <filename>
\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-
.fi

.SH "TOOLBAR OPTIONS"


Below you will find all of the configuration possibilities for the toolbar\&. The list is pretty extensive and offers you many options to make your toolbar look just the way you want it\&.

.nf
\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-
toolbar: <texture type>
toolbar\&.bevelWidth:             <integer (0\-255)>
toolbar\&.borderColor:            <color>
toolbar\&.borderWidth:            <integer>
toolbar\&.button\&.scale:           <integer>
toolbar\&.color:  <color>
toolbar\&.colorTo: <color>
toolbar\&.clock: <texture type>
toolbar\&.clock\&.borderColor:      <color>
toolbar\&.clock\&.borderWidth:      <integer>
toolbar\&.clock\&.font:             <font>
toolbar\&.clock\&.justify:          <{Left|Right|Center}>
toolbar\&.clock\&.pixmap:  <filename>
toolbar\&.clock\&.color:  <color>
toolbar\&.clock\&.colorTo: <color>
toolbar\&.clock\&.textColor:        <color>
toolbar\&.height:                 <integer>
toolbar\&.iconbar\&.focused: <texture type>
toolbar\&.iconbar\&.focused\&.color:  <color>
toolbar\&.iconbar\&.focused\&.colorTo:<color>
toolbar\&.iconbar\&.focused\&.pixmap: <filename>
toolbar\&.iconbar\&.unfocused: <texture type>
toolbar\&.iconbar\&.unfocused\&.color:  <color>
toolbar\&.iconbar\&.unfocused\&.colorTo: <color>
toolbar\&.iconbar\&.unfocused\&.pixmap:       <filename>
toolbar\&.iconbar\&.empty: <texture type>
toolbar\&.iconbar\&.empty\&.color:  <color>
toolbar\&.iconbar\&.empty\&.colorTo: <color>
toolbar\&.iconbar\&.empty\&.pixmap:   <filename>
toolbar\&.iconbar\&.focused\&.borderColor: <color>
toolbar\&.iconbar\&.focused\&.borderWidth:    <integer>
toolbar\&.iconbar\&.unfocused\&.borderColor: <color>
toolbar\&.iconbar\&.unfocused\&.borderWidth:  <integer>
toolbar\&.iconbar\&.borderColor: <color>
toolbar\&.iconbar\&.borderWidth:            <integer>
toolbar\&.iconbar\&.focused\&.font: <font>
toolbar\&.iconbar\&.focused\&.justify:        <{Left|Right|Center}>
toolbar\&.iconbar\&.focused\&.textColor: <color>
toolbar\&.iconbar\&.unfocused\&.font: <font>
toolbar\&.iconbar\&.unfocused\&.justify:      <{Left|Right|Center}>
toolbar\&.iconbar\&.unfocused\&.textColor: <color>
toolbar\&.pixmap:                 <filename>
toolbar\&.shaped:                 <boolean>
toolbar\&.workspace\&.font:         <font>
toolbar\&.workspace\&.justify:      <{Left|Right|Center}>
toolbar\&.workspace\&.textColor:    <color>
toolbar\&.workspace:              <texture type>
toolbar\&.workspace\&.borderColor:  <color>
toolbar\&.workspace\&.borderWidth:  <integer>
toolbar\&.workspace\&.color:        <color>
toolbar\&.workspace\&.colorTo:      <color>
toolbar\&.workspace\&.pixmap:       <filename>
\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-
.fi

.SH "EXAMPLES"


This list may seem intimidating, but remember, when you create your own style you can easily set a majority of these keys with a single component\&. For an example of this:

.nf
\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-
*color: slategrey
*colorTo:       darkslategrey
*unfocus\&.color: darkslategrey
*unfocus\&.colorTo:       black
*textColor:     white
*unfocus\&.textColor:     lightgrey
*font:  lucidasans\-10
\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-
.fi


This sets nice defaults for many components\&.

.SH "COLOR FORMATS"


These are the color formats for styles:

.nf
#000000 (Hexadecimal)
rgb:<0\-255>/<0\-255>/<0\-255>
.fi


See /usr/X11R6/lib/X11/rgb\&.txt for an explaination\&.

.SH "AUTHOR AND CREDITS"


Blackbox was written and maintained by Brad Hughes <blackbox@alug\&.org> and Jeff Raven <jraven@psu\&.edu>\&.


fluxbox(1) is written and maintained by Henrik Kinnunen <fluxgen@fluxbox(1)\&.org> with contributions and patches merged from many individuals around the world\&.


The Official fluxbox(1) website: http://www\&.fluxbox(1)\&.org You can find a lot of styles here: http://fluxmod\&.org/


This manpage was composed from various resources including the official documentation, fluxbox(1) man page and numerous other resources by Curt "Asenchi" Micol\&. If you notice any errors or problems with this page, please contact him here: <asenchi@asenchi\&.com> and using the great contributions of <grubert@users\&.sourceforge\&.net>\&. Numerous other languages could be available if someone jumps in\&.

.SH "SEE ALSO"


fluxbox(1) fbsetbg(1) fbsetroot(1)