nicm 
							
						 
					 
					
						
						
							
						
						c60389acbf 
					 
					
						
						
							
							It is not sensible to store pointers into an array we are going to  
						
						 
						
						... 
						
						
						
						realloc (duh), use two trees instead. 
						
						
					 
					
						2020-06-09 08:34:33 +00:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						a4a3d89598 
					 
					
						
						
							
							Use bitshifts instead of a union for encoding UTF-8 into 32 bits, which  
						
						 
						
						... 
						
						
						
						is more friendly to GCC3.
Reported by and ok aoyama@. 
						
						
					 
					
						2020-06-06 12:38:32 +00:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						d919fa1ed0 
					 
					
						
						
							
							Change how panes are resized so that the code is clearer and if the pane  
						
						 
						
						... 
						
						
						
						is resized multiple times during one event loop, it is forced to resize
at the end. Also don't zoom/unzoom in switch-client if the pane hasn't
changed. GitHub issue 2260. 
						
						
					 
					
						2020-06-05 11:20:51 +00:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						03b2998abe 
					 
					
						
						
							
							Do not take the address of a potentially unaligned member.  
						
						 
						
						
						
						
					 
					
						2020-06-05 09:35:41 +00:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						c908d2039f 
					 
					
						
						
							
							Fix various confusion about am vs xenl.  
						
						 
						
						
						
						
					 
					
						2020-06-05 09:32:15 +00:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						4e5e2c19d0 
					 
					
						
						
							
							Now that we mostly only search visible text, the rate limit on repeating  
						
						 
						
						... 
						
						
						
						search does not seem to be necessary, remove it for the moment. 
						
						
					 
					
						2020-06-05 07:44:42 +00:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						c586208991 
					 
					
						
						
							
							Add support for pausing a pane when the output buffered for a control  
						
						 
						
						... 
						
						
						
						mode client gets too far behind. The pause-after flag with a time is set
on the pane with refresh-client -f and a paused pane may be resumed with
refresh-client -A. GitHub issue 2217. 
						
						
					 
					
						2020-06-05 07:33:57 +00:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						d9cd493d09 
					 
					
						
						
							
							Reset wrapped flag when clearing or moving lines, GitHub issue 2215.  
						
						 
						
						
						
						
					 
					
						2020-06-04 21:41:31 +00:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						2154e1f4fb 
					 
					
						
						
							
							Search marks outside the visible text are not useful, so there is no  
						
						 
						
						... 
						
						
						
						point in allocating a big buffer to store them - just allocate the
visible text size, and ignore any outside. 
						
						
					 
					
						2020-06-04 21:40:27 +00:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						c4732af006 
					 
					
						
						
							
							Some improvements to performance of searching:  
						
						 
						
						... 
						
						
						
						- Do not allow searches to be repeated at intervals of less than 50
  milliseconds, to prevent a huge queue of repeat key presses blocking
  up everything for ages.
- If the search text hasn't changed, the match count can't have changed
  and there is no need to do a full search, so only search the visible
  text. This includes both scrolling and repeating the search.
- Do not redraw twice when jumping to the search location.
GitHub issue 2258. 
						
						
					 
					
						2020-06-04 20:41:57 +00:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						4403afe29c 
					 
					
						
						
							
							A } can go on the same line as a command.  
						
						 
						
						
						
						
					 
					
						2020-06-04 16:06:01 +00:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						4ea3370316 
					 
					
						
						
							
							Shorten some long lines.  
						
						 
						
						
						
						
					 
					
						2020-06-04 10:36:28 +00:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						a9bf5367da 
					 
					
						
						
							
							Correct respawn-* - they don't always use the creation command.  
						
						 
						
						
						
						
					 
					
						2020-06-04 10:34:40 +00:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						dc74d2e054 
					 
					
						
						
							
							Make the -no-clear command variants not clear the search marks either.  
						
						 
						
						
						
						
					 
					
						2020-06-04 10:24:14 +00:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						d3c5202f50 
					 
					
						
						
							
							Allow strings to span multiple lines - newlines and any leading  
						
						 
						
						... 
						
						
						
						whitespace are removed, as well as any following comments that couldn't
