mirror of
https://github.com/tmate-io/tmate.git
synced 2025-01-23 22:38:44 +01:00
Copy newline when at EOL in vi(1) mode, from Balazs Kezes.
This commit is contained in:
parent
fd9a53b4a4
commit
00ac1af43f
@ -1360,7 +1360,7 @@ window_copy_get_selection(struct window_pane *wp, size_t *len)
|
|||||||
struct screen *s = &data->screen;
|
struct screen *s = &data->screen;
|
||||||
char *buf;
|
char *buf;
|
||||||
size_t off;
|
size_t off;
|
||||||
u_int i, xx, yy, sx, sy, ex, ey;
|
u_int i, xx, yy, sx, sy, ex, ey, ey_last;
|
||||||
u_int firstsx, lastex, restex, restsx;
|
u_int firstsx, lastex, restex, restsx;
|
||||||
int keys;
|
int keys;
|
||||||
|
|
||||||
@ -1389,9 +1389,9 @@ window_copy_get_selection(struct window_pane *wp, size_t *len)
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* Trim ex to end of line. */
|
/* Trim ex to end of line. */
|
||||||
xx = window_copy_find_length(wp, ey);
|
ey_last = window_copy_find_length(wp, ey);
|
||||||
if (ex > xx)
|
if (ex > ey_last)
|
||||||
ex = xx;
|
ex = ey_last;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Deal with rectangle-copy if necessary; four situations: start of
|
* Deal with rectangle-copy if necessary; four situations: start of
|
||||||
@ -1453,7 +1453,9 @@ window_copy_get_selection(struct window_pane *wp, size_t *len)
|
|||||||
free(buf);
|
free(buf);
|
||||||
return (NULL);
|
return (NULL);
|
||||||
}
|
}
|
||||||
*len = off - 1; /* remove final \n */
|
if (keys == MODEKEY_EMACS || lastex <= ey_last)
|
||||||
|
off -= 1; /* remove final \n (unless at end in vi mode) */
|
||||||
|
*len = off;
|
||||||
return (buf);
|
return (buf);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user