1FLUXBOX-KEYS(5) Fluxbox Manual FLUXBOX-KEYS(5)
2
3
4
6 fluxbox-keys - keyboard shortcuts configuration for fluxbox(1)
7
9 ~/.fluxbox/keys
10
12 Variable parameters are shown in emphasis: argument
13
14 Optional parameters are shown in square brackets: [argument]
15
16 All other characters shown are required verbatim. Whitespace is
17 required where shown, but it is fine to add more whitespace.
18
20 The keys file defines the keyboard shortcuts for fluxbox(1).
21
22 You can customize fluxbox’s key handling through the ~/.fluxbox/keys
23 file. The file consists of lines of the basic format:
24
25 [modifiers] key :'command' [arguments ...]
26
27 The space between the key and the : before the command is mandatory.
28
29 All modifiers and commands are case-insensitive. Some command arguments
30 (especially those that will be passed to the shell) are case-sensitive.
31 Some key names are case-sensitive.
32
33 Lines beginning with a # or ! are considered comments and are unread by
34 fluxbox.
35
36 You will need to “reload” fluxbox after editing the keys file so it
37 picks up your change.
38
40 You can get a list of possible modifiers by calling ‘xmodmap -pm’. This
41 also shows you to which keys the modifiers are mapped, but the
42 following modifiers are most commonly used:
43
44 Shift Control Mod1 Mod4
45
46 where Mod1 is the Alt key on the PC keyboard and Mod4 is usually a key
47 branded with a familiar company logo.
48
49 There are also some special modifiers that refer to mouse button events
50
51 OnDesktop
52 The mouse cursor is over the desktop (root window), and not any
53 window.
54
55 OnToolbar
56 The mouse cursor is over the toolbar (which is normally at the
57 bottom of the screen).
58
59 OnWindow
60 The mouse cursor is over a window.
61
62 OnTitlebar
63 The mouse cursor is over a window’s titlebar.
64
65 OnTab
66 The mouse cursor is over a tab.
67
68 Double
69 Limits this action to double-clicks only.
70
71 Combining Modifiers
72 To combine two or more modifiers, just list them (space-delimited) in
73 any order.
74
76 You may specify a key by its key name (for example, a or space) or by
77 its numeric keycode (for example, 38 or 0xf3).
78
79 If you don’t know the name of a key, you can run xev(1) in a terminal,
80 push the key, and see the name in the output. If you have some
81 "special" keys that do not produce a key name in the output of xev(1),
82 you can just use the keycode (NOT the keysym!) in your keys file.
83
84 Commands can also be bound to mouse events (N denotes the number of the
85 button, eg. 1 is the primary button, 4/5 are the wheel buttons):
86
87 MouseN
88 The mouse button N is pressed down and held.
89
90 ClickN
91 The mouse button N is clicked (pressed and released with no
92 movement in between)
93
94 MoveN
95 The mouse button N is currently held, the bound action is triggered
96 as often as the mouse moves.
97
98 There are some special "keys" that let you bind events to non-keyboard
99 events:
100
101 ChangeWorkspace
102 Fires when the workspace changes. This can be used to change
103 backgrounds or do anything else you like when you switch to a new
104 workspace. See the EXAMPLES below for one idea.
105
106 Warning
107 Use caution with this event! For example, do NOT bind this to any
108 action that changes your current workspace. If you break your
109 fluxbox with this feature, you get to keep the pieces.
110
112 Key bindings can be chained in a fashion similar to Emacs key bindings
113 using the syntax:
114
115 modifiers-1 key-1 modifiers-2 key-2 :'command' [arguments ...]*
116
117 To abort a chained command part-way through typing it, press the <ESC>
118 key.
119
120 To Bind CTRL+C CTRL+X (Which means, press CTRL+C then CTRL+X) to quit
121 fluxbox.
122
123 Control c Control x :Quit
124
125
127 A specific set of key mappings can be activated and de-activated
128 on-the-fly using what are called keymodes. The syntax to define a
129 mapping in a keymode is:
130
131 keymode: modifiers key :'command' [arguments ...]
132
133 Where keymode is any alpha-numeric string name.
134
135 When this keymode is activated (see the KeyMode command below), all
136 bindings prefaced by that keymode name become active (and all other
137 keybindings will be deactivated) until the keymode changes again.
138
140 Some commands have multiple names which are shown below as
141 CMD1 | CMD2
142
143 Related commands have been grouped below as
144 CMD1 / CMD2
145
146 The commands are broken up into sections as follows
147
148 · Mouse Commands
149
150 · Window Commands
151
152 · Workspace Commands
153
154 · Menu Commands
155
156 · Window Manager Commands
157
158 · Special Commands
159
160 Mouse Commands
161 These commands may only be bound to mouse buttons (plus modifiers), not
162 keystrokes. In all cases, the action finishes when the mouse button is
163 released.
164
165 StartMoving
166 Start dragging to move the window.
167
168 StartResizing [corner]
169 Start dragging to resize the window as if you had grabbed the
170 window at the specified corner.
171
172 By default corner is BottomRight, but may be overridden with one
173 of:
174 NearestCorner NearestEdge NearestCornerOrEdge Center TopLeft
175 Top TopRight Left Right BottomLeft Bottom BottomRight
176
177 If NearestCornerOrEdge is specified the size of the corner can also
178 be specified to be the larger of one or two following numbers:
179 [pixel-size [percent-size]] or percent-size%, where percent-size is
180 the percentage of half the window width or height. If no size is
181 given, it defaults to 50 pixels and 30%.
182
183 StartTabbing
184 Start dragging to add this window to another’s tabgroup.
185
186 ActivateTab
187 Activates the tab underneath the mouse.
188
189 Window Commands
190 These commands ordinarily affect only the currently focused window. The
191 OnWindow modifier and ForEach command may affect the window that is
192 used.
193
194 Minimize | MinimizeWindow | Iconify
195 Minimize the current window, equivalent to the window button.
196
197 Maximize | MaximizeWindow
198 Maximize the current window, equivalent to the window button.
199
200 MaximizeHorizontal / MaximizeVertical
201 Maximize the current window in one direction only, leaving the
202 other dimension unchanged.
203
204 Fullscreen
205 Resize the window’s content to fit the whole screen, without any
206 window decoration.
207
208 Raise / Lower
209 Reorder this window to the top or bottom of the window stack,
210 within its current layer. See fluxbox(1) for a discussion of
211 layers.
212
213 RaiseLayer / LowerLayer [offset]
214 Raise the window up to the layer above, or lower it to the layer
215 below. See fluxbox(1) for a discussion of layers.
216
217 SetLayer layer
218 Move the window to the specified layer. layer should be one of
219 AboveDock, Dock, Top, Normal, Bottom, Desktop. See fluxbox(1) for a
220 discussion of layers.
221
222 Close
223 Close the current window, equivalent to the window button.
224
225 Kill | KillWindow
226 Close a window that’s not responding to Close, like using xkill(1).
227
228 Shade | ShadeWindow
229 Toggle the shaded state of the current window, equivalent to the
230 window button. A shaded window appears as only the title bar.
231
232 ShadeOn / ShadeOff
233 Set the shaded state of the window to On / Off.
234
235 Stick | StickWindow
236 Toggle the sticky state of the current window, equivalent to the
237 window button. A sticky window is visible on all workspaces.
238
239 SetDecor decor
240 Sets which window decorations will be shown. decor has the same
241 format as the ‘[Deco]’ parameter in the apps file. See
242 fluxbox-apps(5) for more info.
243
244 ToggleDecor
245 Toggles the presence of the window decorations (title bar, window
246 buttons, and resize bar).
247
248 NextTab / PrevTab
249 Cycle to the next / previous tab in the current tab group.
250
251 Tab number
252 Cycle to the given tab in the current tab group, where 1 is the
253 first tab. A negative number counts from the end of the tab group
254 (-1 is the last tab, -2 is the next-to-last, etc.).
255
256 MoveTabRight / MoveTabLeft
257 Reorder the tabs in the current tab group, swapping the current tab
258 with the one to the right / left.
259
260 DetachClient
261 Remove the current tab from the tab group, placing it in its own
262 window.
263
264 ResizeTo width[%] height[%]
265 Resizes the window to the given width and height. If the value is
266 given in percent, then the window size will be based on the current
267 screen’s size.
268
269 Resize delta-width[%] delta-height[%]
270 Resizes the window relative to the current width and height. If the
271 value is given in percent, then the window size will be based on
272 the current window’s size.
273
274 ResizeHorizontal delta-width[%] / ResizeVertical delta-height[%]
275 Resizes the window in one dimension only. If the value is given in
276 percent, then the window size will be based on the current window’s
277 size.
278
279 MoveTo x[%] y[%] [anchor]
280 Moves the window to the given coordinates, given in pixels or
281 relatively to the current screen size if % is specified after the
282 value.
283
284 If either x or y is set to \*, that coordinate will be ignored, and
285 the movement will only take place in one dimension.
286
287 The default anchor is the upper left corner, but this may be
288 overridden with one of:
289 TopLeft Left BottomLeft Top Center Bottom TopRight Right
290 BottomRight
291
292 Move delta-x delta-y
293 Moves the window relative to its current position. Positive numbers
294 refer to right and down, and negative to left and up, respectively.
295
296 MoveRight d / MoveLeft d / MoveUp d / MoveDown d
297 Moves the window relative to its current position by the number of
298 pixels specified in d. If the number is negative, it moves in the
299 opposite direction.
300
301 TakeToWorkspace workspace / SendToWorkspace workspace
302 Sends you along with the current window to the selected workspace.
303 SendToWorkspace just sends the window. The first workspace is
304 number 1, not 0.
305
306 TakeToNextWorkspace [offset] / TakeToPrevWorkspace [offset]
307 Sends you along with the current window to the next or previous
308 workspace. If you set offset to a value greater than the default of
309 1, it will move you that number of workspaces ahead or behind. If
310 you go beyond the end of the currently defined workspaces, it will
311 wrap around to the other end automatically.
312
313 SendToNextWorkspace [offset] / SendToPrevWorkspace [offset]
314 Identical to the "TakeTo..." commands, but again this sends only
315 the window, and does not move you away from your current workspace.
316
317 SetAlpha [alpha [unfocused-alpha]]
318 Sets the alpha value of a window.
319
320 Putting a + or - in front of the value adds or subtracts from the
321 current value. A plain integer sets the value explicitly.
322
323 no arguments
324 Resets both focused and unfocused settings to default opacity.
325
326 one argument
327 Changes both focused and unfocused alpha settings.
328
329 two arguments
330 First value becomes the focused alpha, second becomes the
331 unfocused alpha value.
332
333 SetHead number
334 Moves the window to the given display head. Only available when
335 fluxbox has been compiled with Xinerama support.
336
337 SendToNextHead [offset] / SendToPrevHead [offset]
338 Sends the current window to the next/previous display head. If you
339 specify an offset greater than 1, it will move the window that many
340 heads. If this takes the window beyond the total number of heads,
341 it will wrap around to the beginning.
342
343 SetXProp PROP=value
344 Sets the xproperty PROP of the current window to value. Delete the
345 content of PROP by using PROP=.
346
347 Workspace Commands
348 These commands affect the entire workspace (or "desktop" as it is
349 sometimes called).
350
351 AddWorkspace / RemoveLastWorkspace
352 Adds or removes a workspace from the end of the list of workspaces.
353
354 NextWorkspace [n] / PrevWorkspace [n] / RightWorkspace [n] /
355 LeftWorkspace [n]
356 Switch to the Next / Previous workspace. All versions accept an
357 offset value n, which defaults to 1 and refers to the number of
358 workspaces to move at one time. {Next,Prev}Workspace wrap around
359 when going past the last workspace, whereas {Right,Left}Workspace
360 do not.
361
362 Workspace number
363 Jumps to the given workspace number. The first workspace is 1.
364
365 NextWindow [{options}] [pattern] / PrevWindow [{options}] [pattern]
366 Focuses the next / previous window in the focus list.
367
368 options is one or more of the following, space delimited:
369
370 static
371 Instead of moving in order of most-recent focus, move in
372 order of when the window was opened (or, the order shown in
373 the iconbar).
374
375 groups
376 Only include the current tab in windows with multiple tabs.
377
378 If pattern arguments are supplied, only windows that match all
379 the patterns are considered - all others are skipped. See the
380 section CLIENT PATTERNS below for more information.
381
382 This pair of commands has a special side-effect when the
383 keybinding used has a modifier - It will temporarily raise the
384 cycled window to the front so you can see it, but if you
385 continue holding down the modifier and press the key again (For
386 example, keep holding "Alt" while you tap the "Tab" key a few
387 times), fluxbox will lower the window again when you move on to
388 the next one. This allows you to preview the windows in order,
389 but does not change the order in doing so.
390
391 NextGroup [{options}] [pattern] / PrevGroup [{options}] [pattern]
392 Equivalent to NextWindow / PrevWindow above, but with the groups
393 option forced on.
394
395 GotoWindow number [{options}] [pattern]
396 Focuses and activates the window at position number in the focus
397 list. The options and pattern arguments have the same meaning as
398 NextWindow above.
399
400 Activate [pattern] | Focus [pattern]
401 With pattern, this is an alias for GoToWindow 1 pattern. Without,
402 this behaves like a window command, so that OnWindow events can
403 change the focused window.
404
405 Attach pattern
406 Combines all windows that match the pattern into a single tab
407 group. See CLIENT PATTERNS for more about the pattern arguments.
408
409 FocusLeft / FocusRight / FocusUp / FocusDown
410 Focus to the next window which is located in the direction
411 specified.
412
413 ArrangeWindows pattern / ArrangeWindowsVertical pattern /
414 ArrangeWindowsHorizontal pattern
415 Tries to arrange all windows on the current workspace so that they
416 overlap the least amount possible. ArrangeWindowsVertical prefers
417 vertical splits (windows side by side), whereas
418 ArrangeWindowsHorizontal prefers horizontal splits (windows on top
419 of eachother). See CLIENT PATTERNS for more about the pattern
420 arguments.
421
422 ArrangeWindowsStackLeft pattern / ArrangeWindowsStackRight pattern
423 Similar to ArrangeWindows, these commands arrange windows on the
424 current workspace. The currently focussed window is used as the
425 main window, and will fill half the screen, while the other windows
426 are tiled on the other half of the screen as if they were tiled
427 with ArrangeWindows. ArrangeWindowsStackLeft puts the main window
428 on the RIGHT hand side of the screen, and the tiled windows are on
429 the LEFT hand side of the screen. ArrangeWindowsStackRight puts
430 the main window on the LEFT hand side of the screen, and the tiled
431 windows are on the RIGHT hand side of the screen.
432
433 ArrangeWindowsStackTop pattern / ArrangeWindowsStackBottom pattern
434 Behaves just like ArrangeWindowsStackLeft and
435 ArrangeWindowsStackRight. ArrangeWindowsStackBottom places the
436 main window on the TOP half of the screen, and the tiled windows on
437 the bottom half of the screen. ArrangeWindowsStackTop places the
438 main window on the BOTTOM half of the screen and the tiled windows
439 on the top half of the screen.
440
441 ShowDesktop
442 Minimizes all windows on the current workspace. If they are already
443 all minimized, then it restores them.
444
445 Deiconify mode destination
446 Deiconifies windows (or, restores from a minimized state).
447
448 Where mode may be one of:
449
450 All
451 All icons across all workspaces.
452
453 AllWorkspace
454 All icons on the current workspace.
455
456 Last
457 The last icon across all workspaces.
458
459 LastWorkspace (default)
460 The last icon on the current workspace.
461
462 And destination may be one of:
463
464 Current (default)
465 Deiconify to the current workspace.
466
467 OriginQuiet
468 Deiconify to the window’s original workspace, but does so
469 in the background, without moving you there.
470
471 SetWorkspaceName name / SetWorkspaceNameDialog
472 Sets the name of the current workspace.
473
474 CloseAllWindows
475 Closes all windows on all desktops.
476
477 Menu Commands
478 These commands open or close fluxbox popup menus. For more information
479 on what these menus contain or how to configure them, see fluxbox(1).
480
481 RootMenu
482 Opens the root menu. See ROOT MENU in fluxbox-menu(5) for details.
483
484 WorkspaceMenu
485 Opens a menu showing all workspaces and windows. See Workspace Menu
486 in fluxbox(1) for details.
487
488 WindowMenu
489 Opens a menu containing actions for the current window. See WINDOW
490 MENU in fluxbox-menu(5) for details.
491
492 ClientMenu [pattern]
493 Opens a menu that contains all windows. If you specify a
494 pattern, only matching windows will be in the menu. Selecting a
495 window will jump to that workspace and raise the window. See
496 CLIENT PATTERNS below for more details on the pattern argument.
497
498 CustomMenu path
499 Opens a custom menu file. This path must be a valid menu file
500 in the same format as detailed by the ROOT MENU section of
501 fluxbox-menu(5).
502
503 HideMenus
504 Hide all fluxbox popup menus.
505
506 Window Manager Commands
507 These commands affect the Window Manager, or more than one window.
508
509 Restart [path]
510 Restarts fluxbox. This does not close any running applications. If
511 the optional path is a path to an executable window manager, that
512 manager is started in place of fluxbox.
513
514 Quit | Exit
515 Exits fluxbox. This will normally cause X to stop as well and
516 terminate all existing applications, returning you to the login
517 manager or console.
518
519 Reconfig | Reconfigure
520 Reloads all fluxbox configuration files including the keys file,
521 apps file, and init file, if they have changed.
522
523 SetStyle path
524 Sets the current style to that given in path, which must be the
525 full path to a fluxbox style.
526
527 ReloadStyle
528 Reloads only the current style. Useful after editing a style which
529 is currently in use.
530
531 ExecCommand args ... | Exec args ... | Execute args ...
532 Probably the most-used binding of all. Passes all the arguments to
533 your $SHELL (or /bin/sh if $SHELL is not set). You can use this to
534 launch applications, run shell scripts, etc. Since all arguments
535 are passed verbatim to the shell, you can use environment
536 variables, pipes, or anything else the shell can do. Note that
537 processes only see environment variables that were set before
538 fluxbox started (such as in ~/.fluxbox/startup), or any that are
539 set via the Export or SetEnv commands, below. See fluxbox(1) for
540 more details on the ENVIRONMENT and \~/.fluxbox/startup file.
541
542 CommandDialog
543 Pops up a dialog box that lets you type in any of these commands
544 manually.
545
546 SetEnv name value | Export name=value
547 Sets an environment variable in Fluxbox. It will be passed to any
548 applications spawned by any future ExecCommand commands.
549
550 SetResourceValue resourcename resourcevalue | SetResourceValueDialog
551 Sets a fluxbox resource value, which are normally stored in the
552 init file. See fluxbox(1) for more details on available resources
553 and allowed values.
554
555 Special Commands
556 These commands have special meanings or behaviors.
557
558 MacroCmd {command1} {command2} {command3} ...
559 Allows you to execute more than one command with one keybinding.
560 The commands will be executed in series. The {} brackets are
561 literally required, as in the following example:
562
563 MacroCmd {MoveTo 0 0} {ResizeTo 1280 800}
564
565 Delay {command} [microseconds]
566 Delays running command for the given amount of time. If the same
567 key binding is activated again, the timer will be restarted.
568
569 ToggleCmd {command1} {command2} ...
570 Alternates between the commands. On the first press of the bound
571 key, runs command1. On the next press, runs command2.
572
573 BindKey keybinding
574 Adds the given keybinding (which must be a valid key binding as
575 defined in the DESCRIPTION section above) to your keys file.
576
577 KeyMode keymode [return-keybinding]
578 Activates the named keymode (or, all key binding lines prefaced
579 with the same keymode:) and deactivates all others until the
580 return-keybinding (by default Escape) is pressed. The default
581 keymode is named default.
582
583 ForEach {command} [{condition}] | Map {command} [{condition}]
584 Runs the given command (normally one from the Window Commands
585 section above) on each window. If you specify a condition (See
586 Conditions, below) the action will be limited to matching windows.
587
588 If {condition} {then-command} [{else-command}] | Cond {condition}
589 {then-command} [{else-command}]
590 If the condition command returns true, then run the then-command,
591 otherwise run the optional else-command. See Conditions below for
592 more information on the condition argument.
593
594 Conditions
595 These special commands are used to match windows conditionally. They
596 are commonly used by the If and ForEach command.
597
598 Matches pattern
599 Returns true if the current window matches the given pattern. See
600 CLIENT PATTERNS below for details on the pattern syntax.
601
602 If your key binding uses the OnWindow modifier, it matches against
603 the window you clicked, not the currently focused window.
604
605 To check other windows besides the currently focused one, see the
606 Every and Some conditions below.
607
608 Some condition
609 Returns true if any window on any workspace (not just the currently
610 focused one) matches the condition.
611
612 Every condition
613 Returns true if every window on every workspace (not just the
614 current one) matches the condition.
615
616 Not condition
617 Returns true if condition returns false, and vice-versa.
618
619 And {condition1} {condition2} [{condition3} ...]
620 Returns true if and only if all given conditions return true.
621
622 Or {condition1} {condition2} [{condition3} ...]
623 Returns true if any of the listed conditions return true.
624
625 Xor {condition1} {condition2} [{condition3} ...]
626 Returns the boolean xor of the truth values for all conditions
627 listed.
628
630 Many of the more advanced commands take a pattern argument, which
631 allows you to direct the action at a specific window or set of windows
632 which match the properties specified in the pattern.
633
634 A pattern looks like this
635 ([propertyname[!]=]regexp) ...
636
637 Match definitions are enclosed in parentheses (...), and if no
638 propertyname is given then Name is assumed. The regexp can contain any
639 regular expression, or the special value [current], which matches the
640 corresponding value of the currently focused window. See regex(7) for
641 more information on acceptable regular expressions.
642
643 propertyname is not case sensitive, whereas the regexp is.
644
645 If you specify multiple (pattern) arguments, this implies an AND
646 condition - All specified patterns must match.
647
648 You can use = to test for equality or != to test for inequality.
649
650 The following values are accepted for propertyname
651
652 Name
653 A string, corresponding to the CLASSNAME property (The first
654 field of WM_CLASS from the output of the xprop(1) utility).
655
656 Class
657 A string, corresponding to the CLASSCLASS property (The second
658 field of WM_CLASS from the output of the xprop(1) utility).
659
660 Title
661 A string, corresponding to the window title (WM_NAME from
662 xprop(1)).
663
664 Role
665 A string, corresponding to the ROLE property (WM_WINDOW_ROLE
666 from xprop(1)).
667
668 Transient
669 Either yes or no, depending on whether the window is transient
670 (typically, a popup dialog) or not.
671
672 Maximized
673 Either yes or no, depending on whether the window is maximized
674 or not.
675
676 MaximizedHorizontal
677 Either yes or no, depending on whether the window is maximized
678 horizontally or not.
679
680 MaximizedVertical
681 Either yes or no, depending on whether the window is maximized
682 vertically or not.
683
684 Minimized
685 Either yes or no, depending on whether the window is minimized
686 (iconified) or not.
687
688 Fullscreen
689 Either yes or no, depending on whether the window is fullscreen
690 or not.
691
692 Shaded
693 Either yes or no, depending on whether the window is shaded or
694 not.
695
696 Stuck
697 Either yes or no, depending on whether the window is sticky (on
698 all workspaces) or not.
699
700 FocusHidden
701 Either yes or no, depending on whether the window has asked to
702 be left off the focus list (or, the alt-tab list), or not.
703
704 IconHidden
705 Either yes or no, depending on whether the window has asked to
706 be left off the icon list (or, the taskbar), or not.
707
708 Urgent
709 Either yes or no, depending on whether the window has the
710 urgent hint set.
711
712 Workspace
713 A number corresponding to the workspace number to which the
714 window is attached. The first workspace here is 0. You may also
715 use [current] to match the currently visible workspace.
716
717 WorkspaceName
718 A string corresponding to the name of the workspace to which
719 the window is attached.
720
721 Head
722 The number of the display head to which the window is attached.
723 You may match this against the special value [mouse] which
724 refers to the head where the mouse pointer currently resides.
725
726 Layer
727 The string name of the window’s layer, which is one of
728 AboveDock, Dock, Top, Normal, Bottom, Desktop
729
730 Screen
731 The number of the currently used screen. If the setup of the
732 running xserver involves independent screens (not Xinerama),
733 the $DISPLAY environment contains something like :0.1 or :1.0.
734 The part after the dot (.) is the number of the screen.
735
736 @XPROP
737 A string, corresponding to any xproperty (Use either the
738 xprop(1) utility or the SetXProp command to set a xproperty to
739 a window)
740
741 Matches any windows with the CLASSNAME of "xterm".
742
743 (xterm)
744
745 Matches any windows with the same CLASSNAME as the currently focused
746 window.
747
748 (Name=[current])
749
750 Matches any windows on the same head as the mouse but on a different
751 layer than the currently focused window.
752
753 (Head=[mouse]) (Layer!=[current])
754
755 Matches any windows having a xproperty named FOO with "bar" in it.
756
757 (@FOO=.*bar.*)
758
759
761 ~/.fluxbox/keys
762 This is the default location for the keybinding definitions.
763
764 /usr/X11R6/include/X11/keysymdef.h
765 X key names are in this file.
766
767 /usr/X11R6/lib/X11/XKeysymDB
768 X key names are also in this file.
769
771 session.keyFile: location
772 This may be set to override the location of the keybinding
773 definitions.
774
776 Remember that ExecCommand command can take advantage of other
777 environment variables if they are set before fluxbox is started, or via
778 the Export or SetEnv commands. For example, if $TERM is set, it could
779 be use like this:
780
781 Mod1 x :ExecCommand $TERM
782
783 For more information about environment variables, see your shell’s
784 manual.
785
787 Here are some interesting and/or useful examples you can do with your
788 keys file.
789
790 # Mod4+drag moves a window
791 OnWindow Mod4 Mouse1 :StartMoving
792
793 # If any xterm windows are open, cycle through them. If none are open, open
794 # one:
795 Mod4 t :If {Some Matches (xterm)} {NextWindow (xterm)} {Exec xterm}
796
797 # Set a different wallpaper on every workspace:
798 ChangeWorkspace :Exec fbsetbg ~/.fluxbox/bg$(xprop -root _NET_CURRENT_DESKTOP | awk '{print $3}').png
799
800 # Focusses the next window with it's xproperty 'PROP' set to 'foo'
801 Mod4 p Mod4 Tab :NextWindow (@PROP=foo)
802
804 · Jim Ramsay <i.am at jimramsay com> (>fluxbox-1.0.0)
805
806 · Curt Micol <asenchi at asenchi com> (>fluxbox-0.9.11)
807
808 · Tobias Klausmann <klausman at users sourceforge net>
809 (⟨fluxbox-0.9.11)
810
811 · Grubert <grubert at users sourceforge net> (fluxbox)
812
813 · Matthew Hawkins <matt at mh dropbear id au> (blackbox)
814
815 · Wilbert Berendsen <wbsoft at xs4all nl> (blackbox)
816
818 fluxbox(1) xprop(1) xev(1) xkill(1) regex(7)
819
821 Jim Ramsay <i.am@jimramsay.com>
822 Author.
823
824
825
826fluxbox-keys.txt 08 February 2015 FLUXBOX-KEYS(5)