Nicholas Marriott 
							
						 
					 
					
						
						
							
						
						d210d99cce 
					 
					
						
						
							
							Make mouse event structure clearer by defining events (up, click, drag)  
						
						... 
						
						
						
						and simplifying how buttons and wheels are represented, from Ailin
Nemui. Should be no functional changes. 
						
						
					 
					
						2012-10-26 14:35:42 +00:00 
						 
				 
			
				
					
						
							
							
								Nicholas Marriott 
							
						 
					 
					
						
						
							
						
						596e9d8068 
					 
					
						
						
							
							Fix bad size in memcpy from Romain Francoise.  
						
						
						
						
					 
					
						2012-10-25 11:14:46 +00:00 
						 
				 
			
				
					
						
							
							
								Nicholas Marriott 
							
						 
					 
					
						
						
							
						
						58e8e0eac8 
					 
					
						
						
							
							Fix up window reference counting and don't crash if the rename timer  
						
						... 
						
						
						
						fires while the window is dead but still referenced. Fixes problem
reported by Michael Scholz. 
						
						
					 
					
						2012-08-21 10:00:33 +00:00 
						 
				 
			
				
					
						
							
							
								Nicholas Marriott 
							
						 
					 
					
						
						
							
						
						a3dec6bece 
					 
					
						
						
							
							Instead of numbering choose mode items 0-9a-z and then nothing, number  
						
						... 
						
						
						
						them all and if there are more than 10 use a prompt when 0-9 is
pressed. From Thomas Adam. 
						
						
					 
					
						2012-08-11 06:45:33 +00:00 
						 
				 
			
				
					
						
							
							
								Nicholas Marriott 
							
						 
					 
					
						
						
							
						
						df912e3540 
					 
					
						
						
							
							xfree is not particularly helpful, remove it. From Thomas Adam.  
						
						
						
						
					 
					
						2012-07-10 11:53:01 +00:00 
						 
				 
			
				
					
						
							
							
								Nicholas Marriott 
							
						 
					 
					
						
						
							
						
						63f5c38023 
					 
					
						
						
							
							Clear flags across all sessions, from Thomas Adam.  
						
						
						
						
					 
					
						2012-07-08 07:27:32 +00:00 
						 
				 
			
				
					
						
							
							
								Nicholas Marriott 
							
						 
					 
					
						
						
							
						
						f51c55c3f0 
					 
					
						
						
							
							Use default-shell not _PATH_BSHELL to spawn commands, pointed out by  
						
						... 
						
						
						
						Dennis G?nnewig and Thomas Adam. 
						
						
					 
					
						2012-05-28 08:55:43 +00:00 
						 
				 
			
				
					
						
							
							
								Nicholas Marriott 
							
						 
					 
					
						
						
							
						
						631d6b59fd 
					 
					
						
						
							
							Do not fire name timer when automatic-rename is off, from Tim Ruehsen a  
						
						... 
						
						
						
						while ago. 
						
						
					 
					
						2012-04-08 06:47:26 +00:00 
						 
				 
			
				
					
						
							
							
								Nicholas Marriott 
							
						 
					 
					
						
						
							
						
						c829bdf537 
					 
					
						
						
							
							Minor style nits - return ().  
						
						
						
						
					 
					
						2012-04-01 20:53:47 +00:00 
						 
				 
			
				
					
						
							
							
								Nicholas Marriott 
							
						 
					 
					
						
						
							
						
						85f5485cb5 
					 
					
						
						
							
							Add a layout history which can be stepped through with select-layout -u  
						
						... 
						
						
						
						and -U commands (bound to 'u' and 'U' by default). 
						
						
					 
					
						2012-04-01 13:18:38 +00:00 
						 
				 
			
				
					
						
							
							
								Nicholas Marriott 
							
						 
					 
					
						
						
							
						
						5672f2ce6b 
					 
					
						
						
							
							Check changes_timer with event_initialized before event_del.  
						
						
						
						
					 
					
						2012-03-20 14:06:44 +00:00 
						 
				 
			
				
					
						
							
							
								Nicholas Marriott 
							
						 
					 
					
						
						
							
						
						f59971276a 
					 
					
						
						
							
							Add a simple form of output rate limiting by counting the number of  
						
						... 
						
						
						
						certain C0 sequences (linefeeds, backspaces, carriage returns) and if it
