From 7118baa340a2679425ad334bc3fd4177a8e8f652 Mon Sep 17 00:00:00 2001 From: Nicholas Marriott Date: Wed, 21 Jan 2009 18:19:32 +0000 Subject: [PATCH] Allow a selection in vi keys mode... --- CHANGES | 8 +++++++- TODO | 4 ++-- mode-key.c | 6 +++--- window-copy.c | 3 ++- 4 files changed, 14 insertions(+), 7 deletions(-) diff --git a/CHANGES b/CHANGES index 43e081e8..3b245ec5 100644 --- a/CHANGES +++ b/CHANGES @@ -1,3 +1,9 @@ +21 January 2009 + +* Make window and session choice modes allow you to choose items in vi keys + mode (doh!). As a side-effect, this makes enter copy selection (as well + as C-w/M-w) when using emacs keys in copy mode. Reported by merdely. + 20 January 2009 * Darwin support for automatic-rename from joshe; Darwin doesn't seem to have @@ -986,7 +992,7 @@ (including mutt, emacs). No status bar yet and no key remapping or other customisation. -$Id: CHANGES,v 1.226 2009-01-20 22:17:53 nicm Exp $ +$Id: CHANGES,v 1.227 2009-01-21 18:19:32 nicm Exp $ LocalWords: showw utf UTF fulvio ciriaco joshe OSC APC gettime abc DEF OA clr LocalWords: rivo nurges lscm Erdely eol smysession mysession ek dstname RB ms diff --git a/TODO b/TODO index 4eb9b004..12fbd938 100644 --- a/TODO +++ b/TODO @@ -69,6 +69,8 @@ - clone session command - make command sequences more usable: don't require space around ;, handle errors better +- would be nice if tmux could be the shell (tmux attach, but hard link to tmux + binary as "tmuxsh" or wrapper script?) -- problems with tty dev permissions (hopefully) for 0.7, in no particular order: - swap-pane-up, swap-pane-down (maybe move-pane-*) @@ -78,8 +80,6 @@ (copy from other session) - neww should support -k - flag to scroll-mode/copy-mode to automatically scroll up a page -- would be nice if tmux could be the shell (tmux attach, but hard link to tmux - binary as "tmuxsh" or wrapper script?) - key to switch to copy mode from scroll mode - document suspend-client - document command sequences diff --git a/mode-key.c b/mode-key.c index f5663eee..99bfd7e1 100644 --- a/mode-key.c +++ b/mode-key.c @@ -1,4 +1,4 @@ -/* $Id: mode-key.c,v 1.6 2009-01-15 19:27:31 nicm Exp $ */ +/* $Id: mode-key.c,v 1.7 2009-01-21 18:19:32 nicm Exp $ */ /* * Copyright (c) 2008 Nicholas Marriott @@ -26,13 +26,13 @@ struct mode_key_entry { }; const struct mode_key_entry mode_key_table_vi[] = { + { MODEKEY_ENTER, '\r' }, /* must come first */ { MODEKEY_BOL, '0' }, { MODEKEY_BOL, '^' }, { MODEKEY_CLEARSEL, '\033' }, { MODEKEY_COPYSEL, '\r' }, { MODEKEY_DOWN, 'j' }, { MODEKEY_DOWN, KEYC_DOWN }, - { MODEKEY_ENTER, '\r' }, { MODEKEY_EOL, '$' }, { MODEKEY_LEFT, 'h' }, { MODEKEY_LEFT, KEYC_LEFT }, @@ -51,12 +51,12 @@ const struct mode_key_entry mode_key_table_vi[] = { }; const struct mode_key_entry mode_key_table_emacs[] = { + { MODEKEY_ENTER, '\r' }, /* must come first */ { MODEKEY_BOL, '\001' }, { MODEKEY_CLEARSEL, '\007' }, { MODEKEY_COPYSEL, '\027' }, { MODEKEY_COPYSEL, KEYC_ADDESC('w') }, { MODEKEY_DOWN, KEYC_DOWN }, - { MODEKEY_ENTER, '\r' }, { MODEKEY_EOL, '\005' }, { MODEKEY_LEFT, '\002' }, { MODEKEY_LEFT, KEYC_LEFT }, diff --git a/window-copy.c b/window-copy.c index 0284e58c..e17e6291 100644 --- a/window-copy.c +++ b/window-copy.c @@ -1,4 +1,4 @@ -/* $Id: window-copy.c,v 1.41 2009-01-18 15:40:19 nicm Exp $ */ +/* $Id: window-copy.c,v 1.42 2009-01-21 18:19:32 nicm Exp $ */ /* * Copyright (c) 2007 Nicholas Marriott @@ -179,6 +179,7 @@ window_copy_key(struct window_pane *wp, struct client *c, int key) window_copy_redraw_screen(wp); break; case MODEKEY_COPYSEL: + case MODEKEY_ENTER: if (c != NULL && c->session != NULL) { window_copy_copy_selection(wp, c); window_pane_reset_mode(wp);