From 17ae65adc59532b77d845c823b9902f7feff1f23 Mon Sep 17 00:00:00 2001 From: martynas Date: Sat, 7 Feb 2009 21:07:00 +0000 Subject: add 'moveamount' to cwmrc; it sets keyboard movement amount, making it more useful on large screens manpage tweak & ok jmc@ ok okan@, oga@ --- calmwm.h | 2 ++ conf.c | 1 + cwmrc.5 | 107 +++++++++++++++++++++++++++++++++++++++++++++++---------------- kbfunc.c | 3 +- parse.y | 7 ++++- 5 files changed, 90 insertions(+), 30 deletions(-) diff --git a/calmwm.h b/calmwm.h index c9248ac..e84318f 100644 --- a/calmwm.h +++ b/calmwm.h @@ -256,6 +256,8 @@ struct conf { int flags; #define CONF_BWIDTH 1 int bwidth; +#define CONF_MAMOUNT 1 + int mamount; char termpath[MAXPATHLEN]; char lockpath[MAXPATHLEN]; diff --git a/conf.c b/conf.c index 4ca9507..ee4db7f 100644 --- a/conf.c +++ b/conf.c @@ -77,6 +77,7 @@ conf_init(struct conf *c) { c->flags = 0; c->bwidth = CONF_BWIDTH; + c->mamount = CONF_MAMOUNT; TAILQ_INIT(&c->ignoreq); TAILQ_INIT(&c->cmdq); diff --git a/cwmrc.5 b/cwmrc.5 index 14aae5f..546650c 100644 --- a/cwmrc.5 +++ b/cwmrc.5 @@ -14,7 +14,7 @@ .\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF .\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. .\" -.Dd $Mdocdate: January 21 2009 $ +.Dd $Mdocdate: February 7 2009 $ .Dt CWMRC 5 .Os .Sh NAME @@ -34,7 +34,7 @@ properties, where .Ar group is a number between 0 and 9. If the group number is 0, then the window will not be grouped; this to -allow for +allow for .Dq sticky windows in sticky group mode. .Pp @@ -139,7 +139,7 @@ The modifier keys come first, followed by a The following modifiers are recognised: .Pp .Bl -tag -width Ds -offset indent -compact -.It C +.It C The Control key. .It M The Meta key. @@ -169,6 +169,11 @@ may be taken from the .Sx MOUSEBIND COMMAND LIST (see below). .Pp +.It Ic moveamount Ar pixels +Set a default size for the keyboard movement bindings, +in pixels. +The default is 1. +.Pp .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. @@ -264,53 +269,101 @@ Maximize current window full-screen. .It vmaximize Maximize current window vertically. .It moveup -Move window 1 pixel up. +Move window +.Ar moveamount +pixels up. .It movedown -Move window 1 pixel down. +Move window +.Ar moveamount +pixels down. .It moveright -Move window 1 pixel right. +Move window +.Ar moveamount +pixels right. .It moveleft -Move window 1 pixel left. +Move window +.Ar moveamount +pixels left. .It bigmoveup -Move window 10 pixels up. +Move window 10 times +.Ar moveamount +pixels up. .It bigmovedown -Move window 10 pixels down. +Move window 10 times +.Ar moveamount +pixels down. .It bigmoveright -Move window 10 pixels right. +Move window 10 times +.Ar moveamount +pixels right. .It bigmoveleft -Move window 10 pixels left. +Move window 10 times +.Ar moveamount +pixels left. .It resizeup -Resize window 1 pixel up. +Resize window +.Ar moveamount +pixels up. .It resizedown -Resize window 1 pixel down. +Resize window +.Ar moveamount +pixels down. .It resizeright -Resize window 1 pixel right. +Resize window +.Ar moveamount +pixels right. .It resizeleft -Resize window 1 pixel left. +Resize window +.Ar moveamount +pixels left. .It bigresizeup -Resize window 10 pixels up. +Resize window 10 times +.Ar moveamount +pixels up. .It bigresizedown -Resize window 10 pixels down. +Resize window 10 times +.Ar moveamount +pixels down. .It bigresizeright -Resize window 10 pixels right. +Resize window 10 times +.Ar moveamount +pixels right. .It bigresizeleft -Resize window 10 pixels left. +Resize window 10 times +.Ar moveamount +pixels left. .It ptrmoveup -Move pointer 1 pixel up. +Move pointer +.Ar moveamount +pixels up. .It ptrmovedown -Move pointer 1 pixel down. +Move pointer +.Ar moveamount +pixels down. .It ptrmoveright -Move pointer 1 pixel right. +Move pointer +.Ar moveamount +pixels right. .It ptrmoveleft -Move pointer 1 pixel left. +Move pointer +.Ar moveamount +pixels left. .It bigptrmoveup -Move pointer 10 pixels up. +Move pointer 10 times +.Ar moveamount +pixels up. .It bigptrmovedown -Move pointer 10 pixels down. +Move pointer 10 times +.Ar moveamount +pixels down. .It bigptrmoveright -Move pointer 10 pixels right. +Move pointer 10 times +.Ar moveamount +pixels right. .It bigptrmoveleft -Move pointer 10 pixels left. +Move pointer 10 times +.Ar moveamount +pixels left. .El .Sh MOUSEBIND COMMAND LIST .Bl -tag -width 18n -compact diff --git a/kbfunc.c b/kbfunc.c index b063f2e..74d5e00 100644 --- a/kbfunc.c +++ b/kbfunc.c @@ -25,7 +25,6 @@ #define KNOWN_HOSTS ".ssh/known_hosts" #define HASH_MARKER "|1|" -#define MOVE_AMOUNT 1 extern int _xev_quit; @@ -54,7 +53,7 @@ kbfunc_moveresize(struct client_ctx *cc, union arg *arg) mx = my = 0; flags = arg->i; - amt = MOVE_AMOUNT; + amt = Conf.mamount; if (flags & CWM_BIGMOVE) { flags -= CWM_BIGMOVE; diff --git a/parse.y b/parse.y index 6dd1fab..2554ed3 100644 --- a/parse.y +++ b/parse.y @@ -66,7 +66,7 @@ typedef struct { %token FONTNAME STICKY GAP MOUSEBIND %token AUTOGROUP BIND COMMAND IGNORE -%token YES NO BORDERWIDTH +%token YES NO BORDERWIDTH MOVEAMOUNT %token ERROR %token STRING %token NUMBER @@ -110,6 +110,9 @@ main : FONTNAME STRING { | BORDERWIDTH NUMBER { conf->bwidth = $2; } + | MOVEAMOUNT NUMBER { + conf->mamount = $2; + } | COMMAND STRING string { conf_cmd_add(conf, $3, $2, 0); free($2); @@ -207,6 +210,7 @@ lookup(char *s) { "gap", GAP}, { "ignore", IGNORE}, { "mousebind", MOUSEBIND}, + { "moveamount", MOVEAMOUNT}, { "no", NO}, { "sticky", STICKY}, { "yes", YES} @@ -499,6 +503,7 @@ parse_config(const char *filename, struct conf *xconf) xconf->flags = conf->flags; xconf->bwidth = conf->bwidth; + xconf->mamount = conf->mamount; while ((cmd = TAILQ_FIRST(&conf->cmdq)) != NULL) { TAILQ_REMOVE(&conf->cmdq, cmd, entry); -- cgit 1.4.1