nicm 
							
						 
					 
					
						
						
							
						
						e00853ee82 
					 
					
						
						
							
							Add an option allowing users to override the width of individual Unicode  
						
						... 
						
						
						
						codepoints (overriding tmux's default list). 
						
						
					 
					
						2025-01-01 15:17:36 +00:00 
						 
				 
			
				
					
						
							
							
								nicm 
							
						 
					 
					
						
						
							
						
						73b2277af8 
					 
					
						
						
							
							Client flags was changed to uint64_t a while ago, fix a few cases where  
						
						... 
						
						
						
						it is still int (do not matter now but will with some new flags). From
Michael Grant. 
						
						
					 
					
						2024-08-26 07:30:46 +00:00 
						 
				 
			
				
					
						
							
							
								nicm 
							
						 
					 
					
						
						
							
						
						a18d1146aa 
					 
					
						
						
							
							Add missing time.h to tty.c (from Ismail Donmez), also remove some stray  
						
						... 
						
						
						
						spaces. 
						
						
					 
					
						2024-05-14 10:11:09 +00:00 
						 
				 
			
				
					
						
							
							
								nicm 
							
						 
					 
					
						
						
							
						
						f09cde2542 
					 
					
						
						
							
							Change UTF-8 combining to inspect the previous character at the cursor  
						
						... 
						
						
						
						position rather than keeping the last character from the input stream,
this is how most terminals work and fixes problems with displaying these
characters in vim. GitHub issue 3600. 
						
						
					 
					
						2023-09-15 15:49:05 +00:00 
						 
				 
			
				
					
						
							
							
								nicm 
							
						 
					 
					
						
						
							
						
						9456258ccc 
					 
					
						
						
							
							Rewrite combined character handling to be more consistent and to support  
						
						... 
						
						
						
						newer Unicode combined characters (which we have to "know" are combined
since they are not width zero). GitHub issue 3600. 
						
						
					 
					
						2023-09-01 14:29:11 +00:00 
						 
				 
			
				
					
						
							
							
								nicm 
							
						 
					 
					
						
						
							
						
						cdacc12ce3 
					 
					
						
						
							
							Add support for OSC 8 hyperlinks (a VTE extension now supported by other  
						
						... 
						
						
						
						terminals such as iTerm2). Originally written by me then extended and
completed by first Will Noble and later Jeff Chiang. GitHub issues 911,
2621, 2890, 3240. 
						
						
					 
					
						2022-06-30 09:55:53 +00:00 
						 
				 
			
				
					
						
							
							
								nicm 
							
						 
					 
					
						
						
							
						
						9c89f7c2af 
					 
					
						
						
							
							Store time lines are scrolled into history and display in copy mode.  
						
						
						
						
					 
					
						2022-06-21 09:30:01 +00:00 
						 
				 
			
				
					
						
							
							
								nicm 
							
						 
					 
					
						
						
							
						
						cd692b5a68 
					 
					
						
						
							
							Add an ACL list for users connecting to the tmux socket. Users may be  
						
						... 
						
						
						
						forbidden from attaching, forced to attach read-only, or allowed to
attach read-write. A new command, server-access, configures the list.
tmux gets the user using getpeereid(3) of the client socket. Users must
still configure file system permissions manually. From Dallas Lyons and
others. 
						
						
					 
					
						2022-05-30 12:48:57 +00:00 
						 
				 
			
				
					
						
							
							
								nicm 
							
						 
					 
					
						
						
							
						
						207b1bc385 
					 
					
						
						
							
							Report error if creating socket fails with -D.  
						
						
						
						
					 
					
						2022-03-28 07:40:57 +00:00 
						 
				 
			
				
					
						
							
							
								nicm 
							
						 
					 
					
						
						
							
						
						422fcd294a 
					 
					
						
						
							
							Fix exit message if creating socket fails.  
						
						
						
						
					 
					
						2022-03-25 06:14:42 +00:00 
						 
				 
			
				
					
						
							
							
								nicm 
							
						 
					 
					
						
						
							
						
						6c659494f5 
					 
					
						
						
							
							Fix warnings, from Jan Tache in GitHub issue 2692.  
						
						
						
						
					 
					
						2021-06-10 07:45:43 +00:00 
						 
				 
			
				
					
						
							
							
								nicm 
							
						 
					 
					
						
						
							
						
						ee0df1b8f8 
					 
					
						
						
							
							Tidy old jobs every hour instead of every 30 seconds.  
						
						
						
						
					 
					
						2021-03-11 07:08:18 +00:00 
						 
				 
			
				
					
						
							
							
								nicm 
							
						 
					 
					
						
						
							
						
						2b58c226db 
					 
					
						
						
							
							Add a couple of helper functions, and flush imsgs on exit.  
						
						
						
						
					 
					
						2021-02-11 09:39:29 +00:00 
						 
				 
			
				
					
						
							
							
								nicm 
							
						 
					 
					
						
						
							
						
						869c0e860f 
					 
					
						
						
							
							Fix some warnings, GitHub issue 2382.  
						
						
						
						
					 
					
						2020-09-16 18:37:55 +00:00 
						 
				 
			
				
					
						
							
							
								nicm 
							
						 
					 
					
						
						
							
						
						2372b0fdc6 
					 
					
						
						
							
							Add a flag to make a client wait for an empty line before exiting in  
						
						... 
						
						
						
						control mode to avoid stray commands ending up in the shell. 
						
						
					 
					
						2020-06-18 08:34:22 +00:00 
						 
				 
			
				
					
						
							
							
								nicm 
							
						 
					 
					
						
						
							
						
						a54a88edd6 
					 
					
						
						
							
							Instead of sending all data to control mode clients as fast as possible,  
						
						... 
						
						
						
						add a limit of how much data will be sent to the client and try to use
it for panes with some degree of fairness. GitHub issue 2217, with
George Nachman. 
						
						
					 
					
						2020-06-01 09:43:00 +00:00 
						 
				 
			
				
					
						
							
							
								nicm 
							
						 
					 
					
						
						
							
						
						dceb6a15d0 
					 
					
						
						
							
							Add a -D flag to ask tmux not to daemonize, useful both for running a  
						
						... 
						
						
						
						debugger (lldb does not have follow-fork-mode) and for running with a
managed supervisor init system. GitHub issue 2190. 
						
						
					 
					
						2020-05-16 16:07:55 +00:00 
						 
				 
			
				
					
						
							
							
								nicm 
							
						 
					 
					
						
						
							
						
						367b4e4e0f 
					 
					
						
						
							
							Change message log to be per server rather than per client and include  
						
						... 
						
						
						
						every command that is run. 
						
						
					 
					
						2020-05-16 15:47:22 +00:00 
						 
				 
			
				
					
						
							
							
								nicm 
							
						 
					 
					
						
						
							
						
						78595457f9 
					 
					
						
						
							
							Add 'e' key in buffer mode to open the buffer in an editor.  
						
						
						
						
					 
					
						2020-05-16 15:24:28 +00:00 
						 
				 
			
				
					
						
							
							
								nicm 
							
						 
					 
					
						
						
							
						
						2a5702a936 
					 
					
						
						
							
							When the server socket is given by the user with -S, create it with  
						
						... 
						
						
						
						umask 177 instead of 117 because it may not be in a safe directory like
the default directory in /tmp. The user can chmod it more open after it
is created if they want. 
						
						
					 
					
						2020-03-12 09:26:34 +00:00 
						 
				 
			
				
					
						
							
							
								nicm 
							
						 
					 
					
						
						
							
						
						ae541287d3 
					 
					
						
						
							
							Expand command formats in %if and move the config file loading later (to  
						
						... 
						
						
						
						when the first client has identified) so all the client formats are
available, fixes problems reported by Thomas Sattler. 
						
						
					 
					
						2019-06-20 06:51:36 +00:00 
						 
				 
			
				
					
						
							
							
								nicm 
							
						 
					 
					
						
						
							
						
						e37f34facc 
					 
					
						
						
							
							Do not load the config file if the server is exiting because it failed  
						
						... 
						
						
						
						to start, otherwise commands like lsk which start the server again can
end up looping infinitely. Also make the first client exit
correctly. Problem reported by Wael M Nasreddine. 
						
						
					 
					
						2019-06-07 20:09:17 +00:00 
						 
				 
			
				
					
						
							
							
								nicm 
							
						 
					 
					
						
						
							
						
						e128c7fcd8 
					 
					
						
						
							
							Replace the various identical error callbacks with a single one in cmd-queue.c.  
						
						
						
						
					 
					
						2019-05-20 11:46:06 +00:00 
						 
				 
			
				
					
						
							
							
								nicm 
							
						 
					 
					
						
						
							
						
						78287e27c8 
					 
					
						
						
							
							Break new window and pane creation common code from various commands and  
						
						... 
						
						
						
						window.c into a separate file spawn.c. 
						
						
					 
					
						2019-04-17 14:37:48 +00:00 
						 
				 
			
				
					
						
							
							
								nicm 
							
						 
					 
					
						
						
							
						
						bceccc6b63 
					 
					
						
						
							
							Move job struct into job.c.  
						
						
						
						
					 
					
						2018-08-23 15:45:05 +00:00 
						 
				 
			
				
					
						
							
							
								nicm 
							
						 
					 
					
						
						
							
						
						bd2896b65e 
					 
					
						
						
							
							SESSION_UNATTACHED flag is no longer necessary now we have an attached  
						
						... 
						
						
						
						count instead. 
						
						
					 
					
						2018-08-18 20:08:52 +00:00 
						 
				 
			
				
					
						
							
							
								nicm 
							
						 
					 
					
						
						
							
						
						fb1f0fee5a 
					 
					
						
						
							
							session_groups can be static also.  
						
						
						
						
					 
					
						2018-08-02 11:56:12 +00:00 
						 
				 
			
				
					
						
							
							
								nicm 
							
						 
					 
					
						
						
							
						
						19f3a5c612 
					 
					
						
						
							
							Add a missing client-detached hook when the server shuts down, and do  
						
						... 
						
						
						
						not exit until jobs started from run-shell/if-shell have finished (add a
job flags member and a flag to indicate other jobs). GitHub issue 1245. 
						
						
					 
					
						2018-03-08 08:09:10 +00:00 
						 
				 
			
				
					
						
							
							
								nicm 
							
						 
					 
					
						
						
							
						
						623f4b12d3 
					 
					
						
						
							
							Add exit-empty option to exit server if no sessions (defaults to on).  
						
						
						
						
					 
					
						2018-02-22 10:54:51 +00:00 
						 
				 
			
				
					
						
							
							
								nicm 
							
						 
					 
					
						
						
							
						
						b20a00f93e 
					 
					
						
						
							
							Report better error from server when socket create fails, GitHub issue  
						
						... 
						
						
						
						1201. 
						
						
					 
					
						2017-12-19 15:00:39 +00:00 
						 
				 
			
				
					
						
							
							
								nicm 
							
						 
					 
					
						
						
							
						
						a5fd5782f8 
					 
					
						
						
							
							Show exit status and time in the remain-on-exit pane text, mostly from  
						
						... 
						
						
						
						Timo Boettcher in GitHub issue 1103. 
						
						
					 
					
						2017-10-12 11:32:27 +00:00 
						 
				 
			
				
					
						
							
							
								nicm 
							
						 
					 
					
						
						
							
						
						932f6cfbfc 
					 
					
						
						
							
							Because ignore SIGCHLD early, letting signal_del restore it doesn't work  
						
						... 
						
						
						
						correctly, so set it explicitly back to default (and the others for good
measure). 
						
						
					 
					
						2017-07-14 18:49:07 +00:00 
						 
				 
			
				
					
						
							
							
								nicm 
							
						 
					 
					
						
						
							
						
						51112221ee 
					 
					
						
						
							
							Block signals between forking and clearing signal handlers (or calling  
						
						... 
						
						
						
						event_reinit) - if the child gets a signal and fires the libevent signal
handler during this period it could write a signal into the parent's
signal pipe. GitHub issue 1001 from Aaron van Geffen. 
						
						
					 
					
						2017-07-12 10:04:51 +00:00 
						 
				 
			
				
					
						
							
							
								nicm 
							
						 
					 
					
						
						
							
						
						0453ad0146 
					 
					
						
						
							
							Move signal code into proc.c.  
						
						
						
						
					 
					
						2017-07-12 09:24:17 +00:00 
						 
				 
			
				
					
						
							
							
								nicm 
							
						 
					 
					
						
						
							
						
						58b796608f 
					 
					
						
						
							
							Some extra logging to show why tmux might exit.  
						
						
						
						
					 
					
						2017-07-09 22:33:09 +00:00 
						 
				 
			
				
					
						
							
							
								nicm 
							
						 
					 
					
						
						
							
						
						28687f2d55 
					 
					
						
						
							
							Do not close panes until process has exited and any outstanding data  
						
						... 
						
						
						
						has been written to the pipe-pane event if there is one. GitHub issue 991. 
						
						
					 
					
						2017-07-03 08:16:03 +00:00 
						 
				 
			
				
					
						
							
							
								nicm 
							
						 
					 
					
						
						
							
						
						adf5628087 
					 
					
						
						
							
							Support SIGUSR2 to stop and start logging for an existing server. Also  
						
						... 
						
						
						
						we currently only have two log levels so just use -v and -vv rather than
-v and -vvvv, and clarify the man page entry for -v. 
						
						
					 
					
						2017-06-04 08:25:57 +00:00 
						 
				 
			
				
					
						
							
							
								nicm 
							
						 
					 
					
						
						
							
						
						2c9bdd9e32 
					 
					
						
						
							
							Memory leaks, from David CARLIER.  
						
						
						
						
					 
					
						2017-04-22 06:13:30 +00:00 
						 
				 
			
				
					
						
							
							
								nicm 
							
						 
					 
					
						
						
							
						
						efaf4c16cf 
					 
					
						
						
							
							Make the cmd_find_* functions more obvious when looking for a client,  
						
						... 
						
						
						
						rather than having it inside other functions. Should be no change to the
way targets are resolved just yet. 
						
						
					 
					
						2017-04-21 20:26:34 +00:00 
						 
				 
			
				
					
						
							
							
								nicm 
							
						 
					 
					
						
						
							
						
						428be9803c 
					 
					
						
						
							
							History needs to be loaded after config parsing is done - now that  
						
						... 
						
						
						
						commands are queued, that's in cfg_done not after start_cfg finishes. 
						
						
					 
					
						2017-04-21 14:04:54 +00:00 
						 
				 
			
				
					
						
							
							
								nicm 
							
						 
					 
					
						
						
							
						
						0b44ad99b5 
					 
					
						
						
							
							If a #() command doesn't exit, use its most recent line of output (it  
						
						... 
						
						
						
						must be a full line). Don't let it redraw the status line more than once
