Browse Source

add updated manual pages and Makefile.in

arnault 12 years ago
parent
commit
1b12c23859
3 changed files with 1254 additions and 26 deletions
  1. 5 0
      Makefile.in
  2. 623 26
      debian/wmfs.1
  3. 626 0
      wmfs.1

+ 5 - 0
Makefile.in

@@ -57,6 +57,9 @@ install: all
 	@echo installing default config file to ${DESTDIR}${XDG_CONFIG_DIR}/wmfs/
 	mkdir -p ${DESTDIR}${XDG_CONFIG_DIR}/wmfs/
 	install -m 444 wmfsrc ${DESTDIR}${XDG_CONFIG_DIR}/wmfs/
+	@echo installing manual pages to ${DESTDIR}${MANPREFIX}/man1/
+	mkdir -p ${DESTDIR}${MANPREFIX}/man1/
+	install -m 644 wmfs.1 ${DESTDIR}${MANPREFIX}/man1/wmfs.1
 
 uninstall:
 	@echo removing executable file from ${DESTDIR}${PREFIX}/bin
@@ -65,6 +68,8 @@ uninstall:
 	@echo removing config file from ${DESTDIR}${XDG_CONFIG_DIR}/wmfs/
 	rm -f ${DESTDIR}${XDG_CONFIG_DIR}/wmfs/wmfsrc
 	rmdir ${DESTDIR}${XDG_CONFIG_DIR}/wmfs/
+	@echo removing manual pages from ${DESTDIR}${MANPREFIX}/man1
+	rm -f ${DESTDIR}${MANPREFIX}/man1/wmfs.1
 
 dist:
 	@echo "Generate wmfs-`date +%Y%m`.tar.gz"

+ 623 - 26
debian/wmfs.1

@@ -1,29 +1,626 @@
-.TH WMFS: "1" "January 2012" "Window Manager From Scratch" "User Commands"
-.SH NAME
+.\"    title: wmfs
+.\"    dev: xorg62
+.\"    man: arpinux
+.\"
+.TH "WMFS" "1" "2012/02/08" "wmfs" "manual of wmfs"
+.\" disable hyphenation
+.nh
+.\" disable justification (adjust text to left margin only)
+.ad l
+.SH "NAME"
 wmfs \- Window Manager From Scratch
-.SH DESCRIPTION
-usage: wmfs [\-hv] [\-c <func> <cmd] [\-C <file>]
-.TP
-\fB\-h\fR
-Show this page
-.TP
+.SH "SYNOPSIS"
+\fBwmfs\fR [\fB\-hv\fR] [\fB\-C <file>\fR] [\fB\-c <uicb_function> <cmd>\fR]
+.sp
+.SH "DESCRIPTION"
+\fBWMFS\fR is a lightweight and highly configurable tiling window manager for X written in C\&.
+.sp
+.SH "OPTIONS"
+.PP
+\fB\-C <file>\fR
+.RS 4
+Load a configuration file\&.
+.RE
+.PP
+\fB\-c <uicb_function> <cmd>\fR
+.RS 4
+Execute an uicb function to control WMFS\&.
+.RE
+.PP
 \fB\-v\fR
-Show WMFS version
-.TP
-\fB\-c\fR <func> <cmd>
-Execute a specified UICB function
-.TP
-\fB\-C\fR <file>
-Launch WMFS with a specified configuration file
-.TP
+.RS 4
+Print version information to standard output, then exit\&.
+.RE
+.PP
 \fB\-h\fR
