| Commit message (Collapse) | Author | Age |
... | |
|
|
|
|
|
| |
Permit options such as status-bg to be configured using the entire 256 colour
palette by setting "colour0" to "colour255".
|
|
|
|
|
|
| |
While the display-panes indicator is on screen, make the number keys select the
pane with that index.
|
|
|
|
|
|
| |
Reference count clients and sessions rather than relying on a saved index for
cmd-choose-*.
|
|
|
|
|
|
|
| |
Tiny cleanup.
ok nicm@
|
|
|
|
|
|
|
|
| |
Only redraw all clients once when the backoff timer expires rather than every
second all the time.
Reported by Simon Nicolussi.
|
|
|
|
|
| |
Tell the user when sleeping due to password backoff.
|
|
|
|
|
| |
with the right message.
|
|
|
|
|
|
|
| |
Add a new display-panes command, with two options (display-panes-colour and
display-panes-time), which displays a visual indication of the number of each
pane.
|
|
|
|
|
|
| |
Don't call tty_free unless the client is a terminal, otherwise tty_init hasn't
been called and it may end up doing close(0). From Kalle Olavi Niemitalo.
|
|
|
|
|
|
|
| |
When using source-file, run the commands in the context of the source-file
command rather than with no context. This makes things like attach work from a
file.
|
|
|
|
|
| |
Whoops, getting the comparison the right way round is usually recommended.
|
|
|
|
|
|
|
| |
options_get_number() is relatively expensive and a check for dead panes happens
a lot more often than actually finding one, so instead of getting the option
for every check, get it for every dead window found.
|
| |
|
| |
|
|
|
|
|
|
| |
Reset attributes as well as scroll region before poll(2) and add a big comment
explaining why.
|
|
|
|
|
|
|
|
| |
Initialise log_fd to -1, prevents spurious disconnection of the client when it
ends up as fd 0 (likely if the server is started with "tmux start").
Also add some extra debugging messages to server.c.
|
|
|
|
|
|
| |
Drop the no_stop argument to tty_close and tty_free in favour of a flag in the
tty struct.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Switch tmux to use imsg. This is the last major change to make the
client-server protocol more resilient and make the protocol versioning work
properly. In future, the only things requiring a protocol version bump will be
changes in the message structs, and (when both client and server have this
change) mixing different versions should nicely report an error message.
As a side effect this also makes the code tidier, fixes a problem with the way
errors reported during server startup were handled, and supports fd passing
(which will be used in future).
Looked over by eric@, thanks.
Please note that mixing a client with this change with an older server or vice
versa may cause tmux to crash or hang - tmux should be completely exited before
upgrading.
|
|
|
|
|
|
|
|
| |
Reset the attributes after drawing all or part of the screen, and reset the
region before poll(2). This reduces (but does not eliminate) the chance of the
attributes not being normal if tmux is disconnected without warning (ssh ~.,
reboot from inside, etc).
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
If there is an error in the configuration file, don't just exit(1) as this can
cause the client to hang. Instead, send the error message, then mark the client
as bad and start a normal shutdown so the server exits once the error is
written.
This also allows some code duplicating daemon(3) to be trimmed and logging to
begin earlier.
Prompted by Theo noticing the behaviour on error wasn't documented.
|
|
|
|
|
|
|
|
| |
Next step towards customisable mode keys: build each default table of keys
into a named tree on start and use that for lookups. Also add command to string
translation tables and modify list-keys to show the mode key bindings (new
-t argument).
|
|
|
|
|
|
|
| |
Permit commands to be bound to key presses without the prefix key first. The
new -n flag to bind-key and unbind-key sets or removes these bindings, and
list-key shows them in []s.
|
|
|
|
|
|
| |
Make some functions which return unused values void (mostly found by lint) and
tweak a redundant expression in window_pane_set_mode.
|
|
|
|
|
|
| |
Display the number of failed password attempts (if any) when the server is
locked. From Tom Doherty.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Each window now has a tree of layout cells associated with it. In this tree,
each node is either a horizontal or vertical cell containing a list of other
cells running from left-to-right or top-to-bottom, or a leaf cell which is
associated with a pane.
The major functional changes are:
- panes may now be split arbitrarily both horizontally (splitw -h, C-b %) and
vertically (splitw -v, C-b ");
- panes may be resized both horizontally and vertically (resizep -L/-R/-U/-D,
bound to C-b left/right/up/down and C-b M-left/right/up/down);
- layouts are now applied and then may be modified by resizing or splitting
panes, rather than being fixed and reapplied when the window is resized or
panes are added;
- manual-vertical layout is no longer necessary, and active-only layout is gone
(but may return in future);
- the main-pane layouts now reduce the size of the main pane to fit all panes
if possible.
Thanks to all who tested.
|
|
|
|
|
|
|
|
|
|
| |
If these are enabled (and the monitor-activity, bell-action and monitor-content
options are configurated appropriately), when activity, a bell, or content is
detected, a message is shown.
Also tidy up the bell/activity/content code in server.c slightly and fix a
couple of errors.
|
|
|
|
|
| |
redraw it as to draw the entire screen, just skip all lines but the last.
|
|
|
|
|
|
| |
non-whitespace character. ^ with vi and M-m with emacs key bindings. Another
from Kalle Olavi Niemitalo, thanks.
|
|
|
|
|
| |
user-specified one.
|
| |
|
|
|
|
|
|
| |
clear. No functional change, getting this out of the way to make later options
changes easier.
|
| |
|
|
|
|
|
| |
stdin/stdout/stderr active, so dup them to /dev/null.
|
|
|
|
|
|
| |
done for UTF-8, limit to the maximum length correctly when printing, and always
print a space even if the left string is longer than the width available.
|
| |
|
| |
|
| |
|
|
|
|
|
| |
compatibility, *s are implicitly added at the start and end of the pattern.
|
|
|
|
|
|
| |
broken sometime during the pane/layout changes. Reported/tested by Iain Morgan,
thanks.
|
|
|
|
|
|
|
|
|
| |
highlight the status line if it matches.
- To make this possible, the function cmd_find_window_search from
cmd-find-window.c had to be moved to window.c and renamed window_pane_search.
- While there use three new functions in server.c to check for bell, activity,
and content, to avoid too much nesting.
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
script which must be run before building.
Still two makefiles but they are a hell of a lot simpler.
HAVE_* also will make it easier to move to $buildsystem if necessary later.
|
| |
|
|
|
|
| |
interval and de-magic-number it.
|
|
|
|
|
| |
but meh.
|
| |
|
|
|
|
|
| |
the entire window.
|
|
|
|
|
|
|
| |
redraw the entire window. Also add a flag to skip updating the window any
further if it is scheduled to be redrawn. This has the effect of batching
multiple redraws together.
|