69a2d46ee5
Remove dead_clients which is no longer used.
2015-09-01 11:13:39 +00:00
952ba84611
Work out config file when needed not at startup.
2015-09-01 10:10:59 +00:00
83157c02d6
Move initial conf load into cfg.c.
2015-09-01 10:01:56 +00:00
2a836bc306
All the cmd_*_entry declarations do not need to be in tmux.h.
2015-09-01 09:48:34 +00:00
6a539c00df
Path from $TMUX does not need to be global anymore.
2015-08-30 22:56:36 +00:00
c6e9160c67
Login shell can be a client flag, and move the exec code into client.c.
2015-08-30 22:40:25 +00:00
dd92b6e83d
Event base does not need to be global.
2015-08-30 22:19:07 +00:00
5047670693
Remove some old prototypes and unused functions.
2015-08-29 23:55:55 +00:00
52bbac506c
struct args_entry can go into arguments.c.
2015-08-29 23:19:52 +00:00
373ef850e0
paste_send_pane can be merged into cmd-paste-buffer.c now.
2015-08-29 09:36:46 +00:00
b569585000
Move struct paste_buffer out of tmux.h.
2015-08-29 09:25:00 +00:00
b5aaefc727
Move alerts onto events rather than checking every loop.
2015-08-29 08:30:54 +00:00
b7861f34ba
Better take on reducing the name timer. Again check for name changes in
...
the main loop after events that may have changed the pane, but do so at
most once every 500 millis. If the pane changed too soon, use a timer to
ensure that a check happens later.
2015-08-29 00:29:15 +00:00
55b8d74561
Revert previous; we do need a timer, until I have a better idea. We
...
can't do the name check every loop, because that is too expensive, and
we can't make sure it only happens infrequently because we have no idea
when the next change will happen.
2015-08-28 16:10:46 +00:00
e2100c5f5f
We now only checking for name changes when the active pane has changed,
...
but that can only happen when we have already been woken up by a read
event, so there is no need for a timer, we can just check the changed
flag on the end of that read event (we already loop over the windows to
check for bells etc anyway).
2015-08-28 15:51:48 +00:00
f6a0f8730e
Per-session timers for locking, and remove the global one-second timer.
2015-08-28 13:12:20 +00:00
57cc4d45d5
Make session_update_activity more useful and use it in more places.
2015-08-28 13:01:03 +00:00
6419f66523
Give clock mode its own timer.
2015-08-28 12:25:42 +00:00
75d10058a4
Run status update on a per-client timer at status-interval.
2015-08-28 12:16:28 +00:00
b6618b631b
Move format job cleanup onto its own timer.
2015-08-28 11:38:27 +00:00
fc58e44f89
Only do the automatic-rename dance if the pane has changed (seen output,
...
or new active pane).
2015-08-28 07:49:24 +00:00
5ec3621101
status_out and associated data structures are no longer used.
2015-07-29 11:56:02 +00:00
b254115acd
Tidy up the way terminals are described and move some structs out of tmux.h.
2015-07-28 15:18:10 +00:00
92af3766ec
Add an option (history-file) for a file to save/restore command prompt
...
history, from Olof-Joachim Frahm.
2015-07-20 15:50:04 +00:00
e45d624df2
Fix line endings.
2015-07-13 15:51:31 +00:00
c7374c31c4
Initialize cwd fd to -1 so that we don't close fd 0 if the client is
...
destroyed before it is changed. Also allow ttyname() to fail. Fixes
problems when running out of file descriptors reported by Bruno Sutic.
2015-07-13 15:49:31 +00:00
0ff335961e
Move the shuffle code from new-window -a into a function and add a -a
...
flag for move-window too. From Thomas Adam.
2015-06-17 16:50:28 +00:00
021cdbe1c0
Use an explicit job state instead of avoid closing our side of the
...
socketpair and setting it to -1 to mark when the other side is
closed. This avoids closing it while the libevent bufferevent still has
it (it could try to add it to the polled set which some mechanisms don't
like). Fixes part a problem reported by Bruno Sutic.
2015-06-17 16:44:49 +00:00
d96ab34019
Add window_activity format, from Thomas Adam based on a diff originally
...
from propos6 at gmail dot com.
2015-06-15 10:58:01 +00:00
29c29e7717
Add a format for client PID (client_pid) and server PID (pid). Diff for
...
client_pid from Thomas Adam.
2015-06-14 10:07:44 +00:00
c4e811e519
Add -E flag when attaching or switching client to bypass
...
update-environment, from Steven Lu.
2015-06-07 21:39:39 +00:00
55b96a5bd5
Handle the RGB colour escape sequence (\033[38;2;<r>;<g>;<b>m and 48;2)
...
like xterm(1) does, by mapping to the nearest in the 256 colour palette.
2015-06-05 22:33:39 +00:00
641a9cd3f5
Similarly, for sessions use a callback to free rather than checking
...
every loop.
2015-06-05 18:18:32 +00:00
10e90ae01f
Change deref to the more sensible unref, and add a couple I missed before.
2015-06-05 18:06:30 +00:00
8c93b768e4
Instead of putting dead clients on a list and checking it every loop,
...
use event_once to queue a callback to deal with them. Also dead clients
with references would never actually be freed because the wrap-up
functions (the callback for stdin, or status_prompt_clear) would never
be called. So call them in server_client_lost.
2015-06-05 18:01:12 +00:00
6b2129696f
Move the nested check from client to server and compare the client tty
...
name to all the pane pty names instead of comparing socket paths. This
means that "new -d" will work without unsetting $TMUX.
2015-06-04 23:27:51 +00:00
a863834574
Add support for a single "marked pane". There is one marked pane in the
...
server at a time; it may be toggled or cleared with select-pane -m and
-M (the border is highlighted). A new target '~' or '{marked}' specifies
the marked pane to commands and it is the default target for the
swap-pane and join-pane -s flag (this makes them much simpler to use -
mark the source pane and then change to the target pane to run swapp or
joinp).
2015-06-04 11:43:51 +00:00
379400cfa6
Move the jobs output cache into the formats code so that #() work more
...
generally (for example, again working in set-titles-string).
2015-05-27 13:28:04 +00:00
3f4ee98162
To replace c0-*, add a high watermark to the pty event, and also backoff
...
when the any of the ttys the pane is going to write to has buffered
enough data.
2015-05-12 22:40:38 +00:00
e958db09a7
Add bell-action "other" to pass through bells in all windows except the
...
current, suggested by Jan ONDREJ.
2015-05-12 15:27:46 +00:00
44364d7112
Remove the c0-* options which never really worked satisfactorily. Going
...
to try something else...
2015-05-11 10:10:16 +00:00
92faa2eaeb
Put the tty structs together, and tabify.
2015-05-08 16:48:12 +00:00
592cb73a69
grid_marker_cell is no longer used.
2015-05-08 16:44:03 +00:00
74b2c40b1b
mode_key_entry can go into mode-key.c; also a few spaces->tabs.
2015-05-08 16:33:29 +00:00
a538141a72
window_choose_mode_item can move into window-choose.c.
2015-05-08 16:23:34 +00:00
c4a4bd6ac5
Move input parser structs into input.c (removing fairly useless
...
saved_cursor_[xy] formats as a side-effect).
2015-05-08 16:18:04 +00:00
1282bb81fe
array.h can be local to window-choose.c now.
2015-05-07 08:08:54 +00:00
0b39e6427f
Remove ARRAY_* from history and expand completion to complete a) layout
...
names and b) targets beginning with -t or -s.
2015-05-06 23:56:46 +00:00
31b1ab4852
Add a format window_linked which is 1 if a window has been linked
...
multiple times, also remove the default space in window_flags and use a
conditional to add it in window-status-format (this means additional
flags can be added in the option without extra spaces). From Thomas Adam
with tweaks by me.
2015-05-06 08:35:39 +00:00
771744426e
Add select-layout -o to undo the last layout change (apply the previously
...
set layout).
2015-04-28 10:43:13 +00:00