Commit Graph

744 Commits

Author SHA1 Message Date
Nicholas Marriott
ec1d37b1b2 Make signal handler setup/teardown two common functions instead of six,
and reset SIGCHLD after fork to fix problems with some shells. From
Romain Francois.
2010-05-03 16:06:32 +00:00
Ryan McBride
c919139433 Make C-] and other punctuation-based control key combinations work again.
ok nicm
2010-05-03 09:38:03 +00:00
Igor Sobrado
fc09ec3025 sort options. 2010-05-02 15:19:35 +00:00
Nicholas Marriott
99e54f46c7 Make the active pane border have a green foreground instead of
background by default.
2010-04-28 18:22:32 +00:00
Nicholas Marriott
2240199dbf Fix crash when resizing in copy mode, when cursor can end up outside screen.
Reported by Romain Francois, fixed by Micah Cowan.
2010-04-28 18:19:16 +00:00
Nicholas Marriott
83e1a33ff5 imsg.h does not need sys/tree.h.
ok eric
2010-04-27 21:04:04 +00:00
Nicholas Marriott
d529e7e14e Add a tiled layout, originally from Liam Bedford a while ago, fixed up
by me.
2010-04-25 20:28:13 +00:00
Nicholas Marriott
6769115df2 When converting A-Z into a control character, want to subtract 64 not
65... whoops.
2010-04-23 14:27:04 +00:00
Nicholas Marriott
261b6b8615 Mark zombie windows as dead in choose-window list, from Romain Francoise. 2010-04-21 21:41:21 +00:00
Nicholas Marriott
3ae1b82695 Rewrite key string conversions to be readable and to work properly for
multiple modifiers.
2010-04-21 21:17:33 +00:00
Nicholas Marriott
67dd5df876 Catch SIGCHLD to avoid a zombie, from patrick keshishian. 2010-04-18 13:41:29 +00:00
Nicholas Marriott
622593a77f Fix typo in escape state table leading to fatal() when \033} or \033~
was entered, from Chris Johnsen.
2010-04-17 23:31:09 +00:00
Nicholas Marriott
a6d52405a8 If remain-on-exit is set, both the error callback and a SIGCHLD could
destroy the same pane (because the first one doesn't remove it from the
list of panes), causing the pane bufferevent to be freed twice. So don't
free it if the fd has already been set to -1, from Romain Francoise.
2010-04-17 23:25:16 +00:00
Nicholas Marriott
842bc2b855 Fix use-after-free of the window link when it is part of a grouped
session (and hence could have been recreated), from Micah Cowan.
2010-04-17 23:14:17 +00:00
Nicholas Marriott
a2c86dcbf6 Remove XXX comment and just close received fd if calloc() fails.
If this happens the imsg may no longer be usable as there may be queued
messages, but this is a) already the case with the code now, and b)
would be the case if recvmsg() fails anyway, so we can document that -1
from imsg_read() invalidates the struct imsgbuf.

discussed with and ok eric
2010-04-07 18:09:39 +00:00
Nicholas Marriott
ac9daf92d7 Merge copy mode and output mode, dropping the latter. Idea and code from
Micah Cowan.
2010-04-06 21:35:44 +00:00
Nicholas Marriott
f81190a793 Mention title setting, and the new default. 2010-04-05 17:46:05 +00:00
Bob Beck
6704c86301 rather than using an empty "" as the default window title, put the hostname
of the machine we are running on in there.

makes my many green lines easier to deal with without using fiddly options to
set it.

ok nicm@
2010-04-04 23:05:15 +00:00
Jason McIntyre
680f920b55 tweak; 2010-04-04 21:23:20 +00:00
Nicholas Marriott
089c33f5be Should be -s for src pane. 2010-04-04 19:12:20 +00:00
Nicholas Marriott
46d5c14b17 Dead assignment, found with clang. 2010-04-04 19:04:09 +00:00
Nicholas Marriott
b02cd35354 Run job commands explicitly in the global enviroment (which can be
modified with setenv -g) rather than with the environment tmux started
with.
2010-04-04 19:02:09 +00:00
Nicholas Marriott
7425122c1c Squash a function that is only called in a callback into the callback
function.
2010-04-04 18:48:37 +00:00
Nicholas Marriott
56481a46bf Don't accept keys with modifiers as input. Fixes crash reported by Brian
R Landy.
2010-03-31 18:05:14 +00:00
Nicholas Marriott
41f90bd08f Don't leak job command in #(). 2010-03-27 15:06:40 +00:00
Nicholas Marriott
d3d85c3df9 -a flag to insert a window after an existing one, moving other windows
up necessary.
2010-03-27 11:46:58 +00:00
Jason McIntyre
d267845cfc dispense with some wacky escape sequences; 2010-03-26 19:30:40 +00:00
Nicholas Marriott
c550e66e85 Dead functions, lint. 2010-03-22 19:18:46 +00:00
Nicholas Marriott
e16b7b8399 Reset output functions too when changing client after attaching, to
avoid crash if a command in a sequence after new/attach causes output.
2010-03-22 19:14:55 +00:00
Nicholas Marriott
9abbe349af paste-buffer should be per pane, from C. Coutinho. 2010-03-22 19:13:28 +00:00
Nicholas Marriott
509ce7f766 Nuke unused variable. 2010-03-22 19:11:54 +00:00
Nicholas Marriott
0ac6efa6d5 Add vi-style "jump" commands for copy mode, from Micah Cowan. 2010-03-22 19:10:42 +00:00
Nicholas Marriott
6f04866044 Support up, down, left, right movement through panes with -UDLR flags to
select-pane.