exceeds a threshold (current default 50/millisecond), start to redraw
the pane every 100 milliseconds instead of making each change as it
comes. Two configuration options - c0-change-trigger and
c0-change-interval.
This makes tmux much more responsive under very fast output (for example
yes(1) or accidentally cat'ing a large file) but may not be perfect on
all terminals and connections - feedback very welcome, particularly
where this change has a negative rather than positive effect (making it
off by default is a possibility).
After much experimentation based originally on a request Robin Lee
Powell (which ended with a completely different solution), this idea
from discussion with Ailin Nemui. 
						
						
					 
					
						2012-03-20 11:01:00 +00:00 
						 
				 
			
				
					
						
							
							
								Nicholas Marriott 
							
						 
					 
					
						
						
							
						
						46210344a6 
					 
					
						
						
							
							Add notify hooks for various events, the functions are currently empty  
						
						... 
						
						
						
						stubs but will be filled in for control mode later. From George Nachman. 
						
						
					 
					
						2012-03-17 22:35:09 +00:00 
						 
				 
			
				
					
						
							
							
								Nicholas Marriott 
							
						 
					 
					
						
						
							
						
						d3c842d367 
					 
					
						
						
							
							Check event_initialized before event_del if event may not have been set  
						
						... 
						
						
						
						up; libevent2 complains about this. Reported by Moriyoshi Koizumi. 
						
						
					 
					
						2012-03-17 18:24:07 +00:00 
						 
				 
			
				
					
						
							
							
								Nicholas Marriott 
							
						 
					 
					
						
						
							
						
						8363d19307 
					 
					
						
						
							
							Move window name changes into wrapper function window_set_name, from  
						
						... 
						
						
						
						George Nachman. 
						
						
					 
					
						2012-02-02 00:10:11 +00:00 
						 
				 
			
				
					
						
							
							
								Nicholas Marriott 
							
						 
					 
					
						
						
							
						
						0e59bc75fd 
					 
					
						
						
							
							Give each window a unique id, like panes but prefixed with @. Based on  
						
						... 
						
						
						
						work from George Nachman. 
						
						
					 
					
						2012-01-30 09:39:34 +00:00 
						 
				 
			
				
					
						
							
							
								Nicholas Marriott 
							
						 
					 
					
						
						
							
						
						9bbc63ed65 
					 
					
						
						
							
							Call bufferevent_free before closing file descriptor associated with it  
						
						... 
						
						
						
						or bugs in $EventMechanism on $OtherOS makes libevent get it's knickers
in a twist. From Dylan Alex Simon. 
						
						
					 
					
						2012-01-29 02:22:11 +00:00 
						 
				 
			
				
					
						
							
							
								Nicholas Marriott 
							
						 
					 
					
						
						
							
						
						57df442916 
					 
					
						
						
							
							Make window_pane_index work the same as window_index, from Ben Boeckel.  
						
						
						
						
					 
					
						2011-11-15 23:19:51 +00:00 
						 
				 
			
				
					
						
							
							
								Nicholas Marriott 
							
						 
					 
					
						
						
							
						
						e6a59c4bee 
					 
					
						
						
							
							Reject $SHELL if it is not a full path.  
						
						
						
						
					 
					
						2011-09-25 18:53:04 +00:00 
						 
				 
			
				
					
						
							
							
								Nicholas Marriott 
							
						 
					 
					
						
						
							
						
						f01b7191a3 
					 
					
						
						
							
							Add pane-base-index option, from Ben Barbour.  
						
						
						
						
					 
					
						2011-08-24 10:29:57 +00:00 
						 
				 
			
				
					
						
							
							
								Nicholas Marriott 
							
						 
					 
					
						
						
							
						
						2b60c648c4 
					 
					
						
						
							
							Get rid of the layout string code which tries to walk through the layout  
						
						... 
						
						
						
						hierarchy and instead just look at what panes are actually in the window. 
						
						
					 
					
						2011-06-05 10:53:05 +00:00 
						 
				 
			
				
					
						
							
							
								Nicholas Marriott 
							
						 
					 
					
						
						
							
						
						0f97ac4221 
					 
					
						
						
							
							The mouse should only work in copy mode if mode-mouse is set, not just  
						
						... 
						
						
						
						mouse-select-pane. 
						
						
					 
					
						2011-04-18 20:57:16 +00:00 
						 
				 
			
				
					
						
							
							
								Nicholas Marriott 
							
						 
					 
					
						
						
							
						
						808502ac3d 
					 
					
						
						
							
							Give each pane created in a tmux server a unique id (starting from 0),  
						
						... 
						
						
						
						put it in the TMUX_PANE environment variable and accept it as a
target. Suggested by and with testing and tweaks from Ben Boeckel. 
						
						
					 
					
						2011-03-27 20:27:26 +00:00 
						 
				 
			
				
					
						
							
							
								Nicholas Marriott 
							
						 
					 
					
						
						
							
						
						1270f8fed8 
					 
					
						
						
							
							Check if the index is in use and fail before creating the child process,  
						
						... 
						
						
						
						rather than leaving a stray child on failure. 
						
						
					 
					
						2011-01-25 22:31:50 +00:00 
						 
				 
			
				
					
						
							
							
								Nicholas Marriott 
							
						 
					 
					
						
						
							
						
						69cb1f830e 
					 
					
						
						
							
							Move all calls to fcntl(...O_NONBLOCK) into a function and clear the  
						
						... 
						
						
						
						flag on the stdio file descriptors before closing them (fixes things
like "tmux ls && cat"). 
						
						
					 
					
						2011-01-08 01:52:36 +00:00 
						 
				 
			
				
					
						
							
							
								Nicholas Marriott 
							
						 
					 
					
						
						
							
						
						2231e72968 
					 
					
						
						
							
							Add a function to create window flags rather than doing the same thing  
						
						... 
						
						
						
						in two places. From Thomas Adam. 
						
						
					 
					
						2010-12-30 21:35:17 +00:00 
						 
				 
			
				
					
						
							
							
								Nicholas Marriott 
							
						 
					 
					
						
						
							
						
						e26a351865 
					 
					
						
						
							
							Add an option to alert (monitor) for silence (lack of activity) in a  
						
						... 
						
						
						
						window. From Thomas Adam. 
						
						
					 
					
						2010-12-06 22:51:02 +00:00 
						 
				 
			
				
					
						
							
							
								Nicholas Marriott 
							
						 
					 
					
						
						
							
						
						503edae26f 
					 
					
						
						
							
							Don't allow last and active window to become the same - a very bad move  
						
						... 
						
						
						
						when the active window is closed and freed. Reported by sthen@. 
						
						
					 
					
						2010-11-14 08:58:25 +00:00 
						 
				 
			
				
					
						
							
							
								Nicholas Marriott 
							
						 
					 
					
						
						
							
						
						5de84eca3d 
					 
					
						
						
							
							Add a last-pane command (bound to ; by default). Requested ages ago by  
						
						... 
						
						
						
						somebody whose name I have forgotten. 
						
						
					 
					
						2010-10-23 13:04:34 +00:00 
						 
				 
			
				
					
						
							
							
								Nicholas Marriott 
							
						 
					 
					
						
						
							
						
						a3efd2ab5a 
					 
					
						
						
							
							When removing a pane, don't change the active pane unless the active  
						
						... 
						
						
						
						pane is actually the one being removed. 
						
						
					 
					
						2010-10-23 12:51:51 +00:00 
						 
				 
			
				
					
						
							
							
								Nicholas Marriott 
							
						 
					 
					
						
						
							
						
						f56b4ec2ff 
					 
					
						
						
							
							Trying to set FD_CLOEXEC on every fd is a lost cause, just use  
						
						... 
						
						
						
						closefrom() before exec. 
						
						
					 
					
						2010-10-16 08:31:55 +00:00 
						 
				 
			
				
					
						
							
							
								Nicholas Marriott 
							
						 
					 
					
						
						
							
						
						f69ce39a6c 
					 
					
						
						
							
							When destroying a pane, reset any mode (which reenables pane  
						
						... 
						
						
						
						bufferevent) before freeing the bufferevent. 
						
						
					 
					
						2010-08-25 19:19:43 +00:00 
						 
				 
			
				
					
						
							
							
								Nicholas Marriott 
							
						 
					 
					
						
						
							
						
						e3be9b1951 
					 
					
						
						
							
							Do not call event_del() for signals after fork(), just use sigaction()  
						
						... 
						
						
						
						directly instead - calling libevent functions after fork() w/o
event_reinit() is a bad idea, even if in this case it was harmless. 
						
						
					 
					
						2010-08-19 18:29:01 +00:00 
						 
				 
			
				
					
						
							
							
								Nicholas Marriott 
							
						 
					 
					
						
						
							
						
						43355fa75c 
					 
					
						
						
							
							Make pane/window wrapping more logical (so with 10 windows, +10 from  
						
						... 
						
						
						
						window 5 stays in the same place), and tidy the code. From Tiago Cunha. 
						
						
					 
					
						2010-07-14 18:37:49 +00:00 
						 
				 
			
				
					
						
							
							
								Nicholas Marriott 
							
						 
					 
					
						
						
							
						
						386849edc1 
					 
					
						
						
							
							Extend the -t:+ and -t:- window targets for next and previous window to  
						
						... 
						
						
						
						accept an offset such as -t:+2. From Tiago Cunha. 
						
						
					 
					
						2010-06-21 01:46:36 +00:00 
						 
				 
			
				
					
						
							
							
								Nicholas Marriott 
							
						 
					 
					
						
						
							
						
						4f5c5b37b8 
					 
					
						
						
							
							Pass in the session, rather than the client, to window modes' key()  
						
						... 
						
						
						
						function. We were only ever using the client to find the session anyway.
This allows send-key to work properly for manipulating copy mode from
outside tmux.
From Micah Cowan. 
						
						
					 
					
						2010-05-23 19:42:19 +00:00 
						 
				 
			
				
					
						
							
							
								Nicholas Marriott 
							
						 
					 
					
						
						
							
						
						c4a2fdf15b 
					 
					
						
						
							
							Put this back in with the initialisation in the right order.  
						
						
						
						
					 
					
						2010-05-04 17:28:16 +00:00 
						 
				 
			
				
					
						
							
							
								Nicholas Marriott 
							
						 
					 
					
						
						
							
						
						af5e0bd15a 
					 
					
						
						
							
							Revert last change, it appears to be broken somehow.  
						
						
						
						
					 
					
						2010-05-04 08:48:06 +00:00 
						 
				 
			
				
					
						
							
							
								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 
						 
				 
			
				
					
						
							
							
								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 
							
						 
					 
					
						
						
							
						
						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 
							
						 
					 
					
						
						
							
						
						4baafd8126 
					 
					
						
						
							
							New input parser based on  http://vt100.net/emu/dec_ansi_parser .  
						
						
						
						
					 
					
						2010-03-22 19:02:54 +00:00 
						 
				 
			
				
					
						
							
							
								Nicholas Marriott 
							
						 
					 
					
						
						
							
						
						8aba77b7be 
					 
					
						
						
							
							Instead of bailing out on the first configuration file error, carry on,  
						
						... 
						
						
						
						collecting all the errors, then start with the active window in more mode
displaying them. 
						
						
					 
					
						2010-02-06 17:15:33 +00:00 
						 
				 
			
				
					
						
							
							
								Nicholas Marriott 
							
						 
					 
					
						
						
							
						
						15a64b805e 
					 
					
						
						
							
							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... 
						
						
					 
					
						2009-12-03 22:50:09 +00:00 
						 
				 
			
				
					
						
							
							
								Nicholas Marriott 
							
						 
					 
					
						
						
							
						
						4ca857e0e9 
					 
					
						
						
							
							Remove a couple of unused arguments where possible, and add /* ARGSUSED */ to  
						
						... 
						
						
						
						the rest to reduce lint output. 
						
						
					 
					
						2009-11-26 21:37:13 +00:00 
						 
				 
			
				
					
						
							
							
								Nicholas Marriott 
							
						 
					 
					
						
						
							
						
						33b337f618 
					 
					
						
						
							
							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. 
						
						
					 
					
						2009-11-19 19:47:28 +00:00 
						 
				 
			
				
					
						
							
							
								Nicholas Marriott 
							
						 
					 
					
						
						
							
						
						8e47966225 
					 
					
						
						
							
							Destroy panes immediately rather than checking them all every loop.  
						
						
						
						
					 
					
						2009-11-13 17:33:07 +00:00 
						 
				 
			
				
					
						
							
							
								Nicholas Marriott 
							
						 
					 
					
						
						
							
						
						44d6a2c435 
					 
					
						
						
							
							Change window name change to use a timer event rather than a gettimeofday()  
						
						... 
						
						
						
						check every loop. 
						
						
					 
					
						2009-11-04 23:54:57 +00:00 
						 
				 
			
				
					
						
							
							
								Nicholas Marriott 
							
						 
					 
					
						
						
							
						
						a02c7e804c 
					 
					
						
						
							
							Convert the window pane (pty master side) fd over to use a bufferevent.  
						
						... 
						
						
						
						The evbuffer API is very similar to the existing tmux buffer API so this was
remarkably painless. Not many possible ways to do it, I suppose. 
						
						
					 
					
						2009-11-04 22:43:11 +00:00