Commit graph

359 commits

Author SHA1 Message Date
Matthew Martin bdbe214453 main: Add *-quoted-argument-unclosed styles
Closes #277.
2017-12-24 00:03:55 -06:00
Daniel Shahaf ff61a496b5 'main': Add a regression test for issue #468. 2017-12-23 23:04:32 +00:00
Matthew Martin 572ca51b1f main: Add tests 2017-12-23 14:45:49 -06:00
Matthew Martin dc1b2f6fa4 main: Highlight partially quoted arguments correctly
Closes #130
2017-12-23 14:45:49 -06:00
Matthew Martin 25ae1c0121 main: Add ' helper function 2017-12-23 14:45:47 -06:00
Matthew Martin dcb115c74c main: Make " and $' helper functions responsible for highlighting quote 2017-12-20 15:52:03 -06:00
Matthew Martin f623b07fb0 main: Remove trailing whitespace 2017-12-20 15:52:03 -06:00
Matthew Martin ab1013ae0d main: A redirection token is an invalid redirection target
Closes #466.
2017-12-19 23:01:42 -06:00
Matthew Martin b07ada1255 driver: Run under emulate -L zsh and add zsyh_user_options 2017-12-16 09:33:51 -06:00
Matthew Martin 3e56294543 tests: Avoid using new zmodload flags
Unbreaks build on pre-5.4.
2017-12-14 20:58:32 -06:00
Matthew Martin 2919679ee8 tests: Skip when zsh/pcre is not available 2017-12-14 20:44:54 -06:00
Daniel Shahaf ce1be4153d 'main': Add tests for «ls \~» and for not performing parameter expansion on the command word.
This is a followup to the last commit, which was about issue #328.

These tests are taken from the original #328 pull request, with updated
expectations where applicable.

Review-by: Matthew Martin
2017-12-15 02:35:10 +00:00
Matthew Martin 2411195c20 main: Expand paths before removing quoting
Fixes highlighting of `ls \~`. Closes #328.
2017-12-12 07:58:35 -06:00
Matthew Martin 6a6d40208c main: Add fallback for useroptions if zsh/parameter is absent 2017-12-11 07:26:54 -06:00
disarmer mk 4e6f60063f Add regexp highlighter 2017-12-09 16:17:22 -06:00
Daniel Shahaf fb948f5331 noop: Add comments. 2017-12-07 03:06:56 +00:00
Daniel Shahaf 1ad5c1f40f Followup to parents: Restore sudo-* tests on platforms that don't have sudo.
Travis (as currently configured) is one such platform.
2017-12-07 01:16:02 +00:00
Daniel Shahaf 8d37377644 Followup to last: Don't require 'sudo' to test prefix redirections. 2017-12-07 01:04:13 +00:00
Matthew Martin d04c62a224 tests: Add skips for tests that require sudo 2017-12-06 18:34:56 -06:00
Daniel Shahaf 26a82113b0 'main': Highlight 'sudo' correctly when it's not installed.
No test because _zsh_highlight_main__type() falls back to 'type -w' which runs
'rehash' implicitly, so on systems where 'sudo' is installed it's not possible
to simulate its being absent.

Test by forcing _zsh_highlight_main__type() to return 'none' when the
argument is [[ $1 == 'sudo' ]], and: (1) Run 'make test' and confirm
that all tests either pass, or fail and the first test point that fails
is one that expects "sudo" at command position to be highlighted as
'command'; (2) In an interactive zsh, 'sudo' at command position is
highlighted as an error.
2017-12-07 00:00:13 +00:00
Matthew Martin ecdda36ef5 brackets: Ignore quotes
Closes #112. Closes #138.
2017-11-24 16:39:31 -06:00
Matthew Martin 7177ba005f main: Split declaration and assignment
Unbreak build for 5.0.8 and earlier.
2017-11-24 16:35:25 -06:00
Matthew Martin 2a50614579 main: Save user options in a single variable 2017-11-24 16:07:44 -06:00
Matthew Martin 749b30221d 'main': Skip tests that break on msys2
Closes #382.
2017-11-06 07:11:55 -06:00
Matthew Martin 038409c10d tests: Run tests with WARN_CREATE_GLOBAL 2017-11-05 15:04:49 -06:00
Matthew Martin 1f77ed8369 brackets: Use idiomatic set check 2017-11-02 20:08:28 -05:00
Matthew Martin 9dcfacc4a5 brackets: Disallow negative nesting level 2017-11-02 20:08:28 -05:00
Matthew Martin ac90970edc brackets: Don't call _zsh_highlight_add_highlight with empty style 2017-11-02 20:08:28 -05:00
Matthew Martin f547f7768c brackets: Add test for highlighting errors with no styles 2017-11-02 20:08:28 -05:00
Daniel Shahaf 5436d3e5fc tests: Remove superfluous comment.
The functions can remain defined because, nowadays, the test harness
runs each test in a subshell; but that's a well-known property of the
test harness so need not be mentioned explicitly.

