archive release
This commit is contained in:
522
samurc.5
Normal file
522
samurc.5
Normal file
@@ -0,0 +1,522 @@
|
||||
.\" $OpenBSD$
|
||||
.\"
|
||||
.\" Copyright (c) 2004,2005 Marius Aamodt Eriksen <marius@monkey.org>
|
||||
.\"
|
||||
.\" Permission to use, copy, modify, and distribute this software for any
|
||||
.\" purpose with or without fee is hereby granted, provided that the above
|
||||
.\" copyright notice and this permission notice appear in all copies.
|
||||
.\"
|
||||
.\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
|
||||
.\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
|
||||
.\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
|
||||
.\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
|
||||
.\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
|
||||
.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
|
||||
.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
||||
.\"
|
||||
.Dd $Mdocdate$
|
||||
.Dt CWMRC 5
|
||||
.Os
|
||||
.Sh NAME
|
||||
.Nm cwmrc
|
||||
.Nd samu window manager configuration file
|
||||
.Sh DESCRIPTION
|
||||
This manual page describes the
|
||||
.Xr cwm 1
|
||||
configuration file.
|
||||
.Pp
|
||||
The current line can be extended over multiple lines using a backslash
|
||||
.Pq Sq \e .
|
||||
Comments can be put anywhere in the file using a hash mark
|
||||
.Pq Sq # ,
|
||||
and extend to the end of the current line.
|
||||
Care should be taken when commenting out multi-line text:
|
||||
the comment is effective until the end of the entire block.
|
||||
.Pp
|
||||
Arguments containing whitespace should be surrounded by double quotes
|
||||
.Pq \&" .
|
||||
.Pp
|
||||
The following options are accepted:
|
||||
.Bl -tag -width Ds
|
||||
.It Ic autogroup Ar group Oo Ar windowname , Oc Ns Ar windowclass
|
||||
Automatically add new windows to
|
||||
.Ar group
|
||||
if their class property matches
|
||||
.Ar windowclass ,
|
||||
or if their name and class properties match
|
||||
.Ar windowname
|
||||
and
|
||||
.Ar windowclass ,
|
||||
respectively.
|
||||
The more specific last match wins.
|
||||
.Ar group
|
||||
is a number between 0 and 9.
|
||||
If
|
||||
.Ar group
|
||||
is 0, matching windows will not be added to any group; this may be
|
||||
used to override
|
||||
.Dq sticky group mode .
|
||||
.Pp
|
||||
The name and class values, respectively, for existing windows
|
||||
are both set in the WM_CLASS property and may be obtained using
|
||||
.Xr xprop 1 .
|
||||
.It Ic bind-key Ar key function
|
||||
Bind or rebind key
|
||||
.Ar key
|
||||
to
|
||||
.Ar function .
|
||||
The modifier keys come first, followed by a
|
||||
.Sq - ,
|
||||
then a keysym name, taken from
|
||||
.Pa /usr/X11R6/include/X11/keysymdef.h .
|
||||
.Pp
|
||||
The following modifiers are recognised:
|
||||
.Pp
|
||||
.Bl -tag -width Ds -offset indent -compact
|
||||
.It Ic C
|
||||
Control key.
|
||||
.It Ic M
|
||||
Meta key.
|
||||
.It Ic S
|
||||
Shift key.
|
||||
.It Ic 4
|
||||
Mod4 (windows) key.
|
||||
.It Ic 5
|
||||
Mod5 (AltGr) key.
|
||||
.El
|
||||
.Pp
|
||||
The
|
||||
.Ar function
|
||||
may either be one from the
|
||||
.Sx BIND FUNCTION LIST
|
||||
(see below) or the command line that is to be executed.
|
||||
.It Ic bind-mouse Ar button function
|
||||
Bind or rebind button
|
||||
.Ar button
|
||||
to
|
||||
.Ar function .
|
||||
The modifier keys come first, followed by a
|
||||
.Sq - ,
|
||||
then the button number.
|
||||
.Pp
|
||||
The same modifiers are recognised as for
|
||||
.Ar key
|
||||
in
|
||||
.Nm bind-key .
|
||||
.Pp
|
||||
The following buttons are recognised:
|
||||
.Pp
|
||||
.Bl -tag -width Ds -offset indent -compact
|
||||
.It Ic 1
|
||||
Left mouse button.
|
||||
.It Ic 2
|
||||
Middle mouse button.
|
||||
.It Ic 3
|
||||
Right mouse button.
|
||||
.It Ic 4
|
||||
Scroll up mouse button.
|
||||
.It Ic 5
|
||||
Scroll down mouse button.
|
||||
.El
|
||||
.Pp
|
||||
The
|
||||
.Ar function
|
||||
may be taken from the
|
||||
.Sx BIND FUNCTION LIST
|
||||
(see below) or the command line that is to be executed.
|
||||
.It Ic borderwidth Ar pixels
|
||||
Set the window border width to
|
||||
.Ar pixels .
|
||||
.It Ic color activeborder Ar color
|
||||
Set the color of the active border.
|
||||
.It Ic color font Ar color
|
||||
Set menu font color.
|
||||
.It Ic color selfont Ar color
|
||||
Set font color for selected menu item.
|
||||
.It Ic color groupborder Ar color
|
||||
Set the color of the border while grouping a window.
|
||||
.It Ic color inactiveborder Ar color
|
||||
Set the color of the inactive border.
|
||||
.It Ic color menubg Ar color
|
||||
Set menu background color.
|
||||
.It Ic color menufg Ar color
|
||||
Set menu foreground color.
|
||||
.It Ic color urgencyborder Ar color
|
||||
Set the color of the border of a window indicating urgency.
|
||||
.It Ic color ungroupborder Ar color
|
||||
Set the color of the border while ungrouping a window.
|
||||
.It Ic command Ar name path
|
||||
Every
|
||||
.Ar name
|
||||
entry is shown in the application menu.
|
||||
When selected, the defined
|
||||
.Ar path
|
||||
is executed with
|
||||
.Xr execvp 3 .
|
||||
.Pp
|
||||
The
|
||||
.Ar name
|
||||
entries
|
||||
.Nm term
|
||||
and
|
||||
.Nm lock
|
||||
have a special meaning.
|
||||
They point to the terminal and screen locking programs specified by
|
||||
key bindings.
|
||||
The defaults are
|
||||
.Xr xterm 1
|
||||
and
|
||||
.Xr xlock 1 ,
|
||||
respectively.
|
||||
.It Ic fontname Ar font
|
||||
Change the default
|
||||
.Ar font
|
||||
for
|
||||
.Xr Xft 3 .
|
||||
.It Ic gap Ar top bottom left right
|
||||
Define a
|
||||
.Dq gap
|
||||
in pixels at the edge of the screen, so that when a
|
||||
window is maximized it will not overlap this area.
|
||||
This
|
||||
.Dq gap
|
||||
can be used for applications such as
|
||||
.Xr xclock 1 ,
|
||||
where the user may wish to remain visible.
|
||||
.It Ic htile Ar percent
|
||||
Set the percentage of screen the master window should occupy
|
||||
after calling
|
||||
.Ic window-htile .
|
||||
If set to 0, the horizontal size of the master window will
|
||||
remain unchanged.
|
||||
The default is 50.
|
||||
.It Ic ignore Ar windowname
|
||||
Ignore, and do not warp to, windows with the name
|
||||
.Ar windowname
|
||||
when drawing borders and cycling through windows.
|
||||
.It Ic moveamount Ar pixels
|
||||
Set a default size for the keyboard movement bindings,
|
||||
in pixels.
|
||||
The default is 1.
|
||||
.It Ic snapdist Ar pixels
|
||||
Minimum distance to snap-to adjacent edge, in pixels.
|
||||
The default is 0.
|
||||
.It Ic sticky Ic yes Ns \&| Ns Ic no
|
||||
Toggle sticky group mode.
|
||||
The default behavior for new windows is to not assign any group.
|
||||
By enabling sticky group mode,
|
||||
.Xr cwm 1
|
||||
will assign new windows to the currently selected group.
|
||||
.It Ic unbind-key Ar key
|
||||
Unbind function bound to
|
||||
.Ar key .
|
||||
A special
|
||||
.Ar key
|
||||
keyword
|
||||
.Dq all
|
||||
can be used to unbind all keys.
|
||||
.It Ic unbind-mouse Ar button
|
||||
Unbind function bound to
|
||||
.Ar button .
|
||||
A special
|
||||
.Ar button
|
||||
keyword
|
||||
.Dq all
|
||||
can be used to unbind all buttons.
|
||||
.It Ic vtile Ar percent
|
||||
Set the percentage of screen the master window should occupy
|
||||
after calling
|
||||
.Ic window-vtile .
|
||||
If set to 0, the vertical size of the master window will
|
||||
remain unchanged.
|
||||
The default is 50.
|
||||
.It Ic wm Ar name path
|
||||
Every
|
||||
.Ar name
|
||||
entry is shown in the wm menu.
|
||||
When selected, the window manager is replaced by
|
||||
.Ar path .
|
||||
.El
|
||||
.Sh BIND FUNCTION LIST
|
||||
.Bl -tag -width 23n -compact
|
||||
.It restart
|
||||
Restart the running
|
||||
.Xr cwm 1 .
|
||||
.It quit
|
||||
Quit
|
||||
.Xr cwm 1 .
|
||||
.It terminal
|
||||
Spawn a new terminal.
|
||||
.It lock
|
||||
Lock the screen.
|
||||
.It menu-window
|
||||
Launch window search menu.
|
||||
.It menu-window-hidden
|
||||
Launch hidden window search menu.
|
||||
.It menu-cmd
|
||||
Launch application search menu.
|
||||
.It menu-group
|
||||
Launch group search menu.
|
||||
.It menu-exec
|
||||
Launch
|
||||
.Dq exec program
|
||||
menu.
|
||||
.It menu-exec-wm
|
||||
Launch
|
||||
.Dq exec WindowManager
|
||||
menu.
|
||||
.It menu-ssh
|
||||
Launch
|
||||
.Dq ssh
|
||||
menu.
|
||||
.It group-toggle-[n]
|
||||
Toggle visibility of group n, where n is 1-9.
|
||||
.It group-only-[n]
|
||||
Show only group n, where n is 1-9, hiding other groups.
|
||||
.It group-last
|
||||
Show only the previously active group.
|
||||
.It group-close-[n]
|
||||
Close all windows in group n, where n is 1-9.
|
||||
.It group-toggle-all
|
||||
Toggle visibility of all groups.
|
||||
.It window-group
|
||||
Toggle group membership of current window.
|
||||
.It window-movetogroup-[n]
|
||||
Hide current window from display and move to group n, where n is 1-9.
|
||||
.It group-cycle
|
||||
Forward cycle through groups.
|
||||
.It group-rcycle
|
||||
Reverse cycle through groups.
|
||||
.It window-cycle
|
||||
Forward cycle through windows.
|
||||
.It window-rcycle
|
||||
Reverse cycle through windows.
|
||||
.It window-cycle-ingroup
|
||||
Forward cycle through windows in current group.
|
||||
.It window-rcycle-ingroup
|
||||
Reverse cycle through windows in current group.
|
||||
.It window-close
|
||||
Close current window.
|
||||
.It window-hide
|
||||
Hide current window.
|
||||
.It window-lower
|
||||
Lower current window.
|
||||
.It window-raise
|
||||
Raise current window.
|
||||
.It window-menu-label
|
||||
Label current window.
|
||||
.It window-freeze
|
||||
Freeze current window geometry.
|
||||
.It window-stick
|
||||
Stick current window to all groups (same as assigning to nogroup).
|
||||
.It window-fullscreen
|
||||
Full-screen current window (gap + border removed).
|
||||
.It window-maximize
|
||||
Maximize current window (gap + border honored).
|
||||
.It window-vmaximize
|
||||
Vertically maximize current window (gap + border honored).
|
||||
.It window-hmaximize
|
||||
Horizontally maximize current window (gap + border honored).
|
||||
.It window-htile
|
||||
Current window is placed at the top of the screen, maximized
|
||||
horizontally and resized to
|
||||
.Ar htile
|
||||
(default half) of the vertical screen space.
|
||||
Other windows in its group share remaining screen space.
|
||||
.It window-vtile
|
||||
Current window is placed on the left of the screen, maximized vertically
|
||||
and resized to
|
||||
.Ar vtile
|
||||
(default half) of the horizontal screen space.
|
||||
Other windows in its group share remaining screen space.
|
||||
.It window-move
|
||||
Move current window.
|
||||
.It window-resize
|
||||
Resize current window.
|
||||
.It window-move-up
|
||||
Move window
|
||||
.Ar moveamount
|
||||
pixels up.
|
||||
.It window-move-down
|
||||
Move window
|
||||
.Ar moveamount
|
||||
pixels down.
|
||||
.It window-move-right
|
||||
Move window
|
||||
.Ar moveamount
|
||||
pixels right.
|
||||
.It window-move-left
|
||||
Move window
|
||||
.Ar moveamount
|
||||
pixels left.
|
||||
.It window-move-up-big
|
||||
Move window 10 times
|
||||
.Ar moveamount
|
||||
pixels up.
|
||||
.It window-move-down-big
|
||||
Move window 10 times
|
||||
.Ar moveamount
|
||||
pixels down.
|
||||
.It window-move-right-big
|
||||
Move window 10 times
|
||||
.Ar moveamount
|
||||
pixels right.
|
||||
.It window-move-left-big
|
||||
Move window 10 times
|
||||
.Ar moveamount
|
||||
pixels left.
|
||||
.It window-resize-up
|
||||
Resize window
|
||||
.Ar moveamount
|
||||
pixels up.
|
||||
.It window-resize-down
|
||||
Resize window
|
||||
.Ar moveamount
|
||||
pixels down.
|
||||
.It window-resize-right
|
||||
Resize window
|
||||
.Ar moveamount
|
||||
pixels right.
|
||||
.It window-resize-left
|
||||
Resize window
|
||||
.Ar moveamount
|
||||
pixels left.
|
||||
.It window-resize-up-big
|
||||
Resize window 10 times
|
||||
.Ar moveamount
|
||||
pixels up.
|
||||
.It window-resize-down-big
|
||||
Resize window 10 times
|
||||
.Ar moveamount
|
||||
pixels down.
|
||||
.It window-resize-right-big
|
||||
Resize window 10 times
|
||||
.Ar moveamount
|
||||
pixels right.
|
||||
.It window-resize-left-big
|
||||
Resize window 10 times
|
||||
.Ar moveamount
|
||||
pixels left.
|
||||
.It window-snap-up
|
||||
Snap window to top edge.
|
||||
.It window-snap-down
|
||||
Snap window to bottom edge.
|
||||
.It window-snap-right
|
||||
Snap window to right edge.
|
||||
.It window-snap-left
|
||||
Snap window to left edge.
|
||||
.It window-snap-up-right
|
||||
Snap window to top-right corner.
|
||||
.It window-snap-up-left
|
||||
Snap window to top-left corner.
|
||||
.It window-snap-down-right
|
||||
Snap window to bottom-right corner.
|
||||
.It window-snap-down-left
|
||||
Snap window to bottom-left corner.
|
||||
.It window-tile-up
|
||||
Fill the top half of the screen with the window.
|
||||
.It window-tile-down
|
||||
Fill the bottom half of the screen with the window.
|
||||
.It window-tile-left
|
||||
Fill the left half of the screen with the window.
|
||||
.It window-tile-right
|
||||
Fill the right half of the screen with the window.
|
||||
.It window-tile-up-left
|
||||
Fill the top left quarter of the screen with the window.
|
||||
.It window-tile-up-right
|
||||
Fill the top right quarter of the screen with the window.
|
||||
.It window-tile-down-left
|
||||
Fill the down left quarter of the screen with the window.
|
||||
.It window-tile-down-right
|
||||
Fill the down right quarter of the screen with the window.
|
||||
.It window-center
|
||||
Centers the window on the screen.
|
||||
.It pointer-move-up
|
||||
Move pointer
|
||||
.Ar moveamount
|
||||
pixels up.
|
||||
.It pointer-move-down
|
||||
Move pointer
|
||||
.Ar moveamount
|
||||
pixels down.
|
||||
.It pointer-move-right
|
||||
Move pointer
|
||||
.Ar moveamount
|
||||
pixels right.
|
||||
.It pointer-move-left
|
||||
Move pointer
|
||||
.Ar moveamount
|
||||
pixels left.
|
||||
.It pointer-move-up-big
|
||||
Move pointer 10 times
|
||||
.Ar moveamount
|
||||
pixels up.
|
||||
.It pointer-move-down-big
|
||||
Move pointer 10 times
|
||||
.Ar moveamount
|
||||
pixels down.
|
||||
.It pointer-move-right-big
|
||||
Move pointer 10 times
|
||||
.Ar moveamount
|
||||
pixels right.
|
||||
.It pointer-move-left-big
|
||||
Move pointer 10 times
|
||||
.Ar moveamount
|
||||
pixels left.
|
||||
.El
|
||||
.Sh FILES
|
||||
.Bl -tag -width "~/.cwmrcXXX" -compact
|
||||
.It Pa ~/.cwmrc
|
||||
Default
|
||||
.Xr cwm 1
|
||||
configuration file.
|
||||
.El
|
||||
.Sh EXAMPLES
|
||||
.Bd -literal
|
||||
# Set default Xft(3) font
|
||||
fontname "sans-serif:pixelsize=14:bold"
|
||||
|
||||
# Turn on sticky-group mode
|
||||
sticky yes
|
||||
|
||||
# Any entry here is shown in the application menu
|
||||
command firefox firefox
|
||||
command xmms xmms
|
||||
command top "xterm -e top"
|
||||
|
||||
# Autogroup definitions
|
||||
autogroup 3 "aterm,XTerm"
|
||||
autogroup 3 "xterm,XTerm"
|
||||
|
||||
# Ignore programs by that name by not drawing borders around them.
|
||||
ignore XMMS
|
||||
ignore xwi
|
||||
ignore xapm
|
||||
ignore xclock
|
||||
|
||||
# Key bindings
|
||||
bind-key CM-r window-menu-label
|
||||
bind-key CS-Return "xterm -e top"
|
||||
bind-key C4-equal window-vmaximize
|
||||
bind-key C4S-equal window-hmaximize
|
||||
bind-key M-1 group-only-1
|
||||
bind-key M-2 group-only-2
|
||||
bind-key M-3 group-only-3
|
||||
bind-key MS-1 window-movetogroup-1
|
||||
bind-key MS-2 window-movetogroup-2
|
||||
bind-key MS-3 window-movetogroup-3
|
||||
unbind-key 4-o
|
||||
unbind-key CM-equal
|
||||
unbind-key CMS-equal
|
||||
|
||||
# Mouse bindings
|
||||
bind-mouse M-2 window-lower
|
||||
bind-mouse M-3 window-resize
|
||||
.Ed
|
||||
.Sh SEE ALSO
|
||||
.Xr cwm 1
|
||||
.Sh HISTORY
|
||||
The
|
||||
.Nm
|
||||
file format first appeared in
|
||||
.Ox 4.4 .
|
||||
Reference in New Issue
Block a user