a second.
Requested by someone about 10 years ago... 
						
						
					 
					
						2017-04-20 09:20:22 +00:00 
						 
				 
			
				
					
						
							
							
								nicm 
							
						 
					 
					
						
						
							
						
						c6a3446398 
					 
					
						
						
							
							Instead of numbering session groups, give them a name which may be given  
						
						... 
						
						
						
						to -t instead of a target session. Also allow them to contain only one
session. 
						
						
					 
					
						2017-02-09 15:04:53 +00:00 
						 
				 
			
				
					
						
							
							
								nicm 
							
						 
					 
					
						
						
							
						
						b7398a4918 
					 
					
						
						
							
							Do not execute commands for a client until it has identified, fixes  
						
						... 
						
						
						
						problem reported by Frank Terbeck. 
						
						
					 
					
						2016-11-12 19:04:41 +00:00 
						 
				 
			
				
					
						
							
							
								nicm 
							
						 
					 
					
						
						
							
						
						026ad08b56 
					 
					
						
						
							
							Notifys can go via the command queue instead of using their own queue.  
						
						
						
						
					 
					
						2016-10-16 19:15:02 +00:00 
						 
				 
			
				
					
						
							
							
								nicm 
							
						 
					 
					
						
						
							
						
						ddc4512d2e 
					 
					
						
						
							
							Rewrite command queue handling. Each client still has a command queue,  
						
						... 
						
						
						
						but there is also now a global command queue. Instead of command queues
