nicm 
							
						 
					 
					
						
						
							
						
						995af0e2b7 
					 
					
						
						
							
							I no longer use my SourceForge address so replace it.  
						
						 
						
						
						
						
					 
					
						2016-01-19 15:59:12 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						d2fb0efcd1 
					 
					
						
						
							
							Add hooks infrastructure, basic commands (set-hook, show-hooks) and a  
						
						 
						
						... 
						
						
						
						couple of not very useful client hooks. This will eventually let
commands be run at various points and on notifications. Joint work with
Thomas Adam. 
						
						
					 
					
						2015-12-08 01:10:31 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						577c0e3e5a 
					 
					
						
						
							
							Use __unused rather than rolling our own.  
						
						 
						
						
						
						
					 
					
						2015-11-18 14:27:44 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						ca5e6bf5f2 
					 
					
						
						
							
							Don't update activity time twice for new sessions, and add some logging.  
						
						 
						
						
						
						
					 
					
						2015-11-18 09:22:29 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						01defc9f49 
					 
					
						
						
							
							Because pledge(2) does not allow us to pass directory file descriptors  
						
						 
						
						... 
						
						
						
						around, we can't use file descriptors for the working directory because
we will be unable to pass it to a privileged process to tell it where to
read or write files or spawn children. So move tmux back to using
strings for the current working directory. We try to check it exists
with access() when it is set but ultimately fall back to ~ if it fails
at time of use (or / if that fails too). 
						
						
					 
					
						2015-10-31 08:13:58 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						bf9c933cae 
					 
					
						
						
							
							Like options, move the environ struct into environ.c.  
						
						 
						
						
						
						
					 
					
						2015-10-28 09:51:55 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						44657bf932 
					 
					
						
						
							
							Move struct options into options.c.  
						
						 
						
						
						
						
					 
					
						2015-10-27 15:58:42 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						fa3d4fab85 
					 
					
						
						
							
							Fix a spelling error, sesson -> session.  
						
						 
						
						
						
						
					 
					
						2015-09-01 18:50:16 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						b5aaefc727 
					 
					
						
						
							
							Move alerts onto events rather than checking every loop.  
						
						 
						
						
						
						
					 
					
						2015-08-29 08:30:54 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						ed2a486f46 
					 
					
						
						
							
							Don't leak name when freeing session, from Kuang-che Wu.  
						
						 
						
						
						
						
					 
					
						2015-08-28 13:16:03 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						f6a0f8730e 
					 
					
						
						
							
							Per-session timers for locking, and remove the global one-second timer.  
						
						 
						
						
						
						
					 
					
						2015-08-28 13:12:20 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						57cc4d45d5 
					 
					
						
						
							
							Make session_update_activity more useful and use it in more places.  
						
						 
						
						
						
						
					 
					
						2015-08-28 13:01:03 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						641a9cd3f5 
					 
					
						
						
							
							Similarly, for sessions use a callback to free rather than checking  
						
						 
						
						... 
						
						
						
						every loop. 
						
						
					 
					
						2015-06-05 18:18:32 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						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  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						6dbd63ba4f 
					 
					
						
						
							
							Move the functions to convert ids from strings into session.c and window.c.  
						
						 
						
						
						
						
					 
					
						2015-04-25 18:09:28 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						9a453dd354 
					 
					
						
						
							
							Make session_has return a flag, returning the first winlink found is a  
						
						 
						
						... 
						
						
						
						recipe for errors. 
						
						
					 
					
						2015-04-22 15:32:33 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						abfb9656ef 
					 
					
						
						
							
							Fix some spacing nits.  
						
						 
						
						
						
						
					 
					
						2014-10-22 23:18:53 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						68cb1c0e6b 
					 
					
						
						
							
							Merge unlink-window into kill-window.  
						
						 
						
						
						
						
					 
					
						2014-10-22 23:11:41 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						b3e8d440ed 
					 
					
						
						
							
							If multiple arguments are given to new-session, new-window,  
						
						 
						
						... 
						
						
						
						split-window, respawn-window or respawn-pane, pass them directly to
execvp() to help avoid quoting problems. One argument still goes to "sh
-c" like before. Requested by many over the years. Patch from J Raynor. 
						
						
					 
					
						2014-05-13 08:08:32 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						3e27be353d 
					 
					
						
						
							
							Set PATH explicitly, either from client or session  
						
						 
						
						... 
						
						
						
						environment. Previously it came from the session environment. From J
