summary refs log tree commit diff
diff options
context:
space:
mode:
authormartynas <martynas>2009-02-07 21:07:00 +0000
committermartynas <martynas>2009-02-07 21:07:00 +0000
commit17ae65adc59532b77d845c823b9902f7feff1f23 (patch)
tree2b7024ed1a372ee17d422ecb477b78653cdde660
parent507b65a27fedf439cdba086c4f918d3efaeae8dd (diff)
downloadcwm-17ae65adc59532b77d845c823b9902f7feff1f23.tar.gz
cwm-17ae65adc59532b77d845c823b9902f7feff1f23.tar.xz
cwm-17ae65adc59532b77d845c823b9902f7feff1f23.zip
add 'moveamount' to cwmrc; it sets keyboard movement amount, making
it more useful on large screens
manpage tweak & ok jmc@
ok okan@, oga@
-rw-r--r--calmwm.h2
-rw-r--r--conf.c1
-rw-r--r--cwmrc.5107
-rw-r--r--kbfunc.c3
-rw-r--r--parse.y7
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	<v.string>		STRING
 %token	<v.number>		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);