Also REMOVE the up- and down-pane commands: equivalent behaviour is now
available using -t :.+ and -t :.-.
2010-03-22 19:07:52 +00:00
Nicholas Marriott
021037c419 Accept a full key match (not a partial) even if there is data left in
the buffer.
2010-03-22 19:03:52 +00:00
Nicholas Marriott
4baafd8126 New input parser based on http://vt100.net/emu/dec_ansi_parser. 2010-03-22 19:02:54 +00:00
Nicholas Marriott
48dd72005e Fix a use-after-free when cancelling copy mode, or trying to repeat cancel.
ok kettenis
2010-03-14 23:31:23 +00:00
Nicholas Marriott
7bc3f5dd8a Permit keys in copy mode to be prefixed by a repeat count, entered with
[1-9] in vi mode, or M-[1-9] in emacs mode.

From Micah Cowan, tweaked a little by me.
2010-03-02 00:32:41 +00:00
Nicholas Marriott
56a33b157b Extend the end-of-line key so that in normal mode a second press moves
the cursor to the end of a wrapped line (if present) and in rectangle
mode it toggles between the end of the text and the last cell on the
line.

From Micah Cowan.
2010-03-01 23:53:27 +00:00
Nicholas Marriott
c7046b9a0c Check for colour and attribute modifications early so the translated
values can be stored in the cached terminal attributes rather than the
requested (untranslated) values. Prevents tmux clearing and setting the
attributes for every character when using aixterm colours.
2010-03-01 22:44:31 +00:00
Nicholas Marriott
6ac3343617 Typo fix from Tim van der Molen. 2010-02-24 19:13:38 +00:00
Nicholas Marriott
f1dd95650b Don't set the terminal to nonblocking on detach until we have finished with it
entirely.
2010-02-24 19:08:39 +00:00
Nicholas Marriott
6767072c9d Option to set the characters considered word separators in copy mode, from
Micah Cowan.
2010-02-22 20:41:16 +00:00
Nicholas Marriott
efbcf8747d In load-buffer, read until EOF rather than using stat() and reading a fixed
size. Allows use of FIFOs and whatnot. From Tiago Cunha, idea from Fulvio
Ciriaco.
2010-02-22 20:33:12 +00:00
Nicholas Marriott
73b8c3ebf3 Another copy mode fix from Micah Cowan: in rectangle copy mode, the cursor
should not wrap at the end of the text on the line but should be allowed to
move freely.
2010-02-22 20:28:21 +00:00
Nicholas Marriott
25211020bf Display -t argument to new-session, from Tiago Cunha. 2010-02-22 20:19:16 +00:00
Nicholas Marriott
24634b6281 have_arg matches buf so it is no longer necessary, spotted by Tim van der
Molen.
2010-02-19 17:14:23 +00:00
Nicholas Marriott
3a89d1ef7f copy mode uses the real screen as backing and if it is updated while copying,
strange things can happen. So, freeze reading from the pty while in copy mode.
2010-02-19 00:03:21 +00:00
Nicholas Marriott
a61b8a2033 Make next-word stop at beginning of word even if it is at the start of the
line, from Micah Cowan.
2010-02-17 21:27:18 +00:00
Nicholas Marriott
c164f5886f Man page additions/improvements, thanks to Robin Lee Powell. 2010-02-17 21:12:06 +00:00
Nicholas Marriott
d285f7fd4d Don't strip add newline if only copying part of wrapped line. Problem spotted
by and fix from Micah Cowan.
2010-02-17 20:58:24 +00:00