being dispatched on demand from wherever the command happens to be
added, they are now all dispatched from the top level server
loop. Command queues may now also include callbacks as well as commands,
and items may be inserted after the current command as well as at the end.
This all makes command queues significantly more predictable and easier
to use, and avoids the complex multiple nested command queues used by
source-file, if-shell and friends.
A mass rename of struct cmdq to a better name (cmdq_item probably) is
coming. 
						
						
					 
					
						2016-10-16 17:55:14 +00:00 
						 
				 
			
				
					
						
							
							
								nicm 
							
						 
					 
					
						
						
							
						
						9b3ae84993 
					 
					
						
						
							
							Drain notifys once at the end of the server loop instead of doing it  
						
						... 
						
						
						
						from the end of every command queue (which could be nested). 
						
						
					 
					
						2016-10-15 00:01:01 +00:00 
						 
				 
			
				
					
						
							
							
								nicm 
							
						 
					 
					
						
						
							
						
						c426e485e5 
					 
					
						
						
							
							Loads more static, except for cmd-*.c and window-*.c.  
						
						
						
						
					 
					
						2016-10-10 21:29:23 +00:00 
						 
				 
			
				
					
						
							
							
								semarie 
							
						 
					 
					
						
						
							
						
						fc118e13a9 
					 
					
						
						
							
							tmux: only consider ACCESSPERMS for setting mode on socket_path.  
						
						... 
						
						
						
						it explicitly removes any S_ISUID|S_ISGID|S_ISTXT bits, instead of letting
pledge(2) silenciously remove them.
ok nicm@ beck@ deraadt@ 
						
						
					 
					
						2016-07-07 09:24:09 +00:00 
						 
				 
			
				
					
						
							
							
								nicm 
							
						 
					 
					
						
						
							
						
						ec82fcdfea 
					 
					
						
						
							
							Bump the listen() backlog up, some people have scripts that run up a lot  
						
						... 
						
						
						
						of clients quickly. 
						
						
					 
					
						2016-03-30 13:20:07 +00:00 
						 
				 
			
				
					
						
							
							
								nicm 
							
						 
					 
					
						
						
							
						
						995af0e2b7 
					 
					
						
						
							
							I no longer use my SourceForge address so replace it.  
						
						
						
						
					 
					
						2016-01-19 15:59:12 +00:00