-Show this page
-.TP
-\fB\-v\fR
-Show WMFS version
-.TP
-\fB\-c\fR <func> <cmd>
-Execute a specified UICB function
-.TP
-\fB\-C\fR <file>
-Launch WMFS with a specified configuration file
+.RS 4
+Print help information, then exit\&.
+.RE
+.SH "DEFAULT KEY BINDINGS"
+.PP
+\fBControl\-Alt + r\fR
+.RS 4
+Reload WMFS binary
+.RE
+.PP
+\fBSuper + Return\fR
+.RS 4
+Run a terminal (urxvt by default)
+.RE
+.PP
+\fBSuper + q\fR
+.RS 4
+Quit the selected client
+.RE
+.PP
+\fBControl\-Alt + q\fR
+.RS 4
+Exit WMFS
+.RE
+.PP
+\fBSuper + f \fR
+.RS 4
+Toggle free the selected client
+.RE
+.PP
+\fBAlt + Tab\fR
+.RS 4
+Give the focus to the next client
+.RE
+.PP
+\fBAlt\-Shift + Tab\fR
+.RS 4
+Give the focus to the previous client
+.RE
+.PP
+\fBAlt + h\fR
+.RS 4
+Give the focus to the client on the left
+.RE
+.PP
+\fBAlt + l\fR
+.RS 4
+Give the focus to the client on the right
+.RE
+.PP
+\fBAlt + k\fR
+.RS 4
+Give the focus to the client on the top
+.RE
+.PP
+\fBAlt + j\fR
+.RS 4
+Give the focus to the client on the bottom
+.RE
+.PP
+\fBSuper + Tab\fR
+.RS 4
+Give the focus to the next tabbed client
+.RE
+.PP
+\fBSuper\-Shift + Tab\fR
+.RS 4
+Give the focus to the previous tabbed client
+.RE
+.PP
+\fBControl\-Shift + h\fR
+.RS 4
+Swap with the client on the left
+.RE
+.PP
+\fBControl\-Shift + l\fR
+.RS 4
+Swap with the client on the right
+.RE
+.PP
+\fBControl\-Shift + k\fR
+.RS 4
+Swap with the client on the top
+.RE
+.PP
+\fBControl\-Shift + j\fR
+.RS 4
+Swap with the client on the bottom
+.RE
+.PP
+\fBAlt\-Shift + h\fR
+.RS 4
+Tab in the client on the left
+.RE
+.PP
+\fBAlt\-Shift + l\fR
+.RS 4
+Tab in the client on the right
+.RE
+.PP
+\fBAlt\-Shift + k\fR
+.RS 4
+Tab in the client on the top
+.RE
+.PP
+\fBAlt\-Shift + j\fR
+.RS 4
+Tab in the client on the bottom
+.RE
+.PP
+\fBAlt\-Shift + u\fR
+.RS 4
+Untab the client
+.RE
+.PP
+\fBSuper + h\fR
+.RS 4
+Increase the client to the left
+.RE
+.PP
+\fBSuper + l\fR
+.RS 4
+Decrease the client from the left
+.RE
+.PP
+\fBSuper + k\fR
+.RS 4
+Increase the client to the top
+.RE
+.PP
+\fBSuper + j\fR
+.RS 4
+Decrease the client from the top
+.RE
+.PP
+\fBSuper\-Control + h\fR
+.RS 4
+Decrease the client from the right
+.RE
+.PP
+\fBSuper\-Control + l\fR
+.RS 4
+Increase the client to the right
+.RE
+.PP
+\fBSuper\-Control + k\fR
+.RS 4
+Decrease the client from the bottom
+.RE
+.PP
+\fBSuper\-Control + j\fR
+.RS 4
+Increase the client to the bottom
+.RE
+.PP
+\fBControl + Right\fR
+.RS 4
+Next tag
+.RE
+.PP
+\fBControl + Left\fR
+.RS 4
+Previous tag
+.RE
+.PP
+\fBControl + Up\fR
+.RS 4
+Next screen
+.RE
+.PP
+\fBControl + Down\fR
+.RS 4
+Previous screen
+.RE
+.PP
+\fBSuper + m\fR
+.RS 4
+Vertical mirror layout
+.RE
+.PP
+\fBSuper\-Shift + m\fR
+.RS 4
+Horizontal mirror layout
+.RE
+.PP
+\fBSuper + r\fR
+.RS 4
+Rotate layout right
+.RE
+.PP
+\fBSuper\-Shift + r\fR
+.RS 4
+Rotate layout left
+.RE
+.PP
+\fBSuper\-Control\-Alt + h\fR
+.RS 4
+Integrate client in left layout
+.RE
+.PP
+\fBSuper\-Control\-Alt + j\fR
+.RS 4
+Integrate client in bottom layout
+.RE
+.PP
+\fBSuper\-Control\-Alt + k\fR
+.RS 4
+Integrate client in top layout
+.RE
+.PP
+\fBSuper\-Control\-Alt + l\fR
+.RS 4
+Integrate client in right layout
+.RE
+.PP
+\fBSuper + o\fR
+.RS 4
+Restore previous layout
+.RE
+.PP
+\fBSuper\-Shift + o\fR
+.RS 4
+Restore next layout
+.RE
+.PP
+\fBSuper + p\fR
+.RS 4
+Make a launcher in the statusbar to run an unix command\fR
+.RE
+.PP
+\fBSuper + F[1\&.\&.9]\fR
+.RS 4
+Change tag view
+.RE
+.PP
+\fBSuper\-Shift + F[1\&.\&.9]\fR
+.RS 4
+Transfert the selected client to the wanted tag
+.RE
+.PP
+\fBSuper + -\fR
+.RS 4
+Delete current tag\fR
+.RE
+.PP
+\fBSuper\-Shift + -\fR
+.RS 4
+Add current tag\fR
+.RE
+.SH "CONFIGURATION"
+WMFS is configured by \fI$HOME/\&.config/wmfs/wmfsrc\fR\&.
+.RE
+.PP
+\fB\ include\fR
+wmfsrc supports ”@include” to split configuration file by section\&.
+.RS 2
+\fB\ Usage:\fR "@include ~/.config/wmfs/wmfs_themes"\&.
+.RE
+.PP
+\fB\ [themes]\fR
+wmfsrc supports themes for client and statusbar\&.
+.RS 2
+\fB Misc\fR
+.RS 2
+\fB\ name\fR
+theme name: will be used in next sections\&.
+.PP
+\fB\ font\fR
+theme font: in XLFD format\&.
+.PP
+.RE
+\fB\ Bars\fR
+.RS 2
+\fB\ bars_width\fR
+bar height in pixels\&.
+.PP
+\fB\ bars_fg/bg\fR
+statusbar text/background color\&.
+.PP
+.RE
+\fB\ Tags\fR
+.RS 2
+\fB\ tags_normal_fg/bg\fR
+normal tag text/button color\&.
+.PP
+\fB\ tags_normal_statusline\fR
+normal tag statusline\&.
+.PP
+\fB\ tags_sel_fg/bg\fR
+selected tag text/button color\&.
+.PP
+\fB\ tags_sel_statusline\fR
+selected tag statusline\&.
+.PP
+\fB\ tags_occupied_fg/bg\fR
+occupied tag text/button color\&.
+.PP
+\fB\ tags_occupied_statusline\fR
+occupied tag statusline\&.
+.PP
+\fB\ tags_urgent_fg/bg\fR
+urgent tag text/button color\&.
+.PP
+\fB\ tags_urgent_statusline\fR
+urgent tag statusline\&.
+.PP
+\fB\ tags_border_color\fR
+tag button border color\&.
+.PP
+\fB\ tags_border_width\fR
+tag button border width\&.
+.PP
+.RE
+\fB\ Clients\fR
+.RS 2
+\fB\ client_normal_fg/bg\fR
+normal client titlebar text/background color\&.
+.PP
+\fB\ client_normal_statusline\fR
+normal client statusline\&.
+.PP
+\fB\ client_sel_fg/bg\fR
+selected client titlebar text/background color\&.
+.PP
+\fB\ client_sel_statusline\fR
+selected client statusline\&.
+.PP
+\fB\ frame_bg\fR
+client border color\&.
+.PP
+\fB\ client_titlebar_width\fR
+client titlebar height in pixels\&.
+.PP
+\fB\ client_border_width\fR
+client border height in pixels\&.
+.RE
+.PP
+.RE
+\fB\ [bars]\fR
+.RS 2
+\fB\ position\fR
+statusbar position on screen: 0=Top; 1=Bottom, 2=Hide\&.
+.PP
+\fB\ screen\fR
+screen to display statusbar(start ar 0), set to\fB -1\fR to display on every screen\&.
+.PP
+\fB\ elements\fR
+t=Tags, s=Statustext, y=Systray, l=Launcher\&.
+.PP
+\fB\ theme\fR
+names of the statusbar theme\&.
+.RE
+.PP
+.RE
+\fB\ [tags]\fR
+.RS 2
+\fB\ screen\fR
+screen to display tag. use no screen option or screen =\fB -1\fR to set tag on each screen\&.
+.PP
+\fB\ name\fR
+display tagname\&.
+.PP
+\fB\ statusline\fR
+draw a custom statusline in the specific tag (can display any sequences)\&.
+.PP
+\fB\ mousebinds\fR
+mouse actions on the tag buttons\&.
+.RE
+.PP
+.RE
+\fB\ [client]\fR
+.RS 2
+\fB\ theme\fR
+apply theme to client by default\&.
+.PP
+\fB\ key_modifier\fR
+key modifier to perform actions on clients\&.
+.PP
+\fB\ mousebinds\fR
+mouse actions on client\&.
+.RE
+.PP
+.RE
+\fB\ [rules]\fR
+specific rules for clients: to identify an application, use xprop\&.
+.RS 2
+\fB\ instance\fR
+first part of WM_CLASS\&.
+.PP
+\fB\ class\fR
+second part of WM_CLASS\&.
+.PP
+\fB\ role\fR
+WM_WINDOW_ROLE\&.
+.PP
+\fB\ name\fR
+_NET_WM_NAME\&.
+.PP
+\fB\ theme\fR
+apply theme to client\&.
+.PP
+\fB\ tag\fR
+set tag to client(start at 0)\&.
+.PP
+\fB\ screen\fR
+display client on a specific screen\&.
+.PP
+\fB\ free\fR
+client in auto-free mode (true/false)\&.
+.PP
+\fB\ tab\fR
+open client in a tab (true/false)\&.
+.RE
+.PP
+.RE
+\fB\ [launchers]\fR
+.RS 2
+\fB\ name\fR
+launcher-name, will be used in the [keys] section\&.
+.PP
+\fB\ prompt\fR
+display text at the beginning of the prompt\&.
+.PP
+\fB\ command\fR
+command used by the launcher. can be an uicb function or an uicb function + extension\&.
+.RE
+.PP
+.RE
+\fB\ [keys]\fR
+.RS 2
+each line is contained within\fB\ [key]...[/key]\fR
+.PP
+\fB\ mod\fR
+key modifier (Alt, Control, Shift, Super)\&.
+.PP
+\fB\ key\fR
+key to press\&.
+.PP
+\fB\ func\fR
+uicb function to launch\&.
+.PP
+\fB\ cmd\fR
+if\fB\ func = "spawn"\fR set the external command to launch\&.
+.sp
+.SH "UICB Functions"
+UICB functions list. for “User Interface Call Backs”\&.
+.PP
+\fB\ usage in the wmfsrc:\fR func = "tag_next"\fB\ or\fR func = "spawn" cmd = "urxvt -e vim"\&.
+.RE
+\fB\ usage in the status.sh:\fR wmfs -c status "<barname> ^s[<position>;<color>;next](1;tag_next)"\&.
+.RE
+\fB\ usage in your terminal:\fR wmfs -c tag_next\&.
+.PP
+\fB\ spawn\fR
+launch a command. ex: func = "spawn" cmd = "urxvtc -e screen irssi"\&.
+.PP
+\fB\ quit\fR
+quit wmfs\&.
+.PP
+\fB\ reload\fR
+reload wmfs\&.
+.PP
+\fB\ tag_set\fR
+set tag by number\&.
+.PP
+\fB\ tag\fR
+set tag by name\&.
+.PP
+\fB\ tag_next/prev\fR
+set next/previous tag\&.
+.PP
+\fB\ tag_client\fR
+tag the client\&.
+.PP
+\fB\ tag_move_client_next/prev\fR
+tag the client with next/previous tag\&.
+.PP
+\fB\ tag_click\fR
+display tag with a clic on tag button\&.
+.PP
+\fB\ tag_new/del\fR
+add/delete a tag\&.
+.PP
+\fB\ layout_vmirror\fR
+vertical mirror tiling\&.
+.PP
+\fB\ layout_hmirror\fR
+horizontal mirror tiling\&.
+.PP
+\fB\ layout_rotate_left\fR
+tiling rotate anti/clockwise\&.
+.PP
+\fB\ layout_prev_set\fR
+back to previous set layout\&.
+.PP
+\fB\ layout_next_set\fR
+go to next set layout\&.
+.PP
+\fB\ layout_integrate_left/right/top/bottom\fR
+client integration in the client zone by direction\&.
+.PP
+\fB\ client_close\fR
+close the client\&.
+.PP
+\fB\ client_resize_right/left/top/bottom\fR
+resize client with direction\&.
+.PP
+\fB\ client_focus_right/left/top/bottom\fR
+focus client with direction\&.
+.PP
+\fB\ client_tab_right/left/top/bottom\fR
+tab client with direction\&.
+.PP
+\fB\ client_swap_right/left/top/bottom\fR
+swap client with direction\&.
+.PP
+\fB\ client_focus_next/prev\fR
+move focus to the next/previous client\&.
+.PP
+\fB\ client_swap_next/prev\fR
+swap with the next/previous client\&.
+.PP
+\fB\ client_untab\fR
+untab the client\&.
+.PP
+\fB\ client_focus_next_tab\fR
+move focus to next tab-client\&.
+.PP
+\fB\ client_focus_prev_tab\fR
+move focus to previous tab-client\&.
+.PP
+\fB\ client_focus_click\fR
+give focus to client with a clic\&.
+.PP
+\fB\ client_toggle_free\fR
+togle free the client\&.
+.PP
+\fB\ client_tab_next_opened\fR
+open the client in a tab\&.
+.PP
+\fB\ status\fR
+display the argument text in the statusbar\&.
+.PP
+\fB\ status_surface\fR
+display a surface. can contain sequences\&.
+.PP
+\fB\ mouse_resize\fR
+resize the client\&.
+.PP
+\fB\ mouse_move\fR
+move the client\&.
+.PP
+\fB\ mouse_swap\fR
+swap the client\&.
+.PP
+\fB\ mouse_tab\fR
+tab the client\&.
+.PP
+\fB\ screen_next/prev\fR
+go to next/previous screen\&.
+.PP
+\fB\ screen_move_client_next/prev\fR
+move the client to next/previous screen\&.
+.PP
+\fB\ launcher\fR
+native prompt. ex:\fB\ func = "launcher" cmd = "exec"\fR display the “exec” launcher\&.
+.RE
+.PP
+.sp
+.SH "BUGS"
+WMFS isn\'t stable for now\&. So it certainly contains some bugs\&.
+.sp
+.SH "AUTHORS"
+Martin Duquesnoy <\fIxorg62@gmail\&.com\fR\&[1]>\&.
+.sp
+.SH "WWW"
+Main site: \fIhttps://github\&.com/xorg62/wmfs\fR
+.PP
+Wiki: \fIhttps://github\&.com/xorg62/wmfs/wiki\fR
+.PP
+Bug tracker: \fIhttps://github\&.com/xorg62/wmfs/issues\fR
+.sp
+.SH "COPYING"
+WMFS is under the BSD license\&. See COPYING for more information\&.
+.sp
+.SH "NOTES"
+.IP " 1." 4
+xorg62@gmail.com
+.RS 4
+\%mailto:xorg62@gmail.com
+.RE

