Commit Graph

954 Commits

Author SHA1 Message Date
Daniel Shahaf
56ba7f082d driver: Clarify comment. No functional change. 2018-10-12 12:35:34 -05:00
Matthew Martin
2cbb3fb24e driver: Allow for -U in autoloaded function definition 2018-10-12 12:35:34 -05:00
Matthew Martin
f265ef0b9a driver: Use idiomatic module check 2018-10-12 12:35:34 -05:00
Daniel Shahaf
d0fb0df4ff driver: Make the shadowing $WIDGET read only. 2018-10-12 12:35:34 -05:00
Daniel Shahaf
f665eec230 driver: Avoid a fork in the common case.
Found-by: Matthew Martin
2018-10-12 12:35:34 -05:00
Daniel Shahaf
a868b6942e test harness: Actually test the new code.
Currently, without zsh/zle loaded, the tests silently fall back to the
5.2-and-earlier codepath; see:
.
    https://github.com/zsh-users/zsh-syntax-highlighting/pull/356#issuecomment-243651251
2018-10-12 12:35:34 -05:00
Daniel Shahaf
b5249f17ab driver: Rewrite without a state variable
Suggested-by: m0viefreak
2018-10-12 12:35:32 -05:00
Daniel Shahaf
d2594c1157 noop: Make a whitespace-only change to reduce noise in the next commit. 2018-10-12 12:31:12 -05:00
Daniel Shahaf
66ae59eccc docs: Rewrap. 2018-10-12 12:31:12 -05:00
Daniel Shahaf
1651137f5c docs: Update FAQ answer per changes on this branch. 2018-10-12 12:31:12 -05:00
Daniel Shahaf
d4ab7e51d2 redo _zsh_highlight__function_callable_p 2018-10-12 12:31:12 -05:00
Daniel Shahaf
38477f2a3d driver: Use a different way of checking whether add-zle-hook-widget is present.
Based on code by Bart Schaefer (reference within).

