Nicholas Marriott
946affe60d
Stupid cvsps.
2009-07-17 12:35:01 +00:00
Nicholas Marriott
89543e999d
A similar for fix for window_choose: don't rely on the callback always being
...
called to free data, have a separate free callback and call it from the mode
cleanup code.
2009-07-17 12:12:54 +00:00
Nicholas Marriott
fc17ce0150
Oops, it is always a good idea to get arguments the right way round.
2009-07-17 09:28:27 +00:00
Nicholas Marriott
441c118b63
Memory could be leaked if a second prompt or message appeared while another was
...
still present, so add a separate prompt free callback and make the _clear
function responsible for calling it if necessary (rather than the individual
2009-07-17 09:26:21 +00:00
Nicholas Marriott
ac55534055
Remove some duplicate code that was causing the status line to be redrawn even
...
when it hadn't changed.
2009-07-17 07:46:08 +00:00
Nicholas Marriott
821de39b27
Fix arguments to switch-client.
2009-07-17 07:45:42 +00:00
Nicholas Marriott
ede2dd2d3a
Typo in grid_duplicate_lines (sy for dy) causing it to write into the wrong
...
place when copying UTF-8 data. Found by Dan Colish.
2009-07-17 07:45:08 +00:00
Nicholas Marriott
08d32a1522
Update TODO.
2009-07-16 07:35:41 +00:00
Nicholas Marriott
d956ed0760
Typo in grid_duplicate_lines (sy for dy) causing it to write into the wrong
...
place when copying UTF-8 data. Found by Dan Colish.
2009-07-16 07:35:35 +00:00
Nicholas Marriott
6fe25a08d7
Improved NetBSD current-process detection from Roy Marples.
2009-07-15 17:53:15 +00:00
Nicholas Marriott
222b8e6743
Make status_message_set a variadic printf-like function. No functional change -
...
helpful for a couple of things coming soon.
2009-07-15 17:50:11 +00:00
Nicholas Marriott
d6908dd9c2
Return -1 not NULL on error, pointed out by Roy Marples.
2009-07-15 17:46:09 +00:00
Nicholas Marriott
ac2ab6501d
Add a -k flag to unlink-window which makes it behave the same as the old
...
kill-window - if a window is linked into only one session it unlinked and
destroyed.
2009-07-15 17:45:29 +00:00
Nicholas Marriott
8bfbc8c61d
The man page says that kill-window removes the window entirely, unlinking it
...
from any sessions. In fact the implementation only affected the current
session, making it the same as unlink-window but destroying the window if it
was linked into only one session (unlinkw gives an error). Change the behaviour
to match what it documented and was originally intended.
2009-07-15 17:45:09 +00:00
Nicholas Marriott
ff90170738
Having to update NSETOPTION/NSETWINDOWOPTION when adding new options is a bit
...
annoying and it is only use for iterating, so use a sentinel to mark the end of
each array instead. Different fix for a problem pointed out by Kalle Olavi
Niemitalo.
2009-07-15 17:44:47 +00:00
Nicholas Marriott
6ebb1df8fe
Add main-pane-height to the options list (was missed before).
2009-07-15 17:44:25 +00:00
Nicholas Marriott
ff500b46c9
For some reason when clearing status/message it was redrawing the entire client
...
not just the status line. Changing this also revealed the check for the status
line was incorrect when drawing the pane.
2009-07-15 17:44:06 +00:00
Nicholas Marriott
72d56bd614
Instead of faking up a status line in status_redraw, use the same code to
...
redraw it as to draw the entire screen, just skip all lines but the last.
2009-07-15 17:43:45 +00:00
Nicholas Marriott
ad1945c278
Don't accept input to a window if it not visible.
2009-07-15 17:43:21 +00:00
Nicholas Marriott
82b45b460e
The scroll region cannot be one line only, ignore attempts to make it so.
2009-07-15 17:43:02 +00:00
Nicholas Marriott
1e574bb70c
Get rid of the PANE_HIDDEN flag in favour of a function, and moving the
...
decision for whether or not a pane should be drawn out of the layout code and
into the redraw code.
This is needed for the new layout design, getting it in now to make that easier
to work on.
2009-07-15 17:42:44 +00:00
Nicholas Marriott
537c32b6b6
Escape ~, pointed out by tcunha.
2009-07-14 17:44:24 +00:00
Nicholas Marriott
f44ae0535e
Need time.h not sys/time.h for time(2).
2009-07-14 07:01:03 +00:00
Nicholas Marriott
910d6282c4
Whoops, chose the wrong one in a conflict. Revert.
2009-07-14 06:54:38 +00:00
Nicholas Marriott
20e322bf9b
arg.c is no longer required.
2009-07-14 06:47:46 +00:00
Nicholas Marriott
edd3142d1f
Don't need ncurses, use curses.
2009-07-14 06:47:12 +00:00
Nicholas Marriott
097b96ea44
Having fixed flags for single-character getopt options is a bit hard to
...
maintain and is only going to get worse as more are used. So instead, add a new
uint64_t member to cmd_entry which is a bitmask of upper and lowercase options
accepted by the command.
This means new single character options can be used without the need to add it
explicitly to the list.
2009-07-14 06:43:33 +00:00
Nicholas Marriott
5ccd0025a0
copy-mode and scroll-mode have a -u flag missing from usage, add it.
2009-07-14 06:42:22 +00:00
Nicholas Marriott
d358a352c0
Tidy up and improve target (-t) argument parsing:
...
- move the code back into cmd.c and merge with the existing functions where
possible;
- accept "-tttyp0" as well as "-t/dev/ttyp0" for clients;
- when looking up session names, try an exact match first, and if that fails
look for it as an fnmatch pattern and then as the start of a name - if more
that one session matches an error is given; so if there is one session called
"mysession", -tmysession, -tmysess, -tmysess* are equivalent but if there
is also "mysession2", the last two are errors;
- similarly for windows, if the argument is not a valid index or exact window
name match, try it against the window names as an fnmatch pattern and a
prefix.
2009-07-14 06:42:06 +00:00
Nicholas Marriott
e63567d51c
Support "alternate screen" mode (terminfo smcup/rmcup) typically used by full
...
screen interactive programs to preserve the screen contents. When activated, it
saves a copy of the visible grid and disables scrolling into and resizing out
of the history; when deactivated the visible data is restored and the history
reenabled.
2009-07-14 06:40:33 +00:00
Nicholas Marriott
f41ef2198b
Missed this declaration in key bindings change. Whoops.
2009-07-14 06:40:03 +00:00
Nicholas Marriott
61bd3ae1c6
Document the -k flag to new-window.
2009-07-14 06:39:44 +00:00
Nicholas Marriott
5ef5bd7c31
Add a "back to indentation" key in copy mode to move the cursor to the first
...
non-whitespace character. ^ with vi and M-m with emacs key bindings. Another
from Kalle Olavi Niemitalo, thanks.
2009-07-14 06:39:25 +00:00
Nicholas Marriott
7f98193beb
Merge three copies of identical code to move the cursor x position into a
...
single function, from Kalle Olavi Niemitalo.
2009-07-14 06:38:32 +00:00
Nicholas Marriott
d2c3dbc665
If it exist, load a system-wide configuration file /etc/tmux.conf before any
...
user-specified one.
2009-07-14 06:38:14 +00:00
Tiago Cunha
2f75b07d08
Update.
2009-07-13 18:29:28 +00:00
Tiago Cunha
280619a4e8
Expand leading tilde on commands which expect a filename.
2009-07-13 18:03:18 +00:00
Nicholas Marriott
6db6df882c
Update.
2009-07-13 11:33:06 +00:00
Nicholas Marriott
db411ca515
Update TODO.
2009-07-13 06:29:19 +00:00
Nicholas Marriott
3fb3613d34
Limit the history to hlimit not hlimit - 1. This makes a history-limit setting
...
of 0 work as expected.
2009-07-12 17:12:41 +00:00
Nicholas Marriott
30f47dfc5e
Add -r to the synopsis of the paste-buffer command, prompted by jmc.
2009-07-12 17:12:06 +00:00
Nicholas Marriott
27fc963631
When pasting, translate \n into \r. This matches xterm and putty's behaviour,
...
and makes emacs happy when pasting into some modes. A new -r (raw) flag to
paste-buffer pastes without the translation.
From Kalle Olavi Niemitalo, thanks!
2009-07-12 17:11:39 +00:00
Nicholas Marriott
d8de72ca77
Copy was using the real line length which after resize can be larger than the
...
screen width. When built with -DDEBUG, this made the grid bounds checking code
kill the server. Restrict copying to the actual width.
From Kalle Olavi Niemitalo, thanks.
2009-07-12 17:11:07 +00:00
Nicholas Marriott
ef5f356da2
paste-buffer -d was not documented. From Kalle Olavi Niemitalo.
2009-07-12 17:10:35 +00:00
Nicholas Marriott
1919deab1f
Redraw the status line after renaming a session (it may contain the name).
2009-07-12 17:09:15 +00:00
Nicholas Marriott
fd0971542f
Don't send initialisation strings is1/2/3 (barely anything else does) and move
...
smcup to the first and rmcup to the last sequences output to the terminal. This
allows tmux to use the alternate screen (smcup/rmcup) when available.
2009-07-12 17:08:37 +00:00
Nicholas Marriott
d7b4aa0ff3
Add a default-terminal option to set the starting value of $TERM in new
...
windows.
2009-07-12 17:07:58 +00:00
Nicholas Marriott
79bc6041c9
Document display-time option which seems to have been missed.
2009-07-12 17:04:21 +00:00
Nicholas Marriott
8be8016a76
When the terminal size is reduced horizontally, don't truncate lines to the new
...
width, so that if the same lines are later increased in size the content
reappears.
2009-07-12 17:03:11 +00:00
Nicholas Marriott
d4a143a425
Stop in the right place so all the lines selected are copied. Reported by Kalle
...
Olavi Niemitalo, thanks.
2009-07-12 16:56:56 +00:00