+ 626 - 0
wmfs.1

@@ -0,0 +1,626 @@
+.\"    title: wmfs
+.\"    dev: xorg62
+.\"    man: arpinux
+.\"
+.TH "WMFS" "1" "2012/02/08" "wmfs" "manual of wmfs"
+.\" disable hyphenation
+.nh
+.\" disable justification (adjust text to left margin only)
+.ad l
+.SH "NAME"
+wmfs \- Window Manager From Scratch
+.SH "SYNOPSIS"
+\fBwmfs\fR [\fB\-hv\fR] [\fB\-C <file>\fR] [\fB\-c <uicb_function> <cmd>\fR]
+.sp
+.SH "DESCRIPTION"
+\fBWMFS\fR is a lightweight and highly configurable tiling window manager for X written in C\&.
+.sp
+.SH "OPTIONS"
+.PP
+\fB\-C <file>\fR
+.RS 4
+Load a configuration file\&.
+.RE
+.PP
+\fB\-c <uicb_function> <cmd>\fR
+.RS 4
+Execute an uicb function to control WMFS\&.
+.RE
+.PP
+\fB\-v\fR
+.RS 4
+Print version information to standard output, then exit\&.
+.RE
+.PP
+\fB\-h\fR
+.RS 4
+Print help information, then exit\&.
+.RE
+.SH "DEFAULT KEY BINDINGS"
+.PP
+\fBControl\-Alt + r\fR
+.RS 4
+Reload WMFS binary
+.RE
+.PP
+\fBSuper + Return\fR
+.RS 4
+Run a terminal (urxvt by default)
+.RE
+.PP
+\fBSuper + q\fR
+.RS 4
+Quit the selected client
+.RE
+.PP
+\fBControl\-Alt + q\fR
+.RS 4
+Exit WMFS
+.RE
+.PP
+\fBSuper + f \fR
+.RS 4
+Toggle free the selected client
+.RE
+.PP
+\fBAlt + Tab\fR
+.RS 4
+Give the focus to the next client
+.RE
+.PP
+\fBAlt\-Shift + Tab\fR
+.RS 4
+Give the focus to the previous client
+.RE
+.PP
+\fBAlt + h\fR
+.RS 4
+Give the focus to the client on the left
+.RE
+.PP
+\fBAlt + l\fR
+.RS 4
+Give the focus to the client on the right
+.RE
+.PP
+\fBAlt + k\fR
+.RS 4
+Give the focus to the client on the top
+.RE
+.PP
+\fBAlt + j\fR
+.RS 4
+Give the focus to the client on the bottom
+.RE
+.PP
+\fBSuper + Tab\fR
+.RS 4
+Give the focus to the next tabbed client
+.RE
+.PP
+\fBSuper\-Shift + Tab\fR
+.RS 4
+Give the focus to the previous tabbed client
+.RE
+.PP
+\fBControl\-Shift + h\fR
+.RS 4
+Swap with the client on the left
+.RE
+.PP
+\fBControl\-Shift + l\fR
+.RS 4
+Swap with the client on the right
+.RE
+.PP
+\fBControl\-Shift + k\fR
+.RS 4
+Swap with the client on the top
+.RE
+.PP
+\fBControl\-Shift + j\fR
+.RS 4
+Swap with the client on the bottom
+.RE
+.PP
+\fBAlt\-Shift + h\fR
+.RS 4
+Tab in the client on the left
+.RE
+.PP
+\fBAlt\-Shift + l\fR
+.RS 4
+Tab in the client on the right
+.RE
+.PP
+\fBAlt\-Shift + k\fR
+.RS 4
+Tab in the client on the top
+.RE
+.PP
+\fBAlt\-Shift + j\fR
+.RS 4
+Tab in the client on the bottom
+.RE
+.PP
+\fBAlt\-Shift + u\fR
+.RS 4
+Untab the client
+.RE
+.PP
+\fBSuper + h\fR
+.RS 4
+Increase the client to the left
+.RE
+.PP
+\fBSuper + l\fR
+.RS 4
+Decrease the client from the left
+.RE
+.PP
+\fBSuper + k\fR
+.RS 4
+Increase the client to the top
+.RE
+.PP
+\fBSuper + j\fR
+.RS 4
+Decrease the client from the top
+.RE
+.PP
+\fBSuper\-Control + h\fR
+.RS 4
+Decrease the client from the right
+.RE
+.PP
+\fBSuper\-Control + l\fR
+.RS 4
+Increase the client to the right
+.RE
+.PP
+\fBSuper\-Control + k\fR
+.RS 4
+Decrease the client from the bottom
+.RE
+.PP
+\fBSuper\-Control + j\fR
+.RS 4
+Increase the client to the bottom
+.RE
+.PP
+\fBControl + Right\fR
+.RS 4
+Next tag
+.RE
+.PP
+\fBControl + Left\fR
+.RS 4
+Previous tag
+.RE
+.PP
+\fBControl + Up\fR
+.RS 4
+Next screen
+.RE
+.PP
+\fBControl + Down\fR
+.RS 4
+Previous screen
+.RE
+.PP
+\fBSuper + m\fR
+.RS 4
+Vertical mirror layout
+.RE
+.PP
+\fBSuper\-Shift + m\fR
+.RS 4
+Horizontal mirror layout
+.RE
+.PP
+\fBSuper + r\fR
+.RS 4
+Rotate layout right
+.RE
+.PP
+\fBSuper\-Shift + r\fR
+.RS 4
+Rotate layout left
+.RE
+.PP
+\fBSuper\-Control\-Alt + h\fR
+.RS 4
+Integrate client in left layout
+.RE
+.PP
+\fBSuper\-Control\-Alt + j\fR
+.RS 4
+Integrate client in bottom layout
+.RE
+.PP
+\fBSuper\-Control\-Alt + k\fR
+.RS 4
+Integrate client in top layout
+.RE
+.PP
+\fBSuper\-Control\-Alt + l\fR
+.RS 4
+Integrate client in right layout
+.RE
+.PP
+\fBSuper + o\fR
+.RS 4
+Restore previous layout
+.RE
+.PP
+\fBSuper\-Shift + o\fR
+.RS 4
+Restore next layout
+.RE
+.PP
+\fBSuper + p\fR
+.RS 4
+Make a launcher in the statusbar to run an unix command\fR
+.RE
+.PP
+\fBSuper + F[1\&.\&.9]\fR
+.RS 4
+Change tag view
+.RE
+.PP
+\fBSuper\-Shift + F[1\&.\&.9]\fR
+.RS 4
+Transfert the selected client to the wanted tag
+.RE
+.PP
+\fBSuper + -\fR
+.RS 4
+Delete current tag\fR
+.RE
+.PP
+\fBSuper\-Shift + -\fR
+.RS 4
+Add current tag\fR
+.RE
+.SH "CONFIGURATION"
+WMFS is configured by \fI$HOME/\&.config/wmfs/wmfsrc\fR\&.
+.RE
+.PP
+\fB\ include\fR
+wmfsrc supports ”@include” to split configuration file by section\&.
+.RS 2
+\fB\ Usage:\fR "@include ~/.config/wmfs/wmfs_themes"\&.
+.RE
+.PP
+\fB\ [themes]\fR
+wmfsrc supports themes for client and statusbar\&.
+.RS 2
+\fB Misc\fR
+.RS 2
+\fB\ name\fR
+theme name: will be used in next sections\&.
+.PP
+\fB\ font\fR
+theme font: in XLFD format\&.
+.PP
+.RE
+\fB\ Bars\fR
+.RS 2
+\fB\ bars_width\fR
+bar height in pixels\&.
+.PP
+\fB\ bars_fg/bg\fR
+statusbar text/background color\&.
+.PP
+.RE
+\fB\ Tags\fR
+.RS 2
+\fB\ tags_normal_fg/bg\fR
+normal tag text/button color\&.
+.PP
+\fB\ tags_normal_statusline\fR
+normal tag statusline\&.
+.PP
+\fB\ tags_sel_fg/bg\fR
+selected tag text/button color\&.
+.PP
+\fB\ tags_sel_statusline\fR
+selected tag statusline\&.
+.PP
+\fB\ tags_occupied_fg/bg\fR
+occupied tag text/button color\&.
+.PP
+\fB\ tags_occupied_statusline\fR
+occupied tag statusline\&.
+.PP
+\fB\ tags_urgent_fg/bg\fR
+urgent tag text/button color\&.
+.PP
+\fB\ tags_urgent_statusline\fR
+urgent tag statusline\&.
+.PP
+\fB\ tags_border_color\fR
+tag button border color\&.
+.PP
+\fB\ tags_border_width\fR
+tag button border width\&.
+.PP
+.RE
+\fB\ Clients\fR
+.RS 2
+\fB\ client_normal_fg/bg\fR
+normal client titlebar text/background color\&.
+.PP
+\fB\ client_normal_statusline\fR
+normal client statusline\&.
+.PP
+\fB\ client_sel_fg/bg\fR
+selected client titlebar text/background color\&.
+.PP
+\fB\ client_sel_statusline\fR
+selected client statusline\&.
+.PP
+\fB\ frame_bg\fR
+client border color\&.
+.PP
+\fB\ client_titlebar_width\fR
+client titlebar height in pixels\&.
+.PP
+\fB\ client_border_width\fR
+client border height in pixels\&.
+.RE
+.PP
+.RE
+\fB\ [bars]\fR
+.RS 2
+\fB\ position\fR
+statusbar position on screen: 0=Top; 1=Bottom, 2=Hide\&.
+.PP
+\fB\ screen\fR
+screen to display statusbar(start ar 0), set to\fB -1\fR to display on every screen\&.
+.PP
+\fB\ elements\fR
+t=Tags, s=Statustext, y=Systray, l=Launcher\&.
+.PP
+\fB\ theme\fR
+names of the statusbar theme\&.
+.RE
+.PP
+.RE
+\fB\ [tags]\fR
+.RS 2
+\fB\ screen\fR
+screen to display tag. use no screen option or screen =\fB -1\fR to set tag on each screen\&.
+.PP
+\fB\ name\fR
+display tagname\&.
+.PP
+\fB\ statusline\fR
+draw a custom statusline in the specific tag (can display any sequences)\&.
+.PP
+\fB\ mousebinds\fR
+mouse actions on the tag buttons\&.
+.RE
+.PP
+.RE
+\fB\ [client]\fR
+.RS 2
+\fB\ theme\fR
+apply theme to client by default\&.
+.PP
+\fB\ key_modifier\fR
+key modifier to perform actions on clients\&.
+.PP
+\fB\ mousebinds\fR
+mouse actions on client\&.
+.RE
+.PP
+.RE
+\fB\ [rules]\fR
+specific rules for clients: to identify an application, use xprop\&.
+.RS 2
+\fB\ instance\fR
+first part of WM_CLASS\&.
+.PP
+\fB\ class\fR
+second part of WM_CLASS\&.
+.PP
+\fB\ role\fR
+WM_WINDOW_ROLE\&.
+.PP
+\fB\ name\fR
+_NET_WM_NAME\&.
+.PP
+\fB\ theme\fR
+apply theme to client\&.
+.PP
+\fB\ tag\fR
+set tag to client(start at 0)\&.
+.PP
+\fB\ screen\fR
+display client on a specific screen\&.
+.PP
+\fB\ free\fR
+client in auto-free mode (true/false)\&.
+.PP
+\fB\ tab\fR
+open client in a tab (true/false)\&.
+.RE
+.PP
+.RE
+\fB\ [launchers]\fR
+.RS 2
+\fB\ name\fR
+launcher-name, will be used in the [keys] section\&.
+.PP
+\fB\ prompt\fR
+display text at the beginning of the prompt\&.
+.PP
+\fB\ command\fR
+command used by the launcher. can be an uicb function or an uicb function + extension\&.
+.RE
+.PP
+.RE
+\fB\ [keys]\fR
+.RS 2
+each line is contained within\fB\ [key]...[/key]\fR
+.PP
+\fB\ mod\fR
+key modifier (Alt, Control, Shift, Super)\&.
+.PP
+\fB\ key\fR
+key to press\&.
+.PP
+\fB\ func\fR
+uicb function to launch\&.
+.PP
+\fB\ cmd\fR
+if\fB\ func = "spawn"\fR set the external command to launch\&.
+.sp
+.SH "UICB Functions"
+UICB functions list. for “User Interface Call Backs”\&.
+.PP
+\fB\ usage in the wmfsrc:\fR func = "tag_next"\fB\ or\fR func = "spawn" cmd = "urxvt -e vim"\&.
+.RE
+\fB\ usage in the status.sh:\fR wmfs -c status "<barname> ^s[<position>;<color>;next](1;tag_next)"\&.
+.RE
+\fB\ usage in your terminal:\fR wmfs -c tag_next\&.
+.PP
+\fB\ spawn\fR
+launch a command. ex: func = "spawn" cmd = "urxvtc -e screen irssi"\&.
+.PP
+\fB\ quit\fR
+quit wmfs\&.
+.PP
+\fB\ reload\fR
+reload wmfs\&.
+.PP
+\fB\ tag_set\fR
+set tag by number\&.
+.PP
+\fB\ tag\fR
+set tag by name\&.
+.PP
+\fB\ tag_next/prev\fR
+set next/previous tag\&.
+.PP
+\fB\ tag_client\fR
+tag the client\&.
+.PP
+\fB\ tag_move_client_next/prev\fR
+tag the client with next/previous tag\&.
+.PP
+\fB\ tag_click\fR
+display tag with a clic on tag button\&.
+.PP
+\fB\ tag_new/del\fR
+add/delete a tag\&.
+.PP
+\fB\ layout_vmirror\fR
+vertical mirror tiling\&.
+.PP
+\fB\ layout_hmirror\fR
+horizontal mirror tiling\&.
+.PP
+\fB\ layout_rotate_left\fR
+tiling rotate anti/clockwise\&.
+.PP
+\fB\ layout_prev_set\fR
+back to previous set layout\&.
+.PP
+\fB\ layout_next_set\fR
+go to next set layout\&.
+.PP
+\fB\ layout_integrate_left/right/top/bottom\fR
+client integration in the client zone by direction\&.
+.PP
+\fB\ client_close\fR
+close the client\&.
+.PP
+\fB\ client_resize_right/left/top/bottom\fR
+resize client with direction\&.
+.PP
+\fB\ client_focus_right/left/top/bottom\fR
+focus client with direction\&.
+.PP
+\fB\ client_tab_right/left/top/bottom\fR
+tab client with direction\&.
+.PP
+\fB\ client_swap_right/left/top/bottom\fR
+swap client with direction\&.
+.PP
+\fB\ client_focus_next/prev\fR
+move focus to the next/previous client\&.
+.PP
+\fB\ client_swap_next/prev\fR
+swap with the next/previous client\&.
+.PP
+\fB\ client_untab\fR
+untab the client\&.
+.PP
+\fB\ client_focus_next_tab\fR
+move focus to next tab-client\&.
+.PP
+\fB\ client_focus_prev_tab\fR
+move focus to previous tab-client\&.
+.PP
+\fB\ client_focus_click\fR
+give focus to client with a clic\&.
+.PP
+\fB\ client_toggle_free\fR
+togle free the client\&.
+.PP
+\fB\ client_tab_next_opened\fR
+open the client in a tab\&.
+.PP
+\fB\ status\fR
+display the argument text in the statusbar\&.
+.PP
+\fB\ status_surface\fR
+display a surface. can contain sequences\&.
+.PP
+\fB\ mouse_resize\fR
+resize the client\&.
+.PP
+\fB\ mouse_move\fR
+move the client\&.
+.PP
+\fB\ mouse_swap\fR
+swap the client\&.
+.PP
+\fB\ mouse_tab\fR
+tab the client\&.
+.PP
+\fB\ screen_next/prev\fR
+go to next/previous screen\&.
+.PP
+\fB\ screen_move_client_next/prev\fR
+move the client to next/previous screen\&.
+.PP
+\fB\ launcher\fR
+native prompt. ex:\fB\ func = "launcher" cmd = "exec"\fR display the “exec” launcher\&.
+.RE
+.PP
+.sp
+.SH "BUGS"
+WMFS isn\'t stable for now\&. So it certainly contains some bugs\&.
+.sp
+.SH "AUTHORS"
+Martin Duquesnoy <\fIxorg62@gmail\&.com\fR\&[1]>\&.
+.sp
+.SH "WWW"
+Main site: \fIhttps://github\&.com/xorg62/wmfs\fR
+.PP
+Wiki: \fIhttps://github\&.com/xorg62/wmfs/wiki\fR
+.PP
+Bug tracker: \fIhttps://github\&.com/xorg62/wmfs/issues\fR
+.sp
+.SH "COPYING"
+WMFS is under the BSD license\&. See COPYING for more information\&.
+.sp
+.SH "NOTES"
+.IP " 1." 4
+xorg62@gmail.com
+.RS 4
+\%mailto:xorg62@gmail.com
+.RE