Commit Graph

306 Commits

Author SHA1 Message Date
Matthew Martin a3c9e7ebc7 main: Simplify insane alias checking 2018-10-21 14:59:52 -05:00
Matthew Martin f71a17c58e main: Highlight closing brackets
Closes #226
2018-10-21 12:10:07 -05:00
Matthew Martin d0c23a68b3 main: Simplify proc_buf offset calculation
Fixes #347
2018-10-20 23:48:39 -05:00
Matthew Martin cb8c736a56 main: Run the entirety of aliases through the state machine
Fixes #540 #544 #552 #554 #555
2018-10-20 20:57:45 -05:00
Matthew Martin 2d4fe988ba main: Rename parameters to simplify next diff 2018-10-20 20:18:46 -05:00
Matthew Martin 8f17e4e201 main: Add trivial condition and remove whitespace to simplify next diff 2018-10-20 20:18:46 -05:00
Daniel Shahaf 02f4a6b540 'main': Optionally ignore aliases in __type 2018-10-20 20:18:46 -05:00
Matthew Martin b9d7fe5a43 main: Shift args rather than iterating over
No functional change. Prepares for running a full alias through the
state machine.
2018-10-20 20:18:46 -05:00
Matthew Martin 47c2b7e185 main: Distinguish quoted/unquoted command substitutions
Closes #547.
2018-10-13 09:37:09 -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 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 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
Daniel Shahaf 3a33ac1d20 'main': Break out a new helper function for readability. 2018-10-10 22:19:41 -05:00
Daniel Shahaf f3425e18fe 'main': Let _zsh_highlight_main__type return false on failure. 2018-10-10 22:19:41 -05:00
Daniel Shahaf 82c39716eb 'main': Write the "remainder" of the sentence in a comment. No functional change. 2018-10-10 22:19:41 -05:00
Daniel Shahaf a2e993c59f 'main': Learn $flags_sans_arguments and use that to parse '-xy foo' correctly where -x takes no argument and -y does. 2018-10-10 22:19:41 -05:00
Daniel Shahaf bee115f797 'main': Correct a comment. 2018-10-10 22:19:41 -05:00
Daniel Shahaf 7f5e11e38b 'main': Remove superfluous variable. No functional change. 2018-10-10 22:19:41 -05:00
Daniel Shahaf 78be8f611f 'main': Highlight 'doas'.
Fixes #365.
2018-10-10 22:19:41 -05:00
Daniel Shahaf 8b11ca087e 'main': Highlight 'nice'.
Fixes #168.
2018-10-10 22:19:41 -05:00
Daniel Shahaf 5694221939 'main': Highlight the 'command' precommand.
Fixes #343.
2018-10-10 22:19:41 -05:00
Daniel Shahaf 4c7db4e886 'main': Update state machine docs. No functional change. 2018-10-10 22:19:41 -05:00
Daniel Shahaf add2ac59fc 'main': Permit $flags_with_argument to be empty. 2018-10-10 22:19:41 -05:00