bc0e527f32
Support for extended underline styles on terminals which offer them,
...
enabled by adding the Smulx capability with terminal-overrides (add
something like ',vte*:Smulx=\E[4\:%p1%dm'). GitHub issue 1492.
2018-10-18 07:57:57 +00:00
f7c85f3ed8
Do not move the cursor when the mouse wheel is used, GitHub issue 1493.
2018-10-03 15:27:55 +00:00
7d59f82cf9
Allow panes to be 1 line or column by redrawing instead of using the
...
scroll region, from Soeren Tempel in GitHub issue 1487.
2018-09-25 14:27:20 +00:00
f57aa143c1
Keep any text killed in the command prompt with C-w and yank it with
...
C-y, only use the top buffer if no text has previously been killed. This
and previous change promped by discussion with kn@.
2018-08-29 09:50:32 +00:00
bceccc6b63
Move job struct into job.c.
2018-08-23 15:45:05 +00:00
55db3623bf
Add StatusLeft and StatusRight mouse key modifiers for the left and
...
right parts of the status line.
2018-08-22 20:06:14 +00:00
98a478ceb3
Move offset of window list into status struct.
2018-08-20 20:41:58 +00:00
cac4eadca0
Add a flag to force redrawing of the status line even if the content
...
hasn't changed, needed for resizing.
2018-08-19 20:13:07 +00:00
88327c7698
Add a client redraw-window flag instead of the redraw-all flag and for
...
all just use the three flags together (window, borders, status).
2018-08-19 16:45:03 +00:00
bd2896b65e
SESSION_UNATTACHED flag is no longer necessary now we have an attached
...
count instead.
2018-08-18 20:08:52 +00:00
3bc08b0dc0
Some tidying and helper functions.
2018-08-18 16:14:03 +00:00
a5ef1f2ed6
Bump the UTF-8 character array up to 18 to allow for more combining
...
characters (some languages use up to five). This size doesn't make as
much difference now that UTF-8 goes into an extended cell. GitHub issue
1430.
2018-08-09 09:53:44 +00:00
d6ff630498
Log command arguments.
2018-08-02 18:35:21 +00:00
fb1f0fee5a
session_groups can be static also.
2018-08-02 11:56:12 +00:00
f12b857415
Minor tidying.
2018-08-02 11:18:34 +00:00
21f8ac2766
Make display-panes block the client until a pane is chosen or it times out.
2018-08-02 07:55:16 +00:00
82776c456e
Move struct screen_sel into screen.c and tidy up members that are only
...
used by copy mode.
2018-07-31 11:49:26 +00:00
b21a710de7
Remove a leftover unused struct.
2018-07-30 11:24:55 +00:00
0d88f8a78b
Add an "Any" key to run a command if a key is pressed that is not bound
...
in the current key table. GitHub issue 1404.
2018-07-16 08:48:22 +00:00
cc743dc296
Add set-hook -R to run a hook immediately (useful to set multiple hooks
...
to the same thing).
2018-07-04 12:30:52 +00:00
2fae6a5761
Add accessors for grid linedata member, for some future work. From Dan
...
Aloni.
2018-07-04 09:44:07 +00:00
f6bad7efd7
Instead of working out which pane to resize with the mouse by walking
...
the panes list, look through the layout cells for the nearest border and
resize that cell. From Dan Aloni in GitHub issue 1374.
2018-06-08 20:54:22 +00:00
b9a6162d2f
Make server_client_get_cwd used (almost) everywhere we need to work out
...
the cwd, and do not fall back to "." as it is pretty useless. GitHub
issue 1331.
2018-05-24 09:42:49 +00:00
3dceddd70e
Change how display-message uses the client. Originally it was only
...
intended as the target client where the message should be displayed but
at some point (perhaps when -p was added), it was used for format
expansion too. This means it can get a bit weird where you have client
formats expanding for a client with a different current session than the
target session.
However, it is nice that display-message can be used to show information
about a specific client. So change so that the -c client will be used if
the session matches the target session (-t or default), otherwise the
best client will be chosen.
2018-04-18 14:35:37 +00:00
c6975b3bb4
Add x and X to choose-tree (with a confirmation prompt) to kill an
...
item. Suggested by Matt Zagrabelny.
2018-04-10 10:48:44 +00:00
f87d80737e
Insert full size panes at the right position, from KOIE Hidetaka in
...
GitHub issue 1284.
2018-03-16 15:15:39 +00:00
19f3a5c612
Add a missing client-detached hook when the server shuts down, and do
...
not exit until jobs started from run-shell/if-shell have finished (add a
job flags member and a flag to indicate other jobs). GitHub issue 1245.
2018-03-08 08:09:10 +00:00
508e2f0b3a
Add -Z flag to choose-tree, choose-client, choose-buffer to
...
automatically zoom the pane when the mode is entered and unzoom when it
exits, assuming the pane is not already zoomed. Add -Z to the default
key bindings.
2018-02-28 08:55:44 +00:00
320abba341
Reflowing the grid in-place involved way too much memmove() for a big
...
performance cost with a large history. Instead change back to using a
second grid and copying modified lines over which is much faster (this
doesn't revert to the old code however which didn't support UTF-8
properly). GitHub issue 1249.
2018-02-16 09:51:41 +00:00
7f4513ec34
Add struct status_line to hold status line members of struct client, not
...
used yet but will be soon. From Thomas Adam.
2018-02-05 08:21:54 +00:00
fe7a871a23
Upstream ncurses has introduced terminfo capabilities to specify RGB
...
colour ("true" or "direct" colour). These consist of new entries (such
as "xterm-direct") which have a different setaf/setab implementation,
colors and pairs set to 0x1000000 and 0x10000, and a new RGB flag.
The setaf/setab definitions seem to be geared towards what ncurses (or
emacs maybe) needs, in that the new versions do only ANSI and RGB
colours (they can't be used for the 256 colour palette); they rely on
the silly ISO colon-separated version of SGR; and they use a weird
multiplication scheme so they still only need one argument. The higher
values of colors and pairs require a recent ncurses to parse.
tmux can use the RGB flag to detect RGB colour support (keeping the old
Tc extension for backwards compatibility for now). However, as we still
want to send 256 colour information unchanged when possible, the new
setaf/setab are awkward. So when RGB is present, reserve setaf/setab
only for ANSI colours and use the escape sequences directly for 256 and
RGB colours. (To my knowledge no recent terminal uses unusual escape
sequences for these in any case.)
2018-02-04 10:10:39 +00:00
c9037fde1c
Remove unused hooks_run function, from Thomas Adam.
2018-01-18 07:10:53 +00:00
b20a00f93e
Report better error from server when socket create fails, GitHub issue
...
1201.
2017-12-19 15:00:39 +00:00
3b649d2fcd
Add a common function for spreading out cells and use it for the two
...
even layouts and to add a -E flag to select-layout to spread out cells
evenly without changing parent cells.
2017-11-15 19:59:27 +00:00
533a5719c5
Completely rewrite the reflow code to correctly handle double width
...
characters (previously they were not accounted for).
2017-11-15 19:21:24 +00:00
50a5f84cb4
Support mouse on preview in tree mode.
2017-11-03 17:02:33 +00:00
43264dfbf4
Make the mode draw function use the parent screen directly rather than
...
its own to avoid copying twice.
2017-11-02 22:00:42 +00:00
8d37f699ad
Add a "fast" version of screen_write_copy for tree mode that doesn't do
...
all the checks and selection and marking stuff needed for copy mode.
2017-11-02 21:29:17 +00:00
c1f62f1fde
Only show the first member of session groups in tree mode (-G flag
...
disables).
2017-11-02 18:27:35 +00:00
8dd776106d
Add P key to paste tagged in buffer mode, and trim some code that should
...
no longer be necessary.
2017-10-25 11:26:11 +00:00
2f6935a630
Infrastructure for drawing status lines of more than one line in height,
...
still only one is allowed but this lets tmux draw bigger ones.
2017-10-16 19:30:53 +00:00
a5fd5782f8
Show exit status and time in the remain-on-exit pane text, mostly from
...
Timo Boettcher in GitHub issue 1103.
2017-10-12 11:32:27 +00:00
88517ceebb
Add support for the xterm(1) title stack, from Brad Town, GitHub issue
...
1075.
2017-10-05 13:29:18 +00:00
6abfd9b8ff
Instead of overloading the line clear function to mean free if
...
background is default (8), introduce an explicit free function and use
it where a free alone is needed. Likewise, use memmove directly rather
than grid_move_lines where it makes sense. Based on a memory leak fix by
Dan Aloni in GitHub issue 1051.
2017-08-30 18:13:47 +00:00
17cf1b21c6
Pass flags into cmd_find_from_* to fix prefer-unattached, reported by
...
Thomas Sattler.
2017-08-30 10:33:57 +00:00
fe4467ad2b
Do not forbid targets to specify non-visible panes - the checks for
...
visibility are better where the target is used. GitHub issue 1049.
2017-08-28 12:36:38 +00:00
25cf126de8
Use kind and kri for S-Up/Down as well as kUP and kDN.
2017-08-27 08:33:55 +00:00
c6a8ad23a1
Add -d flag to display-panes to specify timeout, and make 0 mean no
...
timeout. From Laurens Post.
2017-08-16 12:12:54 +00:00
c1ec28a34b
Rename BELL_* values to ALERT_* now they are used by more than bells,
...
based on a diff from Brad Town.
2017-08-16 11:46:08 +00:00
6f9b9655d7
Add selection_present format so commands in copy mode can use it, GitHub
...
issue 1028.
2017-08-02 11:10:48 +00:00