Tested with zsh 5.0.7-5 (debian package) and with 5b4cbcc842c6 (39158,
5.3-to-be of today).
2018-10-12 12:31:12 -05:00
Daniel Shahaf
d98622dcd0 changelog: Use a more specific link. 2018-10-12 12:31:12 -05:00
Daniel Shahaf
04fd6bbf53 changelog: Note the effect of fixing #245/#90 and an alternative. 2018-10-12 12:31:12 -05:00
Daniel Shahaf
30c6e70394 driver: Pass zle-line-finish arguments on to _zsh_highlight.
(Currently a noop)
2018-10-12 12:31:12 -05:00
Daniel Shahaf
74a27de70d driver: Hook zle-line-finish.
Compare issue #288.
2018-10-12 12:31:10 -05:00
Daniel Shahaf
85e62a8171 driver: Reimplement using 'add-zle-hook-widget zle-line-pre-redraw'
This feature will be released in zsh 5.3.  Older zsh's will use the existing
codepath.
2018-10-12 12:30:23 -05:00
Daniel Shahaf
aed99f6a3e wrappers: Reimplement using Mikachu's zle-line-pre-redraw hook (workers/36650). 2018-10-11 22:04:02 -05:00
Matthew Martin
d6586e2a4f main: Order precommand_options and add '-'
Fixes #499.
2018-10-10 23:23:35 -05:00
Matthew Martin
31276c1b64 main: Avoid empty character classes
Avoids an error in pre-5.0.8: bad pattern: -[]#
2018-10-10 23:02:33 -05:00
Matthew Martin
07f259f653 main: Avoid null elision in _check_path
This could be triggered if BUFFER='\'.
2018-10-10 22:30:53 -05:00
Matthew Martin
e27e53b1ef main: Highlight unknown precommand option as unknown-token 2018-10-10 22:30:51 -05:00
Matthew Martin
c6e3d216ec main: Consolidate TOKENS_COMMANDSEPARATOR handling
No functional change.
2018-10-10 22:26:49 -05:00
Matthew Martin
5bb5703b0d main: Move TOKENS_CONTROL_FLOW handling into command word branch
No functional change.
2018-10-10 22:26:49 -05:00
Matthew Martin
dea05e44e6 main: Recognize more redirection and array assignment parse errors
() ) } are invalid as a redirection target.
() } are invalid in an array assignment.
2018-10-10 22:26:49 -05:00
Matthew Martin
2f03b6d704 main: Do not highlight a redirection target as an option 2018-10-10 22:26:49 -05:00
Matthew Martin
b075147888 main: Consolidate conditionals together.
No functional change.
2018-10-10 22:26:49 -05:00
Matthew Martin
9289a57de0 main: Remove already_assigned 2018-10-10 22:26:49 -05:00
Matthew Martin
c76daac095 main: Move start_pos=$end_pos to the beginning of the loop
This allows for use of continue.
2018-10-10 22:26:49 -05:00
Matthew Martin
de28e20fbc main: Simplify this_word next_word updating 2018-10-10 22:26:49 -05:00
Matthew Martin
c05ebf762c main: Do not recognize always as a reserved word in a redirection 2018-10-10 22:26:49 -05:00
Matthew Martin
ae5b9b2dc9 main: Set redirection style when recognizing the redirection 2018-10-10 22:26:49 -05:00
Matthew Martin
df431eeee8 main: Recognize repeat with the other reserved words 2018-10-10 22:26:49 -05:00
Matthew Martin
3ddb974a3d main: Remove needless code
The below code handles this case.
2018-10-10 22:26:49 -05:00
Matthew Martin
b6e0aeb380 main: Use unknown-token when the token type is unknown 2018-10-10 22:26:49 -05:00
Matthew Martin
4748f9bd3d main: Add alias tests 2018-10-10 22:26:47 -05:00
Matthew Martin
e3edddd8ec main: alias style overrides precommand style 2018-10-10 22:20:19 -05:00
Matthew Martin
c138123397 main: Move alias handling up.
This will set style=alias before the great fork.
2018-10-10 22:20:19 -05:00
Matthew Martin
57386f30ae main: Recursively expand aliases 2018-10-10 22:20:19 -05:00
Matthew Martin
e1ecf950e2 main: Do path expanstion after alias expansion 2018-10-10 22:20:19 -05:00
Matthew Martin
f46b148c52 main: Only expand aliases in command position 2018-10-10 22:20:19 -05:00
Matthew Martin
99d7235c2b main: Add test for an alias to a redirection 2018-10-10 22:20:19 -05:00
Matthew Martin
05a55108c9 main: Expand aliases before looking for redirections 2018-10-10 22:20:19 -05:00
Daniel Shahaf
e43e4fd2c7 'main': Fix $flags_sans_argument for 'nice'.
Follow-up to 2c15b0e996 ("Learn $flags_sans_arguments…").
2018-10-10 22:20:19 -05:00
Daniel Shahaf
a56c33c3be Bump copyright years. 2018-10-10 22:20:19 -05:00
Daniel Shahaf
005179ed8e 'main': Update $this_word state with our inferences.
Found by code inspection.
2018-10-10 22:20:19 -05:00
Daniel Shahaf
0709520597 No functional change.
Follow-up to 1fee620e62.
2018-10-10 22:20:19 -05:00
Daniel Shahaf
f7ac43cd49 'main': Unify $ZSH_HIGHLIGHT_TOKENS_PRECOMMANDS and $precommand_options. 2018-10-10 22:20:19 -05:00
Daniel Shahaf
31ceaed4f4 'main': Highlight array parameters in command position. 2018-10-10 22:20:18 -05:00
Daniel Shahaf
ad6261fbca 'main': Use a more robust way of testing for $parameters' availability. 2018-10-10 22:19:41 -05:00