Sebastian Gniazdowski
							
						 
						
							 
							
							
							
							
								
							
							
								c1dbe534ab 
								
							 
						 
						
							
							
								
								main: optimization that in my tests shows 2.7s -> 2.2s  
							
							 
							
							... 
							
							
							
							Consider indexing long buffers (say 300 chars). E.g. following line:
      integer offset=${${buf[start_pos+1,len]}[(i)$needle]}
will gradually go into large indices for first index [a,] and be kept
at large index for second index [,b]. Instead, we can remove already
processed characters from buf:
    proc_buf="${proc_buf[offset + $#arg + 1,-1]}"
$offset and $#arg are small, first index will not be large. $proc_buf
will be smaller and smaller and the second index [,-1] will run shorter
and shorter. 
							
						 
						
							2016-05-12 19:59:44 +02:00  
						
					 
				
					
						
							
							
								 
								Matthew Martin
							
						 
						
							 
							
							
							
							
								
							
							
								b5955213b9 
								
							 
						 
						
							
							
								
								tests: Add tests for 'brackets' and 'pattern'  
							
							 
							
							
							
						 
						
							2016-05-05 15:36:33 -05:00  
						
					 
				
					
						
							
							
								 
								Matthew Martin
							
						 
						
							 
							
							
							
							
								
							
							
								f73f3d53d3 
								
							 
						 
						
							
							
								
								'brackets': Allow unset ZSH_HIGHLIGHT_STYLES  
							
							 
							
							... 
							
							
							
							Without this when bracket_color_size is 0,
    $(( (levelpos[$pos] - 1) % bracket_color_size + 1 ))
errors with division by zero. 
							
						 
						
							2016-05-05 13:56:09 -05:00  
						
					 
				
					
						
							
							
								 
								Matthew Martin
							
						 
						
							 
							
							
							
							
								
							
							
								eaa4335c34 
								
							 
						 
						
							
							
								
								tests: Set ZSH_HIGHLIGHT_STYLES=() during tests  
							
							 
							
							... 
							
							
							
							Since the _zsh_highlight_add_highlight that the tests use ignores
ZSH_HIGHLIGHT_STYLES, we can test both an injective mapping and an empty
mapping at once. 
							
						 
						
							2016-05-05 12:31:52 -05:00  
						
					 
				
					
						
							
							
								 
								Matthew Martin
							
						 
						
							 
							
							
							
							
								
							
							
								d3678ec7a8 
								
							 
						 
						
							
							
								
								tests: Remove unused_highlight  
							
							 
							
							
							
						 
						
							2016-05-05 12:28:43 -05:00  
						
					 
				
					
						
							
							
								 
								Matthew Martin
							
						 
						
							 
							
							
							
							
								
							
							
								ccaf6f48a1 
								
							 
						 
						
							
							
								
								brackets: Fix bug introduced in  95d8256 
							
							 
							
							
							
						 
						
							2016-05-05 09:59:26 -05:00  
						
					 
				
					
						
							
							
								 
								Matthew Martin
							
						 
						
							 
							
							
							
							
								
							
							
								e05b8e88ad 
								
							 
						 
						
							
							
								
								'brackets': Check if brackets match on first pass  
							
							 
							
							... 
							
							
							
							This removes the need for the typepos array. 
							
						 
						
							2016-05-04 20:50:55 -05:00  
						
					 
				
					
						
							
							
								 
								Matthew Martin
							
						 
						
							 
							
							
							
							
								
							
							
								95d82568d8 
								
							 
						 
						
							
							
								
								'brackets': Use one-based indexing  
							
							 
							
							... 
							
							
							
							zsh arrays start at one, and this will make the next commit easier. 
							
						 
						
							2016-05-04 20:50:55 -05:00  
						
					 
				
					
						
							
							
								 
								Matthew Martin
							
						 
						
							 
							
							
							
							
								
							
							
								f4d3dcb42f 
								
							 
						 
						
							
							
								
								'brackets': Move highlight call outside conditional  
							
							 
							
							
							
						 
						
							2016-05-04 20:50:55 -05:00  
						
					 
				
					
						
							
							
								 
								Matthew Martin
							
						 
						
							 
							
							
							
							
								
							
							
								fd84010252 
								
							 
						 
						
							
							
								
								'brackets': Lift local declarations from inside loops  
							
							 
							
							
							
						 
						
							2016-05-04 20:50:55 -05:00  
						
					 
				
					
						
							
							
								 
								Matthew Martin
							
						 
						
							 
							
							
							
							
								
							
							
								4da9889d15 
								
							 
						 
						
							
							
								
								tests: Use 'NONE' to denote no highlighting  
							
							 
							
							... 
							
							
							
							'none' is a valid highlighting type. Since by convention styles are all
