Having fixed flags for single-character getopt options is a bit hard to

maintain and is only going to get worse as more are used. So instead, add a new
uint64_t member to cmd_entry which is a bitmask of upper and lowercase options
accepted by the command.

This means new single character options can be used without the need to add it
explicitly to the list.
This commit is contained in:
Nicholas Marriott
2009-07-13 23:11:35 +00:00
parent 5d91555c7c
commit 5f108d9df6
73 changed files with 196 additions and 234 deletions

View File

@ -30,7 +30,7 @@ int cmd_scroll_mode_exec(struct cmd *, struct cmd_ctx *);
const struct cmd_entry cmd_scroll_mode_entry = {
"scroll-mode", NULL,
"[-u] " CMD_TARGET_WINDOW_USAGE,
CMD_UFLAG,
0, CMD_CHFLAG('u'),
cmd_scroll_mode_init,
cmd_target_parse,
cmd_scroll_mode_exec,
@ -50,7 +50,7 @@ cmd_scroll_mode_init(struct cmd *self, int key)
switch (key) {
case KEYC_PPAGE:
data->flags |= CMD_UFLAG;
data->chflags |= CMD_CHFLAG('u');
break;
}
}
@ -67,7 +67,7 @@ cmd_scroll_mode_exec(struct cmd *self, struct cmd_ctx *ctx)
wp = wl->window->active;
window_pane_set_mode(wp, &window_scroll_mode);
if (wp->mode == &window_scroll_mode && data->flags & CMD_UFLAG)
if (wp->mode == &window_scroll_mode && data->chflags & CMD_CHFLAG('u'))
window_scroll_pageup(wp);
return (0);