Raynor. 
						
						
					 
					
						2014-04-17 13:02:59 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						9ee93b3ea3 
					 
					
						
						
							
							Do not permit periods in session names (colons are already banned). From  
						
						 
						
						... 
						
						
						
						J Raynor. 
						
						
					 
					
						2014-01-22 14:00:08 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						282c5f9644 
					 
					
						
						
							
							Alter how tmux handles the working directory to internally use file  
						
						 
						
						... 
						
						
						
						descriptors rather than strings.
- Each session still has a current working directory.
- New sessions still get their working directory from the client that
  created them or its attached session if any.
- New windows are created by default in the session working directory.
- The -c flag to new, neww, splitw allows the working directory to be
  overridden.
- The -c flag to attach let's the session working directory be changed.
- The default-path option has been removed.
To get the equivalent to default-path '.', do:
        bind c neww -c $PWD
To get the equivalent of default-path '~', do:
        bind c neww -c ~
This also changes the client identify protocol to be a set of messages rather
than one as well as some other changes that should make it easier to make
backwards-compatible protocol changes in future. 
						
						
					 
					
						2013-10-10 12:26:34 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						34674bb180 
					 
					
						
						
							
							Renumber windows: Lookup lastw via window not index  
						
						 
						
						... 
						
						
						
						When calling 'movew -r' on a session to reorder the winlinks, ensure
when adding back in the information for the lastw stack that we look up
the winlink based on the window and not its index.
Using the index doesn't make sense here because when comparing it to the
old set, it will never match since the winlink has been renumbered.
Bug reported by Ben Boeckel. Patch by Thomas Adam. 
						
						
					 
					
						2013-10-10 11:58:24 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						d3830e622f 
					 
					
						
						
							
							Grouped sessions were being leaked on destroy, correctly free them.  
						
						 
						
						
						
						
					 
					
						2013-10-10 11:46:28 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Nicholas Marriott 
							
						 
					 
					
						
						
							
						
						6fee3e9e4b 
					 
					
						
						
							
							Rename session idx to session id throughout and add $ prefix to targets  
						
						 
						
						... 
						
						
						
						to use it, extended from a diff from George Nachman. 
						
						
					 
					
						2013-03-25 10:11:45 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Nicholas Marriott 
							
						 
					 
					
						
						
							
						
						eaaeb28cda 
					 
					
						
						
							
							Add session_set_current helper function, extracted from a diff from  
						
						 
						
						... 
						
						
						
						Aaron Jensen. 
						
						
					 
					
						2013-03-22 16:00:26 +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 
							
						 
					 
					
						
						
							
						
						a6c22d650b 
					 
					
						
						
							
							Add a flag to move-window to renumber the windows in a session (closing  
						
						 
						
						... 
						
						
						
						any gaps) and add an option to do this automatically each time a window
is killed. From Thomas Adam. 
						
						
					 
					
						2012-04-29 17:20:01 +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 
							
						 
					 
					
						
						
							
						
						6b734d1074 
					 
					
						
						
							
							Correctly skip existing numbers when generating the name for a new  
						
						 
						
						... 
						
						
						
						session. 
						
						
					 
					
						2011-08-16 09:36:23 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Nicholas Marriott 
							
						 
					 
					
						
						
							
						
						ec89eb9552 
					 
					
						
						
							
							Change so that an empty session name always means the current sessions  
						
						 
						
						... 
						
						
						
						even if given with, for example, -t '', and explicitly forbid empty
session names and those containing a : when they are created. 
						
						
					 
					
						2011-04-06 21:51:31 +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 
							
						 
					 
					
						
						
							
						
						2d82567070 
					 
					
						
						
							
							Er, fix next and previous session functions to actually work, part 2.  
						
						 
						
						
						
						
					 
					
						2011-01-13 02:08:14 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Nicholas Marriott 
							
						 
					 
					
						
						
							
						
						588ebb5393 
					 
					
						
						
							
							Fix next and previous session functions to actually work.  
						
						 
						
						
						
						
					 
					
						2011-01-13 02:07:06 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Nicholas Marriott 
							
						 
					 
					
						
						
							
						
						04b32fa734 
					 
					
						
						
							
							Don't reset the activity timer for unattached sessions every second,  
						
						 
						
						... 
						
						
						
						this screws up the choice of most-recently-used. Instead, break the time