be part of a format. This allows long formats or other strings to be
annotated and indented. 
						
						
					 
					
						2020-06-04 08:30:44 +00:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						b3782d2dc8 
					 
					
						
						
							
							Instead of using a custom parse function to process {}, treat it as a  
						
						 
						
						... 
						
						
						
						set of statements and parse with yacc, then convert back to a string as
the last step. This means the rules are consistent inside and outside
{}, %if and friends work at the right time, and the final result isn't
littered with unnecessary newlines. 
						
						
					 
					
						2020-06-04 07:12:05 +00:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						3f6af4156f 
					 
					
						
						
							
							Make paste -p the default for ], GitHub issue 2248.  
						
						 
						
						
						
						
					 
					
						2020-06-03 16:35:40 +00:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						4694e9a2b6 
					 
					
						
						
							
							Move the code to set up a padding cell into grid.c.  
						
						 
						
						
						
						
					 
					
						2020-06-02 20:51:46 +00:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						2a4d4bda2b 
					 
					
						
						
							
							Allow UTF-8 characters of width 0 to be stored, it is useful to be able  
						
						 
						
						... 
						
						
						
						to put padding cells in as width 0. 
						
						
					 
					
						2020-06-02 20:10:23 +00:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						f5366ff828 
					 
					
						
						
							
							Missing ; in previous.  
						
						 
						
						
						
						
					 
					
						2020-06-02 19:16:46 +00:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						5fbae8c8c6 
					 
					
						
						
							
							Fire copy-pipe command even if there is no text, means it works if it  
						
						 
						
						... 
						
						
						
						has side effects. 
						
						
					 
					
						2020-06-02 19:10:26 +00:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						7e501f1993 
					 
					
						
						
							
							UTF-8 keys need to be big endian so the size bits are at the top.  
						
						 
						
						
						
						
					 
					
						2020-06-02 17:17:44 +00:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						822ee4e0a6 
					 
					
						
						
							
							Fail rather than fatal on UTF-8 width 0.  
						
						 
						
						
						
						
					 
					
						2020-06-02 11:29:00 +00:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						f3931497f8 
					 
					
						
						
							
							Use CLOCK_MONOTONIC for timer measurement and add a timestamp to control  
						
						 
						
						... 
						
						
						
						mode %output blocks. 
						
						
					 
					
						2020-06-02 08:17:27 +00:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						563b7331da 
					 
					
						
						
							
							Remove blocks from queue when pane disappears.  
						
						 
						
						
						
						
					 
					
						2020-06-01 21:08:05 +00:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						8339702d47 
					 
					
						
						
							
							Check the right thing for maximum client buffer size.  
						
						 
						
						
						
						
					 
					
						2020-06-01 20:58:42 +00:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						9819470058 
					 
					
						
						
							
							Change format callback to return value rather than storing it in the entry.  
						
						 
						
						
						
						
					 
					
						2020-06-01 19:39:25 +00:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						674ec410b7 
					 
					
						
						
							
							Try without cursor/keypad flags if a key doesn't exist, and limit ctrl  
						
						 
						
						... 
						
						
						
						key translation to ASCII keys. Fixes send-keys, GitHub issue 2247. 
						
						
					 
					
						2020-06-01 16:09:35 +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 
							
						 
					 
					
						
						
							
						
						175e45005f 
					 
					
						
						
							
							Add -i to find-window to ignore case.  
						
						 
						
						
						
						
					 
					
						2020-05-29 13:42:13 +00:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						bda2a0282a 
					 
					
						
						
							
							Fix ASCII keys with send-keys -l.  
						
						 
						
						
						
						
					 
					
						2020-05-27 14:45:35 +00:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						f336599a3a 
					 
					
						
						
							
							Make padding cell a valid character.  
						
						 
						
						
						
						
					 
					
						2020-05-27 06:23:23 +00:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						2ced370bee 
					 
					
						
						
							
							Tweak some out of date bits, reported by bcgraham.  
						
						 
						
						
						
						
					 
					
						2020-05-26 13:19:21 +00:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						ff6f2ff6d9 
					 
					
						
						
							
							Return new character properly when converting to data.  
						
						 
						
						
						
						
					 
					
						2020-05-26 12:50:03 +00:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						392b381d1c 
					 
					
						
						
							
							Apply -n when only one pane in the window.  
						
						 
						
						
						
						
					 
					
						2020-05-26 09:01:03 +00:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						370f0bb98d 
					 
					
						
						
							
							Remove leftover debug logging and fix comparison.  
						
						 
						
						
						
						
					 
					
						2020-05-26 08:56:48 +00:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						ca0166f26f 
					 
					
						
						
							
							Do not try to use the last marked pane if it is invalid.  
						
						 
						
						
						
						
					 
					
						2020-05-26 08:47:50 +00:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						ea610a3119 
					 
					
						
						
							
							Pass the stdout file descriptor from the client as well as stdin and use  
						
						 
						
						... 
						
						
						
						them for control clients directly instead of passing everything via the
