| Commit message (Collapse) | Author | Age |
|
|
|
|
|
| |
Add a function to create window flags rather than doing the same thing
in two places. From Thomas Adam.
|
|
|
|
|
|
| |
Handle a # at the end of a replacement string (such as status-left)
correctly. Found by Thomas Adam.
|
|
|
|
|
|
|
|
| |
Move the user-visible parts of all options (names, types, limit, default
values) together into one set of tables in options-table.c. Also clean
up and simplify cmd-set-options.c and move a common print function into
option-table.c.
|
|
|
|
|
| |
As a consequence buffer-limit is now a server option.
|
|
|
|
|
| |
than per-client history.
|
|
|
|
|
| |
window. From Thomas Adam.
|
|
|
|
|
|
| |
Having a list of winlinks->alerts for each session is stupid, just store
the alert flags directly in the winlink itself.
|
|
|
|
|
| |
Colour+attribute options for status line alerts, from Alex Alexander.
|
| |
|
|
|
|
|
| |
R Landy.
|
| |
|
| |
|
|
|
|
|
|
| |
Calculate offset correctly, fixes incorrect offset and prevents crash when
status-left is empty. From Micah Cowan.
|
|
|
|
|
| |
Actually use the copy made when no newline is found, from martynas@.
|
|
|
|
|
| |
Add server options to completion as well.
|
|
|
|
|
|
|
| |
Massive spaces->tabs and trailing whitespace cleanup, hopefully for the last
time now I've configured emacs to make them displayed in really annoying
colours...
|
|
|
|
|
|
|
|
|
| |
Eliminate duplicate code and ease the passage for server-wide options by adding
a -w flag to set-option and show-options and making setw and showw aliases to
set -w and show -w.
Note: setw and showw are still there, but now aliases for set -w and show -w.
|
|
|
|
|
|
| |
Tidy up various bits of the paste code, make the data buffer char * and add
comments.
|
|
|
|
|
|
| |
Remove a couple of unused arguments where possible, and add /* ARGSUSED */ to
the rest to reduce lint output.
|
|
|
|
|
|
| |
Display UTF-8 properly in status line messages and prompt. Cursor handling is
still way off though.
|
|
|
|
|
| |
Remove oldest messages from log when limit is hit, not newest.
|
|
|
|
|
|
| |
Get some brackets in the right place so ## works. Also fix a space in a
comment.
|
|
|
|
|
|
|
| |
Change status line drawing to create the window list in a separate screen and
then copy it into the status line screen. This allows UTF-8 in window names and
fixes some problems with #[] in window-status-format.
|
|
|
|
|
|
|
|
|
|
| |
Two new options, window-status-format and window-status-current-format, which
allow the format of each window in the status line window list to be controlled
using similar # sequences as status-left/right.
This diff also moves part of the way towards UTF-8 support in window names but
it isn't quite there yet.
|
|
|
|
|
|
| |
Tidy up by breaking the # replacement code into a separate function, also add a
few comments.
|
|
|
|
|
|
| |
Don't interpret #() for display-message, it usually doesn't make sense and may
leak commands.
|
|
|
|
|
|
|
|
|
|
| |
Add a per-client log of status line messages displayed while that client
exists. A new message-limit session option sets the maximum number of entries
and a command, show-messages, shows the log (bound to ~ by default).
This (and prompt history) might be better as a single global log but until
there are global options it is easier for them to be per client.
|
|
|
|
|
|
|
|
|
|
|
| |
Permit top-bit-set characters to be entered in the status line. They could
already be set from the shell and are just passed through when printing (so
invisible characters or displaying on terminals with different character sets
may cause problems).
Note that entering UTF-8 may not work and in any case currently the status line
cannot display it correctly (outside of status-left/status-right).
|
|
|
|
|
| |
Use timeout events for the identify and message timers.
|
|
|
|
|
| |
Switch jobs over to use a bufferevent.
|
|
|
|
|
| |
Unused (but assigned to) variable, found by lint.
|
|
|
|
|
|
|
|
|
| |
Add a flag for jobs that shouldn't be freed after they've died and use it for
status jobs, then only kill those jobs when status-left, status-right or
set-titles-string is changed.
Fixes problems with changing options from inside #().
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Rather than running status-left, status-right and window title #() with popen
immediately every redraw, queue them up and run them in the background,
starting each once every status-interval. The actual status line uses the
output from the last run.
This brings several advantages:
- tmux itself may be called from inside #() without causing the server to hang;
- likewise, sleep or similar doesn't cause the server to block;
- commands aren't run excessively often when redrawing;
- commands shared by status-left and status-right, or used multiple times, will
only be run once.
run-shell and if-shell still use system()/popen() but will be changed over to
use this too later.
|
|
|
|
|
|
|
|
|
|
| |
Add "grouped sessions" which have independent name, options, current window and
so on but where the linked windows are synchronized (ie creating, killing
windows and so on are mirrored between the sessions). A grouped session may be
created by passing -t to new-session.
Had this around for a while, tested by a couple of people.
|
|
|
|
|
| |
Remove PROMPT_HIDDEN code which is now unused.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Remove the internal tmux locking and instead detach each client and run the
command specified by a new option "lock-command" (by default "lock -np") in
each client.
This means each terminal has to be unlocked individually but simplifies the
code and allows the system password to be used to unlock.
Note that the set-password command is gone, so it will need to be removed from
configuration files, and the -U command line flag has been removed.
This is the third protocol version change so again it is best to stop the tmux
server before upgrading.
|
|
|
|
|
| |
Regularise some fatal messages.
|
|
|
|
|
|
| |
Permit options such as status-bg to be configured using the entire 256 colour
palette by setting "colour0" to "colour255".
|
|
|
|
|
|
| |
Give each paste buffer a size member instead of requiring them to be
zero-terminated.
|
|
|
|
|
|
| |
Permit embedded colour and attributes in status-left and status-right using new
#[] special characters, for example #[fg=red,bg=blue,blink].
|
|
|
|
|
|
| |
Add a transpose-chars command in edit mode (C-t in emacs mode only). From Kalle
Olavi Niemitalo.
|
|
|
|
|
|
|
| |
Use "Password:" with no space for password prompts and don't display a *s for
the password, like pretty much everything else. From martynas@ with minor
tweaks by me.
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Extend command-prompt with a -p option which is a comma-separated list of one
or more prompts to present in order.
The responses to the prompt are replaced in the template string: %% are
replaced in order, so the first prompt replaces the first %%, the second
replaces the second, and so on. In addition, %1 up to %9 are replaced with the
responses to the first the ninth prompts
The default template is "%1" so the response to the first prompt is processed
as a command.
Note that this changes the behaviour for %% so if there is only one prompt,
only the first %% will be replaced. Templates such as "neww -n '%%' 'ssh %%'"
should be changed to "neww -n '%1' 'ssh %1'".
From Tiago Cunha.
|
|
|
|
|
|
| |
Add a "delete line" key when editing in the status line or the search up/down
prompt. C-u with emacs keys, d with vi.
|
|
|
|
|
|
|
|
|
| |
Switch the prompt code to return an empty string when the user enters no
response and reserve NULL for an explicit cancel. Change all callbacks to treat
them the same so no functional change.
Also add cancel key bindings to emacs mode which were missing.
|
|
|
|
|
|
| |
Options to set the colours and attributes for status-left/-right. From Thomas
Adam, thanks.
|
|
|
|
|
|
|
|
|
|
| |
If colours are not supported by the terminal, try to emulate a coloured
background by setting or clearing the reverse attribute.
This makes a few applications which don't use the reverse attribute themselves
a little happier, and allows the status, message and mode options to have
default attributes and fg/bg options that work as expected when set as reverse.
|
|
|
|
|
| |
Plug some memory leaks.
|
|
|
|
|
|
|
|
| |
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).
|