Inspired by discussion on issue #443.
2017-09-11 18:45:35 +00:00
Daniel Shahaf 73cb832702 'main': Highlight mismatched 'if'/'fi'.
Also 'then'/'elif'/'else'.
2017-03-05 17:33:36 +00:00
Daniel Shahaf 237f89ad62 'main': Don't consider «$*» a glob. 2017-02-11 23:49:13 +00:00
Daniel Shahaf 9523d6d49c tests: zsh 5.4-to-be compatibility: Set a new "I am shooting myself in the foot" option. 2017-01-25 19:35:34 +00:00
Daniel Shahaf 76ea9e1df3 'main': Highlight possible history expansions in double-quoted strings. 2016-11-22 07:09:29 +00:00
Daniel Shahaf 9396ad5c5f 'main': Fix highlighting of comments followed by non-comments (on a subsequent line).
Merge remote-tracking branch 'upstream/pr/385'

* upstream/pr/385:
  'main': Add regression test for previous commit.
  'main': Fix bug: no start_pos=$end_pos in comment short path

Fixes #385.
2016-11-02 15:54:56 +00:00
Daniel Shahaf 347cf0eb06 'main': Add regression test for previous commit. 2016-11-02 15:54:02 +00:00
Sebastian Gniazdowski 5625e30b87 'main': Fix bug: no start_pos=$end_pos in comment short path 2016-11-02 10:58:15 +01:00
Daniel Shahaf fed37a90ac 'main': Fix a bug concerning command word with embedded colon-space sequences.
Such a command word would, if not valid, fall through to the `type -w` case,
where the output would be misparsed, consequently the forward-compatible [arg0]
style would be used.
2016-11-02 03:16:45 +00:00
Daniel Shahaf 035d3eb095 Follow-up to 28d7056a7a06: Fix test expectations. 2016-10-22 17:46:42 +00:00
Daniel Shahaf 28d7056a7a 'main': Escape '!' within double-quoted strings. 2016-10-19 23:56:25 +00:00
Daniel Shahaf 7d38d07255 'main': Followup to fdaeec45146b: Update comment.
That revision was itself a followup to 51614ca2c9.
2016-10-17 20:46:46 +00:00
Daniel Shahaf 094329eb14 'main': Introduce style fallback for the command word.
Fixes #316.

* danielsh/i316-v2:
  'main': Enable fallback to the 'arg0' style.
  'main': Set fallback style for the 'arg0' style.
2016-09-28 13:25:05 +00:00
Daniel Shahaf bccc3dc269 'main': Enable fallback to the 'arg0' style. 2016-09-28 13:22:29 +00:00
Daniel Shahaf b4537a972e 'main': Set fallback style for the 'arg0' style.
The fallback style name uses '_' in anticipation of a future auto-fallback
feature keyed on style names.

'arg0' was previously known as 'commandtypefromthefuture'.
2016-09-28 13:22:09 +00:00
Daniel Shahaf 79198759b3 tests: Also test arguments to an anonymous function. 2016-09-25 18:08:45 +00:00
Daniel Shahaf dd51b7bebe Merge remote-tracking branch 'upstream/pr/374' into HEAD
* upstream/pr/374:
  'main': Directly count spaces to skip, don't leverage proc_buf length
2016-09-25 15:58:35 +00:00
Sebastian Gniazdowski 15461e7d21 'main': Directly count spaces to skip, don't leverage proc_buf length
Main highlighter run on itself, on the optimized version:

- optimized (8 runs, 3 last noted):
1.1201650000
1.1074430000
1.1263810000

- unoptimized (8 runs, 3 last noted):
1.5746400000
1.5115250000
1.5155440000

Average difference: 0.415907
2016-09-25 17:52:56 +02:00
Daniel Shahaf 44ef6e38e5 'main': Highlight several more special (non-alphabetic) parameters. 2016-09-25 14:51:02 +00:00
Daniel Shahaf 4afe670f7a 'main': Highlight shell's PID ($$) inside double quotes. 2016-09-25 14:40:58 +00:00
Daniel Shahaf c3913e0d8e 'main': Highlight command substitutions inside double quotes.
Part of issue #139.
2016-09-25 14:40:02 +00:00