client. 
						
						
					 
					
						2020-05-26 08:41:47 +00:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						6f03e49e68 
					 
					
						
						
							
							Use the internal representation for UTF-8 keys instead of wchar_t and  
						
						 
						
						... 
						
						
						
						drop some code only needed for that. 
						
						
					 
					
						2020-05-25 18:57:24 +00:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						35779d655d 
					 
					
						
						
							
							Fix definition of padding cells so they are not extended cells.  
						
						 
						
						
						
						
					 
					
						2020-05-25 18:55:36 +00:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						49ec074271 
					 
					
						
						
							
							Tidy up new UTF-8 code and make it more generic.  
						
						 
						
						
						
						
					 
					
						2020-05-25 18:19:29 +00:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						dc893405e1 
					 
					
						
						
							
							Fix some error strings, from Kris Katterjohn.  
						
						 
						
						
						
						
					 
					
						2020-05-25 18:17:14 +00:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						bbfb44e9b2 
					 
					
						
						
							
							Make some data types consistent.  
						
						 
						
						
						
						
					 
					
						2020-05-25 15:02:25 +00:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						4589297e43 
					 
					
						
						
							
							Do not attempt to divide by zero when working out copy position.  
						
						 
						
						
						
						
					 
					
						2020-05-25 12:12:58 +00:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						26e8e467e8 
					 
					
						
						
							
							Include title for the width of the menu.  
						
						 
						
						
						
						
					 
					
						2020-05-25 11:59:50 +00:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						3a5219c6d0 
					 
					
						
						
							
							Instead of storing all UTF-8 characters in the extended cell which means  
						
						 
						
						... 
						
						
						
						that 14 bytes are wasted for each character in the BMP, only store
characters of three bytes or less in the cell itself and store others
(outside the BMP or with combining characters) in a separate global
tree. Can reduce grid memory use for heavy Unicode users by around 30%. 
						
						
					 
					
						2020-05-25 09:32:10 +00:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						14a9fd58d5 
					 
					
						
						
							
							Remove leftover call to control_free_offsets and do not use for  
						
						 
						
						... 
						
						
						
						non-control clients. 
						
						
					 
					
						2020-05-24 14:45:00 +00:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						18aab90959 
					 
					
						
						
							
							Give control code its own state struct.  
						
						 
						
						
						
						
					 
					
						2020-05-24 09:40:17 +00:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						6c82982711 
					 
					
						
						
							
							Now the tty has a pointer back to the client there is no point (and a  
						
						 
						
						... 
						
						
						
						bit confusing) in it keeping a copy of the fd as well. Remove it. 
						
						
					 
					
						2020-05-24 09:13:06 +00:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								nicm 
							
						 
					 
					
						
						
							
						
						033d6472cb 
					 
					
						
						
							
							FocusIn keys can also update the latest client, like normal keys.  
						
						 
						
						
						
						
					 
					
						2020-05-22 15:43:38 +00:00