Rework the prefix-time stuff. The option is now call repeat-time and defaults to 500 ms. However, it only applies to a small subset of commands, currently: up-pane, down-pane, next-window, previous-window, resize-pane-up, resize-pane-down. These are the commands for which it is obviously useful, having it for everything else was just bloody annoying.

This commit is contained in:
Nicholas Marriott
2009-01-14 22:13:30 +00:00
parent 0a99ba0b30
commit 97fef895f2
14 changed files with 87 additions and 62 deletions

20
tmux.h
View File

@ -1,4 +1,4 @@
/* $Id: tmux.h,v 1.232 2009-01-14 19:56:55 nicm Exp $ */
/* $Id: tmux.h,v 1.233 2009-01-14 22:13:30 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@ -63,10 +63,6 @@
extern const char *__progname;
#ifndef GETOPT_PREFIX
#define GETOPT_PREFIX ""
#endif
#ifndef INFTIM
#define INFTIM -1
#endif
@ -750,7 +746,7 @@ struct client {
struct tty tty;
struct timeval status_timer;
struct timeval command_timer;
struct timeval repeat_timer;
u_int sx;
u_int sy;
@ -762,6 +758,7 @@ struct client {
#define CLIENT_MOUSE 0x4
#define CLIENT_REDRAW 0x8
#define CLIENT_STATUS 0x10
#define CLIENT_REPEAT 0x20 /* allow command to repeat within repeat time */
int flags;
char *message_string;
@ -816,10 +813,11 @@ struct cmd_entry {
#define CMD_STARTSERVER 0x1
#define CMD_CANTNEST 0x2
#define CMD_KFLAG 0x4
#define CMD_DFLAG 0x8
#define CMD_ONEARG 0x10
#define CMD_ZEROONEARG 0x20
#define CMD_ONEARG 0x4
#define CMD_ZEROONEARG 0x8
#define CMD_CANREPEAT 0x10
#define CMD_KFLAG 0x10
#define CMD_DFLAG 0x20
#define CMD_GFLAG 0x40
#define CMD_UFLAG 0x80
#define CMD_AFLAG 0x100
@ -1218,7 +1216,7 @@ void key_bindings_add(int, struct cmd *);
void key_bindings_remove(int);
void key_bindings_init(void);
void key_bindings_free(void);
void key_bindings_dispatch(int, struct client *);
void key_bindings_dispatch(struct key_binding *, struct client *);
void printflike2 key_bindings_error(struct cmd_ctx *, const char *, ...);
void printflike2 key_bindings_print(struct cmd_ctx *, const char *, ...);
void printflike2 key_bindings_info(struct cmd_ctx *, const char *, ...);