# # This is the default wmfs config file, copy it to # ~/.config/wmfs/wmfsrc and edit it. # # Include file to split configuration # @include "~/.config/wmfs/menu-wmfsrc" [misc] use_xft = true font = "dejavu-10" raisefocus = true focus_follow_mouse = true focus_follow_movement = false opacity = 255 # focus_pointer_click: click on unfocused client area: # true -- default, set focus # false -- click go to client; including dockapps focus_pointer_click = true status_timing = 1 #seconds # status_path = "~/.config/wmfs/status.sh" [/misc] [bar] bg = "#191919" fg = "#D4D4D4" border = true #height = "-1" light_shade = 0.10 dark_shade = -0.10 [systray] # Enable/disable systray active = true # Screen of systray screen = 0 # Spacing between tray icons spacing = 3 [/systray] # Remove this section to disable the selbar. [selbar] bg = "#191919" fg = "#D4D4ff" # Cut title length # max_length = 25 [mouse] button = "3" func = "clientlist" [/mouse] [mouse] button = "4" func = "client_next" [/mouse] [mouse] button = "5" func = "client_prev" [/mouse] [/selbar] [/bar] [layouts] fg = "#191919" bg = "#7E89A2" # Border around the layout button. border = true # Value menu or switch. system = "menu" # Value left or right. placement = "right" # Keep layout geo for free layout keep_layout_geo = false # Enable split mode with client_resize_ cfactor_enable_split = true # Symbol displayed for the selected layout in the list selected_layout_symbol = "*" # Width of layout button # layout_button_width = x # Tiling layouts. [layout] type = "tile_right" symbol = "RIGHT" [/layout] [layout] type = "tile_left" symbol = "LEFT" [/layout] [layout] type = "tile_top" symbol = "TOP" [/layout] [layout] type = "tile_bottom" symbol = "BOTTOM" [/layout] [layout] type = "tile_grid" symbol = "GRID_H" [/layout] [layout] type = "tile_grid_vertical" symbol = "GRID_V" [/layout] [layout] type = "mirror_vertical" symbol = "MIRROR_V" [/layout] [layout] type = "mirror_horizontal" symbol = "MIRROR_H" [/layout] # Other layouts. [layout] type = "max" symbol = "MAX" [/layout] [layout] type = "free" symbol = "FREE" [/layout] [/layouts] [tags] [default_tag] name = "new tag" mwfact = 0.5 nmaster = 1 layout = "tile" resizehint = false infobar_position = "top" split = false [/default_tag] # whether client_next on the last tag will send you on the first # and client_prev on the first tag will send you on the last one tag_round = false # Going twice on the same tag will bring you back on the previous one tag_auto_prev = true occupied_bg = "#003366" occupied_fg = "#D4D4D4" sel_fg = "#191919" sel_bg = "#7E89A2" urgent_bg = "#DD1111" urgent_fg = "#000000" # If true, number of the tag will be used for name name_count = false #default_name = "new tag" # deprecated, use [default_tag] instead #default_layout = "tile_right" # deprecated, use [default_tag] instead expose_name = "EXPOSE" expose_layout = "tile_left" # Border around the tag buttons. border = true # Hide empty tags in tag list autohide = false # Mouse buttons action on tag. mouse_button_tag_sel = "1" mouse_button_tag_transfert = "2" mouse_button_tag_add = "3" mouse_button_tag_next = "4" mouse_button_tag_prev = "5" [tag] name = "one" screen = 0 mwfact = 0.65 nmaster = 1 layout = "tile_right" resizehint = false infobar_position = "top" above_fc = false split = false #[mouse] [/mouse] Possible multi mouse section [/tag] [tag] name = "two" [/tag] [tag] name = "three" [/tag] [tag] name = "four" [/tag] [tag] name = "five" [/tag] [tag] name = "six" [/tag] [tag] name = "seven" [/tag] [tag] name = "eight" [/tag] [tag] name = "nine" [/tag] [/tags] [root] # Command you can execute to set the background. background_command = "xsetroot -solid black" [mouse] button = "4" func = "tag_next" [/mouse] [mouse] button = "5" func = "tag_prev" [/mouse] [mouse] button = "3" func = "menu" cmd = "rootmenu" [/mouse] [/root] [client] client_round = true client_auto_center = false border_height = 3 border_shadow = true border_normal = "#191919" border_focus = "#003366" place_at_mouse = false resize_corner_normal = "#191919" resize_corner_focus = "#003366" set_new_win_master = true client_tile_raise = false new_client_get_mouse = false # send all client that have no tag rule in this default tag #default_open_tag = 4 # same as above but for the screen #default_open_screen = 1 # Space between tiled clients (px) padding = 0 # Modifier for mouse use modifier = "Alt" light_shade = 0.10 dark_shade = -0.10 # *DEPRECATED* but works, see [rules] section # Set automatic free or max client # autofree = "xterm|MPlayer" # automax = "Navigator" [mouse] button = "1" func = "client_raise" [/mouse] [mouse] button = "1" func = "mouse_move" [/mouse] [mouse] button = "3" func = "client_raise" [/mouse] [mouse] button = "3" func = "mouse_resize" [/mouse] # Remove this section to delete the titlebar. [titlebar] stipple = false height = 12 fg_normal = "#7E89A2" fg_focus = "#9F9AB3" [mouse] button = "1" func = "client_raise" [/mouse] [mouse] button = "1" func = "mouse_move" [/mouse] [mouse] button = "3" func = "client_raise" [/mouse] [mouse] button = "3" func = "mouse_resize" [/mouse] [button] # Available "free", "max", "tile" flags or button. flags = "free,max,tile" [mouse] button = "1" func = "client_kill" [/mouse] [mouse] button = "3" func = "menu" cmd = "clientmenu" [/mouse] [line] coord = {1, 1, 4, 1} [/line] [line] coord = {1, 1, 1, 4} [/line] [line] coord = {1, 4, 4, 4} [/line] [/button] [/titlebar] [/client] [rules] # Example of rule for MPlayer [rule] instance = "xv" # First part of WM_CLASS class = "MPlayer" # Seconf part of WM_CLASS, not needed if first part is correct # role = "" # WM_WINDOW_ROLE screen = 0 # Screen to use tag = 2 # Tag number of apps free = true # Set automatic free client max = false # Set automatic maximized client follow_client = false # follow the client ignore_tags = false # ignore tag (free mode) [/rule] [/rules] [menu] # Default menu, binded on the root window, button 3. [set_menu] name = "rootmenu" # place_at_mouse = false # x = 40 y = 50 # Available "center", "left", "right" menu align. Default: "center". align = "left" fg_focus = "#191919" bg_focus = "#7E89A2" fg_normal = "#9F9AB3" bg_normal = "#191919" [item] name = "Terminal" func = "spawn" cmd = "urxvt || xterm || gnome-terminal" [/item] [item] name = "Applications" submenu = "appmenu" [/item] [item] name = "Next tag" func = "tag_next" [/item] [item] name = "Previous tag" func = "tag_prev" [/item] [item] name = "Next layout" func = "layout_next" [/item] [item] name = "Previous layout" func = "layout_prev" [/item] [item] name = "Toggle infobar" func = "toggle_infobar_position" [/item] [item] name = "Quit WMFS" func = "quit" [/item] [/set_menu] [set_menu] name = "appmenu" align = "left" fg_focus = "#191919" bg_focus = "#7E89A2" fg_normal = "#9F9AB3" bg_normal = "#191919" [item] name = "Browser" func = "spawn" cmd = "firefox" [/item] [item] name = "Calculator" func = "spawn" cmd = "xcalc" [/item] [/set_menu] [set_menu] name = "clientmenu" fg_focus = "#D4D4D4" bg_focus = "#003366" fg_normal = "#D4D4D4" bg_normal = "#191919" # Check items: possible 'check_max' or 'check_free'. [item] name = "Close" func = "client_kill" [/item] [item] name = "Maximize" func = "toggle_max" check = "check_max" [/item] [item] name = "Free" func = "toggle_free" check = "check_free" [/item] [/set_menu] [/menu] [launcher] [set_launcher] # Limit size of the launcher window (px) width_limit = 300 name = "launcher_exec" prompt = "Exec: " command = "exec" [/set_launcher] [keys] # Reload the configuration of wmfs. [key] mod = {"Alt", "Control"} key = "r" func = "reload" [/key] # Open a terminal. [key] mod = {"Control"} key = "Return" func = "spawn" cmd = "xterm" [/key] # Kill the selected client. [key] mod = {"Alt"} key = "q" func = "client_kill" [/key] # Quit wmfs. [key] mod = {"Control", "Alt", "Shift"} key = "q" func = "quit" [/key] # Swap current client with the next. [key] mod = {"Alt"} key = "t" func = "client_swap_next" [/key] # Swap current client with the previous. [key] mod = {"Alt", "Shift"} key = "t" func = "client_swap_prev" [/key] # Set the selected client as Master [key] mod = {"Control"} key = "m" func = "client_set_master" [/key] # Toggle maximum the selected client [key] mod = {"Alt"} key = "m" func = "toggle_max" [/key] # Toggle free the selected client. [key] mod = {"Alt"} key = "f" func = "toggle_free" [/key] # Toggle the position of the infobar. [key] mod = {"Alt"} key = "b" func = "toggle_infobar_position" [/key] [key] mod = {"Alt", "Shift"} key = "b" func = "toggle_infobar_display" [/key] # Toggle the resizehint of the current tag/screen [key] mod = {"Shift", "Control"} key = "r" func = "toggle_resizehint" [/key] # Toggle the tag_autohide mode [key] mod = {"Shift", "Control"} key = "t" func = "toggle_tagautohide" [/key] # Select the next client. [key] mod = {"Alt"} key = "Tab" func = "client_next" [/key] # Select the previous client. [key] mod = {"Alt","Shift"} key = "Tab" func = "client_prev" [/key] # Select the next tag. [key] mod = {"Control"} key = "Right" func = "tag_next" [/key] # Select the previous tag. [key] mod = {"Control"} key = "Left" func = "tag_prev" [/key] # Select the next visible tag. [key] mod = {"Control","Alt"} key = "Right" func = "tag_next_visible" [/key] # Select the previous visible tag. [key] mod = {"Control","Alt"} key = "Left" func = "tag_prev_visible" [/key] # Set the next layout. [key] mod = {"Alt"} key = "space" func = "layout_next" [/key] # Set the previous layout. [key] mod = {"Alt", "Shift"} key = "space" func = "layout_prev" [/key] # Increase nmaster. [key] mod = {"Alt"} key = "d" func = "set_nmaster" cmd = "+1" [/key] # Decease nmaster. [key] mod = {"Alt", "Shift"} key = "d" func = "set_nmaster" cmd = "-1" [/key] #Launcher. [key] mod = {"Alt"} key = "p" func = "launcher" cmd = "launcher_exec" [/key] # Set the tag x. [key] mod = {"Alt"} key = "F1" func = "tag" cmd = "1" [/key] [key] mod = {"Alt"} key = "F2" func = "tag" cmd = "2" [/key] [key] mod = {"Alt"} key = "F3" func = "tag" cmd = "3" [/key] [key] mod = {"Alt"} key = "F4" func = "tag" cmd = "4" [/key] [key] mod = {"Alt"} key = "F5" func = "tag" cmd = "5" [/key] [key] mod = {"Alt"} key = "F6" func = "tag" cmd = "6" [/key] [key] mod = {"Alt"} key = "F7" func = "tag" cmd = "7" [/key] [key] mod = {"Alt"} key = "F8" func = "tag" cmd = "8" [/key] [key] mod = {"Alt"} key = "F9" func = "tag" cmd = "9" [/key] # Transfert selected client to x. [key] mod = {"Alt", "Shift"} key = "F1" func = "tag_transfert" cmd ="1" [/key] [key] mod = {"Alt", "Shift"} key = "F2" func = "tag_transfert" cmd ="2" [/key] [key] mod = {"Alt", "Shift"} key = "F3" func = "tag_transfert" cmd ="3" [/key] [key] mod = {"Alt", "Shift"} key = "F4" func = "tag_transfert" cmd ="4" [/key] [key] mod = {"Alt", "Shift"} key = "F5" func = "tag_transfert" cmd ="5" [/key] [key] mod = {"Alt", "Shift"} key = "F6" func = "tag_transfert" cmd ="6" [/key] [key] mod = {"Alt", "Shift"} key = "F7" func = "tag_transfert" cmd ="7" [/key] [key] mod = {"Alt", "Shift"} key = "F8" func = "tag_transfert" cmd ="8" [/key] [key] mod = {"Alt", "Shift"} key = "F9" func = "tag_transfert" cmd ="9" [/key] # Toggle additional tags (x) on the current tag [key] mod = {"Alt", "Super"} key = "F1" func = "tag_toggle_additional" cmd ="1" [/key] [key] mod = {"Alt", "Super"} key = "F2" func = "tag_toggle_additional" cmd ="2" [/key] [key] mod = {"Alt", "Super"} key = "F3" func = "tag_toggle_additional" cmd ="3" [/key] [key] mod = {"Alt", "Super"} key = "F4" func = "tag_toggle_additional" cmd ="4" [/key] [key] mod = {"Alt", "Super"} key = "F5" func = "tag_toggle_additional" cmd ="5" [/key] [key] mod = {"Alt", "Super"} key = "F6" func = "tag_toggle_additional" cmd ="6" [/key] [key] mod = {"Alt", "Super"} key = "F7" func = "tag_toggle_additional" cmd ="7" [/key] [key] mod = {"Alt", "Super"} key = "F8" func = "tag_toggle_additional" cmd ="8" [/key] [key] mod = {"Alt", "Super"} key = "F9" func = "tag_toggle_additional" cmd ="9" [/key] # change screen [key] mod = {"Super"} key = "Tab" func = "screen_next" [/key] [key] mod = {"Super", "Shift"} key = "Tab" func = "screen_prev" [/key] # swap client in the next/prev screen [key] mod = {"Super", "Shift"} key = "a" func = "client_screen_next" [/key] [key] mod = {"Super", "Shift"} key = "z" func = "client_screen_prev" [/key] # Toggle tag explose [key] mod = {"Alt"} key = "e" func = "toggle_tag_expose" [/key] # Toggle split mode [key] mod = {"Alt"} key = "s" func = "split_toggle" [/key] # Focus next client with direction [key] mod = {"Alt"} key = "h" func = "client_focus_left" [/key] [key] mod = {"Alt"} key = "l" func = "client_focus_right" [/key] [key] mod = {"Alt"} key = "k" func = "client_focus_top" [/key] [key] mod = {"Alt"} key = "j" func = "client_focus_bottom" [/key] # Swap next client with direction [key] mod = {"Control"} key = "h" func = "client_swap_left" [/key] [key] mod = {"Control"} key = "l" func = "client_swap_right" [/key] [key] mod = {"Control"} key = "k" func = "client_swap_top" [/key] [key] mod = {"Control"} key = "j" func = "client_swap_bottom" [/key] # Move next splitted client with direction [key] mod = {"Control", "Shift"} key = "h" func = "split_move_left" [/key] [key] mod = {"Control", "Shift"} key = "l" func = "split_move_right" [/key] [key] mod = {"Control", "Shift"} key = "k" func = "split_move_top" [/key] [key] mod = {"Control", "Shift"} key = "j" func = "split_move_bottom" [/key] # Resize selected tiled client with direction [key] mod = {"Super"} key = "h" func = "client_resize_left" cmd = "20" [/key] [key] mod = {"Super"} key = "l" func = "client_resize_right" cmd = "20" [/key] [key] mod = {"Super"} key = "k" func = "client_resize_top" cmd = "20" [/key] [key] mod = {"Super"} key = "j" func = "client_resize_bottom" cmd = "20" [/key] [key] mod = { "Super", "Control"} key = "h" func = "client_resize_right" cmd = "-20" [/key] [key] mod = { "Super", "Control"} key = "l" func = "client_resize_left" cmd = "-20" [/key] [key] mod = { "Super", "Control"} key = "k" func = "client_resize_bottom" cmd = "-20" [/key] [key] mod = { "Super", "Control"} key = "j" func = "client_resize_top" cmd = "-20" [/key] # unlisted fonctions that can be used in [key] func = "" # client_ignore_tag # Toggle the client in ignore_tag (display the client on all tags) # tag_prev_sel # go back to the previous selected tag # tag_transfert_{next, prev} # tag_urgent # go to the urgent tag # tag_swap_{next, prev} # swap tag with the previous/next one # tag_last # go to the last tag # tag_stay_last # toggle the current tag as the last one # toggle_abovefc # screen_prev_sel # go to the previous screen selected # set_layout # set layout. need to be called with cmd = "" # ignore_next_client_rules # ignore the rule the next time a rule is called [/keys]