update into a little function and do it when the session is attached.
Pointed out by joshe@. 
						
						
					 
					
						2011-01-01 01:12:09 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Nicholas Marriott 
							
						 
					 
					
						
						
							
						
						cc42614fa9 
					 
					
						
						
							
							Change from a per-session stack of buffers to one global stack which is  
						
						 
						
						... 
						
						
						
						much more convenient and also simplifies lot of code. This renders
copy-buffer useless and makes buffer-limit now a server option.
By Tiago Cunha. 
						
						
					 
					
						2010-12-30 23:16:18 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Nicholas Marriott 
							
						 
					 
					
						
						
							
						
						acf13ce978 
					 
					
						
						
							
							Store sessions in an RB tree by name rather than a list, this is tidier  
						
						 
						
						... 
						
						
						
						and allows them to easily be shown sorted in various lists
(list-sessions/choose-sessions).
Keep a session index which is used in a couple of places internally but
make it an ever-increasing number rather than filling in gaps with new
sessions. 
						
						
					 
					
						2010-12-21 22:37:59 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Nicholas Marriott 
							
						 
					 
					
						
						
							
						
						1b8488ee75 
					 
					
						
						
							
							Fix another stray addition that was too early. Oops.  
						
						 
						
						
						
						
					 
					
						2010-12-20 01:28:18 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Nicholas Marriott 
							
						 
					 
					
						
						
							
						
						6fcdc714b6 
					 
					
						
						
							
							Undo a change to next/previous session that got mixed in prematurely.  
						
						 
						
						
						
						
					 
					
						2010-12-20 00:43:24 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Nicholas Marriott 
							
						 
					 
					
						
						
							
						
						8705c6b435 
					 
					
						
						
							
							Dead sessions are never on the active sessions list, so the SESSION_DEAD  
						
						 
						
						... 
						
						
						
						flag is effectively unused. Remove it. 
						
						
					 
					
						2010-12-20 00:19:20 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Nicholas Marriott 
							
						 
					 
					
						
						
							
						
						a51dcdc430 
					 
					
						
						
							
							Unify the way sessions are used by callbacks - store the address and use  
						
						 
						
						... 
						
						
						
						the reference count, then check it is still on the global sessions list
in the callback. 
						
						
					 
					
						2010-12-20 00:03:55 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Nicholas Marriott 
							
						 
					 
					
						
						
							
						
						a22a6deda5 
					 
					
						
						
							
							Add -n and -p flags to switch-client to move to the next and previous  
						
						 
						
						... 
						
						
						
						session (yes, it doesn't match window/pane, but so what, nor does
switch-client).
Based on a diff long ago from "edsouza". 
						
						
					 
					
						2010-09-08 22:02:28 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Nicholas Marriott 
							
						 
					 
					
						
						
							
						
						07a71fd432 
					 
					
						
						
							
							Store the current working directory in the session, change the default-path  
						
						 
						
						... 
						
						
						
						option to default to empty and make that mean that the stored session CWD is
used. 
						
						
					 
					
						2010-06-27 02:56:59 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Nicholas Marriott 
							
						 
					 
					
						
						
							
						
						e63f0546a1 
					 
					
						
						
							
							Having a list of winlinks->alerts for each session is stupid, just store  
						
						 
						
						... 
						
						
						
						the alert flags directly in the winlink itself. 
						
						
					 
					
						2010-06-21 01:27:46 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Nicholas Marriott 
							
						 
					 
					
						
						
							
						
						447a07e9f8 
					 
					
						
						
							
							Rename activity->alert in a couple of functions for consistency.  
						
						 
						
						
						
						
					 
					
						2010-06-21 00:25:32 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Nicholas Marriott 
							
						 
					 
					
						
						
							
						
						4feee126b8 
					 
					
						
						
							
							Fix a couple of problems with grouped sessions reported by danh: redraw  
						
						 
						
						... 
						
						
						
						properly and choose the correct last window after a window is killed. 
						
						
					 
					
						2009-12-22 10:20:08 +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 
							
						 
					 
					
						
						
							
						
						1415eb3dd2 
					 
					
						
						
							
							Use winlink_remove() to remove old winlinks when synchronizing grouped sessions  
						
						 
						
						... 
						
						
						
						rather than doing it manually and not adjusted the reference count. Fixes
crash seen by Dan Harnett. 
						
						
					 
					
						2009-11-13 14:47:31 +00:00