summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNicholas Marriott <nicm@cvs.openbsd.org>2009-11-13 19:53:30 +0000
committerNicholas Marriott <nicm@cvs.openbsd.org>2009-11-13 19:53:30 +0000
commit3ee92a020aed88a5644dc7b00c460cc967397175 (patch)
treea97c30cdd0880c77ae7f568a17f5805e06d35cea
parent878aa8206770fdeeb3c49d9796de7bb6f8b839a5 (diff)
Get rid of the ugly CMD_CHFLAG macro and use a const string (eg "dDU") in the
command entry structs and a couple of functions to check/set the flags.
-rw-r--r--usr.bin/tmux/cmd-attach-session.c8
-rw-r--r--usr.bin/tmux/cmd-bind-key.c4
-rw-r--r--usr.bin/tmux/cmd-break-pane.c6
-rw-r--r--usr.bin/tmux/cmd-choose-client.c4
-rw-r--r--usr.bin/tmux/cmd-choose-session.c4
-rw-r--r--usr.bin/tmux/cmd-choose-window.c4
-rw-r--r--usr.bin/tmux/cmd-clear-history.c4
-rw-r--r--usr.bin/tmux/cmd-clock-mode.c4
-rw-r--r--usr.bin/tmux/cmd-command-prompt.c4
-rw-r--r--usr.bin/tmux/cmd-confirm-before.c4
-rw-r--r--usr.bin/tmux/cmd-copy-buffer.c4
-rw-r--r--usr.bin/tmux/cmd-copy-mode.c8
-rw-r--r--usr.bin/tmux/cmd-delete-buffer.c4
-rw-r--r--usr.bin/tmux/cmd-detach-client.c4
-rw-r--r--usr.bin/tmux/cmd-display-message.c4
-rw-r--r--usr.bin/tmux/cmd-display-panes.c4
-rw-r--r--usr.bin/tmux/cmd-down-pane.c4
-rw-r--r--usr.bin/tmux/cmd-find-window.c4
-rw-r--r--usr.bin/tmux/cmd-generic.c90
-rw-r--r--usr.bin/tmux/cmd-has-session.c4
-rw-r--r--usr.bin/tmux/cmd-if-shell.c4
-rw-r--r--usr.bin/tmux/cmd-kill-pane.c6
-rw-r--r--usr.bin/tmux/cmd-kill-server.c4
-rw-r--r--usr.bin/tmux/cmd-kill-session.c4
-rw-r--r--usr.bin/tmux/cmd-kill-window.c4
-rw-r--r--usr.bin/tmux/cmd-last-window.c4
-rw-r--r--usr.bin/tmux/cmd-link-window.c8
-rw-r--r--usr.bin/tmux/cmd-list-buffers.c4
-rw-r--r--usr.bin/tmux/cmd-list-clients.c4
-rw-r--r--usr.bin/tmux/cmd-list-commands.c4
-rw-r--r--usr.bin/tmux/cmd-list-keys.c4
-rw-r--r--usr.bin/tmux/cmd-list-panes.c4
-rw-r--r--usr.bin/tmux/cmd-list-sessions.c4
-rw-r--r--usr.bin/tmux/cmd-list-windows.c4
-rw-r--r--usr.bin/tmux/cmd-load-buffer.c4
-rw-r--r--usr.bin/tmux/cmd-lock-client.c4
-rw-r--r--usr.bin/tmux/cmd-lock-server.c4
-rw-r--r--usr.bin/tmux/cmd-lock-session.c4
-rw-r--r--usr.bin/tmux/cmd-move-window.c8
-rw-r--r--usr.bin/tmux/cmd-new-session.c4
-rw-r--r--usr.bin/tmux/cmd-new-window.c4
-rw-r--r--usr.bin/tmux/cmd-next-layout.c4
-rw-r--r--usr.bin/tmux/cmd-next-window.c8
-rw-r--r--usr.bin/tmux/cmd-paste-buffer.c8
-rw-r--r--usr.bin/tmux/cmd-pipe-pane.c6
-rw-r--r--usr.bin/tmux/cmd-previous-layout.c4
-rw-r--r--usr.bin/tmux/cmd-previous-window.c8
-rw-r--r--usr.bin/tmux/cmd-refresh-client.c4
-rw-r--r--usr.bin/tmux/cmd-rename-session.c4
-rw-r--r--usr.bin/tmux/cmd-rename-window.c4
-rw-r--r--usr.bin/tmux/cmd-resize-pane.c36
-rw-r--r--usr.bin/tmux/cmd-respawn-window.c6
-rw-r--r--usr.bin/tmux/cmd-rotate-window.c8
-rw-r--r--usr.bin/tmux/cmd-run-shell.c4
-rw-r--r--usr.bin/tmux/cmd-save-buffer.c6
-rw-r--r--usr.bin/tmux/cmd-select-layout.c4
-rw-r--r--usr.bin/tmux/cmd-select-pane.c4
-rw-r--r--usr.bin/tmux/cmd-select-prompt.c4
-rw-r--r--usr.bin/tmux/cmd-select-window.c4
-rw-r--r--usr.bin/tmux/cmd-send-keys.c4
-rw-r--r--usr.bin/tmux/cmd-send-prefix.c4
-rw-r--r--usr.bin/tmux/cmd-server-info.c4
-rw-r--r--usr.bin/tmux/cmd-set-buffer.c4
-rw-r--r--usr.bin/tmux/cmd-set-environment.c10
-rw-r--r--usr.bin/tmux/cmd-set-option.c12
-rw-r--r--usr.bin/tmux/cmd-set-window-option.c12
-rw-r--r--usr.bin/tmux/cmd-show-buffer.c4
-rw-r--r--usr.bin/tmux/cmd-show-environment.c6
-rw-r--r--usr.bin/tmux/cmd-show-options.c6
-rw-r--r--usr.bin/tmux/cmd-show-window-options.c6
-rw-r--r--usr.bin/tmux/cmd-source-file.c4
-rw-r--r--usr.bin/tmux/cmd-split-window.c4
-rw-r--r--usr.bin/tmux/cmd-start-server.c4
-rw-r--r--usr.bin/tmux/cmd-suspend-client.c4
-rw-r--r--usr.bin/tmux/cmd-swap-pane.c15
-rw-r--r--usr.bin/tmux/cmd-swap-window.c6
-rw-r--r--usr.bin/tmux/cmd-switch-client.c4
-rw-r--r--usr.bin/tmux/cmd-unbind-key.c4
-rw-r--r--usr.bin/tmux/cmd-unlink-window.c6
-rw-r--r--usr.bin/tmux/cmd-up-pane.c4
-rw-r--r--usr.bin/tmux/tmux.h9
81 files changed, 266 insertions, 266 deletions
diff --git a/usr.bin/tmux/cmd-attach-session.c b/usr.bin/tmux/cmd-attach-session.c
index 310f7a1eb9e..f1f7bf62c71 100644
--- a/usr.bin/tmux/cmd-attach-session.c
+++ b/usr.bin/tmux/cmd-attach-session.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-attach-session.c,v 1.9 2009/11/11 08:00:42 nicm Exp $ */
+/* $OpenBSD: cmd-attach-session.c,v 1.10 2009/11/13 19:53:28 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -29,7 +29,7 @@ int cmd_attach_session_exec(struct cmd *, struct cmd_ctx *);
const struct cmd_entry cmd_attach_session_entry = {
"attach-session", "attach",
"[-d] " CMD_TARGET_SESSION_USAGE,
- CMD_CANTNEST|CMD_STARTSERVER|CMD_SENDENVIRON, CMD_CHFLAG('d'),
+ CMD_CANTNEST|CMD_STARTSERVER|CMD_SENDENVIRON, "d",
cmd_target_init,
cmd_target_parse,
cmd_attach_session_exec,
@@ -58,7 +58,7 @@ cmd_attach_session_exec(struct cmd *self, struct cmd_ctx *ctx)
return (0);
if (ctx->cmdclient == NULL) {
- if (data->chflags & CMD_CHFLAG('d')) {
+ if (cmd_check_flag(data->chflags, 'd')) {
/*
* Can't use server_write_session in case attaching to
* the same session as currently attached to.
@@ -89,7 +89,7 @@ cmd_attach_session_exec(struct cmd *self, struct cmd_ctx *ctx)
return (-1);
}
- if (data->chflags & CMD_CHFLAG('d'))
+ if (cmd_check_flag(data->chflags, 'd'))
server_write_session(s, MSG_DETACH, NULL, 0);
ctx->cmdclient->session = s;
diff --git a/usr.bin/tmux/cmd-bind-key.c b/usr.bin/tmux/cmd-bind-key.c
index 4b075c19e34..f716d198162 100644
--- a/usr.bin/tmux/cmd-bind-key.c
+++ b/usr.bin/tmux/cmd-bind-key.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-bind-key.c,v 1.5 2009/07/28 17:05:10 nicm Exp $ */
+/* $OpenBSD: cmd-bind-key.c,v 1.6 2009/11/13 19:53:28 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -46,7 +46,7 @@ struct cmd_bind_key_data {
const struct cmd_entry cmd_bind_key_entry = {
"bind-key", "bind",
"[-cnr] [-t key-table] key command [arguments]",
- 0, 0,
+ 0, "",
NULL,
cmd_bind_key_parse,
cmd_bind_key_exec,
diff --git a/usr.bin/tmux/cmd-break-pane.c b/usr.bin/tmux/cmd-break-pane.c
index 76f4c8daa26..0d168c508c4 100644
--- a/usr.bin/tmux/cmd-break-pane.c
+++ b/usr.bin/tmux/cmd-break-pane.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-break-pane.c,v 1.7 2009/10/10 10:02:48 nicm Exp $ */
+/* $OpenBSD: cmd-break-pane.c,v 1.8 2009/11/13 19:53:28 nicm Exp $ */
/*
* Copyright (c) 2009 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -31,7 +31,7 @@ int cmd_break_pane_exec(struct cmd *, struct cmd_ctx *);
const struct cmd_entry cmd_break_pane_entry = {
"break-pane", "breakp",
CMD_TARGET_PANE_USAGE " [-d]",
- 0, CMD_CHFLAG('d'),
+ 0, "d",
cmd_target_init,
cmd_target_parse,
cmd_break_pane_exec,
@@ -74,7 +74,7 @@ cmd_break_pane_exec(struct cmd *self, struct cmd_ctx *ctx)
base_idx = options_get_number(&s->options, "base-index");
wl = session_attach(s, w, -1 - base_idx, &cause); /* can't fail */
- if (!(data->chflags & CMD_CHFLAG('d')))
+ if (!cmd_check_flag(data->chflags, 'd'))
session_select(s, wl->idx);
server_redraw_session(s);
diff --git a/usr.bin/tmux/cmd-choose-client.c b/usr.bin/tmux/cmd-choose-client.c
index 06c277ea2b3..7ba040a3ea3 100644
--- a/usr.bin/tmux/cmd-choose-client.c
+++ b/usr.bin/tmux/cmd-choose-client.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-choose-client.c,v 1.3 2009/09/07 21:01:50 nicm Exp $ */
+/* $OpenBSD: cmd-choose-client.c,v 1.4 2009/11/13 19:53:28 nicm Exp $ */
/*
* Copyright (c) 2009 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -34,7 +34,7 @@ void cmd_choose_client_free(void *);
const struct cmd_entry cmd_choose_client_entry = {
"choose-client", NULL,
CMD_TARGET_WINDOW_USAGE " [template]",
- CMD_ARG01, 0,
+ CMD_ARG01, "",
cmd_target_init,
cmd_target_parse,
cmd_choose_client_exec,
diff --git a/usr.bin/tmux/cmd-choose-session.c b/usr.bin/tmux/cmd-choose-session.c
index 3b2cf6df772..7f0d502d2c5 100644
--- a/usr.bin/tmux/cmd-choose-session.c
+++ b/usr.bin/tmux/cmd-choose-session.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-choose-session.c,v 1.8 2009/10/10 10:02:48 nicm Exp $ */
+/* $OpenBSD: cmd-choose-session.c,v 1.9 2009/11/13 19:53:28 nicm Exp $ */
/*
* Copyright (c) 2009 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -34,7 +34,7 @@ void cmd_choose_session_free(void *);
const struct cmd_entry cmd_choose_session_entry = {
"choose-session", NULL,
CMD_TARGET_WINDOW_USAGE " [template]",
- CMD_ARG01, 0,
+ CMD_ARG01, "",
cmd_target_init,
cmd_target_parse,
cmd_choose_session_exec,
diff --git a/usr.bin/tmux/cmd-choose-window.c b/usr.bin/tmux/cmd-choose-window.c
index 82b9a811f35..c63094932f6 100644
--- a/usr.bin/tmux/cmd-choose-window.c
+++ b/usr.bin/tmux/cmd-choose-window.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-choose-window.c,v 1.10 2009/10/10 10:02:48 nicm Exp $ */
+/* $OpenBSD: cmd-choose-window.c,v 1.11 2009/11/13 19:53:28 nicm Exp $ */
/*
* Copyright (c) 2009 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -34,7 +34,7 @@ void cmd_choose_window_free(void *);
const struct cmd_entry cmd_choose_window_entry = {
"choose-window", NULL,
CMD_TARGET_WINDOW_USAGE " [template]",
- CMD_ARG01, 0,
+ CMD_ARG01, "",
cmd_target_init,
cmd_target_parse,
cmd_choose_window_exec,
diff --git a/usr.bin/tmux/cmd-clear-history.c b/usr.bin/tmux/cmd-clear-history.c
index 6b9f1a70058..ffb88022f6a 100644
--- a/usr.bin/tmux/cmd-clear-history.c
+++ b/usr.bin/tmux/cmd-clear-history.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-clear-history.c,v 1.6 2009/07/30 17:29:12 nicm Exp $ */
+/* $OpenBSD: cmd-clear-history.c,v 1.7 2009/11/13 19:53:28 nicm Exp $ */
/*
* Copyright (c) 2009 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -29,7 +29,7 @@ int cmd_clear_history_exec(struct cmd *, struct cmd_ctx *);
const struct cmd_entry cmd_clear_history_entry = {
"clear-history", "clearhist",
CMD_TARGET_PANE_USAGE,
- 0, 0,
+ 0, "",
cmd_target_init,
cmd_target_parse,
cmd_clear_history_exec,
diff --git a/usr.bin/tmux/cmd-clock-mode.c b/usr.bin/tmux/cmd-clock-mode.c
index 5f7c29e3f14..4b502d244d2 100644
--- a/usr.bin/tmux/cmd-clock-mode.c
+++ b/usr.bin/tmux/cmd-clock-mode.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-clock-mode.c,v 1.4 2009/08/18 16:21:04 nicm Exp $ */
+/* $OpenBSD: cmd-clock-mode.c,v 1.5 2009/11/13 19:53:29 nicm Exp $ */
/*
* Copyright (c) 2009 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -29,7 +29,7 @@ int cmd_clock_mode_exec(struct cmd *, struct cmd_ctx *);
const struct cmd_entry cmd_clock_mode_entry = {
"clock-mode", NULL,
CMD_TARGET_PANE_USAGE,
- 0, 0,
+ 0, "",
cmd_target_init,
cmd_target_parse,
cmd_clock_mode_exec,
diff --git a/usr.bin/tmux/cmd-command-prompt.c b/usr.bin/tmux/cmd-command-prompt.c
index dc4e8e4c2a9..ca3aa567e27 100644
--- a/usr.bin/tmux/cmd-command-prompt.c
+++ b/usr.bin/tmux/cmd-command-prompt.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-command-prompt.c,v 1.11 2009/09/21 15:32:06 nicm Exp $ */
+/* $OpenBSD: cmd-command-prompt.c,v 1.12 2009/11/13 19:53:29 nicm Exp $ */
/*
* Copyright (c) 2008 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -39,7 +39,7 @@ void cmd_command_prompt_cfree(void *);
const struct cmd_entry cmd_command_prompt_entry = {
"command-prompt", NULL,
CMD_TARGET_CLIENT_USAGE " [-p prompts] [template]",
- 0, 0,
+ 0, "",
cmd_command_prompt_init,
cmd_command_prompt_parse,
cmd_command_prompt_exec,
diff --git a/usr.bin/tmux/cmd-confirm-before.c b/usr.bin/tmux/cmd-confirm-before.c
index b920a0979d4..1c5ca9e91de 100644
--- a/usr.bin/tmux/cmd-confirm-before.c
+++ b/usr.bin/tmux/cmd-confirm-before.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-confirm-before.c,v 1.8 2009/08/23 16:45:00 nicm Exp $ */
+/* $OpenBSD: cmd-confirm-before.c,v 1.9 2009/11/13 19:53:29 nicm Exp $ */
/*
* Copyright (c) 2009 Tiago Cunha <me@tiagocunha.org>
@@ -34,7 +34,7 @@ void cmd_confirm_before_free(void *);
const struct cmd_entry cmd_confirm_before_entry = {
"confirm-before", "confirm",
CMD_TARGET_CLIENT_USAGE " command",
- CMD_ARG1, 0,
+ CMD_ARG1, "",
cmd_confirm_before_init,
cmd_target_parse,
cmd_confirm_before_exec,
diff --git a/usr.bin/tmux/cmd-copy-buffer.c b/usr.bin/tmux/cmd-copy-buffer.c
index 6e93375afb0..238a2cc2c8e 100644
--- a/usr.bin/tmux/cmd-copy-buffer.c
+++ b/usr.bin/tmux/cmd-copy-buffer.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-copy-buffer.c,v 1.5 2009/09/21 15:32:06 nicm Exp $ */
+/* $OpenBSD: cmd-copy-buffer.c,v 1.6 2009/11/13 19:53:29 nicm Exp $ */
/*
* Copyright (c) 2009 Tiago Cunha <me@tiagocunha.org>
@@ -43,7 +43,7 @@ struct cmd_copy_buffer_data {
const struct cmd_entry cmd_copy_buffer_entry = {
"copy-buffer", "copyb",
"[-a src-index] [-b dst-index] [-s src-session] [-t dst-session]",
- 0, 0,
+ 0, "",
cmd_copy_buffer_init,
cmd_copy_buffer_parse,
cmd_copy_buffer_exec,
diff --git a/usr.bin/tmux/cmd-copy-mode.c b/usr.bin/tmux/cmd-copy-mode.c
index 2795dcf8649..559a11a2085 100644
--- a/usr.bin/tmux/cmd-copy-mode.c
+++ b/usr.bin/tmux/cmd-copy-mode.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-copy-mode.c,v 1.7 2009/10/06 07:19:32 nicm Exp $ */
+/* $OpenBSD: cmd-copy-mode.c,v 1.8 2009/11/13 19:53:29 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -30,7 +30,7 @@ int cmd_copy_mode_exec(struct cmd *, struct cmd_ctx *);
const struct cmd_entry cmd_copy_mode_entry = {
"copy-mode", NULL,
"[-u] " CMD_TARGET_PANE_USAGE,
- 0, CMD_CHFLAG('u'),
+ 0, "u",
cmd_copy_mode_init,
cmd_target_parse,
cmd_copy_mode_exec,
@@ -48,7 +48,7 @@ cmd_copy_mode_init(struct cmd *self, int key)
switch (key) {
case KEYC_PPAGE:
- data->chflags |= CMD_CHFLAG('u');
+ cmd_set_flag(&data->chflags, 'u');
break;
}
}
@@ -63,7 +63,7 @@ cmd_copy_mode_exec(struct cmd *self, struct cmd_ctx *ctx)
return (-1);
window_pane_set_mode(wp, &window_copy_mode);
- if (wp->mode == &window_copy_mode && data->chflags & CMD_CHFLAG('u'))
+ if (wp->mode == &window_copy_mode && cmd_check_flag(data->chflags, 'u'))
window_copy_pageup(wp);
return (0);
diff --git a/usr.bin/tmux/cmd-delete-buffer.c b/usr.bin/tmux/cmd-delete-buffer.c
index de9de2156a6..68eacf02968 100644
--- a/usr.bin/tmux/cmd-delete-buffer.c
+++ b/usr.bin/tmux/cmd-delete-buffer.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-delete-buffer.c,v 1.3 2009/07/26 12:58:44 nicm Exp $ */
+/* $OpenBSD: cmd-delete-buffer.c,v 1.4 2009/11/13 19:53:29 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -31,7 +31,7 @@ int cmd_delete_buffer_exec(struct cmd *, struct cmd_ctx *);
const struct cmd_entry cmd_delete_buffer_entry = {
"delete-buffer", "deleteb",
CMD_BUFFER_SESSION_USAGE,
- 0, 0,
+ 0, "",
cmd_buffer_init,
cmd_buffer_parse,
cmd_delete_buffer_exec,
diff --git a/usr.bin/tmux/cmd-detach-client.c b/usr.bin/tmux/cmd-detach-client.c
index 334338282ad..77a30d294fb 100644
--- a/usr.bin/tmux/cmd-detach-client.c
+++ b/usr.bin/tmux/cmd-detach-client.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-detach-client.c,v 1.3 2009/07/26 12:58:44 nicm Exp $ */
+/* $OpenBSD: cmd-detach-client.c,v 1.4 2009/11/13 19:53:29 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -29,7 +29,7 @@ int cmd_detach_client_exec(struct cmd *, struct cmd_ctx *);
const struct cmd_entry cmd_detach_client_entry = {
"detach-client", "detach",
CMD_TARGET_CLIENT_USAGE,
- 0, 0,
+ 0, "",
cmd_target_init,
cmd_target_parse,
cmd_detach_client_exec,
diff --git a/usr.bin/tmux/cmd-display-message.c b/usr.bin/tmux/cmd-display-message.c
index b32af0cf3ee..fcfe1749743 100644
--- a/usr.bin/tmux/cmd-display-message.c
+++ b/usr.bin/tmux/cmd-display-message.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-display-message.c,v 1.3 2009/10/10 15:03:01 nicm Exp $ */
+/* $OpenBSD: cmd-display-message.c,v 1.4 2009/11/13 19:53:29 nicm Exp $ */
/*
* Copyright (c) 2009 Tiago Cunha <me@tiagocunha.org>
@@ -31,7 +31,7 @@ int cmd_display_message_exec(struct cmd *, struct cmd_ctx *);
const struct cmd_entry cmd_display_message_entry = {
"display-message", "display",
CMD_TARGET_CLIENT_USAGE " [message]",
- CMD_ARG01, 0,
+ CMD_ARG01, "",
cmd_target_init,
cmd_target_parse,
cmd_display_message_exec,
diff --git a/usr.bin/tmux/cmd-display-panes.c b/usr.bin/tmux/cmd-display-panes.c
index d95282529f7..4c751dc14ce 100644
--- a/usr.bin/tmux/cmd-display-panes.c
+++ b/usr.bin/tmux/cmd-display-panes.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-display-panes.c,v 1.1 2009/08/31 20:46:19 nicm Exp $ */
+/* $OpenBSD: cmd-display-panes.c,v 1.2 2009/11/13 19:53:29 nicm Exp $ */
/*
* Copyright (c) 2009 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -29,7 +29,7 @@ int cmd_display_panes_exec(struct cmd *, struct cmd_ctx *);
const struct cmd_entry cmd_display_panes_entry = {
"display-panes", "displayp",
CMD_TARGET_CLIENT_USAGE,
- 0, 0,
+ 0, "",
cmd_target_init,
cmd_target_parse,
cmd_display_panes_exec,
diff --git a/usr.bin/tmux/cmd-down-pane.c b/usr.bin/tmux/cmd-down-pane.c
index a436da5de5f..c7f573f8e65 100644
--- a/usr.bin/tmux/cmd-down-pane.c
+++ b/usr.bin/tmux/cmd-down-pane.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-down-pane.c,v 1.6 2009/07/26 12:58:44 nicm Exp $ */
+/* $OpenBSD: cmd-down-pane.c,v 1.7 2009/11/13 19:53:29 nicm Exp $ */
/*
* Copyright (c) 2009 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -29,7 +29,7 @@ int cmd_down_pane_exec(struct cmd *, struct cmd_ctx *);
const struct cmd_entry cmd_down_pane_entry = {
"down-pane", "downp",
CMD_TARGET_WINDOW_USAGE,
- 0, 0,
+ 0, "",
cmd_target_init,
cmd_target_parse,
cmd_down_pane_exec,
diff --git a/usr.bin/tmux/cmd-find-window.c b/usr.bin/tmux/cmd-find-window.c
index 0e2d876b42d..d9cdb62796c 100644
--- a/usr.bin/tmux/cmd-find-window.c
+++ b/usr.bin/tmux/cmd-find-window.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-find-window.c,v 1.5 2009/07/26 12:58:44 nicm Exp $ */
+/* $OpenBSD: cmd-find-window.c,v 1.6 2009/11/13 19:53:29 nicm Exp $ */
/*
* Copyright (c) 2009 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -34,7 +34,7 @@ void cmd_find_window_callback(void *, int);
const struct cmd_entry cmd_find_window_entry = {
"find-window", "findw",
CMD_TARGET_WINDOW_USAGE " match-string",
- CMD_ARG1, 0,
+ CMD_ARG1, "",
cmd_target_init,
cmd_target_parse,
cmd_find_window_exec,
diff --git a/usr.bin/tmux/cmd-generic.c b/usr.bin/tmux/cmd-generic.c
index 5b459dfa5bf..e7c35ca352e 100644
--- a/usr.bin/tmux/cmd-generic.c
+++ b/usr.bin/tmux/cmd-generic.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-generic.c,v 1.7 2009/08/26 18:09:52 nicm Exp $ */
+/* $OpenBSD: cmd-generic.c,v 1.8 2009/11/13 19:53:29 nicm Exp $ */
/*
* Copyright (c) 2008 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -23,8 +23,8 @@
#include "tmux.h"
-int cmd_getopt(int, char **, const char *, uint64_t);
-int cmd_flags(int, uint64_t, uint64_t *);
+int cmd_getopt(int, char **, const char *, const char *);
+int cmd_parse_flags(int, const char *, uint64_t *);
size_t cmd_print_flags(char *, size_t, size_t, uint64_t);
int cmd_fill_argument(int, char **, char **, int, char **);
@@ -36,51 +36,53 @@ cmd_prarg(char *buf, size_t len, const char *prefix, char *arg)
return (xsnprintf(buf, len, "%s%s", prefix, arg));
}
-/* Prepend flags from chflags onto flagstr and call getopt. */
+/* Append two flag strings together and call getopt. */
int
-cmd_getopt(int argc, char **argv, const char *flagstr, uint64_t chflags)
+cmd_getopt(int argc, char **argv, const char *flagstr, const char *chflagstr)
{
- u_char ch;
- char buf[128];
- size_t len, off;
-
- *buf = '\0';
+ char tmp[BUFSIZ];
- len = sizeof buf;
- off = 0;
+ if (strlcpy(tmp, flagstr, sizeof tmp) >= sizeof tmp)
+ fatalx("strlcpy overflow");
+ if (strlcat(tmp, chflagstr, sizeof tmp) >= sizeof tmp)
+ fatalx("strlcat overflow");
+ return (getopt(argc, argv, tmp));
+}
- for (ch = 0; ch < 26; ch++) {
- if (chflags & CMD_CHFLAG('a' + ch))
- off += xsnprintf(buf + off, len - off, "%c", 'a' + ch);
- if (chflags & CMD_CHFLAG('A' + ch))
- off += xsnprintf(buf + off, len - off, "%c", 'A' + ch);
- }
-
- strlcat(buf, flagstr, sizeof buf);
+/* Return if flag character is set. */
+int
+cmd_check_flag(uint64_t chflags, int flag)
+{
+ if (flag >= 'A' && flag <= 'Z')
+ flag = 26 + flag - 'A';
+ else if (flag >= 'a' && flag <= 'z')
+ flag = flag - 'a';
+ else
+ return (0);
+ return ((chflags & (1ULL << flag)) != 0);
+}
- return (getopt(argc, argv, buf));
+/* Set flag character. */
+void
+cmd_set_flag(uint64_t *chflags, int flag)
+{
+ if (flag >= 'A' && flag <= 'Z')
+ flag = 26 + flag - 'A';
+ else if (flag >= 'a' && flag <= 'z')
+ flag = flag - 'a';
+ else
+ return;
+ (*chflags) |= (1ULL << flag);
}
-/*
- * If this option is expected (in ichflags), set it in ochflags, otherwise
- * return -1.
- */
+/* If this option is expected, set it in chflags, otherwise return -1. */
int
-cmd_flags(int opt, uint64_t ichflags, uint64_t *ochflags)
+cmd_parse_flags(int opt, const char *chflagstr, uint64_t *chflags)
{
- u_char ch;
-
- for (ch = 0; ch < 26; ch++) {
- if (opt == 'a' + ch && ichflags & CMD_CHFLAG(opt)) {
- (*ochflags) |= CMD_CHFLAG(opt);
- return (0);
- }
- if (opt == 'A' + ch && ichflags & CMD_CHFLAG(opt)) {
- (*ochflags) |= CMD_CHFLAG(opt);
- return (0);
- }
- }
- return (-1);
+ if (strchr(chflagstr, opt) == NULL)
+ return (-1);
+ cmd_set_flag(chflags, opt);
+ return (0);
}
/* Print the flags supported in chflags. */
@@ -95,9 +97,9 @@ cmd_print_flags(char *buf, size_t len, size_t off, uint64_t chflags)
off += xsnprintf(buf + off, len - off, " -");
for (ch = 0; ch < 26; ch++) {
- if (chflags & CMD_CHFLAG('a' + ch))
+ if (cmd_check_flag(chflags, 'a' + ch))
off += xsnprintf(buf + off, len - off, "%c", 'a' + ch);
- if (chflags & CMD_CHFLAG('A' + ch))
+ if (cmd_check_flag(chflags, 'A' + ch))
off += xsnprintf(buf + off, len - off, "%c", 'A' + ch);
}
return (off - boff);
@@ -170,7 +172,7 @@ cmd_target_parse(struct cmd *self, int argc, char **argv, char **cause)
data = self->data;
while ((opt = cmd_getopt(argc, argv, "t:", entry->chflags)) != -1) {
- if (cmd_flags(opt, entry->chflags, &data->chflags) == 0)
+ if (cmd_parse_flags(opt, entry->chflags, &data->chflags) == 0)
continue;
switch (opt) {
case 't':
@@ -253,7 +255,7 @@ cmd_srcdst_parse(struct cmd *self, int argc, char **argv, char **cause)
data = self->data;
while ((opt = cmd_getopt(argc, argv, "s:t:", entry->chflags)) != -1) {
- if (cmd_flags(opt, entry->chflags, &data->chflags) == 0)
+ if (cmd_parse_flags(opt, entry->chflags, &data->chflags) == 0)
continue;
switch (opt) {
case 's':
@@ -345,7 +347,7 @@ cmd_buffer_parse(struct cmd *self, int argc, char **argv, char **cause)
data = self->data;
while ((opt = cmd_getopt(argc, argv, "b:t:", entry->chflags)) != -1) {
- if (cmd_flags(opt, entry->chflags, &data->chflags) == 0)
+ if (cmd_parse_flags(opt, entry->chflags, &data->chflags) == 0)
continue;
switch (opt) {
case 'b':
diff --git a/usr.bin/tmux/cmd-has-session.c b/usr.bin/tmux/cmd-has-session.c
index 62c7c431b9f..18878c23fb2 100644
--- a/usr.bin/tmux/cmd-has-session.c
+++ b/usr.bin/tmux/cmd-has-session.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-has-session.c,v 1.3 2009/07/26 12:58:44 nicm Exp $ */
+/* $OpenBSD: cmd-has-session.c,v 1.4 2009/11/13 19:53:29 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -29,7 +29,7 @@ int cmd_has_session_exec(struct cmd *, struct cmd_ctx *);
const struct cmd_entry cmd_has_session_entry = {
"has-session", "has",
CMD_TARGET_SESSION_USAGE,
- 0, 0,
+ 0, "",
cmd_target_init,
cmd_target_parse,
cmd_has_session_exec,
diff --git a/usr.bin/tmux/cmd-if-shell.c b/usr.bin/tmux/cmd-if-shell.c
index 190bc65e8cb..ecb6a12657d 100644
--- a/usr.bin/tmux/cmd-if-shell.c
+++ b/usr.bin/tmux/cmd-if-shell.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-if-shell.c,v 1.6 2009/11/01 23:20:37 nicm Exp $ */
+/* $OpenBSD: cmd-if-shell.c,v 1.7 2009/11/13 19:53:29 nicm Exp $ */
/*
* Copyright (c) 2009 Tiago Cunha <me@tiagocunha.org>
@@ -36,7 +36,7 @@ void cmd_if_shell_free(void *);
const struct cmd_entry cmd_if_shell_entry = {
"if-shell", "if",
"shell-command command",
- CMD_ARG2, 0,
+ CMD_ARG2, "",
cmd_target_init,
cmd_target_parse,
cmd_if_shell_exec,
diff --git a/usr.bin/tmux/cmd-kill-pane.c b/usr.bin/tmux/cmd-kill-pane.c
index 17b7f71c618..41c1c771e96 100644
--- a/usr.bin/tmux/cmd-kill-pane.c
+++ b/usr.bin/tmux/cmd-kill-pane.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-kill-pane.c,v 1.8 2009/10/24 10:12:39 nicm Exp $ */
+/* $OpenBSD: cmd-kill-pane.c,v 1.9 2009/11/13 19:53:29 nicm Exp $ */
/*
* Copyright (c) 2009 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -31,7 +31,7 @@ int cmd_kill_pane_exec(struct cmd *, struct cmd_ctx *);
const struct cmd_entry cmd_kill_pane_entry = {
"kill-pane", "killp",
"[-a] " CMD_TARGET_PANE_USAGE,
- 0, CMD_CHFLAG('a'),
+ 0, "a",
cmd_target_init,
cmd_target_parse,
cmd_kill_pane_exec,
@@ -56,7 +56,7 @@ cmd_kill_pane_exec(struct cmd *self, struct cmd_ctx *ctx)
return (0);
}
- if (data->chflags & CMD_CHFLAG('a')) {
+ if (cmd_check_flag(data->chflags, 'a')) {
loopwp = TAILQ_FIRST(&wl->window->panes);
while (loopwp != NULL) {
nextwp = TAILQ_NEXT(loopwp, entry);
diff --git a/usr.bin/tmux/cmd-kill-server.c b/usr.bin/tmux/cmd-kill-server.c
index 8ace8e1b975..496fb09a488 100644
--- a/usr.bin/tmux/cmd-kill-server.c
+++ b/usr.bin/tmux/cmd-kill-server.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-kill-server.c,v 1.4 2009/11/04 20:50:11 nicm Exp $ */
+/* $OpenBSD: cmd-kill-server.c,v 1.5 2009/11/13 19:53:29 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -32,7 +32,7 @@ int cmd_kill_server_exec(struct cmd *, struct cmd_ctx *);
const struct cmd_entry cmd_kill_server_entry = {
"kill-server", NULL,
"",
- 0, 0,
+ 0, "",
NULL,
NULL,
cmd_kill_server_exec,
diff --git a/usr.bin/tmux/cmd-kill-session.c b/usr.bin/tmux/cmd-kill-session.c
index 112cf679a5d..6149bd4d1ef 100644
--- a/usr.bin/tmux/cmd-kill-session.c
+++ b/usr.bin/tmux/cmd-kill-session.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-kill-session.c,v 1.4 2009/10/10 10:02:48 nicm Exp $ */
+/* $OpenBSD: cmd-kill-session.c,v 1.5 2009/11/13 19:53:29 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -32,7 +32,7 @@ int cmd_kill_session_exec(struct cmd *, struct cmd_ctx *);
const struct cmd_entry cmd_kill_session_entry = {
"kill-session", NULL,
CMD_TARGET_SESSION_USAGE,
- 0, 0,
+ 0, "",
cmd_target_init,
cmd_target_parse,
cmd_kill_session_exec,
diff --git a/usr.bin/tmux/cmd-kill-window.c b/usr.bin/tmux/cmd-kill-window.c
index e54f6161133..599513ad547 100644
--- a/usr.bin/tmux/cmd-kill-window.c
+++ b/usr.bin/tmux/cmd-kill-window.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-kill-window.c,v 1.6 2009/09/20 17:27:18 nicm Exp $ */
+/* $OpenBSD: cmd-kill-window.c,v 1.7 2009/11/13 19:53:29 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -29,7 +29,7 @@ int cmd_kill_window_exec(struct cmd *, struct cmd_ctx *);
const struct cmd_entry cmd_kill_window_entry = {
"kill-window", "killw",
CMD_TARGET_WINDOW_USAGE,
- 0, 0,
+ 0, "",
cmd_target_init,
cmd_target_parse,
cmd_kill_window_exec,
diff --git a/usr.bin/tmux/cmd-last-window.c b/usr.bin/tmux/cmd-last-window.c
index 973ff3c79af..af07a556ead 100644
--- a/usr.bin/tmux/cmd-last-window.c
+++ b/usr.bin/tmux/cmd-last-window.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-last-window.c,v 1.3 2009/07/26 12:58:44 nicm Exp $ */
+/* $OpenBSD: cmd-last-window.c,v 1.4 2009/11/13 19:53:29 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -29,7 +29,7 @@ int cmd_last_window_exec(struct cmd *, struct cmd_ctx *);
const struct cmd_entry cmd_last_window_entry = {
"last-window", "last",
CMD_TARGET_SESSION_USAGE,
- 0, 0,
+ 0, "",
cmd_target_init,
cmd_target_parse,
cmd_last_window_exec,
diff --git a/usr.bin/tmux/cmd-link-window.c b/usr.bin/tmux/cmd-link-window.c
index ac4f2daa672..c704ef7853c 100644
--- a/usr.bin/tmux/cmd-link-window.c
+++ b/usr.bin/tmux/cmd-link-window.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-link-window.c,v 1.8 2009/10/10 10:02:48 nicm Exp $ */
+/* $OpenBSD: cmd-link-window.c,v 1.9 2009/11/13 19:53:29 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -31,7 +31,7 @@ int cmd_link_window_exec(struct cmd *, struct cmd_ctx *);
const struct cmd_entry cmd_link_window_entry = {
"link-window", "linkw",
"[-dk] " CMD_SRCDST_WINDOW_USAGE,
- 0, CMD_CHFLAG('d')|CMD_CHFLAG('k'),
+ 0, "dk",
cmd_srcdst_init,
cmd_srcdst_parse,
cmd_link_window_exec,
@@ -53,8 +53,8 @@ cmd_link_window_exec(struct cmd *self, struct cmd_ctx *ctx)
if ((idx = cmd_find_index(ctx, data->dst, &dst)) == -2)
return (-1);
- kflag = data->chflags & CMD_CHFLAG('k');
- dflag = data->chflags & CMD_CHFLAG('d');
+ kflag = cmd_check_flag(data->chflags, 'k');
+ dflag = cmd_check_flag(data->chflags, 'd');
if (server_link_window(src, wl, dst, idx, kflag, !dflag, &cause) != 0) {
ctx->error(ctx, "can't link window: %s", cause);
xfree(cause);
diff --git a/usr.bin/tmux/cmd-list-buffers.c b/usr.bin/tmux/cmd-list-buffers.c
index 15c53ebf366..f34c62b1a5d 100644
--- a/usr.bin/tmux/cmd-list-buffers.c
+++ b/usr.bin/tmux/cmd-list-buffers.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-list-buffers.c,v 1.5 2009/09/07 18:50:45 nicm Exp $ */
+/* $OpenBSD: cmd-list-buffers.c,v 1.6 2009/11/13 19:53:29 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -32,7 +32,7 @@ int cmd_list_buffers_exec(struct cmd *, struct cmd_ctx *);
const struct cmd_entry cmd_list_buffers_entry = {
"list-buffers", "lsb",
CMD_TARGET_SESSION_USAGE,
- 0, 0,
+ 0, "",
cmd_target_init,
cmd_target_parse,
cmd_list_buffers_exec,
diff --git a/usr.bin/tmux/cmd-list-clients.c b/usr.bin/tmux/cmd-list-clients.c
index d472d717f92..cc3dc193b8b 100644
--- a/usr.bin/tmux/cmd-list-clients.c
+++ b/usr.bin/tmux/cmd-list-clients.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-list-clients.c,v 1.3 2009/07/26 12:58:44 nicm Exp $ */
+/* $OpenBSD: cmd-list-clients.c,v 1.4 2009/11/13 19:53:29 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -32,7 +32,7 @@ int cmd_list_clients_exec(struct cmd *, struct cmd_ctx *);
const struct cmd_entry cmd_list_clients_entry = {
"list-clients", "lsc",
"",
- 0, 0,
+ 0, "",
NULL,
NULL,
cmd_list_clients_exec,
diff --git a/usr.bin/tmux/cmd-list-commands.c b/usr.bin/tmux/cmd-list-commands.c
index 5685af075a5..374b00b24b3 100644
--- a/usr.bin/tmux/cmd-list-commands.c
+++ b/usr.bin/tmux/cmd-list-commands.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-list-commands.c,v 1.3 2009/07/26 12:58:44 nicm Exp $ */
+/* $OpenBSD: cmd-list-commands.c,v 1.4 2009/11/13 19:53:29 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -29,7 +29,7 @@ int cmd_list_commands_exec(struct cmd *, struct cmd_ctx *);
const struct cmd_entry cmd_list_commands_entry = {
"list-commands", "lscm",
"",
- 0, 0,
+ 0, "",
NULL,
NULL,
cmd_list_commands_exec,
diff --git a/usr.bin/tmux/cmd-list-keys.c b/usr.bin/tmux/cmd-list-keys.c
index 2d2baa88552..70847ca8d81 100644
--- a/usr.bin/tmux/cmd-list-keys.c
+++ b/usr.bin/tmux/cmd-list-keys.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-list-keys.c,v 1.8 2009/11/05 12:04:50 nicm Exp $ */
+/* $OpenBSD: cmd-list-keys.c,v 1.9 2009/11/13 19:53:29 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -33,7 +33,7 @@ int cmd_list_keys_table(struct cmd *, struct cmd_ctx *);
const struct cmd_entry cmd_list_keys_entry = {
"list-keys", "lsk",
"[-t key-table]",
- 0, 0,
+ 0, "",
cmd_target_init,
cmd_target_parse,
cmd_list_keys_exec,
diff --git a/usr.bin/tmux/cmd-list-panes.c b/usr.bin/tmux/cmd-list-panes.c
index 470af1968d1..dc6f5b00b11 100644
--- a/usr.bin/tmux/cmd-list-panes.c
+++ b/usr.bin/tmux/cmd-list-panes.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-list-panes.c,v 1.2 2009/10/15 07:05:38 nicm Exp $ */
+/* $OpenBSD: cmd-list-panes.c,v 1.3 2009/11/13 19:53:29 nicm Exp $ */
/*
* Copyright (c) 2009 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -31,7 +31,7 @@ int cmd_list_panes_exec(struct cmd *, struct cmd_ctx *);
const struct cmd_entry cmd_list_panes_entry = {
"list-panes", "lsp",
CMD_TARGET_WINDOW_USAGE,
- 0, 0,
+ 0, "",
cmd_target_init,
cmd_target_parse,
cmd_list_panes_exec,
diff --git a/usr.bin/tmux/cmd-list-sessions.c b/usr.bin/tmux/cmd-list-sessions.c
index 7caa943c080..4436972337f 100644
--- a/usr.bin/tmux/cmd-list-sessions.c
+++ b/usr.bin/tmux/cmd-list-sessions.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-list-sessions.c,v 1.5 2009/11/03 20:29:47 nicm Exp $ */
+/* $OpenBSD: cmd-list-sessions.c,v 1.6 2009/11/13 19:53:29 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -31,7 +31,7 @@ int cmd_list_sessions_exec(struct cmd *, struct cmd_ctx *);
const struct cmd_entry cmd_list_sessions_entry = {
"list-sessions", "ls", "",
- 0, 0,
+ 0, "",
NULL,
NULL,
cmd_list_sessions_exec,
diff --git a/usr.bin/tmux/cmd-list-windows.c b/usr.bin/tmux/cmd-list-windows.c
index 0cfdb7b2888..e1b5e6c01a3 100644
--- a/usr.bin/tmux/cmd-list-windows.c
+++ b/usr.bin/tmux/cmd-list-windows.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-list-windows.c,v 1.7 2009/10/10 17:19:38 nicm Exp $ */
+/* $OpenBSD: cmd-list-windows.c,v 1.8 2009/11/13 19:53:29 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -31,7 +31,7 @@ int cmd_list_windows_exec(struct cmd *, struct cmd_ctx *);
const struct cmd_entry cmd_list_windows_entry = {
"list-windows", "lsw",
CMD_TARGET_SESSION_USAGE,
- 0, 0,
+ 0, "",
cmd_target_init,
cmd_target_parse,
cmd_list_windows_exec,
diff --git a/usr.bin/tmux/cmd-load-buffer.c b/usr.bin/tmux/cmd-load-buffer.c
index 1a545259ba2..77ca4720ca0 100644
--- a/usr.bin/tmux/cmd-load-buffer.c
+++ b/usr.bin/tmux/cmd-load-buffer.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-load-buffer.c,v 1.7 2009/10/26 21:25:57 nicm Exp $ */
+/* $OpenBSD: cmd-load-buffer.c,v 1.8 2009/11/13 19:53:29 nicm Exp $ */
/*
* Copyright (c) 2009 Tiago Cunha <me@tiagocunha.org>
@@ -35,7 +35,7 @@ int cmd_load_buffer_exec(struct cmd *, struct cmd_ctx *);
const struct cmd_entry cmd_load_buffer_entry = {
"load-buffer", "loadb",
CMD_BUFFER_SESSION_USAGE " path",
- CMD_ARG1, 0,
+ CMD_ARG1, "",
cmd_buffer_init,
cmd_buffer_parse,
cmd_load_buffer_exec,
diff --git a/usr.bin/tmux/cmd-lock-client.c b/usr.bin/tmux/cmd-lock-client.c
index 2bb550c2191..6f7ebd07d0b 100644
--- a/usr.bin/tmux/cmd-lock-client.c
+++ b/usr.bin/tmux/cmd-lock-client.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-lock-client.c,v 1.1 2009/09/24 14:17:09 nicm Exp $ */
+/* $OpenBSD: cmd-lock-client.c,v 1.2 2009/11/13 19:53:29 nicm Exp $ */
/*
* Copyright (c) 2009 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -29,7 +29,7 @@ int cmd_lock_client_exec(struct cmd *, struct cmd_ctx *);
const struct cmd_entry cmd_lock_client_entry = {
"lock-client", "lockc",
CMD_TARGET_CLIENT_USAGE,
- 0, 0,
+ 0, "",
cmd_target_init,
cmd_target_parse,
cmd_lock_client_exec,
diff --git a/usr.bin/tmux/cmd-lock-server.c b/usr.bin/tmux/cmd-lock-server.c
index f3ed3d06427..04e798b9bad 100644
--- a/usr.bin/tmux/cmd-lock-server.c
+++ b/usr.bin/tmux/cmd-lock-server.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-lock-server.c,v 1.5 2009/09/24 07:02:56 nicm Exp $ */
+/* $OpenBSD: cmd-lock-server.c,v 1.6 2009/11/13 19:53:29 nicm Exp $ */
/*
* Copyright (c) 2008 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -33,7 +33,7 @@ int cmd_lock_server_exec(struct cmd *, struct cmd_ctx *);
const struct cmd_entry cmd_lock_server_entry = {
"lock-server", "lock",
"",
- 0, 0,
+ 0, "",
NULL,
NULL,
cmd_lock_server_exec,
diff --git a/usr.bin/tmux/cmd-lock-session.c b/usr.bin/tmux/cmd-lock-session.c
index f22c16023ae..6ee564d5076 100644
--- a/usr.bin/tmux/cmd-lock-session.c
+++ b/usr.bin/tmux/cmd-lock-session.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-lock-session.c,v 1.1 2009/09/24 14:17:09 nicm Exp $ */
+/* $OpenBSD: cmd-lock-session.c,v 1.2 2009/11/13 19:53:29 nicm Exp $ */
/*
* Copyright (c) 2009 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -29,7 +29,7 @@ int cmd_lock_session_exec(struct cmd *, struct cmd_ctx *);
const struct cmd_entry cmd_lock_session_entry = {
"lock-session", "locks",
CMD_TARGET_SESSION_USAGE,
- 0, 0,
+ 0, "",
cmd_target_init,
cmd_target_parse,
cmd_lock_session_exec,
diff --git a/usr.bin/tmux/cmd-move-window.c b/usr.bin/tmux/cmd-move-window.c
index 381118b6e5b..684093490ea 100644
--- a/usr.bin/tmux/cmd-move-window.c
+++ b/usr.bin/tmux/cmd-move-window.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-move-window.c,v 1.8 2009/10/10 10:02:48 nicm Exp $ */
+/* $OpenBSD: cmd-move-window.c,v 1.9 2009/11/13 19:53:29 nicm Exp $ */
/*
* Copyright (c) 2008 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -31,7 +31,7 @@ int cmd_move_window_exec(struct cmd *, struct cmd_ctx *);
const struct cmd_entry cmd_move_window_entry = {
"move-window", "movew",
"[-dk] " CMD_SRCDST_WINDOW_USAGE,
- 0, CMD_CHFLAG('d')|CMD_CHFLAG('k'),
+ 0, "dk",
cmd_srcdst_init,
cmd_srcdst_parse,
cmd_move_window_exec,
@@ -53,8 +53,8 @@ cmd_move_window_exec(struct cmd *self, struct cmd_ctx *ctx)
if ((idx = cmd_find_index(ctx, data->dst, &dst)) == -2)
return (-1);
- kflag = data->chflags & CMD_CHFLAG('k');
- dflag = data->chflags & CMD_CHFLAG('d');
+ kflag = cmd_check_flag(data->chflags, 'k');
+ dflag = cmd_check_flag(data->chflags, 'd');
if (server_link_window(src, wl, dst, idx, kflag, !dflag, &cause) != 0) {
ctx->error(ctx, "can't move window: %s", cause);
xfree(cause);
diff --git a/usr.bin/tmux/cmd-new-session.c b/usr.bin/tmux/cmd-new-session.c
index 7671ed5563a..be47043785e 100644
--- a/usr.bin/tmux/cmd-new-session.c
+++ b/usr.bin/tmux/cmd-new-session.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-new-session.c,v 1.22 2009/11/11 08:00:42 nicm Exp $ */
+/* $OpenBSD: cmd-new-session.c,v 1.23 2009/11/13 19:53:29 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -44,7 +44,7 @@ struct cmd_new_session_data {
const struct cmd_entry cmd_new_session_entry = {
"new-session", "new",
"[-d] [-n window-name] [-s session-name] [-t target-session] [command]",
- CMD_STARTSERVER|CMD_CANTNEST|CMD_SENDENVIRON, 0,
+ CMD_STARTSERVER|CMD_CANTNEST|CMD_SENDENVIRON, "",
cmd_new_session_init,
cmd_new_session_parse,
cmd_new_session_exec,
diff --git a/usr.bin/tmux/cmd-new-window.c b/usr.bin/tmux/cmd-new-window.c
index 20c94f9c68e..10b1a603933 100644
--- a/usr.bin/tmux/cmd-new-window.c
+++ b/usr.bin/tmux/cmd-new-window.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-new-window.c,v 1.8 2009/10/10 10:02:48 nicm Exp $ */
+/* $OpenBSD: cmd-new-window.c,v 1.9 2009/11/13 19:53:29 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -43,7 +43,7 @@ struct cmd_new_window_data {
const struct cmd_entry cmd_new_window_entry = {
"new-window", "neww",
"[-dk] [-n window-name] [-t target-window] [command]",
- 0, 0,
+ 0, "",
cmd_new_window_init,
cmd_new_window_parse,
cmd_new_window_exec,
diff --git a/usr.bin/tmux/cmd-next-layout.c b/usr.bin/tmux/cmd-next-layout.c
index 81a943233da..9d14c94e058 100644
--- a/usr.bin/tmux/cmd-next-layout.c
+++ b/usr.bin/tmux/cmd-next-layout.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-next-layout.c,v 1.4 2009/07/26 12:58:44 nicm Exp $ */
+/* $OpenBSD: cmd-next-layout.c,v 1.5 2009/11/13 19:53:29 nicm Exp $ */
/*
* Copyright (c) 2009 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -29,7 +29,7 @@ int cmd_next_layout_exec(struct cmd *, struct cmd_ctx *);
const struct cmd_entry cmd_next_layout_entry = {
"next-layout", "nextl",
CMD_TARGET_WINDOW_USAGE,
- 0, 0,
+ 0, "",
cmd_target_init,
cmd_target_parse,
cmd_next_layout_exec,
diff --git a/usr.bin/tmux/cmd-next-window.c b/usr.bin/tmux/cmd-next-window.c
index 455efe246f4..974ed9d1aa3 100644
--- a/usr.bin/tmux/cmd-next-window.c
+++ b/usr.bin/tmux/cmd-next-window.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-next-window.c,v 1.5 2009/07/26 12:58:44 nicm Exp $ */
+/* $OpenBSD: cmd-next-window.c,v 1.6 2009/11/13 19:53:29 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -30,7 +30,7 @@ int cmd_next_window_exec(struct cmd *, struct cmd_ctx *);
const struct cmd_entry cmd_next_window_entry = {
"next-window", "next",
"[-a] " CMD_TARGET_SESSION_USAGE,
- 0, CMD_CHFLAG('a'),
+ 0, "a",
cmd_next_window_init,
cmd_target_parse,
cmd_next_window_exec,
@@ -47,7 +47,7 @@ cmd_next_window_init(struct cmd *self, int key)
data = self->data;
if (key == ('n' | KEYC_ESCAPE))
- data->chflags |= CMD_CHFLAG('a');
+ cmd_set_flag(&data->chflags, 'a');
}
int
@@ -61,7 +61,7 @@ cmd_next_window_exec(struct cmd *self, struct cmd_ctx *ctx)
return (-1);
activity = 0;
- if (data->chflags & CMD_CHFLAG('a'))
+ if (cmd_check_flag(data->chflags, 'a'))
activity = 1;
if (session_next(s, activity) == 0)
diff --git a/usr.bin/tmux/cmd-paste-buffer.c b/usr.bin/tmux/cmd-paste-buffer.c
index d52f5307f02..f96658e3a1e 100644
--- a/usr.bin/tmux/cmd-paste-buffer.c
+++ b/usr.bin/tmux/cmd-paste-buffer.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-paste-buffer.c,v 1.7 2009/11/04 22:43:11 nicm Exp $ */
+/* $OpenBSD: cmd-paste-buffer.c,v 1.8 2009/11/13 19:53:29 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -32,7 +32,7 @@ void cmd_paste_buffer_lf2cr(struct window_pane *, const char *, size_t);
const struct cmd_entry cmd_paste_buffer_entry = {
"paste-buffer", "pasteb",
"[-dr] " CMD_BUFFER_WINDOW_USAGE,
- 0, CMD_CHFLAG('d')|CMD_CHFLAG('r'),
+ 0, "dr",
cmd_buffer_init,
cmd_buffer_parse,
cmd_paste_buffer_exec,
@@ -64,14 +64,14 @@ cmd_paste_buffer_exec(struct cmd *self, struct cmd_ctx *ctx)
if (pb != NULL && *pb->data != '\0') {
/* -r means raw data without LF->CR conversion. */
- if (data->chflags & CMD_CHFLAG('r'))
+ if (cmd_check_flag(data->chflags, 'r'))
bufferevent_write(wp->event, pb->data, pb->size);
else
cmd_paste_buffer_lf2cr(wp, pb->data, pb->size);
}
/* Delete the buffer if -d. */
- if (data->chflags & CMD_CHFLAG('d')) {
+ if (cmd_check_flag(data->chflags, 'd')) {
if (data->buffer == -1)
paste_free_top(&s->buffers);
else
diff --git a/usr.bin/tmux/cmd-pipe-pane.c b/usr.bin/tmux/cmd-pipe-pane.c
index c29458ea959..aea7c504cf0 100644
--- a/usr.bin/tmux/cmd-pipe-pane.c
+++ b/usr.bin/tmux/cmd-pipe-pane.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-pipe-pane.c,v 1.6 2009/11/13 18:59:14 nicm Exp $ */
+/* $OpenBSD: cmd-pipe-pane.c,v 1.7 2009/11/13 19:53:29 nicm Exp $ */
/*
* Copyright (c) 2009 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -38,7 +38,7 @@ void cmd_pipe_pane_error_callback(struct bufferevent *, short, void *);
const struct cmd_entry cmd_pipe_pane_entry = {
"pipe-pane", "pipep",
CMD_TARGET_PANE_USAGE "[-o] [command]",
- CMD_ARG01, CMD_CHFLAG('o'),
+ CMD_ARG01, "o",
cmd_target_init,
cmd_target_parse,
cmd_pipe_pane_exec,
@@ -74,7 +74,7 @@ cmd_pipe_pane_exec(struct cmd *self, struct cmd_ctx *ctx)
*
* bind ^p pipep -o 'cat >>~/output'
*/
- if (data->chflags & CMD_CHFLAG('o') && old_fd != -1)
+ if (cmd_check_flag(data->chflags, 'o') && old_fd != -1)
return (0);
/* Open the new pipe. */
diff --git a/usr.bin/tmux/cmd-previous-layout.c b/usr.bin/tmux/cmd-previous-layout.c
index 9d87a2473d7..394ecef239a 100644
--- a/usr.bin/tmux/cmd-previous-layout.c
+++ b/usr.bin/tmux/cmd-previous-layout.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-previous-layout.c,v 1.4 2009/07/26 12:58:44 nicm Exp $ */
+/* $OpenBSD: cmd-previous-layout.c,v 1.5 2009/11/13 19:53:29 nicm Exp $ */
/*
* Copyright (c) 2009 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -29,7 +29,7 @@ int cmd_previous_layout_exec(struct cmd *, struct cmd_ctx *);
const struct cmd_entry cmd_previous_layout_entry = {
"previous-layout", "prevl",
CMD_TARGET_WINDOW_USAGE,
- 0, 0,
+ 0, "",
cmd_target_init,
cmd_target_parse,
cmd_previous_layout_exec,
diff --git a/usr.bin/tmux/cmd-previous-window.c b/usr.bin/tmux/cmd-previous-window.c
index 8b5a3e2806b..86f2744a2cb 100644
--- a/usr.bin/tmux/cmd-previous-window.c
+++ b/usr.bin/tmux/cmd-previous-window.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-previous-window.c,v 1.5 2009/07/26 12:58:44 nicm Exp $ */
+/* $OpenBSD: cmd-previous-window.c,v 1.6 2009/11/13 19:53:29 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -30,7 +30,7 @@ int cmd_previous_window_exec(struct cmd *, struct cmd_ctx *);
const struct cmd_entry cmd_previous_window_entry = {
"previous-window", "prev",
"[-a] " CMD_TARGET_SESSION_USAGE,
- 0, CMD_CHFLAG('a'),
+ 0, "a",
cmd_previous_window_init,
cmd_target_parse,
cmd_previous_window_exec,
@@ -47,7 +47,7 @@ cmd_previous_window_init(struct cmd *self, int key)
data = self->data;
if (key == ('p' | KEYC_ESCAPE))
- data->chflags |= CMD_CHFLAG('a');
+ cmd_set_flag(&data->chflags, 'a');
}
int
@@ -61,7 +61,7 @@ cmd_previous_window_exec(struct cmd *self, struct cmd_ctx *ctx)
return (-1);
activity = 0;
- if (data->chflags & CMD_CHFLAG('a'))
+ if (cmd_check_flag(data->chflags, 'a'))
activity = 1;
if (session_previous(s, activity) == 0)
diff --git a/usr.bin/tmux/cmd-refresh-client.c b/usr.bin/tmux/cmd-refresh-client.c
index a7630b020ec..ec97b4cbe0d 100644
--- a/usr.bin/tmux/cmd-refresh-client.c
+++ b/usr.bin/tmux/cmd-refresh-client.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-refresh-client.c,v 1.3 2009/07/26 12:58:44 nicm Exp $ */
+/* $OpenBSD: cmd-refresh-client.c,v 1.4 2009/11/13 19:53:29 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -29,7 +29,7 @@ int cmd_refresh_client_exec(struct cmd *, struct cmd_ctx *);
const struct cmd_entry cmd_refresh_client_entry = {
"refresh-client", "refresh",
CMD_TARGET_CLIENT_USAGE,
- 0, 0,
+ 0, "",
cmd_target_init,
cmd_target_parse,
cmd_refresh_client_exec,
diff --git a/usr.bin/tmux/cmd-rename-session.c b/usr.bin/tmux/cmd-rename-session.c
index f02dcbcff71..514a78b8038 100644
--- a/usr.bin/tmux/cmd-rename-session.c
+++ b/usr.bin/tmux/cmd-rename-session.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-rename-session.c,v 1.4 2009/07/26 12:58:44 nicm Exp $ */
+/* $OpenBSD: cmd-rename-session.c,v 1.5 2009/11/13 19:53:29 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -31,7 +31,7 @@ int cmd_rename_session_exec(struct cmd *, struct cmd_ctx *);
const struct cmd_entry cmd_rename_session_entry = {
"rename-session", "rename",
CMD_TARGET_SESSION_USAGE " new-name",
- CMD_ARG1, 0,
+ CMD_ARG1, "",
cmd_target_init,
cmd_target_parse,
cmd_rename_session_exec,
diff --git a/usr.bin/tmux/cmd-rename-window.c b/usr.bin/tmux/cmd-rename-window.c
index e0c13dd7557..1c75041ebca 100644
--- a/usr.bin/tmux/cmd-rename-window.c
+++ b/usr.bin/tmux/cmd-rename-window.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-rename-window.c,v 1.4 2009/10/10 10:02:48 nicm Exp $ */
+/* $OpenBSD: cmd-rename-window.c,v 1.5 2009/11/13 19:53:29 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -31,7 +31,7 @@ int cmd_rename_window_exec(struct cmd *, struct cmd_ctx *);
const struct cmd_entry cmd_rename_window_entry = {
"rename-window", "renamew",
CMD_TARGET_WINDOW_USAGE " new-name",
- CMD_ARG1, 0,
+ CMD_ARG1, "",
cmd_target_init,
cmd_target_parse,
cmd_rename_window_exec,
diff --git a/usr.bin/tmux/cmd-resize-pane.c b/usr.bin/tmux/cmd-resize-pane.c
index 3c284a23a4e..429ca0532cd 100644
--- a/usr.bin/tmux/cmd-resize-pane.c
+++ b/usr.bin/tmux/cmd-resize-pane.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-resize-pane.c,v 1.6 2009/07/30 13:45:56 nicm Exp $ */
+/* $OpenBSD: cmd-resize-pane.c,v 1.7 2009/11/13 19:53:29 nicm Exp $ */
/*
* Copyright (c) 2009 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -31,9 +31,8 @@ int cmd_resize_pane_exec(struct cmd *, struct cmd_ctx *);
const struct cmd_entry cmd_resize_pane_entry = {
"resize-pane", "resizep",
- "[-DU] " CMD_TARGET_PANE_USAGE " [adjustment]",
- CMD_ARG01,
- CMD_CHFLAG('D')|CMD_CHFLAG('L')|CMD_CHFLAG('R')|CMD_CHFLAG('U'),
+ "[-DLRU] " CMD_TARGET_PANE_USAGE " [adjustment]",
+ CMD_ARG01, "DLRU",
cmd_resize_pane_init,
cmd_target_parse,
cmd_resize_pane_exec,
@@ -50,28 +49,28 @@ cmd_resize_pane_init(struct cmd *self, int key)
data = self->data;
if (key == (KEYC_UP | KEYC_CTRL))
- data->chflags |= CMD_CHFLAG('U');
+ cmd_set_flag(&data->chflags, 'U');
if (key == (KEYC_DOWN | KEYC_CTRL))
- data->chflags |= CMD_CHFLAG('D');
+ cmd_set_flag(&data->chflags, 'D');
if (key == (KEYC_LEFT | KEYC_CTRL))
- data->chflags |= CMD_CHFLAG('L');
+ cmd_set_flag(&data->chflags, 'L');
if (key == (KEYC_RIGHT | KEYC_CTRL))
- data->chflags |= CMD_CHFLAG('R');
+ cmd_set_flag(&data->chflags, 'R');
if (key == (KEYC_UP | KEYC_ESCAPE)) {
- data->chflags |= CMD_CHFLAG('U');
+ cmd_set_flag(&data->chflags, 'U');
data->arg = xstrdup("5");
}
if (key == (KEYC_DOWN | KEYC_ESCAPE)) {
- data->chflags |= CMD_CHFLAG('D');
+ cmd_set_flag(&data->chflags, 'D');
data->arg = xstrdup("5");
}
if (key == (KEYC_LEFT | KEYC_ESCAPE)) {
- data->chflags |= CMD_CHFLAG('L');
+ cmd_set_flag(&data->chflags, 'L');
data->arg = xstrdup("5");
}
if (key == (KEYC_RIGHT | KEYC_ESCAPE)) {
- data->chflags |= CMD_CHFLAG('R');
+ cmd_set_flag(&data->chflags, 'R');
data->arg = xstrdup("5");
}
}
@@ -98,15 +97,14 @@ cmd_resize_pane_exec(struct cmd *self, struct cmd_ctx *ctx)
}
}
- if (data->chflags & (CMD_CHFLAG('L')|CMD_CHFLAG('R'))) {
- if (data->chflags & CMD_CHFLAG('L'))
- adjust = -adjust;
+ if (cmd_check_flag(data->chflags, 'L'))
+ layout_resize_pane(wp, LAYOUT_LEFTRIGHT, -adjust);
+ else if (cmd_check_flag(data->chflags, 'R'))
layout_resize_pane(wp, LAYOUT_LEFTRIGHT, adjust);
- } else {
- if (data->chflags & CMD_CHFLAG('U'))
- adjust = -adjust;
+ else if (cmd_check_flag(data->chflags, 'U'))
+ layout_resize_pane(wp, LAYOUT_TOPBOTTOM, -adjust);
+ else if (cmd_check_flag(data->chflags, 'D'))
layout_resize_pane(wp, LAYOUT_TOPBOTTOM, adjust);
- }
server_redraw_window(wl->window);
return (0);
diff --git a/usr.bin/tmux/cmd-respawn-window.c b/usr.bin/tmux/cmd-respawn-window.c
index 38f8f6f4b09..8b475613313 100644
--- a/usr.bin/tmux/cmd-respawn-window.c
+++ b/usr.bin/tmux/cmd-respawn-window.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-respawn-window.c,v 1.10 2009/11/13 17:33:07 nicm Exp $ */
+/* $OpenBSD: cmd-respawn-window.c,v 1.11 2009/11/13 19:53:29 nicm Exp $ */
/*
* Copyright (c) 2008 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -31,7 +31,7 @@ int cmd_respawn_window_exec(struct cmd *, struct cmd_ctx *);
const struct cmd_entry cmd_respawn_window_entry = {
"respawn-window", "respawnw",
"[-k] " CMD_TARGET_WINDOW_USAGE " [command]",
- CMD_ARG01, CMD_CHFLAG('k'),
+ CMD_ARG01, "k",
cmd_target_init,
cmd_target_parse,
cmd_respawn_window_exec,
@@ -54,7 +54,7 @@ cmd_respawn_window_exec(struct cmd *self, struct cmd_ctx *ctx)
return (-1);
w = wl->window;
- if (!(data->chflags & CMD_CHFLAG('k'))) {
+ if (!cmd_check_flag(data->chflags, 'k')) {
TAILQ_FOREACH(wp, &w->panes, entry) {
if (wp->fd == -1)
continue;
diff --git a/usr.bin/tmux/cmd-rotate-window.c b/usr.bin/tmux/cmd-rotate-window.c
index 4fdc0a221b1..13d178ef95a 100644
--- a/usr.bin/tmux/cmd-rotate-window.c
+++ b/usr.bin/tmux/cmd-rotate-window.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-rotate-window.c,v 1.9 2009/07/26 12:58:44 nicm Exp $ */
+/* $OpenBSD: cmd-rotate-window.c,v 1.10 2009/11/13 19:53:29 nicm Exp $ */
/*
* Copyright (c) 2009 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -30,7 +30,7 @@ int cmd_rotate_window_exec(struct cmd *, struct cmd_ctx *);
const struct cmd_entry cmd_rotate_window_entry = {
"rotate-window", "rotatew",
"[-DU] " CMD_TARGET_WINDOW_USAGE,
- 0, CMD_CHFLAG('D')|CMD_CHFLAG('U'),
+ 0, "DU",
cmd_rotate_window_init,
cmd_target_parse,
cmd_rotate_window_exec,
@@ -47,7 +47,7 @@ cmd_rotate_window_init(struct cmd *self, int key)
data = self->data;
if (key == ('o' | KEYC_ESCAPE))
- data->chflags |= CMD_CHFLAG('D');
+ cmd_set_flag(&data->chflags, 'D');
}
int
@@ -64,7 +64,7 @@ cmd_rotate_window_exec(struct cmd *self, struct cmd_ctx *ctx)
return (-1);
w = wl->window;
- if (data->chflags & CMD_CHFLAG('D')) {
+ if (cmd_check_flag(data->chflags, 'D')) {
wp = TAILQ_LAST(&w->panes, window_panes);
TAILQ_REMOVE(&w->panes, wp, entry);
TAILQ_INSERT_HEAD(&w->panes, wp, entry);
diff --git a/usr.bin/tmux/cmd-run-shell.c b/usr.bin/tmux/cmd-run-shell.c
index 274fbde2149..1692bb4526d 100644
--- a/usr.bin/tmux/cmd-run-shell.c
+++ b/usr.bin/tmux/cmd-run-shell.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-run-shell.c,v 1.5 2009/11/04 21:04:43 nicm Exp $ */
+/* $OpenBSD: cmd-run-shell.c,v 1.6 2009/11/13 19:53:29 nicm Exp $ */
/*
* Copyright (c) 2009 Tiago Cunha <me@tiagocunha.org>
@@ -36,7 +36,7 @@ void cmd_run_shell_free(void *);
const struct cmd_entry cmd_run_shell_entry = {
"run-shell", "run",
"command",
- CMD_ARG1, 0,
+ CMD_ARG1, "",
cmd_target_init,
cmd_target_parse,
cmd_run_shell_exec,
diff --git a/usr.bin/tmux/cmd-save-buffer.c b/usr.bin/tmux/cmd-save-buffer.c
index ef71693ac33..3d6fbbedc5d 100644
--- a/usr.bin/tmux/cmd-save-buffer.c
+++ b/usr.bin/tmux/cmd-save-buffer.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-save-buffer.c,v 1.5 2009/10/26 21:13:06 nicm Exp $ */
+/* $OpenBSD: cmd-save-buffer.c,v 1.6 2009/11/13 19:53:29 nicm Exp $ */
/*
* Copyright (c) 2009 Tiago Cunha <me@tiagocunha.org>
@@ -33,7 +33,7 @@ int cmd_save_buffer_exec(struct cmd *, struct cmd_ctx *);
const struct cmd_entry cmd_save_buffer_entry = {
"save-buffer", "saveb",
"[-a] " CMD_BUFFER_SESSION_USAGE " path",
- CMD_ARG1, CMD_CHFLAG('a'),
+ CMD_ARG1, "a",
cmd_buffer_init,
cmd_buffer_parse,
cmd_save_buffer_exec,
@@ -66,7 +66,7 @@ cmd_save_buffer_exec(struct cmd *self, struct cmd_ctx *ctx)
}
mask = umask(S_IRWXG | S_IRWXO);
- if (data->chflags & CMD_CHFLAG('a'))
+ if (cmd_check_flag(data->chflags, 'a'))
f = fopen(data->arg, "ab");
else
f = fopen(data->arg, "wb");
diff --git a/usr.bin/tmux/cmd-select-layout.c b/usr.bin/tmux/cmd-select-layout.c
index 6bd4c505b9f..8dce7687221 100644
--- a/usr.bin/tmux/cmd-select-layout.c
+++ b/usr.bin/tmux/cmd-select-layout.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-select-layout.c,v 1.6 2009/07/28 06:48:44 nicm Exp $ */
+/* $OpenBSD: cmd-select-layout.c,v 1.7 2009/11/13 19:53:29 nicm Exp $ */
/*
* Copyright (c) 2009 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -30,7 +30,7 @@ int cmd_select_layout_exec(struct cmd *, struct cmd_ctx *);
const struct cmd_entry cmd_select_layout_entry = {
"select-layout", "selectl",
CMD_TARGET_WINDOW_USAGE " [layout-name]",
- CMD_ARG01, 0,
+ CMD_ARG01, "",
cmd_select_layout_init,
cmd_target_parse,
cmd_select_layout_exec,
diff --git a/usr.bin/tmux/cmd-select-pane.c b/usr.bin/tmux/cmd-select-pane.c
index b72c173dc7d..800e910b32f 100644
--- a/usr.bin/tmux/cmd-select-pane.c
+++ b/usr.bin/tmux/cmd-select-pane.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-select-pane.c,v 1.7 2009/07/30 13:45:56 nicm Exp $ */
+/* $OpenBSD: cmd-select-pane.c,v 1.8 2009/11/13 19:53:29 nicm Exp $ */
/*
* Copyright (c) 2009 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -29,7 +29,7 @@ int cmd_select_pane_exec(struct cmd *, struct cmd_ctx *);
const struct cmd_entry cmd_select_pane_entry = {
"select-pane", "selectp",
CMD_TARGET_PANE_USAGE,
- 0, 0,
+ 0, "",
cmd_target_init,
cmd_target_parse,
cmd_select_pane_exec,
diff --git a/usr.bin/tmux/cmd-select-prompt.c b/usr.bin/tmux/cmd-select-prompt.c
index a1166c5aeee..8e7ca113d91 100644
--- a/usr.bin/tmux/cmd-select-prompt.c
+++ b/usr.bin/tmux/cmd-select-prompt.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-select-prompt.c,v 1.6 2009/08/13 23:44:18 nicm Exp $ */
+/* $OpenBSD: cmd-select-prompt.c,v 1.7 2009/11/13 19:53:29 nicm Exp $ */
/*
* Copyright (c) 2008 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -33,7 +33,7 @@ int cmd_select_prompt_callback(void *, const char *);
const struct cmd_entry cmd_select_prompt_entry = {
"select-prompt", NULL,
CMD_TARGET_CLIENT_USAGE,
- 0, 0,
+ 0, "",
cmd_target_init,
cmd_target_parse,
cmd_select_prompt_exec,
diff --git a/usr.bin/tmux/cmd-select-window.c b/usr.bin/tmux/cmd-select-window.c
index b3794c1f707..0f6029936de 100644
--- a/usr.bin/tmux/cmd-select-window.c
+++ b/usr.bin/tmux/cmd-select-window.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-select-window.c,v 1.3 2009/07/26 12:58:44 nicm Exp $ */
+/* $OpenBSD: cmd-select-window.c,v 1.4 2009/11/13 19:53:29 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -32,7 +32,7 @@ int cmd_select_window_exec(struct cmd *, struct cmd_ctx *);
const struct cmd_entry cmd_select_window_entry = {
"select-window", "selectw",
CMD_TARGET_WINDOW_USAGE,
- 0, 0,
+ 0, "",
cmd_select_window_init,
cmd_target_parse,
cmd_select_window_exec,
diff --git a/usr.bin/tmux/cmd-send-keys.c b/usr.bin/tmux/cmd-send-keys.c
index ae07bfe0be5..f2d439c9209 100644
--- a/usr.bin/tmux/cmd-send-keys.c
+++ b/usr.bin/tmux/cmd-send-keys.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-send-keys.c,v 1.5 2009/09/21 15:25:36 nicm Exp $ */
+/* $OpenBSD: cmd-send-keys.c,v 1.6 2009/11/13 19:53:29 nicm Exp $ */
/*
* Copyright (c) 2008 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -40,7 +40,7 @@ struct cmd_send_keys_data {
const struct cmd_entry cmd_send_keys_entry = {
"send-keys", "send",
"[-t target-pane] key ...",
- 0, 0,
+ 0, "",
NULL,
cmd_send_keys_parse,
cmd_send_keys_exec,
diff --git a/usr.bin/tmux/cmd-send-prefix.c b/usr.bin/tmux/cmd-send-prefix.c
index fdf9a93405e..8f784f4aec3 100644
--- a/usr.bin/tmux/cmd-send-prefix.c
+++ b/usr.bin/tmux/cmd-send-prefix.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-send-prefix.c,v 1.5 2009/09/22 12:38:10 nicm Exp $ */
+/* $OpenBSD: cmd-send-prefix.c,v 1.6 2009/11/13 19:53:29 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -29,7 +29,7 @@ int cmd_send_prefix_exec(struct cmd *, struct cmd_ctx *);
const struct cmd_entry cmd_send_prefix_entry = {
"send-prefix", NULL,
CMD_TARGET_PANE_USAGE,
- 0, 0,
+ 0, "",
cmd_target_init,
cmd_target_parse,
cmd_send_prefix_exec,
diff --git a/usr.bin/tmux/cmd-server-info.c b/usr.bin/tmux/cmd-server-info.c
index f17644e47c3..bccbc39b953 100644
--- a/usr.bin/tmux/cmd-server-info.c
+++ b/usr.bin/tmux/cmd-server-info.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-server-info.c,v 1.14 2009/11/03 20:29:47 nicm Exp $ */
+/* $OpenBSD: cmd-server-info.c,v 1.15 2009/11/13 19:53:29 nicm Exp $ */
/*
* Copyright (c) 2008 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -36,7 +36,7 @@ int cmd_server_info_exec(struct cmd *, struct cmd_ctx *);
const struct cmd_entry cmd_server_info_entry = {
"server-info", "info",
"",
- 0, 0,
+ 0, "",
NULL,
NULL,
cmd_server_info_exec,
diff --git a/usr.bin/tmux/cmd-set-buffer.c b/usr.bin/tmux/cmd-set-buffer.c
index 556781a940c..aeef5d2f245 100644
--- a/usr.bin/tmux/cmd-set-buffer.c
+++ b/usr.bin/tmux/cmd-set-buffer.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-set-buffer.c,v 1.4 2009/09/07 18:50:45 nicm Exp $ */
+/* $OpenBSD: cmd-set-buffer.c,v 1.5 2009/11/13 19:53:29 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -31,7 +31,7 @@ int cmd_set_buffer_exec(struct cmd *, struct cmd_ctx *);
const struct cmd_entry cmd_set_buffer_entry = {
"set-buffer", "setb",
CMD_BUFFER_SESSION_USAGE " data",
- CMD_ARG1, 0,
+ CMD_ARG1, "",
cmd_buffer_init,
cmd_buffer_parse,
cmd_set_buffer_exec,
diff --git a/usr.bin/tmux/cmd-set-environment.c b/usr.bin/tmux/cmd-set-environment.c
index f921dff382e..9f85d4f1b28 100644
--- a/usr.bin/tmux/cmd-set-environment.c
+++ b/usr.bin/tmux/cmd-set-environment.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-set-environment.c,v 1.2 2009/08/11 12:53:37 nicm Exp $ */
+/* $OpenBSD: cmd-set-environment.c,v 1.3 2009/11/13 19:53:29 nicm Exp $ */
/*
* Copyright (c) 2009 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -32,7 +32,7 @@ int cmd_set_environment_exec(struct cmd *, struct cmd_ctx *);
const struct cmd_entry cmd_set_environment_entry = {
"set-environment", "setenv",
"[-gru] " CMD_TARGET_SESSION_USAGE " name [value]",
- CMD_ARG12, CMD_CHFLAG('g')|CMD_CHFLAG('r')|CMD_CHFLAG('u'),
+ CMD_ARG12, "gru",
NULL,
cmd_target_parse,
cmd_set_environment_exec,
@@ -56,7 +56,7 @@ cmd_set_environment_exec(struct cmd *self, struct cmd_ctx *ctx)
return (-1);
}
- if (data->chflags & CMD_CHFLAG('g'))
+ if (cmd_check_flag(data->chflags, 'g'))
env = &global_environ;
else {
if ((s = cmd_find_session(ctx, data->target)) == NULL)
@@ -64,13 +64,13 @@ cmd_set_environment_exec(struct cmd *self, struct cmd_ctx *ctx)
env = &s->environ;
}
- if (data->chflags & CMD_CHFLAG('u')) {
+ if (cmd_check_flag(data->chflags, 'u')) {
if (data->arg2 != NULL) {
ctx->error(ctx, "can't specify a value with -u");
return (-1);
}
environ_unset(env, data->arg);
- } else if (data->chflags & CMD_CHFLAG('r')) {
+ } else if (cmd_check_flag(data->chflags, 'r')) {
if (data->arg2 != NULL) {
ctx->error(ctx, "can't specify a value with -r");
return (-1);
diff --git a/usr.bin/tmux/cmd-set-option.c b/usr.bin/tmux/cmd-set-option.c
index 7cf2ca7ef2f..e8696367a8b 100644
--- a/usr.bin/tmux/cmd-set-option.c
+++ b/usr.bin/tmux/cmd-set-option.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-set-option.c,v 1.24 2009/11/01 23:20:37 nicm Exp $ */
+/* $OpenBSD: cmd-set-option.c,v 1.25 2009/11/13 19:53:29 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -32,7 +32,7 @@ int cmd_set_option_exec(struct cmd *, struct cmd_ctx *);
const struct cmd_entry cmd_set_option_entry = {
"set-option", "set",
"[-agu] " CMD_TARGET_SESSION_USAGE " option [value]",
- CMD_ARG12, CMD_CHFLAG('a')|CMD_CHFLAG('g')|CMD_CHFLAG('u'),
+ CMD_ARG12, "agu",
NULL,
cmd_target_parse,
cmd_set_option_exec,
@@ -113,7 +113,7 @@ cmd_set_option_exec(struct cmd *self, struct cmd_ctx *ctx)
u_int i;
int try_again;
- if (data->chflags & CMD_CHFLAG('g'))
+ if (cmd_check_flag(data->chflags, 'g'))
oo = &global_s_options;
else {
if ((s = cmd_find_session(ctx, data->target)) == NULL)
@@ -145,8 +145,8 @@ cmd_set_option_exec(struct cmd *self, struct cmd_ctx *ctx)
return (-1);
}
- if (data->chflags & CMD_CHFLAG('u')) {
- if (data->chflags & CMD_CHFLAG('g')) {
+ if (cmd_check_flag(data->chflags, 'u')) {
+ if (cmd_check_flag(data->chflags, 'g')) {
ctx->error(ctx,
"can't unset global option: %s", entry->name);
return (-1);
@@ -163,7 +163,7 @@ cmd_set_option_exec(struct cmd *self, struct cmd_ctx *ctx)
switch (entry->type) {
case SET_OPTION_STRING:
set_option_string(ctx, oo, entry,
- data->arg2, data->chflags & CMD_CHFLAG('a'));
+ data->arg2, cmd_check_flag(data->chflags, 'a'));
break;
case SET_OPTION_NUMBER:
set_option_number(ctx, oo, entry, data->arg2);
diff --git a/usr.bin/tmux/cmd-set-window-option.c b/usr.bin/tmux/cmd-set-window-option.c
index 339c418d72b..6c6f5bb9fe2 100644
--- a/usr.bin/tmux/cmd-set-window-option.c
+++ b/usr.bin/tmux/cmd-set-window-option.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-set-window-option.c,v 1.13 2009/10/09 07:27:00 nicm Exp $ */
+/* $OpenBSD: cmd-set-window-option.c,v 1.14 2009/11/13 19:53:29 nicm Exp $ */
/*
* Copyright (c) 2008 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -32,7 +32,7 @@ int cmd_set_window_option_exec(struct cmd *, struct cmd_ctx *);
const struct cmd_entry cmd_set_window_option_entry = {
"set-window-option", "setw",
"[-agu] " CMD_TARGET_WINDOW_USAGE " option [value]",
- CMD_ARG12, CMD_CHFLAG('a')|CMD_CHFLAG('g')|CMD_CHFLAG('u'),
+ CMD_ARG12, "agu",
NULL,
cmd_target_parse,
cmd_set_window_option_exec,
@@ -86,7 +86,7 @@ cmd_set_window_option_exec(struct cmd *self, struct cmd_ctx *ctx)
const struct set_option_entry *entry, *opt;
u_int i;
- if (data->chflags & CMD_CHFLAG('g'))
+ if (cmd_check_flag(data->chflags, 'g'))
oo = &global_w_options;
else {
if ((wl = cmd_find_window(ctx, data->target, NULL)) == NULL)
@@ -118,8 +118,8 @@ cmd_set_window_option_exec(struct cmd *self, struct cmd_ctx *ctx)
return (-1);
}
- if (data->chflags & CMD_CHFLAG('u')) {
- if (data->chflags & CMD_CHFLAG('g')) {
+ if (cmd_check_flag(data->chflags, 'u')) {
+ if (cmd_check_flag(data->chflags, 'g')) {
ctx->error(ctx,
"can't unset global option: %s", entry->name);
return (-1);
@@ -136,7 +136,7 @@ cmd_set_window_option_exec(struct cmd *self, struct cmd_ctx *ctx)
switch (entry->type) {
case SET_OPTION_STRING:
set_option_string(ctx, oo, entry,
- data->arg2, data->chflags & CMD_CHFLAG('a'));
+ data->arg2, cmd_check_flag(data->chflags, 'a'));
break;
case SET_OPTION_NUMBER:
set_option_number(ctx, oo, entry, data->arg2);
diff --git a/usr.bin/tmux/cmd-show-buffer.c b/usr.bin/tmux/cmd-show-buffer.c
index 31dfc830727..663f1bb8694 100644
--- a/usr.bin/tmux/cmd-show-buffer.c
+++ b/usr.bin/tmux/cmd-show-buffer.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-show-buffer.c,v 1.6 2009/09/07 18:50:45 nicm Exp $ */
+/* $OpenBSD: cmd-show-buffer.c,v 1.7 2009/11/13 19:53:29 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -31,7 +31,7 @@ int cmd_show_buffer_exec(struct cmd *, struct cmd_ctx *);
const struct cmd_entry cmd_show_buffer_entry = {
"show-buffer", "showb",
CMD_BUFFER_SESSION_USAGE,
- 0, 0,
+ 0, "",
cmd_buffer_init,
cmd_buffer_parse,
cmd_show_buffer_exec,
diff --git a/usr.bin/tmux/cmd-show-environment.c b/usr.bin/tmux/cmd-show-environment.c
index 8efd0144a36..b792f6ac0b5 100644
--- a/usr.bin/tmux/cmd-show-environment.c
+++ b/usr.bin/tmux/cmd-show-environment.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-show-environment.c,v 1.1 2009/08/08 21:52:43 nicm Exp $ */
+/* $OpenBSD: cmd-show-environment.c,v 1.2 2009/11/13 19:53:29 nicm Exp $ */
/*
* Copyright (c) 2009 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -32,7 +32,7 @@ int cmd_show_environment_exec(struct cmd *, struct cmd_ctx *);
const struct cmd_entry cmd_show_environment_entry = {
"show-environment", "showenv",
"[-g] " CMD_TARGET_SESSION_USAGE,
- 0, CMD_CHFLAG('g'),
+ 0, "g",
cmd_target_init,
cmd_target_parse,
cmd_show_environment_exec,
@@ -48,7 +48,7 @@ cmd_show_environment_exec(struct cmd *self, struct cmd_ctx *ctx)
struct environ *env;
struct environ_entry *envent;
- if (data->chflags & CMD_CHFLAG('g'))
+ if (cmd_check_flag(data->chflags, 'g'))
env = &global_environ;
else {
if ((s = cmd_find_session(ctx, data->target)) == NULL)
diff --git a/usr.bin/tmux/cmd-show-options.c b/usr.bin/tmux/cmd-show-options.c
index ae92f60a4f7..f183a9ae51f 100644
--- a/usr.bin/tmux/cmd-show-options.c
+++ b/usr.bin/tmux/cmd-show-options.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-show-options.c,v 1.6 2009/09/21 14:46:47 nicm Exp $ */
+/* $OpenBSD: cmd-show-options.c,v 1.7 2009/11/13 19:53:29 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -32,7 +32,7 @@ int cmd_show_options_exec(struct cmd *, struct cmd_ctx *);
const struct cmd_entry cmd_show_options_entry = {
"show-options", "show",
"[-g] " CMD_TARGET_SESSION_USAGE,
- 0, CMD_CHFLAG('g'),
+ 0, "g",
cmd_target_init,
cmd_target_parse,
cmd_show_options_exec,
@@ -50,7 +50,7 @@ cmd_show_options_exec(struct cmd *self, struct cmd_ctx *ctx)
const struct set_option_entry *entry;
const char *optval;
- if (data->chflags & CMD_CHFLAG('g'))
+ if (cmd_check_flag(data->chflags, 'g'))
oo = &global_s_options;
else {
if ((s = cmd_find_session(ctx, data->target)) == NULL)
diff --git a/usr.bin/tmux/cmd-show-window-options.c b/usr.bin/tmux/cmd-show-window-options.c
index 66ae1573a83..75eff1a544d 100644
--- a/usr.bin/tmux/cmd-show-window-options.c
+++ b/usr.bin/tmux/cmd-show-window-options.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-show-window-options.c,v 1.6 2009/09/21 14:46:47 nicm Exp $ */
+/* $OpenBSD: cmd-show-window-options.c,v 1.7 2009/11/13 19:53:29 nicm Exp $ */
/*
* Copyright (c) 2008 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -32,7 +32,7 @@ int cmd_show_window_options_exec(struct cmd *, struct cmd_ctx *);
const struct cmd_entry cmd_show_window_options_entry = {
"show-window-options", "showw",
"[-g] " CMD_TARGET_WINDOW_USAGE,
- 0, CMD_CHFLAG('g'),
+ 0, "g",
cmd_target_init,
cmd_target_parse,
cmd_show_window_options_exec,
@@ -50,7 +50,7 @@ cmd_show_window_options_exec(struct cmd *self, struct cmd_ctx *ctx)
const struct set_option_entry *entry;
const char *optval;
- if (data->chflags & CMD_CHFLAG('g'))
+ if (cmd_check_flag(data->chflags, 'g'))
oo = &global_w_options;
else {
if ((wl = cmd_find_window(ctx, data->target, NULL)) == NULL)
diff --git a/usr.bin/tmux/cmd-source-file.c b/usr.bin/tmux/cmd-source-file.c
index a893010ca1a..801f25ca78e 100644
--- a/usr.bin/tmux/cmd-source-file.c
+++ b/usr.bin/tmux/cmd-source-file.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-source-file.c,v 1.5 2009/09/21 15:32:06 nicm Exp $ */
+/* $OpenBSD: cmd-source-file.c,v 1.6 2009/11/13 19:53:29 nicm Exp $ */
/*
* Copyright (c) 2008 Tiago Cunha <me@tiagocunha.org>
@@ -37,7 +37,7 @@ struct cmd_source_file_data {
const struct cmd_entry cmd_source_file_entry = {
"source-file", "source",
"path",
- 0, 0,
+ 0, "",
cmd_source_file_init,
cmd_source_file_parse,
cmd_source_file_exec,
diff --git a/usr.bin/tmux/cmd-split-window.c b/usr.bin/tmux/cmd-split-window.c
index e452195bfee..50b7b56fac5 100644
--- a/usr.bin/tmux/cmd-split-window.c
+++ b/usr.bin/tmux/cmd-split-window.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-split-window.c,v 1.13 2009/09/21 15:32:06 nicm Exp $ */
+/* $OpenBSD: cmd-split-window.c,v 1.14 2009/11/13 19:53:29 nicm Exp $ */
/*
* Copyright (c) 2009 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -46,7 +46,7 @@ struct cmd_split_window_data {
const struct cmd_entry cmd_split_window_entry = {
"split-window", "splitw",
"[-dhv] [-p percentage|-l size] [-t target-window] [command]",
- 0, 0,
+ 0, "",
cmd_split_window_init,
cmd_split_window_parse,
cmd_split_window_exec,
diff --git a/usr.bin/tmux/cmd-start-server.c b/usr.bin/tmux/cmd-start-server.c
index e8ecc029272..8d2b3c6abbb 100644
--- a/usr.bin/tmux/cmd-start-server.c
+++ b/usr.bin/tmux/cmd-start-server.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-start-server.c,v 1.3 2009/07/26 12:58:44 nicm Exp $ */
+/* $OpenBSD: cmd-start-server.c,v 1.4 2009/11/13 19:53:29 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -29,7 +29,7 @@ int cmd_start_server_exec(struct cmd *, struct cmd_ctx *);
const struct cmd_entry cmd_start_server_entry = {
"start-server", "start",
"",
- CMD_STARTSERVER, 0,
+ CMD_STARTSERVER, "",
NULL,
NULL,
cmd_start_server_exec,
diff --git a/usr.bin/tmux/cmd-suspend-client.c b/usr.bin/tmux/cmd-suspend-client.c
index 6d6fcd96237..95ce78b0cf3 100644
--- a/usr.bin/tmux/cmd-suspend-client.c
+++ b/usr.bin/tmux/cmd-suspend-client.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-suspend-client.c,v 1.3 2009/07/26 12:58:44 nicm Exp $ */
+/* $OpenBSD: cmd-suspend-client.c,v 1.4 2009/11/13 19:53:29 nicm Exp $ */
/*
* Copyright (c) 2009 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -37,7 +37,7 @@ struct cmd_suspend_client_data {
const struct cmd_entry cmd_suspend_client_entry = {
"suspend-client", "suspendc",
"[-c target-client]",
- 0, 0,
+ 0, "",
cmd_target_init,
cmd_target_parse,
cmd_suspend_client_exec,
diff --git a/usr.bin/tmux/cmd-swap-pane.c b/usr.bin/tmux/cmd-swap-pane.c
index bd1cdfc7d82..bb61796dc6c 100644
--- a/usr.bin/tmux/cmd-swap-pane.c
+++ b/usr.bin/tmux/cmd-swap-pane.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-swap-pane.c,v 1.9 2009/07/30 17:29:12 nicm Exp $ */
+/* $OpenBSD: cmd-swap-pane.c,v 1.10 2009/11/13 19:53:29 nicm Exp $ */
/*
* Copyright (c) 2009 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -32,7 +32,7 @@ int cmd_swap_pane_exec(struct cmd *, struct cmd_ctx *);
const struct cmd_entry cmd_swap_pane_entry = {
"swap-pane", "swapp",
"[-dDU] " CMD_SRCDST_PANE_USAGE,
- 0, CMD_CHFLAG('d')|CMD_CHFLAG('D')|CMD_CHFLAG('U'),
+ 0, "dDU",
cmd_swap_pane_init,
cmd_srcdst_parse,
cmd_swap_pane_exec,
@@ -49,11 +49,12 @@ cmd_swap_pane_init(struct cmd *self, int key)
data = self->data;
if (key == '{')
- data->chflags |= CMD_CHFLAG('U');
+ cmd_set_flag(&data->chflags, 'U');
else if (key == '}')
- data->chflags |= CMD_CHFLAG('D');
+ cmd_set_flag(&data->chflags, 'D');
}
+
int
cmd_swap_pane_exec(struct cmd *self, struct cmd_ctx *ctx)
{
@@ -73,11 +74,11 @@ cmd_swap_pane_exec(struct cmd *self, struct cmd_ctx *ctx)
if (data->src == NULL) {
src_w = dst_w;
- if (data->chflags & CMD_CHFLAG('D')) {
+ if (cmd_check_flag(data->chflags, 'D')) {
src_wp = TAILQ_NEXT(dst_wp, entry);
if (src_wp == NULL)
src_wp = TAILQ_FIRST(&dst_w->panes);
- } else if (data->chflags & CMD_CHFLAG('U')) {
+ } else if (cmd_check_flag(data->chflags, 'U')) {
src_wp = TAILQ_PREV(dst_wp, window_panes, entry);
if (src_wp == NULL)
src_wp = TAILQ_LAST(&dst_w->panes, window_panes);
@@ -120,7 +121,7 @@ cmd_swap_pane_exec(struct cmd *self, struct cmd_ctx *ctx)
dst_wp->xoff = xoff; dst_wp->yoff = yoff;
window_pane_resize(dst_wp, sx, sy);
- if (!(data->chflags & CMD_CHFLAG('d'))) {
+ if (!cmd_check_flag(data->chflags, 'd')) {
if (src_w != dst_w) {
window_set_active_pane(src_w, dst_wp);
window_set_active_pane(dst_w, src_wp);
diff --git a/usr.bin/tmux/cmd-swap-window.c b/usr.bin/tmux/cmd-swap-window.c
index 0c06d4d5c60..f6c22626416 100644
--- a/usr.bin/tmux/cmd-swap-window.c
+++ b/usr.bin/tmux/cmd-swap-window.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-swap-window.c,v 1.4 2009/10/10 10:02:48 nicm Exp $ */
+/* $OpenBSD: cmd-swap-window.c,v 1.5 2009/11/13 19:53:29 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -31,7 +31,7 @@ int cmd_swap_window_exec(struct cmd *, struct cmd_ctx *);
const struct cmd_entry cmd_swap_window_entry = {
"swap-window", "swapw",
"[-d] " CMD_SRCDST_WINDOW_USAGE,
- 0, CMD_CHFLAG('d'),
+ 0, "d",
cmd_srcdst_init,
cmd_srcdst_parse,
cmd_swap_window_exec,
@@ -68,7 +68,7 @@ cmd_swap_window_exec(struct cmd *self, struct cmd_ctx *ctx)
wl_dst->window = wl_src->window;
wl_src->window = w;
- if (!(data->chflags & CMD_CHFLAG('d'))) {
+ if (!cmd_check_flag(data->chflags, 'd')) {
session_select(dst, wl_dst->idx);
if (src != dst)
session_select(src, wl_src->idx);
diff --git a/usr.bin/tmux/cmd-switch-client.c b/usr.bin/tmux/cmd-switch-client.c
index a2573a9905d..e37e4581024 100644
--- a/usr.bin/tmux/cmd-switch-client.c
+++ b/usr.bin/tmux/cmd-switch-client.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-switch-client.c,v 1.3 2009/07/26 12:58:44 nicm Exp $ */
+/* $OpenBSD: cmd-switch-client.c,v 1.4 2009/11/13 19:53:29 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -40,7 +40,7 @@ struct cmd_switch_client_data {
const struct cmd_entry cmd_switch_client_entry = {
"switch-client", "switchc",
"[-c target-client] [-t target-session]",
- 0, 0,
+ 0, "",
NULL,
cmd_switch_client_parse,
cmd_switch_client_exec,
diff --git a/usr.bin/tmux/cmd-unbind-key.c b/usr.bin/tmux/cmd-unbind-key.c
index 16eb94982a4..b278bb0c2f7 100644
--- a/usr.bin/tmux/cmd-unbind-key.c
+++ b/usr.bin/tmux/cmd-unbind-key.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-unbind-key.c,v 1.5 2009/07/28 17:05:10 nicm Exp $ */
+/* $OpenBSD: cmd-unbind-key.c,v 1.6 2009/11/13 19:53:29 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -40,7 +40,7 @@ struct cmd_unbind_key_data {
const struct cmd_entry cmd_unbind_key_entry = {
"unbind-key", "unbind",
"[-cn] [-t key-table] key",
- 0, 0,
+ 0, "",
NULL,
cmd_unbind_key_parse,
cmd_unbind_key_exec,
diff --git a/usr.bin/tmux/cmd-unlink-window.c b/usr.bin/tmux/cmd-unlink-window.c
index 0623751d791..414f5430bba 100644
--- a/usr.bin/tmux/cmd-unlink-window.c
+++ b/usr.bin/tmux/cmd-unlink-window.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-unlink-window.c,v 1.7 2009/10/10 10:02:48 nicm Exp $ */
+/* $OpenBSD: cmd-unlink-window.c,v 1.8 2009/11/13 19:53:29 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -29,7 +29,7 @@ int cmd_unlink_window_exec(struct cmd *, struct cmd_ctx *);
const struct cmd_entry cmd_unlink_window_entry = {
"unlink-window", "unlinkw",
"[-k] " CMD_TARGET_WINDOW_USAGE,
- 0, CMD_CHFLAG('k'),
+ 0, "k",
cmd_target_init,
cmd_target_parse,
cmd_unlink_window_exec,
@@ -59,7 +59,7 @@ cmd_unlink_window_exec(struct cmd *self, struct cmd_ctx *ctx)
} else
references = 1;
- if (!(data->chflags & CMD_CHFLAG('k')) && w->references == references) {
+ if (!cmd_check_flag(data->chflags, 'k') && w->references == references) {
ctx->error(ctx, "window is only linked to one session");
return (-1);
}
diff --git a/usr.bin/tmux/cmd-up-pane.c b/usr.bin/tmux/cmd-up-pane.c
index 576ab456470..cbe572d2c1c 100644
--- a/usr.bin/tmux/cmd-up-pane.c
+++ b/usr.bin/tmux/cmd-up-pane.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-up-pane.c,v 1.6 2009/07/26 12:58:44 nicm Exp $ */
+/* $OpenBSD: cmd-up-pane.c,v 1.7 2009/11/13 19:53:29 nicm Exp $ */
/*
* Copyright (c) 2009 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -29,7 +29,7 @@ int cmd_up_pane_exec(struct cmd *, struct cmd_ctx *);
const struct cmd_entry cmd_up_pane_entry = {
"up-pane", "upp",
CMD_TARGET_WINDOW_USAGE,
- 0, 0,
+ 0, "",
cmd_target_init,
cmd_target_parse,
cmd_up_pane_exec,
diff --git a/usr.bin/tmux/tmux.h b/usr.bin/tmux/tmux.h
index c420fdd57f8..90c8afdbb08 100644
--- a/usr.bin/tmux/tmux.h
+++ b/usr.bin/tmux/tmux.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: tmux.h,v 1.177 2009/11/13 17:33:07 nicm Exp $ */
+/* $OpenBSD: tmux.h,v 1.178 2009/11/13 19:53:29 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -1150,10 +1150,7 @@ struct cmd_entry {
#define CMD_ARG12 0x40
int flags;
-#define CMD_CHFLAG(flag) \
- ((flag) >= 'a' && (flag) <= 'z' ? 1ULL << ((flag) - 'a') : \
- (flag) >= 'A' && (flag) <= 'Z' ? 1ULL << (26 + (flag) - 'A') : 0)
- uint64_t chflags;
+ const char *chflags;
void (*init)(struct cmd *, int);
int (*parse)(struct cmd *, int, char **, char **);
@@ -1502,6 +1499,8 @@ int cmd_string_parse(const char *, struct cmd_list **, char **);
/* cmd-generic.c */
size_t cmd_prarg(char *, size_t, const char *, char *);
+int cmd_check_flag(uint64_t, int);
+void cmd_set_flag(uint64_t *, int);
#define CMD_TARGET_PANE_USAGE "[-t target-pane]"
#define CMD_TARGET_WINDOW_USAGE "[-t target-window]"
#define CMD_TARGET_SESSION_USAGE "[-t target-session]"