aboutsummaryrefslogtreecommitdiff
path: root/window-copy.c
diff options
context:
space:
mode:
authorThomas Adam <thomas@xteddy.org>2013-07-06 11:18:49 +0100
committerThomas Adam <thomas@xteddy.org>2013-07-06 11:18:49 +0100
commitbdea2f9eda1abc8f4a6c423af62ef7538b2ad249 (patch)
treef634639dad6a8775aa4692702b11a52f27aecac5 /window-copy.c
parente496a548d7b07c9a4be9ce8e750cf5423e3bafe3 (diff)
parentf5b041e3949e9a129d68d9919725c3afcd81ed5a (diff)
downloadrtmux-bdea2f9eda1abc8f4a6c423af62ef7538b2ad249.tar.gz
rtmux-bdea2f9eda1abc8f4a6c423af62ef7538b2ad249.tar.bz2
rtmux-bdea2f9eda1abc8f4a6c423af62ef7538b2ad249.zip
Merge branch 'obsd-master'
Diffstat (limited to 'window-copy.c')
-rw-r--r--window-copy.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/window-copy.c b/window-copy.c
index 51a8f108..75fff92f 100644
--- a/window-copy.c
+++ b/window-copy.c
@@ -1116,7 +1116,7 @@ window_copy_write_line(
struct options *oo = &wp->window->options;
struct grid_cell gc;
char hdr[32];
- size_t last, xoff = 0, size = 0;
+ size_t last, xoff = 0, size = 0;
window_mode_attrs(&gc, oo);
@@ -1894,6 +1894,7 @@ void
window_copy_cursor_next_word_end(struct window_pane *wp, const char *separators)
{
struct window_copy_mode_data *data = wp->modedata;
+ struct options *oo = &wp->window->options;
struct screen *back_s = data->backing;
u_int px, py, xx, yy;
int expected = 1;
@@ -1927,6 +1928,10 @@ window_copy_cursor_next_word_end(struct window_pane *wp, const char *separators)
expected = !expected;
} while (expected == 0);
+ /* Back up to the end-of-word like vi. */
+ if (options_get_number(oo, "status-keys") == MODEKEY_VI && px != 0)
+ px--;
+
window_copy_update_cursor(wp, px, data->cy);
if (window_copy_update_selection(wp))
window_copy_redraw_lines(wp, data->cy, 1);