lowercase, 'NONE' shouldn't conflict with anything.
Closes  #289 . 
							
						 
						
							2016-04-30 12:48:44 -05:00  
						
					 
				
					
						
							
							
								 
								Matthew Martin
							
						 
						
							 
							
							
							
							
								
							
							
								341a3ae1f0 
								
							 
						 
						
							
							
								
								highlighters: Use _zsh_highlight_add_highlight  
							
							 
							
							... 
							
							
							
							_zsh_highlight_add_highlight appends to region_highlight $1 $2 and the
next non-null parameter. If there is no non-null parameter, do nothing,
This is so that highlighters can add a style with fallbacks if the most
specific style is not defined. If none of the applicable styles are
defined, do the right thing and don't add an invalid entry to
region_highlight.
The pattern highlighter doesn't use this function as it'd need too large
of an API change. 
							
						 
						
							2016-04-29 10:09:16 -05:00  
						
					 
				
					
						
							
							
								 
								Matthew Martin
							
						 
						
							 
							
							
							
							
								
							
							
								089329660b 
								
							 
						 
						
							
							
								
								highlighters: Pass around the style key instead of the style itself  
							
							 
							
							
							
						 
						
							2016-04-29 09:53:05 -05:00  
						
					 
				
					
						
							
							
								 
								Matthew Martin
							
						 
						
							 
							
							
							
							
								
							
							
								a830613467 
								
							 
						 
						
							
							
								
								tests: Specify the style key instead of the style itself  
							
							 
							
							
							
						 
						
							2016-04-29 09:51:13 -05:00  
						
					 
				
					
						
							
							
								 
								m0viefreak
							
						 
						
							 
							
							
							
							
								
							
							
								38c8fbea2d 
								
							 
						 
						
							
							
								
								root-highlighter: use EUID instead of id -u command  
							
							 
							
							... 
							
							
							
							No need to fork every time. 
							
						 
						
							2016-04-23 06:43:01 +00:00  
						
					 
				
					
						
							
							
								 
								Daniel Shahaf
							
						 
						
							 
							
							
							
							
								
							
							
								b52a485c5c 
								
							 
						 
						
							
							
								
								brackets: Optimize a tiny bit.  
							
							 
							
							... 
							
							
							
							Compute «${#BUFFER}» just once.  I haven't measured the effect of this, but
it might just avoid a strlen() every time around the loop, which could add
up for large ${BUFFER}s.
See issue #295 . 
							
						 
						
							2016-04-22 14:14:15 +00:00  
						
					 
				
					
						
							
							
								 
								Matthew Martin
							
						 
						
							 
							
							
							
							
								
							
							
								78290e043b 
								
							 
						 
						
							
							
								
								tests: Expect the correct style  
							
							 
							
							
							
						 
						
							2016-04-03 20:43:13 -05:00  
						
					 
				
					
						
							
							
								 
								Matthew Martin
							
						 
						
							 
							
							
							
							
								
							
							
								31ac2b36a9 
								
							 
						 
						
							
							
								
								tests: Quote style in expected_region_highlight  
							
							 
							
							
							
						 
						
							2016-04-02 09:45:24 -05:00  
						
					 
				
					
						
							
							
								 
								Daniel Shahaf
							
						 
						
							 
							
							
							
							
								
							
							
								bc7f8ea433 
								
							 
						 
						
							
							
								
								'main': Restore support for zsh-4.3.10 and older.  
							
							 
							
							... 
							
							
							
							zsh older than workers/28418 (zsh revision 23bdfc7fd2a012d5205ed22d18eb39e41c8fbc95)
doesn't support the «${name:offset:length}» syntax.  Therefore, use the older
«$name[start,end]» syntax instead.
Followup to 3cb58fd7d7 , "Optimization: -1 is
extra computation of string length internally".
Fixes  zsh-users/zsh-syntax-highlighting#279 . 
							
						 
						
							2016-03-23 01:32:44 +00:00  
						
					 
				
					
						
							
							
								 
								Daniel Shahaf
							
						 
						
							 
							
							
							
							
								
							
							
								4c23a2fd1b 
								
							 
						 
						
							
							
								
								'main': Highlight lone '!' correctly: it's not a history expansion.  
							
							 
							
							... 
							
							
							
							While here, also add a test for the '!' reserved word (which is highlighted
since c216242b ). 
							
						 
						
							2016-03-13 02:47:25 +00:00  
						
					 
				
					
						
							
							
								 
								Daniel Shahaf
							
						 
						
							 
							
							
							
							
								
							
							
								e500ca2462 
								
							 
						 
						
							
							
								
								'main': Don't highlight in vared  
							
							 
							
							... 
							
							
							
							This is a continuation of 451665cb2a  which did
the same for the $PS3 prompt.
Reported-by: Sebastian Gniazdowski 
							
						 
						
							2016-02-14 17:34:53 +02:00  
						
					 
				
					
						
							
							
								 
								Sebastian Gniazdowski
							
						 
						
							 
							
							
							
							
								
							
							
								3cb58fd7d7 
								
							 
						 
						
							
							
								
								Optimization: -1 is extra computation of string length internally  
							
							 
							
							... 
							
							
							
							./parse.zsh "zplugin.zsh" > out_norm.txt 106,17s user 7,84s system 98% cpu 1:55,85 total
./parse.zsh "zplugin.zsh" > out_opt.txt 51,91s user 7,44s system 99% cpu 59,912 total
% wc -l zplugin.zsh
3188 zplugin.zsh 
							
						 
						
							2016-02-12 08:31:14 +01:00  
						
					 
				
					
						
							
							
								 
								Daniel Shahaf
							
						 
						
							 
							
							
							
							
								
							
							
								451665cb2a 
								
							 
						 
						
							
							
								
								'main': Don't highlight at the $PS3 prompt.  
							
							 
							
							... 
							
							
							
							The input to the $PS3 prompt is not commands, so the 'main' highlighter is
not applicable to it.
Fixes  zsh-users/zsh-syntax-highlighting#268 . 
							
						 
						
							2016-01-20 22:10:49 +00:00  
						
					 
				
					
						
							
							
								 
								Daniel Shahaf
							
						 
						
							 
							
							
							
							
								
							
							
								28932316cc 
								
							 
						 
						
							
							
								
								aliases: Highlight aliases with '=' in their LHS as error.  (Part of issue #263.)  
							
							 
							
							
							
						 
						
							2016-01-11 15:27:48 +00:00  
						
					 
				
					
						
							
							
								 
								Daniel Shahaf
							
						 
						
							 
							
							
							
							
								
							
							
								5e4b446dee 
								
							 
						 
						
							
							
								
								aliases: Add a test for one variant of issue  #263 .  
							
							 
							
							
							
						 
						
							2016-01-11 15:07:18 +00:00  
						
					 
				
					
						
							
							
								 
								Daniel Shahaf
							
						 
						
							 
							
							
							
							
								
							
							
								4f3910cbba 
								
							 
						 
						
							
							
								
								Fix issue  #248 : Highlight 'pkexec' as a precommand.  
							
							 
							
							
							
						 
						
							2015-12-04 23:40:30 +00:00  
						
					 
				
					
						
							
							
								 
								Daniel Shahaf
							
						 
						
							 
							
							
							
							
								
							
							
								73ee7c1f6c 
								
							 
						 
						
							
							
								
								Fix part of issue  #238 , "fd redirections at command word".  
							
							 
							
							... 
							
							
							
							This fixes fd's specified by a (single) digit.  The named fd syntax remains an XFail. 
							
						 
						
							2015-11-29 03:16:01 +00:00  
						
					 
				
					
						
							
							
								 
								Daniel Shahaf
							
						 
						
							 
							
							
							
							
								
							
							
								48ecd29180 
								
							 
						 
						
							
							
								
								tests: Add two XFail tests for issue  #238 , "fd redirections at command word".  
							
							 
							
							
							
						 
						
							2015-11-29 03:15:55 +00:00  
						
					 
				
					
						
							
							
								 
								Daniel Shahaf
							
						 
						
							 
							
							
							
							
								
							
							
								430cf55368 
								
							 
						 
						
							
							
								
								tests: Cover [default].  
							
							 
							
							
							
						 
						
							2015-11-29 02:56:07 +00:00  
						
					 
				
					
						
							
							
								 
								Daniel Shahaf
							
						 
						
							 
							
							
							
							
								
							
							
								46cd970bc4 
								
							 
						 
						
							
							
								
								tests: Improve tests by using $unused_highlight.  
							
							 
							
							... 
							
							
							
							The default for [redirection] is 'none', so it wasn't actually being tested. 
							
						 
						
							2015-11-29 02:53:58 +00:00  
						
					 
				
					
						
							
							
								 
								Daniel Shahaf
							
						 
						
							 
							
							
							
							
								
							
							
								09c4114eb9 
								
							 
						 
						
							
							
								
								command word: Do not attempt to interpret command separator tokens as anything else.  
							
							 
							
							... 
							
							
							
							The important part of this change is removing the second conjunct from the
condition; the remainder of the change gives one example of when that matters. 
							
						 
						
							2015-11-29 02:02:42 +00:00  
						
					 
				
					
						
							
							
								 
								Daniel Shahaf
							
						 
						
							 
							
							
							
							
								
							
							
								eb3715a56a 
								
							 
						 
						
							
							
								
								docs: Followup to the recent docs branch: clean up some internal cross-references.  
							
							 
							
							
							
						 
						
							2015-11-27 04:07:02 +00:00  
						
					 
				
					
						
							
							
								 
								Matthew Martin
							
						 
						
							 
							
							
							
							
								
							
							
								8e115052e9 
								
							 
						 
						
							
							
								
								docs: Fix broken symlinks  
							
							 
							
							
							
						 
						
							2015-11-24 00:40:09 -06:00  
						
					 
				
					
						
							
							
								 
								Matthew Martin
							
						 
						
							 
							
							
							
							
								
							
							
								0ab450ae47 
								
							 
						 
						
							
							
								
								docs: Move docs into docs/  
							
							 
							
							
							
						 
						
							2015-11-24 00:09:21 -06:00  
						
					 
				
					
						
							
							
								 
								Matthew Martin
							
						 
						
							 
							
							
							
							
								
							
							
								35e0b0ca69 
								
							 
						 
						
							
							
								
								docs: Remove duplicate 'How to activate it' sections  
							
							 
							
							
							
						 
						
							2015-11-24 00:09:21 -06:00  
						
					 
				
					
						
							
							
								 
								Matthew Martin
							
						 
						
							 
							
							
							
							
								
							
							
								2dd6923c30 
								
							 
						 
						
							
							
								
								docs: Move highlighter headers down one level  
							
							 
							
							
							
						 
						
							2015-11-24 00:09:21 -06:00  
						
					 
				
					
						
							
							
								 
								Daniel Shahaf
							
						 
						
							 
							
							
							
							
								
							
							
								6e99128987 
								
							 
						 
						
							
							
								
								docs copyedit: minor: Spelling/punctuation fix.  
							
							 
							
							
							
						 
						
							2015-11-24 06:06:16 +00:00  
						
					 
				
					
						
							
							
								 
								Daniel Shahaf
							
						 
						
							 
							
							
							
							
								
							
							
								3f163a2fd4 
								
							 
						 
						
							
							
								
								docs copyedit: Rewrap to 80 columns, part 2.  
							
							 
							
							
							
						 
						
							2015-11-24 06:06:16 +00:00  
						
					 
				
					
						
							
							
								 
								Daniel Shahaf
							
						 
						
							 
							
							
							
							
								
							
							
								9ce97cd64d 
								
							 
						 
						
							
							
								
								docs copyedit: minor.  
							
							 
							
							
							
						 
						
							2015-11-24 06:06:16 +00:00  
						
					 
				
					
						
							
							
								 
								Daniel Shahaf
							
						 
						
							 
							
							
							
							
								
							
							
								12097d55d1 
								
							 
						 
						
							
							
								
								docs copyedit: Rewrap to 80 columns.  
							
							 
							
							
							
						 
						
							2015-11-24 06:06:16 +00:00  
						
					 
				
					
						
							
							
								 
								Daniel Shahaf
							
						 
						
							 
							
							
							
							
								
							
							
								8ea392e361 
								
							 
						 
						
							
							
								
								docs copyedit: Restyle bold-italic to fixed-width.  
							
							 
							
							
							
						 
						
							2015-11-24 06:06:16 +00:00  
						
					 
				
					
						
							
							
								 
								Daniel Shahaf
							
						 
						
							 
							
							
							
							
								
							
							
								91e4a576fb 
								
							 
						 
						
							
							
								
								docs copyedit: Port  6d93ea07fd to the other highlighters' README's.  
							
							 
							
							
							
						 
						
							2015-11-24 06:06:16 +00:00  
						
					 
				
					
						
							
							
								 
								Daniel Shahaf
							
						 
						
							 
							
							
							
							
								
							
							
								6c033e62e9 
								
							 
						 
						
							
							
								
								docs copyedit: Whitespace.  
							
							 
							
							
							
						 
						
							2015-11-24 06:06:16 +00:00  
						
					 
				
					
						
							
							
								 
								Daniel Shahaf
							
						 
						
							 
							
							
							
							
								
							
							
								17fbcad8ac 
								
							 
						 
						
							
							
								
								'main': Fix state check.  
							
							 
							
							... 
							
							
							
							At this time, no user-visible consequences are known. 
							
						 
						
							2015-11-18 16:37:38 +00:00  
						
					 
				
					
						
							
							
								 
								Daniel Shahaf
							
						 
						
							 
							
							
							
							
								
							
							
								29fd6ec1de 
								
							 
						 
						
							
							
								
								Support the '|&', '&!', '&|' command separators.  
							
							 
							
							
							
						 
						
							2015-11-17 20:19:19 +00:00  
						
					 
				
					
						
							
							
								 
								Daniel Shahaf
							
						 
						
							 
							
							
							
							
								
							
							
								3ed0f7f823 
								
							 
						 
						
							
							
								
								noop: Consolidate two identical conditionals.  
							
							 
							
							
							
						 
						
							2015-11-17 20:07:14 +00:00  
						
					 
				
					
						
							
							
								 
								Daniel Shahaf
							
						 
						
							 
							
							
							
							
								
							
							
								2dbcb575e5 
								
							 
						 
						
							
							
								
								internal: Document the ':regular' state.  
							
							 
							
							
							
						 
						
							2015-11-17 19:40:58 +00:00  
						
					 
				
					
						
							
							
								 
								Daniel Shahaf
							
						 
						
							 
							
							
							
							
								
							
							
								00de155063 
								
							 
						 
						
							
							
								
								docs: 'main': Improve styles documentation.  
							
							 
							
							
							
						 
						
							2015-11-17 18:41:14 +00:00  
						
					 
				
					
						
							
							
								 
								Daniel Shahaf
							
						 
						
							 
							
							
							
							
								
							
							
								7d4252f5f5 
								
							 
						 
						
							
							
								
								minor: docs: Improve dollar-double-quoted-argument documentation.  
							
							 
							
							
							
						 
						
							2015-11-17 03:55:00 +00:00  
						
					 
				
					
						
							
							
								 
								Daniel Shahaf
							
						 
						
							 
							
							
							
							
								
							
							
								21e5e26923 
								
							 
						 
						
							
							
								
								docs: Clarify 'create a new highlighter' documentation.  
							
							 
							
							
							
						 
						
							2015-11-17 03:22:14 +00:00