Configuration Files

Orion uses two kinds of configuration files residing in the directory ~/.orion-wm. The first one is called "layout" and the second "config". Both configuration files are created for each screen you run orion on. The name of the screen is appended to the filename, so usually you will have the files ~/.orion-wm/layout-:0.1 and ~/.orion-wm/config-:0.1. The layout file contains your manager hierarchy and some automatically managed options of the managers. The content of this file is created automatically and you should not need to edit the file manually. In the config file you can specify all possible configuration options of orion. The file is parsed and executed as a scheme module file. It should define a module config-file with the interface config-file-interface. This interface lists 4 association lists root-options, split-options, switch-options, move-options for configuring the child window managers. The following table lists the possible keys, types of values and default values of the present options. An example file may look like this:
(define-structure config-file config-file-interface
  (open (modify scheme-with-scsh (hide format))
        srfi-28
        xlib 
        config-file-utils)
  (begin
    
    (define (xsel->opera-remote)
      (let* ((url (run/string (xsel)))
             (remote-arg (format "openURL(~a,new-window)" url)))
        (& (opera -remote ,remote-arg))))

    (define root-options
      `((quit . "F8")
        (save-layout . "F7")
        (nth-workspace . ("M-1" "M-2" "M-3" "M-4" "M-5" "M-6" "M-7"))
        (create-workspace . "F5")
        (user-bindings . (("F2" exec "xterm")
                          ("F4" apply ,xsel->opera-remote)))))
    (define split-options '())
    (define switch-options '())
    (define move-options '())))

;;; Local Variables:
;;; mode:scheme
;;; End:

root-options

name type default value description
split-horizontal keys "M-s h" Shortcut for splitting the current manager into a left and a right part.
split-vertical keys "M-s v" Shortcut for splitting the current manager into an upper and a lower part.
split-horizontal-with-switch-wm keys "M-s s h" Shortcut for splitting the current manager into a left and a right part with a switch manager in the right part.
split-vertical-with-switch-wm keys "M-s s v" Shortcut for splitting the current manager into an upper and a lower part with a switch manager in the right part.
split-horizontal-with-move-wm keys "M-s m h" Shortcut for splitting the current manager into a left and a right part with a move manager in the right part.
split-vertical-with-move-wm keys "M-s m v" Shortcut for splitting the current manager into an upper and a lower part with a move manager in the right part.
create-switch-wm keys "M-k s" Create a new switch manager.
create-move-wm keys "M-k m" Create a new move manager.
split-question string "What kind of manager..."
quit keys "F12" Shortcut for quitting Orion.
quit-question string "Really quit orion?"
user-bindings binding-list '(("F2" exec "xterm")) List of user-defined key bindings. A binding consists of the key to bind, a command and command arguments. Orion currently supports the commands exec and apply. The arguments of the exec command should be the name of a program followed by arguments to the program. Orion will execute this program with the arguments. The apply command applies a function, given as first command argument, to the arguments starting at the second command argument.
execute keys "F3" Shortcut for running a program. A dialog will ask for the program to run. The TAB key allows completion of the program name.
execute-question string "Execute:"
attach keys "M-a" Shortcut for attaching a window to the current manager.
attach-question string "Attach:"
workspace-options sexp '()
nth-workspace keys-list '("M-1" "M-2" "M-3" "M-4") A list of shortcuts for changing directly to the nth workspace.
create-workspace keys "F9" Shortcut for creating a new workspace.
create-workspace-question string "What kind of manager..."
kill-client keys "M-c" Shortcut for closing the current window.

switch-options

name type default value description
titlebar-colors colors '("#aaaaaa" "#eeeeee" "#777777" "black") Colors for the titlebar. The colors are (background light-color dark-color font-color).
titlebar-colors-focused colors '("#666699" "#aaaacc" "#333366" "#eeeeee") Colors for the titlebar of a focused window.
titlebar-colors-active colors '("#9999aa" "#eeeeff" "#777788" "black") Colors for the titlebar of an active but not focused window.
titlebar-height int 18 The height of a titlebar.
titlebar-style symbol 'raised The style of the titlebar which can be 'raised, 'sunken or 'flat.
font font "-*-helvetica-medium-r-normal-*-12-*-*-*-*-*-*-*" The font used for the titlebar text.
select-next keys "M-k n" Shortcut for selecting the next client.
select-previous keys "M-k p" Shortcut for selecting the previous client.
swap-next keys "M-k t" Shortcut for swapping the current client with the next client.
swap-previous keys "M-k r" Shortcut for swapping the current client with the previous client.

move-options

name type default value description
titlebar-colors colors '("#aaaaaa" "#eeeeee" "#777777" "black") Colors for the titlebar. The colors are (background light-color dark-color font-color).
titlebar-colors-focused colors '("#666699" "#aaaacc" "#333366" "#eeeeee") Colors for the titlebar of a focused window.
titlebar-height int 18 The height of a titlebar.
titlebar-style symbol 'flat The style of the titlebar which can be 'raised, 'sunken or 'flat.
font font "-*-helvetica-medium-r-normal-*-12-*-*-*-*-*-*-*" The font used for the titlebar text.
border-width int 3 The size of a window's border, which also specifies the area that can be dragged with the mouse to resize a window.
corner-width int 10 This size specifies how big the area in a window's corner is, that is used for resizing a window in the diagonal directions.
border-style symbol 'raised The style of the window's border, which can be 'raised, 'sunken or 'flat.
border-colors colors '("#333333" "#dddddd") Colors for the window's border. The colors are (light-color dark-color).

split-options

name type default value description
bar-width int 3 The size of the bar between the two frames.
bar-style symbol 'raise The style of the bar between the two frames which can be 'raised, 'sunken or 'flat.
bar-colors colors '("#dddddd" "#888888" "#333333") The colors of the bar. The colors are (light main dark).
select-right keys "M-Right" Shortcut for selecting the right frame.
select-left keys "M-Left" Shortcut for selecting the left frame.
select-up keys "M-Up" Shortcut for selecting the upper frame.
select-down keys "M-Down" Shortcut for selecting the lower frame.