Merge remote-tracking branch 'origin/master' into feature/redrawhook
* origin/master: (297 commits) driver: Follow-up to grandparent: Have all test suite entry points declare the mock $region_highlight. Use the new, unreleased zsh 'memo=' feature to remove only our own entries from $region_highlight. driver: Stop re-declaring $region_highlight. It's unneeded. docs: regexp highlighter: Fix a wrong associative array name in the example. docs: Fix obs-repository link tests: Fix a wrong value of $PREBUFFER in a test, and add checks to prevent this from recurring. test harness: Fix use of an undefined variable in an error message. 'main': Don't progress the $in_redirection staller while $in_param. tests: Add an XFail test for issue #712. 'main': Highlight the parentheses of array assignments as reserved words. CI += zsh-5.8 main: Add tests for arithmetic expansion main: Add arithmetic substitution highlighting changelog.md: Restore vertical whitespace before section headers. 'main': Fix issue #677, concerning multiline aliases. changelog: Update through HEAD. 'main': Further optimize argument parsing. 'main': Optimize a hot path. tests: Add a performance testing script, for measuring the performance of the 'main' highlighter on a large file. changelog: Update through HEAD. test harness: Print the expected-v.-actual on every failure, not just upon cardinality failures. Document ZSH_HIGHLIGHT_MAXLENGTH. 'main': Fix the last commit's bug concerning parameter elision not happening in redirects in command position. 'main': Add a test for parameter elision not happening in redirects in command position. 'main': Fix regression in zsh 5.3.1 and older: all precmd hooks later than z-sy-h would be aborted. changelog += WARN_NESTED_VAR fixes (#727, #731) 'main': Fix a regression caused by the great-grandparent commit's WARN_NESTED_VAR fix. 'main': Don't run `_zsh_highlight_main__type` on every non-command word. 'make perf': Show only a cumulative datum per highligher, rather than per test file. 'main': Don't trip WARN_NESTED_VAR. 'main': Follow-up to previous: Document the version number, and deduplicate some option letters. 'main': precommands += strace editorconfig: Fix Makefile settings Fix typo Bump copyright years. driver: Fix "_zsh_highlight:3: read-only variable: ret" warnings when POSIX_BUILTINS is set. tests: Add a test for the infinite loop fixed by each of the last two commits. 'main': Fix expansion of positional parameters in `_zsh_highlight_main_highlighter__try_expand_parameter`. 'main': Fix an infinite loop. 'main': precommands += ionice(1) (from util-linux) driver: Simplify initialization of $zsyh_user_options in the fallback codepath. driver: Make sure we don't change the return value in a called function. 'main': Make logic more robust. No functional change. 'main': Break out an anonymous function into a named function. Fix typos in comments. main: Add test for issue #713 'main': Support the 'env' precommand. test harness: Fix the pretty-printer's padding implementation. Revert "test harness: Rewrite the columnar pretty-printer without external tools." and "travis: Remove bsdmainutils since column(1) has been removed, three commits ago." changelog: Update through HEAD. 'main': Correctly highlight '&&' and '||' inside '[[ … ]]' conditions. 'main': Highlight reserved words following assignments as errors. tests: Add tests for issue #461. test harness: Output the time information to the same place the test name was printed to. test harness: Stringify values in a more readable manner. tests: Add a unit test for a path specified with mixed quoting. tests: Add a test for issue #498, which has already been fixed. tests: Test that global qualifiers and command substitutions aren't evaluated. 'main': Don't consider path_prefix in alias expansions. 'main': Add a test for aliases to AUTO_CD directories. 'main': Let AUTO_CD directories be highlighted with their own style. 'main': Add an auxiliary variable for readability. 'main': In command position, do not highlight directories (unless AUTO_CD is set) and non-executable files. 'main': Extend tests to capture the current behaviour. 'main': Add an XFail test for issue #202. 'main': Highlight errors from the EQUALS option. 'main': Let the type determination ignore global aliases when it ignores regular ones. 'main': Add a regression test for parameters that expand to global aliases. 'main': Enable the zsh/parameter codepath of global aliases highlighting. changelog: Update through HEAD. travis: Remove bsdmainutils since column(1) has been removed, three commits ago. 'main': Highlight global aliases tests: Record current behaviour on global aliases. test harness: Rewrite the columnar pretty-printer without external tools. test harness: Fix an issue with the pretty-printed $expected_region_highlight/$region_highlight diffing. 'main': Support the "close file descriptor" and "coproc" redirection syntaxes tests: Add a test for the "close file descriptor" and "coproc" redirection syntaxes tests: Fix the test added in the last commit. tests: Add a test for issue #705, concerning continuation lines. test harness: Let tests fail early by exiting non-zero or by setting a flag. test harness: Print the test name when $skip_test is set. test harness: Remove a bogus check. test harness: Fix $skip_test support, broken yesterday. travis: Install bsdmainutils to provide column(1). test harness: When the cardinality check fails, pretty-print \$expected_region_highlight and \$region_highlight. test harness: Don't leak options from test files to the test harness. test harness: Fix test failures under zsh 5.0.8 and older. 'main': Fix a bug manifesting under zsh 5.2 and older. 'main': Don't highlight arithmetic expansions as command substitutions. tests: Add a test documenting the current state, prior to introducing #704. test harness: Change cardinality check semantics test harness: No-op change to minimize the next diff. 'main': Document additional meanings of the 'S' $braces_stack flag. 'main': When the redirection operator '>&' or '<&' is followed by a positive integer, do not consider that as a filename; it's always a file descriptor. 'main': Add $last_arg for "lookbehind". noop: Clarify comment. 'main': Honour the MULTIOS option when applying the 'globbing' style. 'main': Document what $in_redirection is currently used for. 'main': The optimized cmdsubst input syntax doesn't glob. changelog: Fix markup. ...
This commit is contained in:
		
						commit
						c28312b9d3
					
				|  | @ -0,0 +1,15 @@ | ||||||
|  | # Top-most editorconfig file | ||||||
|  | 
 | ||||||
|  | root = true | ||||||
|  | 
 | ||||||
|  | [*] | ||||||
|  | end_of_line = lf | ||||||
|  | tab_width   = 2 | ||||||
|  | indent_size = 2 | ||||||
|  | indent_style = space | ||||||
|  | 
 | ||||||
|  | [Makefile] | ||||||
|  | tab_width   = 8 | ||||||
|  | indent_size = 8 | ||||||
|  | indent_style = tab | ||||||
|  | 
 | ||||||
|  | @ -3,6 +3,9 @@ sudo: required | ||||||
| 
 | 
 | ||||||
| env: | env: | ||||||
|   - ZSH=master |   - ZSH=master | ||||||
|  |   - ZSH=5.8 | ||||||
|  |   - ZSH=5.7.1 | ||||||
|  |   - ZSH=5.7 | ||||||
|   - ZSH=5.6.2 |   - ZSH=5.6.2 | ||||||
|   - ZSH=5.6.1 |   - ZSH=5.6.1 | ||||||
|   - ZSH=5.6 |   - ZSH=5.6 | ||||||
|  | @ -33,7 +36,7 @@ env: | ||||||
|   - ZSH=4.3.12 |   - ZSH=4.3.12 | ||||||
|   - ZSH=4.3.11 |   - ZSH=4.3.11 | ||||||
| 
 | 
 | ||||||
| script: docker run -v $PWD:/work -w /work zshusers/zsh-${ZSH} /bin/sh -c 'install_packages make procps && make test' | script: docker run -v $PWD:/work -w /work zshusers/zsh:${ZSH} /bin/sh -c 'install_packages make procps bsdmainutils && make test' | ||||||
| 
 | 
 | ||||||
| notifications: | notifications: | ||||||
|   webhooks: |   webhooks: | ||||||
|  |  | ||||||
|  | @ -1,4 +1,4 @@ | ||||||
| Copyright (c) 2010-2018 zsh-syntax-highlighting contributors | Copyright (c) 2010-2020 zsh-syntax-highlighting contributors | ||||||
| All rights reserved. | All rights reserved. | ||||||
| 
 | 
 | ||||||
| Redistribution and use in source and binary forms, with or without modification, are permitted | Redistribution and use in source and binary forms, with or without modification, are permitted | ||||||
|  |  | ||||||
							
								
								
									
										74
									
								
								HACKING.md
								
								
								
								
							
							
						
						
									
										74
									
								
								HACKING.md
								
								
								
								
							|  | @ -11,16 +11,18 @@ The `main` highlighter | ||||||
| 
 | 
 | ||||||
| The following function `pz` is useful when working on the `main` highlighting: | The following function `pz` is useful when working on the `main` highlighting: | ||||||
| 
 | 
 | ||||||
|     pq() { | ```zsh | ||||||
|       (( $#argv )) || return 0 | pq() { | ||||||
|       print -r -l -- ${(qqqq)argv} |   (( $#argv )) || return 0 | ||||||
|     } |   print -r -l -- ${(qqqq)argv} | ||||||
|     pz() { | } | ||||||
|       local arg | pz() { | ||||||
|       for arg; do |   local arg | ||||||
|         pq ${(z)arg} |   for arg; do | ||||||
|       done |     pq ${(z)arg} | ||||||
|     } |   done | ||||||
|  | } | ||||||
|  | ``` | ||||||
| 
 | 
 | ||||||
| It prints, for each argument, its token breakdown, similar to how the main | It prints, for each argument, its token breakdown, similar to how the main | ||||||
| loop of the `main` highlighter sees it. | loop of the `main` highlighter sees it. | ||||||
|  | @ -32,17 +34,19 @@ Since the test harness empties `ZSH_HIGHLIGHT_STYLES` and the `brackets` | ||||||
| highlighter interrogates `ZSH_HIGHLIGHT_STYLES` to determine how to highlight, | highlighter interrogates `ZSH_HIGHLIGHT_STYLES` to determine how to highlight, | ||||||
| tests must set the `bracket-level-#` keys themselves.  For example: | tests must set the `bracket-level-#` keys themselves.  For example: | ||||||
| 
 | 
 | ||||||
|     ZSH_HIGHLIGHT_STYLES[bracket-level-1]= | ```zsh | ||||||
|     ZSH_HIGHLIGHT_STYLES[bracket-level-2]= | ZSH_HIGHLIGHT_STYLES[bracket-level-1]= | ||||||
|  | ZSH_HIGHLIGHT_STYLES[bracket-level-2]= | ||||||
| 
 | 
 | ||||||
|     BUFFER='echo ({x})' | BUFFER='echo ({x})' | ||||||
| 
 | 
 | ||||||
|     expected_region_highlight=( | expected_region_highlight=( | ||||||
|       "6  6  bracket-level-1" # ( |   "6  6  bracket-level-1" # ( | ||||||
|       "7  7  bracket-level-2" # { |   "7  7  bracket-level-2" # { | ||||||
|       "9  9  bracket-level-2" # } |   "9  9  bracket-level-2" # } | ||||||
|       "10 10 bracket-level-1" # ) |   "10 10 bracket-level-1" # ) | ||||||
|     ) | ) | ||||||
|  | ``` | ||||||
| 
 | 
 | ||||||
| Testing the `pattern` and `regexp` highlighters | Testing the `pattern` and `regexp` highlighters | ||||||
| ----------------------------------------------- | ----------------------------------------------- | ||||||
|  | @ -53,20 +57,40 @@ cannot get the `ZSH_HIGHLIGHT_STYLES` keys.  Therefore, when writing tests, use | ||||||
| the style itself as third word (cf. the | the style itself as third word (cf. the | ||||||
| [documentation for `expected_region_highlight`](docs/highlighters.md)).  For example: | [documentation for `expected_region_highlight`](docs/highlighters.md)).  For example: | ||||||
| 
 | 
 | ||||||
|     ZSH_HIGHLIGHT_PATTERNS+=('rm -rf *' 'fg=white,bold,bg=red') | ```zsh | ||||||
|  | ZSH_HIGHLIGHT_PATTERNS+=('rm -rf *' 'fg=white,bold,bg=red') | ||||||
| 
 | 
 | ||||||
|     BUFFER='rm -rf /' | BUFFER='rm -rf /' | ||||||
|  | 
 | ||||||
|  | expected_region_highlight=( | ||||||
|  |   "1 8 fg=white,bold,bg=red" # rm -rf / | ||||||
|  | ) | ||||||
|  | ``` | ||||||
|  | 
 | ||||||
|  | Memos and commas | ||||||
|  | ---------------- | ||||||
|  | 
 | ||||||
|  | We append to `region_highlight` as follows: | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | ```zsh | ||||||
|  | region_highlight+=("$start $end $spec, memo=zsh-syntax-highlighting") | ||||||
|  | ``` | ||||||
|  | 
 | ||||||
|  | That comma is required to cause zsh 5.8 and older to ignore the memo without | ||||||
|  | ignoring the `$spec`.  It's a hack, but given that no further 5.8.x patch | ||||||
|  | releases are planned, it's been deemed acceptable.  See issue #418 and the | ||||||
|  | cross-referenced issues. | ||||||
| 
 | 
 | ||||||
|     expected_region_highlight=( |  | ||||||
|       "1 8 fg=white,bold,bg=red" # rm -rf / |  | ||||||
|     ) |  | ||||||
| 
 | 
 | ||||||
| Miscellany | Miscellany | ||||||
| ---------- | ---------- | ||||||
| 
 | 
 | ||||||
| If you work on the driver (`zsh-syntax-highlighting.zsh`), you may find the following zstyle useful: | If you work on the driver (`zsh-syntax-highlighting.zsh`), you may find the following zstyle useful: | ||||||
| 
 | 
 | ||||||
|     zstyle ':completion:*:*:*:*:globbed-files' ignored-patterns {'*/',}zsh-syntax-highlighting.plugin.zsh | ```zsh | ||||||
|  | zstyle ':completion:*:*:*:*:globbed-files' ignored-patterns {'*/',}zsh-syntax-highlighting.plugin.zsh | ||||||
|  | ``` | ||||||
| 
 | 
 | ||||||
| IRC channel | IRC channel | ||||||
| ----------- | ----------- | ||||||
|  |  | ||||||
							
								
								
									
										40
									
								
								INSTALL.md
								
								
								
								
							
							
						
						
									
										40
									
								
								INSTALL.md
								
								
								
								
							|  | @ -6,7 +6,7 @@ How to install | ||||||
| * Arch Linux: [community/zsh-syntax-highlighting][arch-package] / [AUR/zsh-syntax-highlighting-git][AUR-package] | * Arch Linux: [community/zsh-syntax-highlighting][arch-package] / [AUR/zsh-syntax-highlighting-git][AUR-package] | ||||||
| * Debian: `zsh-syntax-highlighting` package [in `stretch`][debian-package] (or in [OBS repository][obs-repository]) | * Debian: `zsh-syntax-highlighting` package [in `stretch`][debian-package] (or in [OBS repository][obs-repository]) | ||||||
| * Fedora: [zsh-syntax-highlighting package][fedora-package-alt] in Fedora 24+ (or in [OBS repository][obs-repository]) | * Fedora: [zsh-syntax-highlighting package][fedora-package-alt] in Fedora 24+ (or in [OBS repository][obs-repository]) | ||||||
| * FreeBSD: `pkg install zsh-syntax-highlighting` (port name: [`textproc/zsh-syntax-highlighting`][freebsd-port]) | * FreeBSD: `pkg install zsh-syntax-highlighting` (port name: [`shells/zsh-syntax-highlighting`][freebsd-port]) | ||||||
| * Gentoo: [mv overlay][gentoo-overlay] | * Gentoo: [mv overlay][gentoo-overlay] | ||||||
| * Mac OS X / Homebrew: [brew install zsh-syntax-highlighting][brew-package] | * Mac OS X / Homebrew: [brew install zsh-syntax-highlighting][brew-package] | ||||||
| * Ubuntu: `zsh-syntax-highlighting` package [in Xenial][ubuntu-package] (or in [OBS repository][obs-repository]) | * Ubuntu: `zsh-syntax-highlighting` package [in Xenial][ubuntu-package] (or in [OBS repository][obs-repository]) | ||||||
|  | @ -23,8 +23,8 @@ How to install | ||||||
| [ubuntu-package]: https://launchpad.net/ubuntu/+source/zsh-syntax-highlighting | [ubuntu-package]: https://launchpad.net/ubuntu/+source/zsh-syntax-highlighting | ||||||
| [fedora-package]: https://apps.fedoraproject.org/packages/zsh-syntax-highlighting | [fedora-package]: https://apps.fedoraproject.org/packages/zsh-syntax-highlighting | ||||||
| [fedora-package-alt]: https://bodhi.fedoraproject.org/updates/?packages=zsh-syntax-highlighting | [fedora-package-alt]: https://bodhi.fedoraproject.org/updates/?packages=zsh-syntax-highlighting | ||||||
| [obs-repository]: https://software.opensuse.org//download.html?project=shells%3Azsh-users%3Azsh-syntax-highlighting&package=zsh-syntax-highlighting | [obs-repository]: https://software.opensuse.org/download.html?project=shells%3Azsh-users%3Azsh-syntax-highlighting&package=zsh-syntax-highlighting | ||||||
| [void-package]: https://github.com/voidlinux/void-packages/tree/master/srcpkgs/zsh-syntax-highlighting | [void-package]: https://github.com/void-linux/void-packages/tree/master/srcpkgs/zsh-syntax-highlighting | ||||||
| 
 | 
 | ||||||
| See also [repology's cross-distro index](https://repology.org/metapackage/zsh-syntax-highlighting/versions) | See also [repology's cross-distro index](https://repology.org/metapackage/zsh-syntax-highlighting/versions) | ||||||
| 
 | 
 | ||||||
|  | @ -33,17 +33,23 @@ See also [repology's cross-distro index](https://repology.org/metapackage/zsh-sy | ||||||
| 
 | 
 | ||||||
| Simply clone this repository and source the script: | Simply clone this repository and source the script: | ||||||
| 
 | 
 | ||||||
|     git clone https://github.com/zsh-users/zsh-syntax-highlighting.git | ```zsh | ||||||
|     echo "source ${(q-)PWD}/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh" >> ${ZDOTDIR:-$HOME}/.zshrc | git clone https://github.com/zsh-users/zsh-syntax-highlighting.git | ||||||
|  | echo "source ${(q-)PWD}/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh" >> ${ZDOTDIR:-$HOME}/.zshrc | ||||||
|  | ``` | ||||||
| 
 | 
 | ||||||
|   Then, enable syntax highlighting in the current interactive shell: |   Then, enable syntax highlighting in the current interactive shell: | ||||||
| 
 | 
 | ||||||
|     source ./zsh-syntax-highlighting/zsh-syntax-highlighting.zsh | ```zsh | ||||||
|  | source ./zsh-syntax-highlighting/zsh-syntax-highlighting.zsh | ||||||
|  | ``` | ||||||
| 
 | 
 | ||||||
|   If `git` is not installed, download and extract a snapshot of the latest |   If `git` is not installed, download and extract a snapshot of the latest | ||||||
|   development tree from: |   development tree from: | ||||||
| 
 | 
 | ||||||
|     https://github.com/zsh-users/zsh-syntax-highlighting/archive/master.tar.gz | ``` | ||||||
|  | https://github.com/zsh-users/zsh-syntax-highlighting/archive/master.tar.gz | ||||||
|  | ``` | ||||||
| 
 | 
 | ||||||
|   Note the `source` command must be **at the end** of `~/.zshrc`. |   Note the `source` command must be **at the end** of `~/.zshrc`. | ||||||
| 
 | 
 | ||||||
|  | @ -69,15 +75,17 @@ your `.zshrc`. | ||||||
| 
 | 
 | ||||||
| 1. Clone this repository in oh-my-zsh's plugins directory: | 1. Clone this repository in oh-my-zsh's plugins directory: | ||||||
| 
 | 
 | ||||||
|        git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting |     ```zsh | ||||||
|  |     git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting | ||||||
|  |     ``` | ||||||
| 
 | 
 | ||||||
| 2. Activate the plugin in `~/.zshrc`: | 2. Activate the plugin in `~/.zshrc`: | ||||||
| 
 | 
 | ||||||
|        plugins=( [plugins...] zsh-syntax-highlighting) |     ```zsh | ||||||
|  |     plugins=( [plugins...] zsh-syntax-highlighting) | ||||||
|  |     ``` | ||||||
| 
 | 
 | ||||||
| 3. Source `~/.zshrc`  to take changes into account: | 3. Restart zsh (such as by opening a new instance of your terminal emulator). | ||||||
| 
 |  | ||||||
|        source ~/.zshrc |  | ||||||
| 
 | 
 | ||||||
| #### [Prezto](https://github.com/sorin-ionescu/prezto) | #### [Prezto](https://github.com/sorin-ionescu/prezto) | ||||||
| 
 | 
 | ||||||
|  | @ -106,10 +114,14 @@ Any of the above methods is suitable for a single-user installation, | ||||||
| which requires no special privileges.  If, however, you desire to install | which requires no special privileges.  If, however, you desire to install | ||||||
| zsh-syntax-highlighting system-wide, you may do so by running | zsh-syntax-highlighting system-wide, you may do so by running | ||||||
| 
 | 
 | ||||||
|     make install | ```zsh | ||||||
|  | make install | ||||||
|  | ``` | ||||||
| 
 | 
 | ||||||
| and directing your users to add | and directing your users to add | ||||||
| 
 | 
 | ||||||
|     source /usr/local/share/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh | ```zsh | ||||||
|  | source /usr/local/share/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh | ||||||
|  | ``` | ||||||
| 
 | 
 | ||||||
| to their `.zshrc`s. | to their `.zshrc`s. | ||||||
|  |  | ||||||
							
								
								
									
										2
									
								
								Makefile
								
								
								
								
							
							
						
						
									
										2
									
								
								Makefile
								
								
								
								
							|  | @ -41,7 +41,7 @@ test: | ||||||
| 	for test in highlighters/*; do \
 | 	for test in highlighters/*; do \
 | ||||||
| 		if [ -d $$test/test-data ]; then \
 | 		if [ -d $$test/test-data ]; then \
 | ||||||
| 			echo "Running test $${test##*/}"; \
 | 			echo "Running test $${test##*/}"; \
 | ||||||
| 			$(ZSH) -f tests/test-highlighting.zsh "$${test##*/}"; \
 | 			env -i QUIET=$$QUIET $${TERM:+"TERM=$$TERM"} $(ZSH) -f tests/test-highlighting.zsh "$${test##*/}"; \
 | ||||||
| 			: $$(( result |= $$? )); \
 | 			: $$(( result |= $$? )); \
 | ||||||
| 		fi \
 | 		fi \
 | ||||||
| 	done; \
 | 	done; \
 | ||||||
|  |  | ||||||
|  | @ -27,6 +27,11 @@ Before: [](images/before3.png) | ||||||
| <br/> | <br/> | ||||||
| After:  [](images/after3.png) | After:  [](images/after3.png) | ||||||
| 
 | 
 | ||||||
|  | Before: [](images/before4-smaller.png) | ||||||
|  | <br/> | ||||||
|  | After:  [](images/after4-smaller.png) | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
| 
 | 
 | ||||||
| How to install | How to install | ||||||
| -------------- | -------------- | ||||||
|  |  | ||||||
							
								
								
									
										323
									
								
								changelog.md
								
								
								
								
							
							
						
						
									
										323
									
								
								changelog.md
								
								
								
								
							|  | @ -1,3 +1,196 @@ | ||||||
|  | # Changes in HEAD | ||||||
|  | 
 | ||||||
|  | ## Notice about an improbable-but-not-impossible forward incompatibility | ||||||
|  | 
 | ||||||
|  | Everyone can probably skip this section. | ||||||
|  | 
 | ||||||
|  | The `master` branch of zsh-syntax-highlighting uses a zsh feature that has not | ||||||
|  | yet appeared in a zsh release: the `memo=` feature, added to zsh in commit | ||||||
|  | zsh-5.8-172-gdd6e702ee (after zsh 5.8, before zsh 5.9).  In the unlikely event | ||||||
|  | that this zsh feature should change in an incompatible way before the next | ||||||
|  | stable zsh release, set `zsh_highlight__memo_feature=0` in your .zshrc files to | ||||||
|  | disable use of the new feature. | ||||||
|  | 
 | ||||||
|  | z-sy-h dogfoods the new, unreleased zsh feature because that feature was | ||||||
|  | added to zsh at z-sy-h's initiative.  The new feature is used in the fix | ||||||
|  | to issue #418. | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | ## Other changes: | ||||||
|  | 
 | ||||||
|  | - Document `$ZSH_HIGHLIGHT_MAXLENGTH`. | ||||||
|  |   [#698] | ||||||
|  | 
 | ||||||
|  | - Optimize highlighting unquoted words (words that are not in single quotes, double quotes, backticks, or dollar-single-quotes) | ||||||
|  |   [#730] | ||||||
|  | 
 | ||||||
|  | - Redirection operators (e.g., `<` and `>`) are now highlighted by default | ||||||
|  |   [#646] | ||||||
|  | 
 | ||||||
|  | - Propertly terminate `noglob` scope in try/always blocks | ||||||
|  |   [#577] | ||||||
|  | 
 | ||||||
|  | - Don't error out when `KSH_ARRAYS` is set in the calling scope | ||||||
|  |   [#622, #689] | ||||||
|  | 
 | ||||||
|  | - Literal semicolons in array assignments (`foo=( bar ; baz )`) are now | ||||||
|  |   highlighted as errors. | ||||||
|  |   [3ca93f864fb6] | ||||||
|  | 
 | ||||||
|  | - Command separators in array assignments (`foo=( bar | baz )`) are now | ||||||
|  |   highlighted as errors. | ||||||
|  |   [#651, 81267ca3130c] | ||||||
|  | 
 | ||||||
|  | - Support parameter elision in command position (e.g., `$foo ls` where `$foo` is unset or empty) | ||||||
|  |   [#667] | ||||||
|  | 
 | ||||||
|  | - Don't consider the filename in `sudo -e /path/to/file` to be a command position | ||||||
|  |   [#678] | ||||||
|  | 
 | ||||||
|  | - Don't look up absolute directory names in $cdpath | ||||||
|  |   [2cc2583f8f12, part of #669] | ||||||
|  | 
 | ||||||
|  | - Fix `exec 2>&1;` being highlighted as an error. | ||||||
|  |   [#676] | ||||||
|  | 
 | ||||||
|  | - Fix `: $(<*)` being highlighted as globbing. | ||||||
|  |   [#582] | ||||||
|  | 
 | ||||||
|  | - Fix `cat < *` being highlighting as globbing when the `MULTIOS` option is unset. | ||||||
|  |   [#583] | ||||||
|  | 
 | ||||||
|  | - Fix `echo >&2` highlighting the `2` as a filename if a file by that name happened to exist | ||||||
|  |   [#694, part of #645] | ||||||
|  | 
 | ||||||
|  | - Fix `echo >&-` highlighting the `-` as a filename if a file by that name happened to exist | ||||||
|  |   [part of #645] | ||||||
|  | 
 | ||||||
|  | - Fix `echo >&p` highlighting the `p` as a filename if a file by that name happened to exist | ||||||
|  |   [part of #645] | ||||||
|  | 
 | ||||||
|  | - Fix wrong highlighting of unquoted parameter expansions under zsh 5.2 and older | ||||||
|  |   [e165f18c758e] | ||||||
|  | 
 | ||||||
|  | - Highlight global aliases | ||||||
|  |   [#700] | ||||||
|  | 
 | ||||||
|  | - Highlight `: =nosuchcommand' as an error (when the `EQUALS` option hasn't been unset). | ||||||
|  |   [#430] | ||||||
|  | 
 | ||||||
|  | - Highlight reserved word after assignments as errors (e.g., `foo=bar (ls;)`) | ||||||
|  |   [#461] | ||||||
|  | 
 | ||||||
|  | - Correctly highlight `[[ foo && bar || baz ]]`. | ||||||
|  | 
 | ||||||
|  | - Highlight non-executable files in command position correctly (e.g., `% /etc/passwd`) | ||||||
|  |   [#202, #669] | ||||||
|  | 
 | ||||||
|  | - Highlight directories in command position correctly, including `AUTO_CD` support | ||||||
|  |   [#669] | ||||||
|  | 
 | ||||||
|  | - Recognize `env` as a precommand (e.g., `env FOO=bar ls`) | ||||||
|  | 
 | ||||||
|  | - Recognize `strace` as a precommand | ||||||
|  | 
 | ||||||
|  | - Fix an error message on stderr before every prompt when the `WARN_NESTED_VAR` zsh option is set: | ||||||
|  |   `_zsh_highlight_main__precmd_hook:1: array parameter _zsh_highlight_main__command_type_cache set in enclosing scope in function _zsh_highlight_main__precmd_hook` | ||||||
|  |   [#727, #731, #732, #733] | ||||||
|  | 
 | ||||||
|  | - Fix highlighting of alias whose definitions use a simple command terminator | ||||||
|  |   (such as `;`, `|`, `&&`) before a newline | ||||||
|  |   [#677; had regressed in 0.7.0] | ||||||
|  | 
 | ||||||
|  | - Highlight arithmetic expansions (e.g., `$(( 42 ))`) | ||||||
|  |   [#607 #649 #704] | ||||||
|  | 
 | ||||||
|  | - Highlight the parentheses of array assignments as reserved words (`foo=( bar )`). | ||||||
|  |   The `assign` style remains supported and has precedence. | ||||||
|  |   [#585] | ||||||
|  | 
 | ||||||
|  | - Fix interoperability issue with other plugins that use highlighting.  The fix | ||||||
|  |   requires zsh 5.8.0.3 or newer.  (zsh 5.8.0.2-dev from the `master` branch, | ||||||
|  |   revision zsh-5.8-172-gdd6e702ee or newer is also fine.) | ||||||
|  |   [#418, https://github.com/okapia/zsh-viexchange/issues/1] | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | # Changes in version 0.7.1 | ||||||
|  | 
 | ||||||
|  | - Remove out-of-date information from the 0.7.0 changelog. | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | # Changes in version 0.7.0 | ||||||
|  | 
 | ||||||
|  | This is a stable bugfix and feature release.  Major new features and changes include: | ||||||
|  | 
 | ||||||
|  | - Add `ZSH_HIGHLIGHT_DIRS_BLACKLIST` to disable "path" and "path prefix" | ||||||
|  |   highlighting for specific directories | ||||||
|  |   [#379] | ||||||
|  | 
 | ||||||
|  | - Add the "regexp" highlighter, modelled after the pattern highlighter | ||||||
|  |   [4e6f60063f1c] | ||||||
|  | 
 | ||||||
|  | - When a word uses globbing, only the globbing metacharacters will be highlighted as globbing: | ||||||
|  |   in `: foo*bar`, only the `*` will be blue. | ||||||
|  |   [e48af357532c] | ||||||
|  | 
 | ||||||
|  | - Highlight pasted quotes (e.g., `: foo"bar"`) | ||||||
|  |   [dc1b2f6fa4bb] | ||||||
|  | 
 | ||||||
|  | - Highlight command substitutions (`` : `ls` ``, `: $(ls)`) | ||||||
|  |   [c0e64fe13178 and parents, e86f75a840e7, et al] | ||||||
|  | 
 | ||||||
|  | - Highlight process substitutions (`: >(nl)`, `: <(pwd)`, `: =(git diff)`) | ||||||
|  |   [c0e64fe13178 and parents, e86f75a840e7, et al] | ||||||
|  | 
 | ||||||
|  | - Highlight command substitutions inside double quotes (``: "`foo`"``) | ||||||
|  |   [f16e858f0c83] | ||||||
|  | 
 | ||||||
|  | - Highlight many precommands (e.g., `nice`, `stdbuf`, `eatmydata`; | ||||||
|  |   see `$precommand_options` in the source) | ||||||
|  | 
 | ||||||
|  | - Highlight numeric globs (e.g., `echo /lib<->`) | ||||||
|  | 
 | ||||||
|  | - Assorted improvements to aliases highlighting | ||||||
|  |   (e.g., | ||||||
|  |    `alias sudo_u='sudo -u'; sudo_u jrandom ls`, | ||||||
|  |    `alias x=y y=z z=nosuchcommand; x`, | ||||||
|  |    `alias ls='ls -l'; \ls`) | ||||||
|  |   [f3410c5862fc, 57386f30aec8, #544, and many others] | ||||||
|  | 
 | ||||||
|  | - Highlight some more syntax errors | ||||||
|  |   [dea05e44e671, 298ef6a2fa30] | ||||||
|  | 
 | ||||||
|  | - New styles: named file descriptors, `RC_QUOTES`, and unclosed quotes (e.g., `echo "foo<CURSOR>`) | ||||||
|  |   [38c794a978cd, 25ae1c01216c, 967335dfc5fd] | ||||||
|  | 
 | ||||||
|  | - The 'brackets' highlighting no longer treats quotes specially. | ||||||
|  |   [ecdda36ef56f] | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | Selected bugfixes include: | ||||||
|  | 
 | ||||||
|  | - Highlight `sudo` correctly when it's not installed | ||||||
|  |   [26a82113b08b] | ||||||
|  | 
 | ||||||
|  | - Handle some non-default options being set in zshrc | ||||||
|  |   [b07ada1255b7, a2a899b41b8, 972ad197c13d, b3f66fc8748f] | ||||||
|  | 
 | ||||||
|  | - Fix off-by-one highlighting in vi "visual" mode (vicmd keymap) | ||||||
|  |   [be3882aeb054] | ||||||
|  | 
 | ||||||
|  | - The 'yank-pop' widget is not wrapped | ||||||
|  |   [#183] | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | Known issues include: | ||||||
|  | 
 | ||||||
|  | - A multiline alias that uses a simple command terminator (such as `;`, `|`, `&&`) | ||||||
|  |   before a newline will incorrectly be highlighted as an error.  See issue #677 | ||||||
|  |   for examples and workarounds. | ||||||
|  |   [#677] | ||||||
|  |   [UPDATE: Fixed in 0.8.0] | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
| # Changes in version 0.6.0 | # Changes in version 0.6.0 | ||||||
| 
 | 
 | ||||||
| This is a stable release, featuring bugfixes and minor improvements. | This is a stable release, featuring bugfixes and minor improvements. | ||||||
|  | @ -331,50 +524,66 @@ in this area. | ||||||
| - incomplete sudo commands | - incomplete sudo commands | ||||||
|   (a3047a912100, 2f05620b19ae) |   (a3047a912100, 2f05620b19ae) | ||||||
| 
 | 
 | ||||||
|         sudo; |     ```zsh | ||||||
|         sudo -u; |     sudo; | ||||||
|  |     sudo -u; | ||||||
|  |     ``` | ||||||
| 
 | 
 | ||||||
| - command words following reserved words | - command words following reserved words | ||||||
|   (#207, #222, b397b12ac139 et seq, 6fbd2aa9579b et seq, 8b4adbd991b0) |   (#207, #222, b397b12ac139 et seq, 6fbd2aa9579b et seq, 8b4adbd991b0) | ||||||
| 
 | 
 | ||||||
|         if ls; then ls; else ls; fi |     ```zsh | ||||||
|         repeat 10 do ls; done |     if ls; then ls; else ls; fi | ||||||
|  |     repeat 10 do ls; done | ||||||
|  |     ``` | ||||||
| 
 | 
 | ||||||
|     (The `ls` are now highlighted as a command.) |     (The `ls` are now highlighted as a command.) | ||||||
| 
 | 
 | ||||||
| - comments (when `INTERACTIVE_COMMENTS` is set) | - comments (when `INTERACTIVE_COMMENTS` is set) | ||||||
|   (#163, #167, 693de99a9030) |   (#163, #167, 693de99a9030) | ||||||
| 
 | 
 | ||||||
|         echo Hello # comment |     ```zsh | ||||||
|  |     echo Hello # comment | ||||||
|  |     ``` | ||||||
| 
 | 
 | ||||||
| - closing brackets of arithmetic expansion, subshells, and blocks | - closing brackets of arithmetic expansion, subshells, and blocks | ||||||
|   (#226, a59f442d2d34, et seq) |   (#226, a59f442d2d34, et seq) | ||||||
| 
 | 
 | ||||||
|         (( foo )) |     ```zsh | ||||||
|         ( foo ) |     (( foo )) | ||||||
|         { foo } |     ( foo ) | ||||||
|  |     { foo } | ||||||
|  |     ``` | ||||||
| 
 | 
 | ||||||
| - command names enabled by the `PATH_DIRS` option | - command names enabled by the `PATH_DIRS` option | ||||||
|   (#228, 96ee5116b182) |   (#228, 96ee5116b182) | ||||||
| 
 | 
 | ||||||
|         # When ~/bin/foo/bar exists, is executable, ~/bin is in $PATH, |     ```zsh | ||||||
|         # and 'setopt PATH_DIRS' is in effect |     # When ~/bin/foo/bar exists, is executable, ~/bin is in $PATH, | ||||||
|         foo/bar |     # and 'setopt PATH_DIRS' is in effect | ||||||
|  |     foo/bar | ||||||
|  |     ``` | ||||||
| 
 | 
 | ||||||
| - parameter expansions with braces inside double quotes | - parameter expansions with braces inside double quotes | ||||||
|   (#186, 6e3720f39d84) |   (#186, 6e3720f39d84) | ||||||
| 
 | 
 | ||||||
|         echo "${foo}" |     ```zsh | ||||||
|  |     echo "${foo}" | ||||||
|  |     ``` | ||||||
| 
 | 
 | ||||||
| - parameter expansions in command word | - parameter expansions in command word | ||||||
|   (#101, 4fcfb15913a2) |   (#101, 4fcfb15913a2) | ||||||
| 
 | 
 | ||||||
|         x=/bin/ls |     ```zsh | ||||||
|         $x -l |     x=/bin/ls | ||||||
|  |     $x -l | ||||||
|  |     ``` | ||||||
| 
 | 
 | ||||||
| - the command separators '|&', '&!', '&|' | - the command separators '\|&', '&!', '&\|' | ||||||
| 
 | 
 | ||||||
|         view file.pdf &!  ls |     ```zsh | ||||||
|  |     view file.pdf &!  ls | ||||||
|  |     ``` | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| ## Fixed highlighting of: | ## Fixed highlighting of: | ||||||
|  | @ -382,23 +591,31 @@ in this area. | ||||||
| - precommand modifiers at non-command-word position | - precommand modifiers at non-command-word position | ||||||
|   (#209, 2c9f8c8c95fa) |   (#209, 2c9f8c8c95fa) | ||||||
| 
 | 
 | ||||||
|         ls command foo |     ```zsh | ||||||
|  |     ls command foo | ||||||
|  |     ``` | ||||||
| 
 | 
 | ||||||
| - sudo commands with infix redirections | - sudo commands with infix redirections | ||||||
|   (#221, be006aded590, 86e924970911) |   (#221, be006aded590, 86e924970911) | ||||||
| 
 | 
 | ||||||
|         sudo -u >/tmp/foo.out user ls |     ```zsh | ||||||
|  |     sudo -u >/tmp/foo.out user ls | ||||||
|  |     ``` | ||||||
| 
 | 
 | ||||||
| - subshells; anonymous functions | - subshells; anonymous functions | ||||||
|   (#166, #194, 0d1bfbcbfa67, 9e178f9f3948) |   (#166, #194, 0d1bfbcbfa67, 9e178f9f3948) | ||||||
| 
 | 
 | ||||||
|         (true) |     ```zsh | ||||||
|         () { true } |     (true) | ||||||
|  |     () { true } | ||||||
|  |     ``` | ||||||
| 
 | 
 | ||||||
| - parameter assignment statements with no command | - parameter assignment statements with no command | ||||||
|   (#205, 01d7eeb3c713) |   (#205, 01d7eeb3c713) | ||||||
| 
 | 
 | ||||||
|         A=1; |     ```zsh | ||||||
|  |     A=1; | ||||||
|  |     ``` | ||||||
| 
 | 
 | ||||||
|     (The semicolon used to be highlighted as a mistake) |     (The semicolon used to be highlighted as a mistake) | ||||||
| 
 | 
 | ||||||
|  | @ -489,69 +706,95 @@ in this area. | ||||||
| 
 | 
 | ||||||
| - suffix aliases (requires zsh 5.1.1 or newer): | - suffix aliases (requires zsh 5.1.1 or newer): | ||||||
| 
 | 
 | ||||||
|         alias -s png=display |     ```zsh | ||||||
|         foo.png |     alias -s png=display | ||||||
|  |     foo.png | ||||||
|  |     ``` | ||||||
| 
 | 
 | ||||||
| - prefix redirections: | - prefix redirections: | ||||||
| 
 | 
 | ||||||
|         <foo.txt cat |     ```zsh | ||||||
|  |     <foo.txt cat | ||||||
|  |     ``` | ||||||
| 
 | 
 | ||||||
| - redirection operators: | - redirection operators: | ||||||
| 
 | 
 | ||||||
|         echo > foo.txt |     ```zsh | ||||||
|  |     echo > foo.txt | ||||||
|  |     ``` | ||||||
| 
 | 
 | ||||||
| - arithmetic evaluations: | - arithmetic evaluations: | ||||||
| 
 | 
 | ||||||
|         (( 42 )) |     ```zsh | ||||||
|  |     (( 42 )) | ||||||
|  |     ``` | ||||||
| 
 | 
 | ||||||
| - $'' strings, including \x/\octal/\u/\U escapes | - $'' strings, including \x/\octal/\u/\U escapes | ||||||
| 
 | 
 | ||||||
|         : $'foo\u0040bar' |     ```zsh | ||||||
|  |     : $'foo\u0040bar' | ||||||
|  |     ``` | ||||||
| 
 | 
 | ||||||
| - multiline strings: | - multiline strings: | ||||||
| 
 | 
 | ||||||
|         % echo "line 1 |     ```zsh | ||||||
|         line 2" |     % echo "line 1 | ||||||
|  |     line 2" | ||||||
|  |     ``` | ||||||
| 
 | 
 | ||||||
| - string literals that haven't been finished: | - string literals that haven't been finished: | ||||||
| 
 | 
 | ||||||
|         % echo "Hello, world |     ```zsh | ||||||
| 
 |     % echo "Hello, world | ||||||
|  |     ``` | ||||||
| - command words that involve tilde expansion: | - command words that involve tilde expansion: | ||||||
| 
 | 
 | ||||||
|         % ~/bin/foo |     ```zsh | ||||||
| 
 |     % ~/bin/foo | ||||||
|  |     ``` | ||||||
| 
 | 
 | ||||||
| ## Fixed highlighting of: | ## Fixed highlighting of: | ||||||
| 
 | 
 | ||||||
| - quoted command words: | - quoted command words: | ||||||
| 
 | 
 | ||||||
|         % \ls |     ```zsh | ||||||
|  |     % \ls | ||||||
|  |     ``` | ||||||
| 
 | 
 | ||||||
| - backslash escapes in "" strings: | - backslash escapes in "" strings: | ||||||
| 
 | 
 | ||||||
|         % echo "\x41" |     ```zsh | ||||||
|  |     % echo "\x41" | ||||||
|  |     ``` | ||||||
| 
 | 
 | ||||||
| - noglob after command separator: | - noglob after command separator: | ||||||
| 
 | 
 | ||||||
|         % :; noglob echo * |     ```zsh | ||||||
|  |     % :; noglob echo * | ||||||
|  |     ``` | ||||||
| 
 | 
 | ||||||
| - glob after command separator, when the first command starts with 'noglob': | - glob after command separator, when the first command starts with 'noglob': | ||||||
| 
 | 
 | ||||||
|         % noglob true; echo * |     ```zsh | ||||||
|  |     % noglob true; echo * | ||||||
|  |     ``` | ||||||
| 
 | 
 | ||||||
| - the region (vi visual mode / set-mark-command) (issue #165) | - the region (vi visual mode / set-mark-command) (issue #165) | ||||||
| 
 | 
 | ||||||
| - redirection and command separators that would be highlighted as `path_approx` | - redirection and command separators that would be highlighted as `path_approx` | ||||||
| 
 | 
 | ||||||
|         % echo foo;‸ |     ```zsh | ||||||
|         % echo <‸ |     % echo foo;‸ | ||||||
|  |     % echo <‸ | ||||||
|  |     ``` | ||||||
| 
 | 
 | ||||||
|     (where `‸` represents the cursor location) |     (where `‸` represents the cursor location) | ||||||
| 
 | 
 | ||||||
| - escaped globbing (outside quotes) | - escaped globbing (outside quotes) | ||||||
| 
 | 
 | ||||||
|         % echo \* |     ```zsh | ||||||
|  |     % echo \* | ||||||
|  |     ``` | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| ## Other changes: | ## Other changes: | ||||||
|  |  | ||||||
|  | @ -18,13 +18,32 @@ Syntax highlighting is done by pluggable highlighters: | ||||||
| [6]: highlighters/line.md | [6]: highlighters/line.md | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
|  | Highlighter-independent settings | ||||||
|  | -------------------------------- | ||||||
|  | 
 | ||||||
|  | By default, all command lines are highlighted.  However, it is possible to | ||||||
|  | prevent command lines longer than a fixed number of characters from being | ||||||
|  | highlighted by setting the variable `${ZSH_HIGHLIGHT_MAXLENGTH}` to the maximum | ||||||
|  | length (in characters) of command lines to be highlighter.  This is useful when | ||||||
|  | editing very long comand lines (for example, with the [`fned`][fned] utility | ||||||
|  | function).  Example: | ||||||
|  | 
 | ||||||
|  | [fned]: http://zsh.sourceforge.net/Doc/Release/User-Contributions.html#index-zed | ||||||
|  | 
 | ||||||
|  | ```zsh | ||||||
|  | ZSH_HIGHLIGHT_MAXLENGTH=512 | ||||||
|  | ``` | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
| How to activate highlighters | How to activate highlighters | ||||||
| ---------------------------- | ---------------------------- | ||||||
| 
 | 
 | ||||||
| To activate an highlighter, add it to the `ZSH_HIGHLIGHT_HIGHLIGHTERS` array in | To activate an highlighter, add it to the `ZSH_HIGHLIGHT_HIGHLIGHTERS` array in | ||||||
| `~/.zshrc`, for example: | `~/.zshrc`, for example: | ||||||
| 
 | 
 | ||||||
|     ZSH_HIGHLIGHT_HIGHLIGHTERS=(main brackets pattern cursor) | ```zsh | ||||||
|  | ZSH_HIGHLIGHT_HIGHLIGHTERS=(main brackets pattern cursor) | ||||||
|  | ``` | ||||||
| 
 | 
 | ||||||
| By default, `$ZSH_HIGHLIGHT_HIGHLIGHTERS` is unset and only the `main` | By default, `$ZSH_HIGHLIGHT_HIGHLIGHTERS` is unset and only the `main` | ||||||
| highlighter is active. | highlighter is active. | ||||||
|  | @ -58,10 +77,12 @@ To create your own `acme` highlighter: | ||||||
|   This function must return 0 when the highlighter needs to be called and |   This function must return 0 when the highlighter needs to be called and | ||||||
|   non-zero otherwise, for example: |   non-zero otherwise, for example: | ||||||
| 
 | 
 | ||||||
|         _zsh_highlight_highlighter_acme_predicate() { |     ```zsh | ||||||
|           # Call this highlighter in SVN working copies |     _zsh_highlight_highlighter_acme_predicate() { | ||||||
|           [[ -d .svn ]] |       # Call this highlighter in SVN working copies | ||||||
|         } |       [[ -d .svn ]] | ||||||
|  |     } | ||||||
|  |     ``` | ||||||
| 
 | 
 | ||||||
| * Implement the `_zsh_highlight_highlighter_acme_paint` function. | * Implement the `_zsh_highlight_highlighter_acme_paint` function. | ||||||
|   This function does the actual syntax highlighting, by calling |   This function does the actual syntax highlighting, by calling | ||||||
|  | @ -71,18 +92,22 @@ To create your own `acme` highlighter: | ||||||
|   `: ${ZSH_HIGHLIGHT_STYLES[key]:=value}`, being sure to prefix |   `: ${ZSH_HIGHLIGHT_STYLES[key]:=value}`, being sure to prefix | ||||||
|   the key with your highlighter name and a colon. For example: |   the key with your highlighter name and a colon. For example: | ||||||
| 
 | 
 | ||||||
|         : ${ZSH_HIGHLIGHT_STYLES[acme:aurora]:=fg=green} |     ```zsh | ||||||
|  |     : ${ZSH_HIGHLIGHT_STYLES[acme:aurora]:=fg=green} | ||||||
| 
 | 
 | ||||||
|         _zsh_highlight_highlighter_acme_paint() { |     _zsh_highlight_highlighter_acme_paint() { | ||||||
|           # Colorize the whole buffer with the 'aurora' style |       # Colorize the whole buffer with the 'aurora' style | ||||||
|           _zsh_highlight_add_highlight 0 $#BUFFER acme:aurora |       _zsh_highlight_add_highlight 0 $#BUFFER acme:aurora | ||||||
|         } |     } | ||||||
|  |     ``` | ||||||
| 
 | 
 | ||||||
|   If you need to test which options the user has set, test `zsyh_user_options` |   If you need to test which options the user has set, test `zsyh_user_options` | ||||||
|   with a sensible default if the option is not present in supported zsh |   with a sensible default if the option is not present in supported zsh | ||||||
|   versions. For example: |   versions. For example: | ||||||
| 
 | 
 | ||||||
|         [[ ${zsyh_user_options[ignoreclosebraces]:-off} == on ]] |     ```zsh | ||||||
|  |     [[ ${zsyh_user_options[ignoreclosebraces]:-off} == on ]] | ||||||
|  |     ``` | ||||||
| 
 | 
 | ||||||
|   The option name must be all lowercase with no underscores and not an alias. |   The option name must be all lowercase with no underscores and not an alias. | ||||||
| 
 | 
 | ||||||
|  | @ -96,10 +121,12 @@ To create your own `acme` highlighter: | ||||||
|         `_zsh_highlight_highlighter_acme_paint` respectively. |         `_zsh_highlight_highlighter_acme_paint` respectively. | ||||||
| 
 | 
 | ||||||
|         These names are still supported for backwards compatibility; |         These names are still supported for backwards compatibility; | ||||||
|         however, support for them will be removed in a a future major or minor release (v0.x.0 or v1.0.0). |         however, support for them will be removed in a future major or minor release (v0.x.0 or v1.0.0). | ||||||
| 
 | 
 | ||||||
| * Activate your highlighter in `~/.zshrc`: | * Activate your highlighter in `~/.zshrc`: | ||||||
| 
 | 
 | ||||||
|         ZSH_HIGHLIGHT_HIGHLIGHTERS+=(acme) |     ```zsh | ||||||
|  |     ZSH_HIGHLIGHT_HIGHLIGHTERS+=(acme) | ||||||
|  |     ``` | ||||||
| 
 | 
 | ||||||
| * [Write tests](../tests/README.md). | * [Write tests](../tests/README.md). | ||||||
|  |  | ||||||
|  | @ -16,11 +16,13 @@ This highlighter defines the following styles: | ||||||
| To override one of those styles, change its entry in `ZSH_HIGHLIGHT_STYLES`, | To override one of those styles, change its entry in `ZSH_HIGHLIGHT_STYLES`, | ||||||
| for example in `~/.zshrc`: | for example in `~/.zshrc`: | ||||||
| 
 | 
 | ||||||
|     # To define styles for nested brackets up to level 4 | ```zsh | ||||||
|     ZSH_HIGHLIGHT_STYLES[bracket-level-1]='fg=blue,bold' | # To define styles for nested brackets up to level 4 | ||||||
|     ZSH_HIGHLIGHT_STYLES[bracket-level-2]='fg=red,bold' | ZSH_HIGHLIGHT_STYLES[bracket-level-1]='fg=blue,bold' | ||||||
|     ZSH_HIGHLIGHT_STYLES[bracket-level-3]='fg=yellow,bold' | ZSH_HIGHLIGHT_STYLES[bracket-level-2]='fg=red,bold' | ||||||
|     ZSH_HIGHLIGHT_STYLES[bracket-level-4]='fg=magenta,bold' | ZSH_HIGHLIGHT_STYLES[bracket-level-3]='fg=yellow,bold' | ||||||
|  | ZSH_HIGHLIGHT_STYLES[bracket-level-4]='fg=magenta,bold' | ||||||
|  | ``` | ||||||
| 
 | 
 | ||||||
| The syntax for values is the same as the syntax of "types of highlighting" of | The syntax for values is the same as the syntax of "types of highlighting" of | ||||||
| the zsh builtin `$zle_highlight` array, which is documented in [the `zshzle(1)` | the zsh builtin `$zle_highlight` array, which is documented in [the `zshzle(1)` | ||||||
|  |  | ||||||
|  | @ -13,7 +13,9 @@ This highlighter defines the following styles: | ||||||
| To override one of those styles, change its entry in `ZSH_HIGHLIGHT_STYLES`, | To override one of those styles, change its entry in `ZSH_HIGHLIGHT_STYLES`, | ||||||
| for example in `~/.zshrc`: | for example in `~/.zshrc`: | ||||||
| 
 | 
 | ||||||
|     ZSH_HIGHLIGHT_STYLES[cursor]='bg=blue' | ```zsh | ||||||
|  | ZSH_HIGHLIGHT_STYLES[cursor]='bg=blue' | ||||||
|  | ``` | ||||||
| 
 | 
 | ||||||
| The syntax for values is the same as the syntax of "types of highlighting" of | The syntax for values is the same as the syntax of "types of highlighting" of | ||||||
| the zsh builtin `$zle_highlight` array, which is documented in [the `zshzle(1)` | the zsh builtin `$zle_highlight` array, which is documented in [the `zshzle(1)` | ||||||
|  |  | ||||||
|  | @ -13,7 +13,9 @@ This highlighter defines the following styles: | ||||||
| To override one of those styles, change its entry in `ZSH_HIGHLIGHT_STYLES`, | To override one of those styles, change its entry in `ZSH_HIGHLIGHT_STYLES`, | ||||||
| for example in `~/.zshrc`: | for example in `~/.zshrc`: | ||||||
| 
 | 
 | ||||||
|     ZSH_HIGHLIGHT_STYLES[line]='bold' | ```zsh | ||||||
|  | ZSH_HIGHLIGHT_STYLES[line]='bold' | ||||||
|  | ``` | ||||||
| 
 | 
 | ||||||
| The syntax for values is the same as the syntax of "types of highlighting" of | The syntax for values is the same as the syntax of "types of highlighting" of | ||||||
| the zsh builtin `$zle_highlight` array, which is documented in [the `zshzle(1)` | the zsh builtin `$zle_highlight` array, which is documented in [the `zshzle(1)` | ||||||
|  |  | ||||||
|  | @ -20,12 +20,14 @@ This highlighter defines the following styles: | ||||||
| * `reserved-word` - shell reserved words (`if`, `for`) | * `reserved-word` - shell reserved words (`if`, `for`) | ||||||
| * `alias` - aliases | * `alias` - aliases | ||||||
| * `suffix-alias` - suffix aliases (requires zsh 5.1.1 or newer) | * `suffix-alias` - suffix aliases (requires zsh 5.1.1 or newer) | ||||||
|  | * `global-alias` - global aliases | ||||||
| * `builtin` - shell builtin commands (`shift`, `pwd`, `zstyle`) | * `builtin` - shell builtin commands (`shift`, `pwd`, `zstyle`) | ||||||
| * `function` - function names | * `function` - function names | ||||||
| * `command` - command names | * `command` - command names | ||||||
| * `precommand` - precommand modifiers (e.g., `noglob`, `builtin`) | * `precommand` - precommand modifiers (e.g., `noglob`, `builtin`) | ||||||
| * `commandseparator` - command separation tokens (`;`, `&&`) | * `commandseparator` - command separation tokens (`;`, `&&`) | ||||||
| * `hashed-command` - hashed commands | * `hashed-command` - hashed commands | ||||||
|  | * `autodirectory` - a directory name in command position when the `AUTO_CD` option is set | ||||||
| * `path` - existing filenames | * `path` - existing filenames | ||||||
| * `path_pathseparator` - path separators in filenames (`/`); if unset, `path` is used (default) | * `path_pathseparator` - path separators in filenames (`/`); if unset, `path` is used (default) | ||||||
| * `path_prefix` - prefixes of existing filenames | * `path_prefix` - prefixes of existing filenames | ||||||
|  | @ -33,9 +35,14 @@ This highlighter defines the following styles: | ||||||
| * `globbing` - globbing expressions (`*.txt`) | * `globbing` - globbing expressions (`*.txt`) | ||||||
| * `history-expansion` - history expansion expressions (`!foo` and `^foo^bar`) | * `history-expansion` - history expansion expressions (`!foo` and `^foo^bar`) | ||||||
| * `command-substitution` - command substitutions (`$(echo foo)`) | * `command-substitution` - command substitutions (`$(echo foo)`) | ||||||
|  | * `command-substitution-unquoted` - an unquoted command substitution (`$(echo foo)`) | ||||||
|  | * `command-substitution-quoted` - a quoted command substitution (`"$(echo foo)"`) | ||||||
| * `command-substitution-delimiter` - command substitution delimiters (`$(` and `)`) | * `command-substitution-delimiter` - command substitution delimiters (`$(` and `)`) | ||||||
|  | * `command-substitution-delimiter-unquoted` - an unquoted command substitution delimiters (`$(` and `)`) | ||||||
|  | * `command-substitution-delimiter-quoted` - a quoted command substitution delimiters (`"$(` and `)"`) | ||||||
| * `process-substitution` - process substitutions (`<(echo foo)`) | * `process-substitution` - process substitutions (`<(echo foo)`) | ||||||
| * `process-substitution-delimiter` - process substitution delimiters (`<(` and `)`) | * `process-substitution-delimiter` - process substitution delimiters (`<(` and `)`) | ||||||
|  | * `arithmetic-expansion` - arithmetic expansion `$(( 42 ))`) | ||||||
| * `single-hyphen-option` - single-hyphen options (`-o`) | * `single-hyphen-option` - single-hyphen options (`-o`) | ||||||
| * `double-hyphen-option` - double-hyphen options (`--option`) | * `double-hyphen-option` - double-hyphen options (`--option`) | ||||||
| * `back-quoted-argument` - backtick command substitution (`` `foo` ``) | * `back-quoted-argument` - backtick command substitution (`` `foo` ``) | ||||||
|  | @ -54,23 +61,28 @@ This highlighter defines the following styles: | ||||||
| * `assign` - parameter assignments (`x=foo` and `x=( )`) | * `assign` - parameter assignments (`x=foo` and `x=( )`) | ||||||
| * `redirection` - redirection operators (`<`, `>`, etc) | * `redirection` - redirection operators (`<`, `>`, etc) | ||||||
| * `comment` - comments, when `setopt INTERACTIVE_COMMENTS` is in effect (`echo # foo`) | * `comment` - comments, when `setopt INTERACTIVE_COMMENTS` is in effect (`echo # foo`) | ||||||
|  | * `comment` - elided parameters in command position (`$x ls` when `$x` is unset or empty) | ||||||
|  | * `named-fd` - named file descriptor (the `fd` in `echo foo {fd}>&2`) | ||||||
|  | * `numeric-fd` - numeric file descriptor (the `2` in `echo foo {fd}>&2`) | ||||||
| * `arg0` - a command word other than one of those enumerated above (other than a command, precommand, alias, function, or shell builtin command). | * `arg0` - a command word other than one of those enumerated above (other than a command, precommand, alias, function, or shell builtin command). | ||||||
| * `default` - everything else | * `default` - everything else | ||||||
| 
 | 
 | ||||||
| To override one of those styles, change its entry in `ZSH_HIGHLIGHT_STYLES`, | To override one of those styles, change its entry in `ZSH_HIGHLIGHT_STYLES`, | ||||||
| for example in `~/.zshrc`: | for example in `~/.zshrc`: | ||||||
| 
 | 
 | ||||||
|     # Declare the variable | ```zsh | ||||||
|     typeset -A ZSH_HIGHLIGHT_STYLES | # Declare the variable | ||||||
|  | typeset -A ZSH_HIGHLIGHT_STYLES | ||||||
| 
 | 
 | ||||||
|     # To differentiate aliases from other command types | # To differentiate aliases from other command types | ||||||
|     ZSH_HIGHLIGHT_STYLES[alias]='fg=magenta,bold' | ZSH_HIGHLIGHT_STYLES[alias]='fg=magenta,bold' | ||||||
| 
 | 
 | ||||||
|     # To have paths colored instead of underlined | # To have paths colored instead of underlined | ||||||
|     ZSH_HIGHLIGHT_STYLES[path]='fg=cyan' | ZSH_HIGHLIGHT_STYLES[path]='fg=cyan' | ||||||
| 
 | 
 | ||||||
|     # To disable highlighting of globbing expressions | # To disable highlighting of globbing expressions | ||||||
|     ZSH_HIGHLIGHT_STYLES[globbing]='none' | ZSH_HIGHLIGHT_STYLES[globbing]='none' | ||||||
|  | ``` | ||||||
| 
 | 
 | ||||||
| The syntax for values is the same as the syntax of "types of highlighting" of | The syntax for values is the same as the syntax of "types of highlighting" of | ||||||
| the zsh builtin `$zle_highlight` array, which is documented in [the `zshzle(1)` | the zsh builtin `$zle_highlight` array, which is documented in [the `zshzle(1)` | ||||||
|  | @ -78,10 +90,11 @@ manual page][zshzle-Character-Highlighting]. | ||||||
| 
 | 
 | ||||||
| #### Parameters | #### Parameters | ||||||
| 
 | 
 | ||||||
| To avoid partial path lookups on a path, add the path to the `X_ZSH_HIGHLIGHT_DIRS_BLACKLIST` array. | To avoid partial path lookups on a path, add the path to the `ZSH_HIGHLIGHT_DIRS_BLACKLIST` array. | ||||||
| This interface is still experimental. |  | ||||||
| 
 | 
 | ||||||
|     X_ZSH_HIGHLIGHT_DIRS_BLACKLIST+=(/mnt/slow_share) | ```zsh | ||||||
|  | ZSH_HIGHLIGHT_DIRS_BLACKLIST+=(/mnt/slow_share) | ||||||
|  | ``` | ||||||
| 
 | 
 | ||||||
| ### Useless trivia | ### Useless trivia | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -9,8 +9,13 @@ This is the `pattern` highlighter, that highlights user-defined patterns. | ||||||
| To use this highlighter, associate patterns with styles in the | To use this highlighter, associate patterns with styles in the | ||||||
| `ZSH_HIGHLIGHT_PATTERNS` associative array, for example in `~/.zshrc`: | `ZSH_HIGHLIGHT_PATTERNS` associative array, for example in `~/.zshrc`: | ||||||
| 
 | 
 | ||||||
|     # To have commands starting with `rm -rf` in red: | ```zsh | ||||||
|     ZSH_HIGHLIGHT_PATTERNS+=('rm -rf *' 'fg=white,bold,bg=red') | # Declare the variable | ||||||
|  | typeset -A ZSH_HIGHLIGHT_PATTERNS | ||||||
|  | 
 | ||||||
|  | # To have commands starting with `rm -rf` in red: | ||||||
|  | ZSH_HIGHLIGHT_PATTERNS+=('rm -rf *' 'fg=white,bold,bg=red') | ||||||
|  | ``` | ||||||
| 
 | 
 | ||||||
| The syntax for values is the same as the syntax of "types of highlighting" of | The syntax for values is the same as the syntax of "types of highlighting" of | ||||||
| the zsh builtin `$zle_highlight` array, which is documented in [the `zshzle(1)` | the zsh builtin `$zle_highlight` array, which is documented in [the `zshzle(1)` | ||||||
|  |  | ||||||
|  | @ -10,7 +10,10 @@ patterns. | ||||||
| To use this highlighter, associate regular expressions with styles in the | To use this highlighter, associate regular expressions with styles in the | ||||||
| `ZSH_HIGHLIGHT_REGEXP` associative array, for example in `~/.zshrc`: | `ZSH_HIGHLIGHT_REGEXP` associative array, for example in `~/.zshrc`: | ||||||
| 
 | 
 | ||||||
|     ZSH_HIGHLIGHT_REGEXP+=('\bsudo\b' fg=123,bold) | ```zsh | ||||||
|  | typeset -A ZSH_HIGHLIGHT_REGEXP | ||||||
|  | ZSH_HIGHLIGHT_REGEXP+=('\bsudo\b' fg=123,bold) | ||||||
|  | ``` | ||||||
| 
 | 
 | ||||||
| This will highlight "sudo" only as a complete word, i.e., "sudo cmd", but not | This will highlight "sudo" only as a complete word, i.e., "sudo cmd", but not | ||||||
| "sudoedit" | "sudoedit" | ||||||
|  |  | ||||||
|  | @ -14,7 +14,9 @@ This highlighter defines the following styles: | ||||||
| To override one of those styles, change its entry in `ZSH_HIGHLIGHT_STYLES`, | To override one of those styles, change its entry in `ZSH_HIGHLIGHT_STYLES`, | ||||||
| for example in `~/.zshrc`: | for example in `~/.zshrc`: | ||||||
| 
 | 
 | ||||||
|     ZSH_HIGHLIGHT_STYLES[root]='bg=red' | ```zsh | ||||||
|  | ZSH_HIGHLIGHT_STYLES[root]='bg=red' | ||||||
|  | ``` | ||||||
| 
 | 
 | ||||||
| The syntax for values is the same as the syntax of "types of highlighting" of | The syntax for values is the same as the syntax of "types of highlighting" of | ||||||
| the zsh builtin `$zle_highlight` array, which is documented in [the `zshzle(1)` | the zsh builtin `$zle_highlight` array, which is documented in [the `zshzle(1)` | ||||||
|  |  | ||||||
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							|  | @ -0,0 +1,35 @@ | ||||||
|  | #!/usr/bin/env zsh | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # Copyright (c) 2020 zsh-syntax-highlighting contributors | ||||||
|  | # All rights reserved. | ||||||
|  | # | ||||||
|  | # Redistribution and use in source and binary forms, with or without modification, are permitted | ||||||
|  | # provided that the following conditions are met: | ||||||
|  | # | ||||||
|  | #  * Redistributions of source code must retain the above copyright notice, this list of conditions | ||||||
|  | #    and the following disclaimer. | ||||||
|  | #  * Redistributions in binary form must reproduce the above copyright notice, this list of | ||||||
|  | #    conditions and the following disclaimer in the documentation and/or other materials provided | ||||||
|  | #    with the distribution. | ||||||
|  | #  * Neither the name of the zsh-syntax-highlighting contributors nor the names of its contributors | ||||||
|  | #    may be used to endorse or promote products derived from this software without specific prior | ||||||
|  | #    written permission. | ||||||
|  | # | ||||||
|  | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR | ||||||
|  | # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND | ||||||
|  | # FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR | ||||||
|  | # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | ||||||
|  | # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | ||||||
|  | # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER | ||||||
|  | # IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT | ||||||
|  | # OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # -*- mode: zsh; sh-indentation: 2; indent-tabs-mode: nil; sh-basic-offset: 2; -*- | ||||||
|  | # vim: ft=zsh sw=2 ts=2 et | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | 
 | ||||||
|  | BUFFER=$'/' | ||||||
|  | 
 | ||||||
|  | expected_region_highlight=( | ||||||
|  |   '1 1 path_prefix' # / | ||||||
|  | ) | ||||||
|  | @ -0,0 +1,36 @@ | ||||||
|  | #!/usr/bin/env zsh | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # Copyright (c) 2020 zsh-syntax-highlighting contributors | ||||||
|  | # All rights reserved. | ||||||
|  | # | ||||||
|  | # Redistribution and use in source and binary forms, with or without modification, are permitted | ||||||
|  | # provided that the following conditions are met: | ||||||
|  | # | ||||||
|  | #  * Redistributions of source code must retain the above copyright notice, this list of conditions | ||||||
|  | #    and the following disclaimer. | ||||||
|  | #  * Redistributions in binary form must reproduce the above copyright notice, this list of | ||||||
|  | #    conditions and the following disclaimer in the documentation and/or other materials provided | ||||||
|  | #    with the distribution. | ||||||
|  | #  * Neither the name of the zsh-syntax-highlighting contributors nor the names of its contributors | ||||||
|  | #    may be used to endorse or promote products derived from this software without specific prior | ||||||
|  | #    written permission. | ||||||
|  | # | ||||||
|  | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR | ||||||
|  | # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND | ||||||
|  | # FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR | ||||||
|  | # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | ||||||
|  | # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | ||||||
|  | # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER | ||||||
|  | # IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT | ||||||
|  | # OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # -*- mode: zsh; sh-indentation: 2; indent-tabs-mode: nil; sh-basic-offset: 2; -*- | ||||||
|  | # vim: ft=zsh sw=2 ts=2 et | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | 
 | ||||||
|  | setopt autocd | ||||||
|  | BUFFER=$'/' | ||||||
|  | 
 | ||||||
|  | expected_region_highlight=( | ||||||
|  |   '1 1 autodirectory' # / | ||||||
|  | ) | ||||||
|  | @ -0,0 +1,35 @@ | ||||||
|  | #!/usr/bin/env zsh | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # Copyright (c) 2020 zsh-syntax-highlighting contributors | ||||||
|  | # All rights reserved. | ||||||
|  | # | ||||||
|  | # Redistribution and use in source and binary forms, with or without modification, are permitted | ||||||
|  | # provided that the following conditions are met: | ||||||
|  | # | ||||||
|  | #  * Redistributions of source code must retain the above copyright notice, this list of conditions | ||||||
|  | #    and the following disclaimer. | ||||||
|  | #  * Redistributions in binary form must reproduce the above copyright notice, this list of | ||||||
|  | #    conditions and the following disclaimer in the documentation and/or other materials provided | ||||||
|  | #    with the distribution. | ||||||
|  | #  * Neither the name of the zsh-syntax-highlighting contributors nor the names of its contributors | ||||||
|  | #    may be used to endorse or promote products derived from this software without specific prior | ||||||
|  | #    written permission. | ||||||
|  | # | ||||||
|  | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR | ||||||
|  | # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND | ||||||
|  | # FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR | ||||||
|  | # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | ||||||
|  | # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | ||||||
|  | # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER | ||||||
|  | # IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT | ||||||
|  | # OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # -*- mode: zsh; sh-indentation: 2; indent-tabs-mode: nil; sh-basic-offset: 2; -*- | ||||||
|  | # vim: ft=zsh sw=2 ts=2 et | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | 
 | ||||||
|  | BUFFER=$'/bi' | ||||||
|  | 
 | ||||||
|  | expected_region_highlight=( | ||||||
|  |   '1 3 path_prefix' # /bi | ||||||
|  | ) | ||||||
|  | @ -0,0 +1,37 @@ | ||||||
|  | #!/usr/bin/env zsh | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # Copyright (c) 2020 zsh-syntax-highlighting contributors | ||||||
|  | # All rights reserved. | ||||||
|  | # | ||||||
|  | # Redistribution and use in source and binary forms, with or without modification, are permitted | ||||||
|  | # provided that the following conditions are met: | ||||||
|  | # | ||||||
|  | #  * Redistributions of source code must retain the above copyright notice, this list of conditions | ||||||
|  | #    and the following disclaimer. | ||||||
|  | #  * Redistributions in binary form must reproduce the above copyright notice, this list of | ||||||
|  | #    conditions and the following disclaimer in the documentation and/or other materials provided | ||||||
|  | #    with the distribution. | ||||||
|  | #  * Neither the name of the zsh-syntax-highlighting contributors nor the names of its contributors | ||||||
|  | #    may be used to endorse or promote products derived from this software without specific prior | ||||||
|  | #    written permission. | ||||||
|  | # | ||||||
|  | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR | ||||||
|  | # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND | ||||||
|  | # FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR | ||||||
|  | # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | ||||||
|  | # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | ||||||
|  | # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER | ||||||
|  | # IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT | ||||||
|  | # OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # -*- mode: zsh; sh-indentation: 2; indent-tabs-mode: nil; sh-basic-offset: 2; -*- | ||||||
|  | # vim: ft=zsh sw=2 ts=2 et | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | 
 | ||||||
|  | BUFFER=$'/bin; /bin' | ||||||
|  | 
 | ||||||
|  | expected_region_highlight=( | ||||||
|  |   '1 4 unknown-token' # /bin (in middle) | ||||||
|  |   '5 5 commandseparator' # ; | ||||||
|  |   '7 10 path_prefix' # /bin (at end) | ||||||
|  | ) | ||||||
|  | @ -0,0 +1,38 @@ | ||||||
|  | #!/usr/bin/env zsh | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # Copyright (c) 2020 zsh-syntax-highlighting contributors | ||||||
|  | # All rights reserved. | ||||||
|  | # | ||||||
|  | # Redistribution and use in source and binary forms, with or without modification, are permitted | ||||||
|  | # provided that the following conditions are met: | ||||||
|  | # | ||||||
|  | #  * Redistributions of source code must retain the above copyright notice, this list of conditions | ||||||
|  | #    and the following disclaimer. | ||||||
|  | #  * Redistributions in binary form must reproduce the above copyright notice, this list of | ||||||
|  | #    conditions and the following disclaimer in the documentation and/or other materials provided | ||||||
|  | #    with the distribution. | ||||||
|  | #  * Neither the name of the zsh-syntax-highlighting contributors nor the names of its contributors | ||||||
|  | #    may be used to endorse or promote products derived from this software without specific prior | ||||||
|  | #    written permission. | ||||||
|  | # | ||||||
|  | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR | ||||||
|  | # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND | ||||||
|  | # FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR | ||||||
|  | # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | ||||||
|  | # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | ||||||
|  | # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER | ||||||
|  | # IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT | ||||||
|  | # OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # -*- mode: zsh; sh-indentation: 2; indent-tabs-mode: nil; sh-basic-offset: 2; -*- | ||||||
|  | # vim: ft=zsh sw=2 ts=2 et | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | 
 | ||||||
|  | setopt autocd | ||||||
|  | BUFFER=$'/bin; /bin' | ||||||
|  | 
 | ||||||
|  | expected_region_highlight=( | ||||||
|  |   '1 4 autodirectory' # /bin (in middle) | ||||||
|  |   '5 5 commandseparator' # ; | ||||||
|  |   '7 10 autodirectory' # /bin (at end) | ||||||
|  | ) | ||||||
|  | @ -0,0 +1,35 @@ | ||||||
|  | #!/usr/bin/env zsh | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # Copyright (c) 2020 zsh-syntax-highlighting contributors | ||||||
|  | # All rights reserved. | ||||||
|  | # | ||||||
|  | # Redistribution and use in source and binary forms, with or without modification, are permitted | ||||||
|  | # provided that the following conditions are met: | ||||||
|  | # | ||||||
|  | #  * Redistributions of source code must retain the above copyright notice, this list of conditions | ||||||
|  | #    and the following disclaimer. | ||||||
|  | #  * Redistributions in binary form must reproduce the above copyright notice, this list of | ||||||
|  | #    conditions and the following disclaimer in the documentation and/or other materials provided | ||||||
|  | #    with the distribution. | ||||||
|  | #  * Neither the name of the zsh-syntax-highlighting contributors nor the names of its contributors | ||||||
|  | #    may be used to endorse or promote products derived from this software without specific prior | ||||||
|  | #    written permission. | ||||||
|  | # | ||||||
|  | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR | ||||||
|  | # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND | ||||||
|  | # FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR | ||||||
|  | # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | ||||||
|  | # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | ||||||
|  | # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER | ||||||
|  | # IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT | ||||||
|  | # OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # -*- mode: zsh; sh-indentation: 2; indent-tabs-mode: nil; sh-basic-offset: 2; -*- | ||||||
|  | # vim: ft=zsh sw=2 ts=2 et | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | 
 | ||||||
|  | BUFFER=$'/bin/s' | ||||||
|  | 
 | ||||||
|  | expected_region_highlight=( | ||||||
|  |   '1 6 path_prefix' # /bin/s | ||||||
|  | ) | ||||||
|  | @ -0,0 +1,35 @@ | ||||||
|  | #!/usr/bin/env zsh | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # Copyright (c) 2020 zsh-syntax-highlighting contributors | ||||||
|  | # All rights reserved. | ||||||
|  | # | ||||||
|  | # Redistribution and use in source and binary forms, with or without modification, are permitted | ||||||
|  | # provided that the following conditions are met: | ||||||
|  | # | ||||||
|  | #  * Redistributions of source code must retain the above copyright notice, this list of conditions | ||||||
|  | #    and the following disclaimer. | ||||||
|  | #  * Redistributions in binary form must reproduce the above copyright notice, this list of | ||||||
|  | #    conditions and the following disclaimer in the documentation and/or other materials provided | ||||||
|  | #    with the distribution. | ||||||
|  | #  * Neither the name of the zsh-syntax-highlighting contributors nor the names of its contributors | ||||||
|  | #    may be used to endorse or promote products derived from this software without specific prior | ||||||
|  | #    written permission. | ||||||
|  | # | ||||||
|  | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR | ||||||
|  | # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND | ||||||
|  | # FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR | ||||||
|  | # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | ||||||
|  | # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | ||||||
|  | # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER | ||||||
|  | # IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT | ||||||
|  | # OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # -*- mode: zsh; sh-indentation: 2; indent-tabs-mode: nil; sh-basic-offset: 2; -*- | ||||||
|  | # vim: ft=zsh sw=2 ts=2 et | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | 
 | ||||||
|  | BUFFER=$'/bin/sh' | ||||||
|  | 
 | ||||||
|  | expected_region_highlight=( | ||||||
|  |   '1 7 command' # /bin/sh | ||||||
|  | ) | ||||||
|  | @ -0,0 +1,35 @@ | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # Copyright (c) 2015 zsh-syntax-highlighting contributors | ||||||
|  | # All rights reserved. | ||||||
|  | # | ||||||
|  | # Redistribution and use in source and binary forms, with or without modification, are permitted | ||||||
|  | # provided that the following conditions are met: | ||||||
|  | # | ||||||
|  | #  * Redistributions of source code must retain the above copyright notice, this list of conditions | ||||||
|  | #    and the following disclaimer. | ||||||
|  | #  * Redistributions in binary form must reproduce the above copyright notice, this list of | ||||||
|  | #    conditions and the following disclaimer in the documentation and/or other materials provided | ||||||
|  | #    with the distribution. | ||||||
|  | #  * Neither the name of the zsh-syntax-highlighting contributors nor the names of its contributors | ||||||
|  | #    may be used to endorse or promote products derived from this software without specific prior | ||||||
|  | #    written permission. | ||||||
|  | # | ||||||
|  | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR | ||||||
|  | # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND | ||||||
|  | # FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR | ||||||
|  | # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | ||||||
|  | # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | ||||||
|  | # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER | ||||||
|  | # IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT | ||||||
|  | # OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # -*- mode: zsh; sh-indentation: 2; indent-tabs-mode: nil; sh-basic-offset: 2; -*- | ||||||
|  | # vim: ft=zsh sw=2 ts=2 et | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | 
 | ||||||
|  | alias foo="echo hello world" | ||||||
|  | BUFFER="foo" | ||||||
|  | 
 | ||||||
|  | expected_region_highlight+=( | ||||||
|  |   "1 3 alias" # foo | ||||||
|  | ) | ||||||
|  | @ -0,0 +1,37 @@ | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # Copyright (c) 2019 zsh-syntax-highlighting contributors | ||||||
|  | # All rights reserved. | ||||||
|  | # | ||||||
|  | # Redistribution and use in source and binary forms, with or without modification, are permitted | ||||||
|  | # provided that the following conditions are met: | ||||||
|  | # | ||||||
|  | #  * Redistributions of source code must retain the above copyright notice, this list of conditions | ||||||
|  | #    and the following disclaimer. | ||||||
|  | #  * Redistributions in binary form must reproduce the above copyright notice, this list of | ||||||
|  | #    conditions and the following disclaimer in the documentation and/or other materials provided | ||||||
|  | #    with the distribution. | ||||||
|  | #  * Neither the name of the zsh-syntax-highlighting contributors nor the names of its contributors | ||||||
|  | #    may be used to endorse or promote products derived from this software without specific prior | ||||||
|  | #    written permission. | ||||||
|  | # | ||||||
|  | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR | ||||||
|  | # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND | ||||||
|  | # FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR | ||||||
|  | # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | ||||||
|  | # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | ||||||
|  | # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER | ||||||
|  | # IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT | ||||||
|  | # OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # -*- mode: zsh; sh-indentation: 2; indent-tabs-mode: nil; sh-basic-offset: 2; -*- | ||||||
|  | # vim: ft=zsh sw=2 ts=2 et | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | 
 | ||||||
|  | # Alias must be at least 4 characters to test the regression | ||||||
|  | # cf. 139ea2b189819c43cc251825981c116959b15cc3 | ||||||
|  | alias foobar='echo "$(echo foobar)"' | ||||||
|  | BUFFER='foobar' | ||||||
|  | 
 | ||||||
|  | expected_region_highlight=( | ||||||
|  |   "1 6 alias" # foobar | ||||||
|  | ) | ||||||
|  | @ -27,11 +27,11 @@ | ||||||
| # vim: ft=zsh sw=2 ts=2 et | # vim: ft=zsh sw=2 ts=2 et | ||||||
| # ------------------------------------------------------------------------------------------------- | # ------------------------------------------------------------------------------------------------- | ||||||
| 
 | 
 | ||||||
| # see alias-comment2.zsh | # see alias-comment2.zsh and comment-followed.zsh | ||||||
| setopt interactivecomments | setopt interactivecomments | ||||||
| alias x=$'# foo\npwd' | alias x=$'# foo\npwd' | ||||||
| BUFFER='x' | BUFFER='x' | ||||||
| 
 | 
 | ||||||
| expected_region_highlight=( | expected_region_highlight=( | ||||||
|   "1 1 alias 'interactivecomments applies to aliases'" # x becomes pwd |   '1 1 alias' # x | ||||||
| ) | ) | ||||||
|  |  | ||||||
|  | @ -33,5 +33,5 @@ alias x=$'# foo\npwd' | ||||||
| BUFFER='x' | BUFFER='x' | ||||||
| 
 | 
 | ||||||
| expected_region_highlight=( | expected_region_highlight=( | ||||||
|   "1 1 unknown-token" # x becomes # |   '1 1 unknown-token' # x (#) | ||||||
| ) | ) | ||||||
|  |  | ||||||
|  | @ -0,0 +1,38 @@ | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # Copyright (c) 2018 zsh-syntax-highlighting contributors | ||||||
|  | # All rights reserved. | ||||||
|  | # | ||||||
|  | # Redistribution and use in source and binary forms, with or without modification, are permitted | ||||||
|  | # provided that the following conditions are met: | ||||||
|  | # | ||||||
|  | #  * Redistributions of source code must retain the above copyright notice, this list of conditions | ||||||
|  | #    and the following disclaimer. | ||||||
|  | #  * Redistributions in binary form must reproduce the above copyright notice, this list of | ||||||
|  | #    conditions and the following disclaimer in the documentation and/or other materials provided | ||||||
|  | #    with the distribution. | ||||||
|  | #  * Neither the name of the zsh-syntax-highlighting contributors nor the names of its contributors | ||||||
|  | #    may be used to endorse or promote products derived from this software without specific prior | ||||||
|  | #    written permission. | ||||||
|  | # | ||||||
|  | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR | ||||||
|  | # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND | ||||||
|  | # FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR | ||||||
|  | # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | ||||||
|  | # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | ||||||
|  | # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER | ||||||
|  | # IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT | ||||||
|  | # OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # -*- mode: zsh; sh-indentation: 2; indent-tabs-mode: nil; sh-basic-offset: 2; -*- | ||||||
|  | # vim: ft=zsh sw=2 ts=2 et | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | 
 | ||||||
|  | alias x='echo && ls; >' | ||||||
|  | 
 | ||||||
|  | BUFFER='x file echo' | ||||||
|  | 
 | ||||||
|  | expected_region_highlight=( | ||||||
|  |   '1 1 alias' # x | ||||||
|  |   '3 6 default' # file | ||||||
|  |   '8 11 builtin' # echo | ||||||
|  | ) | ||||||
|  | @ -0,0 +1,38 @@ | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # Copyright (c) 2018 zsh-syntax-highlighting contributors | ||||||
|  | # All rights reserved. | ||||||
|  | # | ||||||
|  | # Redistribution and use in source and binary forms, with or without modification, are permitted | ||||||
|  | # provided that the following conditions are met: | ||||||
|  | # | ||||||
|  | #  * Redistributions of source code must retain the above copyright notice, this list of conditions | ||||||
|  | #    and the following disclaimer. | ||||||
|  | #  * Redistributions in binary form must reproduce the above copyright notice, this list of | ||||||
|  | #    conditions and the following disclaimer in the documentation and/or other materials provided | ||||||
|  | #    with the distribution. | ||||||
|  | #  * Neither the name of the zsh-syntax-highlighting contributors nor the names of its contributors | ||||||
|  | #    may be used to endorse or promote products derived from this software without specific prior | ||||||
|  | #    written permission. | ||||||
|  | # | ||||||
|  | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR | ||||||
|  | # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND | ||||||
|  | # FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR | ||||||
|  | # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | ||||||
|  | # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | ||||||
|  | # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER | ||||||
|  | # IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT | ||||||
|  | # OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # -*- mode: zsh; sh-indentation: 2; indent-tabs-mode: nil; sh-basic-offset: 2; -*- | ||||||
|  | # vim: ft=zsh sw=2 ts=2 et | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | 
 | ||||||
|  | alias x='' | ||||||
|  | 
 | ||||||
|  | BUFFER='x echo foo' | ||||||
|  | 
 | ||||||
|  | expected_region_highlight=( | ||||||
|  |   '1 1 alias' # x | ||||||
|  |   '3 6 builtin' # echo | ||||||
|  |   '8 10 default' # foo | ||||||
|  | ) | ||||||
|  | @ -0,0 +1,36 @@ | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # Copyright (c) 2019 zsh-syntax-highlighting contributors | ||||||
|  | # All rights reserved. | ||||||
|  | # | ||||||
|  | # Redistribution and use in source and binary forms, with or without modification, are permitted | ||||||
|  | # provided that the following conditions are met: | ||||||
|  | # | ||||||
|  | #  * Redistributions of source code must retain the above copyright notice, this list of conditions | ||||||
|  | #    and the following disclaimer. | ||||||
|  | #  * Redistributions in binary form must reproduce the above copyright notice, this list of | ||||||
|  | #    conditions and the following disclaimer in the documentation and/or other materials provided | ||||||
|  | #    with the distribution. | ||||||
|  | #  * Neither the name of the zsh-syntax-highlighting contributors nor the names of its contributors | ||||||
|  | #    may be used to endorse or promote products derived from this software without specific prior | ||||||
|  | #    written permission. | ||||||
|  | # | ||||||
|  | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR | ||||||
|  | # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND | ||||||
|  | # FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR | ||||||
|  | # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | ||||||
|  | # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | ||||||
|  | # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER | ||||||
|  | # IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT | ||||||
|  | # OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # -*- mode: zsh; sh-indentation: 2; indent-tabs-mode: nil; sh-basic-offset: 2; -*- | ||||||
|  | # vim: ft=zsh sw=2 ts=2 et | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | 
 | ||||||
|  | alias ls='command ls' | ||||||
|  | 
 | ||||||
|  | BUFFER='ls' | ||||||
|  | 
 | ||||||
|  | expected_region_highlight=( | ||||||
|  |   "1 2 alias" # ls | ||||||
|  | ) | ||||||
|  | @ -0,0 +1,36 @@ | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # Copyright (c) 2019 zsh-syntax-highlighting contributors | ||||||
|  | # All rights reserved. | ||||||
|  | # | ||||||
|  | # Redistribution and use in source and binary forms, with or without modification, are permitted | ||||||
|  | # provided that the following conditions are met: | ||||||
|  | # | ||||||
|  | #  * Redistributions of source code must retain the above copyright notice, this list of conditions | ||||||
|  | #    and the following disclaimer. | ||||||
|  | #  * Redistributions in binary form must reproduce the above copyright notice, this list of | ||||||
|  | #    conditions and the following disclaimer in the documentation and/or other materials provided | ||||||
|  | #    with the distribution. | ||||||
|  | #  * Neither the name of the zsh-syntax-highlighting contributors nor the names of its contributors | ||||||
|  | #    may be used to endorse or promote products derived from this software without specific prior | ||||||
|  | #    written permission. | ||||||
|  | # | ||||||
|  | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR | ||||||
|  | # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND | ||||||
|  | # FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR | ||||||
|  | # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | ||||||
|  | # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | ||||||
|  | # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER | ||||||
|  | # IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT | ||||||
|  | # OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # -*- mode: zsh; sh-indentation: 2; indent-tabs-mode: nil; sh-basic-offset: 2; -*- | ||||||
|  | # vim: ft=zsh sw=2 ts=2 et | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | 
 | ||||||
|  | alias ls=tmp tmp='command ls' | ||||||
|  | 
 | ||||||
|  | BUFFER='ls' | ||||||
|  | 
 | ||||||
|  | expected_region_highlight=( | ||||||
|  |   "1 2 alias" # ls | ||||||
|  | ) | ||||||
|  | @ -0,0 +1,43 @@ | ||||||
|  | #!/usr/bin/env zsh | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # Copyright (c) 2019 zsh-syntax-highlighting contributors | ||||||
|  | # All rights reserved. | ||||||
|  | # | ||||||
|  | # Redistribution and use in source and binary forms, with or without modification, are permitted | ||||||
|  | # provided that the following conditions are met: | ||||||
|  | # | ||||||
|  | #  * Redistributions of source code must retain the above copyright notice, this list of conditions | ||||||
|  | #    and the following disclaimer. | ||||||
|  | #  * Redistributions in binary form must reproduce the above copyright notice, this list of | ||||||
|  | #    conditions and the following disclaimer in the documentation and/or other materials provided | ||||||
|  | #    with the distribution. | ||||||
|  | #  * Neither the name of the zsh-syntax-highlighting contributors nor the names of its contributors | ||||||
|  | #    may be used to endorse or promote products derived from this software without specific prior | ||||||
|  | #    written permission. | ||||||
|  | # | ||||||
|  | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR | ||||||
|  | # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND | ||||||
|  | # FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR | ||||||
|  | # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | ||||||
|  | # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | ||||||
|  | # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER | ||||||
|  | # IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT | ||||||
|  | # OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # -*- mode: zsh; sh-indentation: 2; indent-tabs-mode: nil; sh-basic-offset: 2; -*- | ||||||
|  | # vim: ft=zsh sw=2 ts=2 et | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | 
 | ||||||
|  | alias p='print -r --' | ||||||
|  | 
 | ||||||
|  | BUFFER=$'s=$(p foo)' | ||||||
|  | 
 | ||||||
|  | expected_region_highlight=( | ||||||
|  |   '1 10 assign' # s=$(p foo) | ||||||
|  |   '3 10 default' # $(p foo) | ||||||
|  |   '3 10 command-substitution-unquoted' # $(p foo) | ||||||
|  |   '3 4 command-substitution-delimiter-unquoted' # $( | ||||||
|  |   '5 5 alias' # p | ||||||
|  |   '7 9 default' # foo | ||||||
|  |   '10 10 command-substitution-delimiter-unquoted' # ) | ||||||
|  | ) | ||||||
|  | @ -28,12 +28,16 @@ | ||||||
| # vim: ft=zsh sw=2 ts=2 et | # vim: ft=zsh sw=2 ts=2 et | ||||||
| # ------------------------------------------------------------------------------------------------- | # ------------------------------------------------------------------------------------------------- | ||||||
| 
 | 
 | ||||||
|  | function b() {} # beware of ALIAS_FUNC_DEF | ||||||
| alias a=b b=c c=b | alias a=b b=c c=b | ||||||
| 
 | 
 | ||||||
| BUFFER='a foo; :' | BUFFER='a foo; :' | ||||||
| 
 | 
 | ||||||
| expected_region_highlight=( | expected_region_highlight=( | ||||||
|   '1 1 unknown-token' # a |   # An alias is ineligible for expansion whilst it's being expanded. | ||||||
|  |   # Therefore, the "b" in the expansion of the alias "c" is not considered | ||||||
|  |   # as an alias. | ||||||
|  |   '1 1 alias' # a | ||||||
|   '3 5 default' # foo |   '3 5 default' # foo | ||||||
|   '6 6 commandseparator' # ; |   '6 6 commandseparator' # ; | ||||||
|   '8 8 builtin' # : |   '8 8 builtin' # : | ||||||
|  |  | ||||||
|  | @ -0,0 +1,35 @@ | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # Copyright (c) 2015 zsh-syntax-highlighting contributors | ||||||
|  | # All rights reserved. | ||||||
|  | # | ||||||
|  | # Redistribution and use in source and binary forms, with or without modification, are permitted | ||||||
|  | # provided that the following conditions are met: | ||||||
|  | # | ||||||
|  | #  * Redistributions of source code must retain the above copyright notice, this list of conditions | ||||||
|  | #    and the following disclaimer. | ||||||
|  | #  * Redistributions in binary form must reproduce the above copyright notice, this list of | ||||||
|  | #    conditions and the following disclaimer in the documentation and/or other materials provided | ||||||
|  | #    with the distribution. | ||||||
|  | #  * Neither the name of the zsh-syntax-highlighting contributors nor the names of its contributors | ||||||
|  | #    may be used to endorse or promote products derived from this software without specific prior | ||||||
|  | #    written permission. | ||||||
|  | # | ||||||
|  | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR | ||||||
|  | # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND | ||||||
|  | # FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR | ||||||
|  | # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | ||||||
|  | # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | ||||||
|  | # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER | ||||||
|  | # IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT | ||||||
|  | # OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # -*- mode: zsh; sh-indentation: 2; indent-tabs-mode: nil; sh-basic-offset: 2; -*- | ||||||
|  | # vim: ft=zsh sw=2 ts=2 et | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | 
 | ||||||
|  | alias ls="ls" | ||||||
|  | BUFFER="ls" | ||||||
|  | 
 | ||||||
|  | expected_region_highlight+=( | ||||||
|  |   "1 2 alias" # ls | ||||||
|  | ) | ||||||
|  | @ -0,0 +1,38 @@ | ||||||
|  | #!/usr/bin/env zsh | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # Copyright (c) 2020 zsh-syntax-highlighting contributors | ||||||
|  | # All rights reserved. | ||||||
|  | # | ||||||
|  | # Redistribution and use in source and binary forms, with or without modification, are permitted | ||||||
|  | # provided that the following conditions are met: | ||||||
|  | # | ||||||
|  | #  * Redistributions of source code must retain the above copyright notice, this list of conditions | ||||||
|  | #    and the following disclaimer. | ||||||
|  | #  * Redistributions in binary form must reproduce the above copyright notice, this list of | ||||||
|  | #    conditions and the following disclaimer in the documentation and/or other materials provided | ||||||
|  | #    with the distribution. | ||||||
|  | #  * Neither the name of the zsh-syntax-highlighting contributors nor the names of its contributors | ||||||
|  | #    may be used to endorse or promote products derived from this software without specific prior | ||||||
|  | #    written permission. | ||||||
|  | # | ||||||
|  | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR | ||||||
|  | # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND | ||||||
|  | # FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR | ||||||
|  | # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | ||||||
|  | # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | ||||||
|  | # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER | ||||||
|  | # IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT | ||||||
|  | # OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # -*- mode: zsh; sh-indentation: 2; indent-tabs-mode: nil; sh-basic-offset: 2; -*- | ||||||
|  | # vim: ft=zsh sw=2 ts=2 et | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | 
 | ||||||
|  | alias '$foo'='echo alias' | ||||||
|  | local foo; foo=(echo param) | ||||||
|  | 
 | ||||||
|  | BUFFER='$foo' | ||||||
|  | 
 | ||||||
|  | expected_region_highlight=( | ||||||
|  |   '1 4 alias' # $foo | ||||||
|  | ) | ||||||
|  | @ -0,0 +1,42 @@ | ||||||
|  | #!/usr/bin/env zsh | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # Copyright (c) 2018 zsh-syntax-highlighting contributors | ||||||
|  | # All rights reserved. | ||||||
|  | # | ||||||
|  | # Redistribution and use in source and binary forms, with or without modification, are permitted | ||||||
|  | # provided that the following conditions are met: | ||||||
|  | # | ||||||
|  | #  * Redistributions of source code must retain the above copyright notice, this list of conditions | ||||||
|  | #    and the following disclaimer. | ||||||
|  | #  * Redistributions in binary form must reproduce the above copyright notice, this list of | ||||||
|  | #    conditions and the following disclaimer in the documentation and/or other materials provided | ||||||
|  | #    with the distribution. | ||||||
|  | #  * Neither the name of the zsh-syntax-highlighting contributors nor the names of its contributors | ||||||
|  | #    may be used to endorse or promote products derived from this software without specific prior | ||||||
|  | #    written permission. | ||||||
|  | # | ||||||
|  | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR | ||||||
|  | # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND | ||||||
|  | # FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR | ||||||
|  | # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | ||||||
|  | # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | ||||||
|  | # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER | ||||||
|  | # IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT | ||||||
|  | # OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # -*- mode: zsh; sh-indentation: 2; indent-tabs-mode: nil; sh-basic-offset: 2; -*- | ||||||
|  | # vim: ft=zsh sw=2 ts=2 et | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | 
 | ||||||
|  | # See also param-precommand-option-argument1.zsh | ||||||
|  | alias sudo_u='sudo -u' | ||||||
|  | sudo(){} | ||||||
|  | 
 | ||||||
|  | BUFFER='sudo_u phy1729 echo foo' | ||||||
|  | 
 | ||||||
|  | expected_region_highlight=( | ||||||
|  |   '1 6 alias' # sudo_u | ||||||
|  |   '8 14 default' # phy1729 | ||||||
|  |   '17 19 command "issue #540"' # echo (not builtin) | ||||||
|  |   '21 23 default' # foo | ||||||
|  | ) | ||||||
|  | @ -0,0 +1,42 @@ | ||||||
|  | #!/usr/bin/env zsh | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # Copyright (c) 2018 zsh-syntax-highlighting contributors | ||||||
|  | # All rights reserved. | ||||||
|  | # | ||||||
|  | # Redistribution and use in source and binary forms, with or without modification, are permitted | ||||||
|  | # provided that the following conditions are met: | ||||||
|  | # | ||||||
|  | #  * Redistributions of source code must retain the above copyright notice, this list of conditions | ||||||
|  | #    and the following disclaimer. | ||||||
|  | #  * Redistributions in binary form must reproduce the above copyright notice, this list of | ||||||
|  | #    conditions and the following disclaimer in the documentation and/or other materials provided | ||||||
|  | #    with the distribution. | ||||||
|  | #  * Neither the name of the zsh-syntax-highlighting contributors nor the names of its contributors | ||||||
|  | #    may be used to endorse or promote products derived from this software without specific prior | ||||||
|  | #    written permission. | ||||||
|  | # | ||||||
|  | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR | ||||||
|  | # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND | ||||||
|  | # FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR | ||||||
|  | # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | ||||||
|  | # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | ||||||
|  | # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER | ||||||
|  | # IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT | ||||||
|  | # OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # -*- mode: zsh; sh-indentation: 2; indent-tabs-mode: nil; sh-basic-offset: 2; -*- | ||||||
|  | # vim: ft=zsh sw=2 ts=2 et | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | 
 | ||||||
|  | alias sudo_b='sudo -b' | ||||||
|  | alias sudo_b_u='sudo_b -u' | ||||||
|  | sudo(){} | ||||||
|  | 
 | ||||||
|  | BUFFER='sudo_b_u phy1729 echo foo' | ||||||
|  | 
 | ||||||
|  | expected_region_highlight=( | ||||||
|  |   '1 8 alias' # sudo_b_u | ||||||
|  |   '10 16 default' # phy1729 | ||||||
|  |   '18 21 command "issue #540"' # echo (not builtin) | ||||||
|  |   '23 25 default' # foo | ||||||
|  | ) | ||||||
|  | @ -0,0 +1,42 @@ | ||||||
|  | #!/usr/bin/env zsh | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # Copyright (c) 2019 zsh-syntax-highlighting contributors | ||||||
|  | # All rights reserved. | ||||||
|  | # | ||||||
|  | # Redistribution and use in source and binary forms, with or without modification, are permitted | ||||||
|  | # provided that the following conditions are met: | ||||||
|  | # | ||||||
|  | #  * Redistributions of source code must retain the above copyright notice, this list of conditions | ||||||
|  | #    and the following disclaimer. | ||||||
|  | #  * Redistributions in binary form must reproduce the above copyright notice, this list of | ||||||
|  | #    conditions and the following disclaimer in the documentation and/or other materials provided | ||||||
|  | #    with the distribution. | ||||||
|  | #  * Neither the name of the zsh-syntax-highlighting contributors nor the names of its contributors | ||||||
|  | #    may be used to endorse or promote products derived from this software without specific prior | ||||||
|  | #    written permission. | ||||||
|  | # | ||||||
|  | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR | ||||||
|  | # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND | ||||||
|  | # FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR | ||||||
|  | # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | ||||||
|  | # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | ||||||
|  | # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER | ||||||
|  | # IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT | ||||||
|  | # OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # -*- mode: zsh; sh-indentation: 2; indent-tabs-mode: nil; sh-basic-offset: 2; -*- | ||||||
|  | # vim: ft=zsh sw=2 ts=2 et | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | 
 | ||||||
|  | # See also param-precommand-option-argument3.zsh | ||||||
|  | alias sudo_u='sudo -u' | ||||||
|  | sudo(){} | ||||||
|  | 
 | ||||||
|  | BUFFER='sudo_u phy1729 ls foo' | ||||||
|  | 
 | ||||||
|  | expected_region_highlight=( | ||||||
|  |   '1 6 alias' # sudo_u | ||||||
|  |   '8 14 default' # phy1729 | ||||||
|  |   '16 17 command' # ls | ||||||
|  |   '19 21 default' # foo | ||||||
|  | ) | ||||||
|  | @ -28,14 +28,15 @@ | ||||||
| # vim: ft=zsh sw=2 ts=2 et | # vim: ft=zsh sw=2 ts=2 et | ||||||
| # ------------------------------------------------------------------------------------------------- | # ------------------------------------------------------------------------------------------------- | ||||||
| 
 | 
 | ||||||
| alias sdu='sudo -u' | alias sudo_b='sudo -b' | ||||||
|  | alias sudo_b_u='sudo_b -u' | ||||||
| sudo(){} | sudo(){} | ||||||
| 
 | 
 | ||||||
| BUFFER='sdu phy1729 echo foo' | BUFFER='sudo_b_u phy1729 ls foo' | ||||||
| 
 | 
 | ||||||
| expected_region_highlight=( | expected_region_highlight=( | ||||||
|   '1 3 alias' # sdu |   '1 8 alias' # sudo_b_u | ||||||
|   '5 11 default "issue #540"' # phy1729 |   '10 16 default' # phy1729 | ||||||
|   '13 16 commmand "issue #540"' # echo (not builtin) |   '18 19 command' # ls | ||||||
|   '18 20 default' # foo |   '21 23 default' # foo | ||||||
| ) | ) | ||||||
|  | @ -35,5 +35,5 @@ expected_region_highlight=( | ||||||
|   '1 3 unknown-token' # "a" |   '1 3 unknown-token' # "a" | ||||||
|   '5 7 default' # foo |   '5 7 default' # foo | ||||||
|   '8 8 commandseparator' # ; |   '8 8 commandseparator' # ; | ||||||
|   '10 12 command "issue #544' # \ls |   '10 12 command' # \ls | ||||||
| ) | ) | ||||||
|  |  | ||||||
|  | @ -31,7 +31,7 @@ alias x=\> | ||||||
| BUFFER='x foo echo bar' | BUFFER='x foo echo bar' | ||||||
| 
 | 
 | ||||||
| expected_region_highlight=( | expected_region_highlight=( | ||||||
|   '1 1 redirection' # x becomes > |   '1 1 alias' # x | ||||||
|   '3 5 default' # foo |   '3 5 default' # foo | ||||||
|   '7 10 builtin' # echo |   '7 10 builtin' # echo | ||||||
|   '12 14 default' # bar |   '12 14 default' # bar | ||||||
|  |  | ||||||
|  | @ -0,0 +1,36 @@ | ||||||
|  | #!/usr/bin/env zsh | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # Copyright (c) 2018 zsh-syntax-highlighting contributors | ||||||
|  | # All rights reserved. | ||||||
|  | # | ||||||
|  | # Redistribution and use in source and binary forms, with or without modification, are permitted | ||||||
|  | # provided that the following conditions are met: | ||||||
|  | # | ||||||
|  | #  * Redistributions of source code must retain the above copyright notice, this list of conditions | ||||||
|  | #    and the following disclaimer. | ||||||
|  | #  * Redistributions in binary form must reproduce the above copyright notice, this list of | ||||||
|  | #    conditions and the following disclaimer in the documentation and/or other materials provided | ||||||
|  | #    with the distribution. | ||||||
|  | #  * Neither the name of the zsh-syntax-highlighting contributors nor the names of its contributors | ||||||
|  | #    may be used to endorse or promote products derived from this software without specific prior | ||||||
|  | #    written permission. | ||||||
|  | # | ||||||
|  | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR | ||||||
|  | # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND | ||||||
|  | # FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR | ||||||
|  | # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | ||||||
|  | # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | ||||||
|  | # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER | ||||||
|  | # IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT | ||||||
|  | # OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # -*- mode: zsh; sh-indentation: 2; indent-tabs-mode: nil; sh-basic-offset: 2; -*- | ||||||
|  | # vim: ft=zsh sw=2 ts=2 et | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | 
 | ||||||
|  | alias x=/ | ||||||
|  | BUFFER=$'x' | ||||||
|  | 
 | ||||||
|  | expected_region_highlight=( | ||||||
|  |   '1 1 unknown-token' # x (/) | ||||||
|  | ) | ||||||
|  | @ -0,0 +1,37 @@ | ||||||
|  | #!/usr/bin/env zsh | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # Copyright (c) 2020 zsh-syntax-highlighting contributors | ||||||
|  | # All rights reserved. | ||||||
|  | # | ||||||
|  | # Redistribution and use in source and binary forms, with or without modification, are permitted | ||||||
|  | # provided that the following conditions are met: | ||||||
|  | # | ||||||
|  | #  * Redistributions of source code must retain the above copyright notice, this list of conditions | ||||||
|  | #    and the following disclaimer. | ||||||
|  | #  * Redistributions in binary form must reproduce the above copyright notice, this list of | ||||||
|  | #    conditions and the following disclaimer in the documentation and/or other materials provided | ||||||
|  | #    with the distribution. | ||||||
|  | #  * Neither the name of the zsh-syntax-highlighting contributors nor the names of its contributors | ||||||
|  | #    may be used to endorse or promote products derived from this software without specific prior | ||||||
|  | #    written permission. | ||||||
|  | # | ||||||
|  | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR | ||||||
|  | # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND | ||||||
|  | # FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR | ||||||
|  | # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | ||||||
|  | # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | ||||||
|  | # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER | ||||||
|  | # IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT | ||||||
|  | # OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # -*- mode: zsh; sh-indentation: 2; indent-tabs-mode: nil; sh-basic-offset: 2; -*- | ||||||
|  | # vim: ft=zsh sw=2 ts=2 et | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | 
 | ||||||
|  | setopt autocd | ||||||
|  | alias x=/ | ||||||
|  | BUFFER=$'x' | ||||||
|  | 
 | ||||||
|  | expected_region_highlight=( | ||||||
|  |   '1 1 alias' # x | ||||||
|  | ) | ||||||
|  | @ -0,0 +1,37 @@ | ||||||
|  | #!/usr/bin/env zsh | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # Copyright (c) 2019 zsh-syntax-highlighting contributors | ||||||
|  | # All rights reserved. | ||||||
|  | # | ||||||
|  | # Redistribution and use in source and binary forms, with or without modification, are permitted | ||||||
|  | # provided that the following conditions are met: | ||||||
|  | # | ||||||
|  | #  * Redistributions of source code must retain the above copyright notice, this list of conditions | ||||||
|  | #    and the following disclaimer. | ||||||
|  | #  * Redistributions in binary form must reproduce the above copyright notice, this list of | ||||||
|  | #    conditions and the following disclaimer in the documentation and/or other materials provided | ||||||
|  | #    with the distribution. | ||||||
|  | #  * Neither the name of the zsh-syntax-highlighting contributors nor the names of its contributors | ||||||
|  | #    may be used to endorse or promote products derived from this software without specific prior | ||||||
|  | #    written permission. | ||||||
|  | # | ||||||
|  | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR | ||||||
|  | # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND | ||||||
|  | # FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR | ||||||
|  | # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | ||||||
|  | # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | ||||||
|  | # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER | ||||||
|  | # IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT | ||||||
|  | # OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # -*- mode: zsh; sh-indentation: 2; indent-tabs-mode: nil; sh-basic-offset: 2; -*- | ||||||
|  | # vim: ft=zsh sw=2 ts=2 et | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | 
 | ||||||
|  | alias a=b b=foo | ||||||
|  | 
 | ||||||
|  | BUFFER='a ' | ||||||
|  | 
 | ||||||
|  | expected_region_highlight=( | ||||||
|  |   '1 1 unknown-token' # a | ||||||
|  | ) | ||||||
|  | @ -0,0 +1,37 @@ | ||||||
|  | #!/usr/bin/env zsh | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # Copyright (c) 2019 zsh-syntax-highlighting contributors | ||||||
|  | # All rights reserved. | ||||||
|  | # | ||||||
|  | # Redistribution and use in source and binary forms, with or without modification, are permitted | ||||||
|  | # provided that the following conditions are met: | ||||||
|  | # | ||||||
|  | #  * Redistributions of source code must retain the above copyright notice, this list of conditions | ||||||
|  | #    and the following disclaimer. | ||||||
|  | #  * Redistributions in binary form must reproduce the above copyright notice, this list of | ||||||
|  | #    conditions and the following disclaimer in the documentation and/or other materials provided | ||||||
|  | #    with the distribution. | ||||||
|  | #  * Neither the name of the zsh-syntax-highlighting contributors nor the names of its contributors | ||||||
|  | #    may be used to endorse or promote products derived from this software without specific prior | ||||||
|  | #    written permission. | ||||||
|  | # | ||||||
|  | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR | ||||||
|  | # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND | ||||||
|  | # FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR | ||||||
|  | # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | ||||||
|  | # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | ||||||
|  | # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER | ||||||
|  | # IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT | ||||||
|  | # OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # -*- mode: zsh; sh-indentation: 2; indent-tabs-mode: nil; sh-basic-offset: 2; -*- | ||||||
|  | # vim: ft=zsh sw=2 ts=2 et | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | 
 | ||||||
|  | alias a='() { ls "$@" ; foo }' | ||||||
|  | 
 | ||||||
|  | BUFFER='a ' | ||||||
|  | 
 | ||||||
|  | expected_region_highlight=( | ||||||
|  |   '1 1 unknown-token' # a | ||||||
|  | ) | ||||||
|  | @ -27,14 +27,11 @@ | ||||||
| # vim: ft=zsh sw=2 ts=2 et | # vim: ft=zsh sw=2 ts=2 et | ||||||
| # ------------------------------------------------------------------------------------------------- | # ------------------------------------------------------------------------------------------------- | ||||||
| 
 | 
 | ||||||
| alias alias1="unused expansion" | alias alias1="ls" | ||||||
| alias -s alias2="echo" | alias -s alias2="echo" | ||||||
| if set -o | grep -q aliasfuncdef; then | function alias1() {} # to check that it's highlighted as an alias, not as a function | ||||||
|   setopt alias_func_def # 5.4+ |  | ||||||
| fi |  | ||||||
| alias1() {} # to check that it's highlighted as an alias, not as a function |  | ||||||
| 
 | 
 | ||||||
| BUFFER='x.alias2; alias1' | BUFFER='x.alias2; alias1; alias2' | ||||||
| 
 | 
 | ||||||
| # Set expected_region_highlight as a function of zsh version. | # Set expected_region_highlight as a function of zsh version. | ||||||
| # | # | ||||||
|  | @ -51,4 +48,6 @@ fi | ||||||
| expected_region_highlight+=( | expected_region_highlight+=( | ||||||
|   "9 9 commandseparator" # ; |   "9 9 commandseparator" # ; | ||||||
|   "11 16 alias" # alias1 |   "11 16 alias" # alias1 | ||||||
|  |   "17 17 commandseparator" # ; | ||||||
|  |   "19 24 unknown-token" # alias2 | ||||||
| ) | ) | ||||||
|  |  | ||||||
|  | @ -32,7 +32,7 @@ BUFFER=$'{\nls\n} always { pwd }' | ||||||
| 
 | 
 | ||||||
| expected_region_highlight=( | expected_region_highlight=( | ||||||
|   '1 1 reserved-word' # { |   '1 1 reserved-word' # { | ||||||
|   '2 2 unknown-token' # \n |   '2 2 commandseparator' # \n | ||||||
|   '3 4 command' # ls |   '3 4 command' # ls | ||||||
|   '5 5 commandseparator' # \n |   '5 5 commandseparator' # \n | ||||||
|   '6 6 reserved-word' # } |   '6 6 reserved-word' # } | ||||||
|  |  | ||||||
|  | @ -0,0 +1,46 @@ | ||||||
|  | #!/usr/bin/env zsh | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # Copyright (c) 2020 zsh-syntax-highlighting contributors | ||||||
|  | # All rights reserved. | ||||||
|  | # | ||||||
|  | # Redistribution and use in source and binary forms, with or without modification, are permitted | ||||||
|  | # provided that the following conditions are met: | ||||||
|  | # | ||||||
|  | #  * Redistributions of source code must retain the above copyright notice, this list of conditions | ||||||
|  | #    and the following disclaimer. | ||||||
|  | #  * Redistributions in binary form must reproduce the above copyright notice, this list of | ||||||
|  | #    conditions and the following disclaimer in the documentation and/or other materials provided | ||||||
|  | #    with the distribution. | ||||||
|  | #  * Neither the name of the zsh-syntax-highlighting contributors nor the names of its contributors | ||||||
|  | #    may be used to endorse or promote products derived from this software without specific prior | ||||||
|  | #    written permission. | ||||||
|  | # | ||||||
|  | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR | ||||||
|  | # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND | ||||||
|  | # FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR | ||||||
|  | # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | ||||||
|  | # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | ||||||
|  | # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER | ||||||
|  | # IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT | ||||||
|  | # OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # -*- mode: zsh; sh-indentation: 2; indent-tabs-mode: nil; sh-basic-offset: 2; -*- | ||||||
|  | # vim: ft=zsh sw=2 ts=2 et | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | 
 | ||||||
|  | BUFFER=$': $((ls); (ls))' | ||||||
|  | 
 | ||||||
|  | expected_region_highlight=( | ||||||
|  |   '1 1 builtin' # : | ||||||
|  |   '3 15 default' # $((ls); (ls)) | ||||||
|  |   '3 15 command-substitution-unquoted' # $((ls); (ls)) | ||||||
|  |   '3 4 command-substitution-delimiter-unquoted' # $( | ||||||
|  |   '5 5 reserved-word' # ( | ||||||
|  |   '6 7 command' # ls | ||||||
|  |   '8 8 reserved-word' # ) | ||||||
|  |   '9 9 commandseparator' # ; | ||||||
|  |   '11 11 reserved-word' # ( | ||||||
|  |   '12 13 command' # ls | ||||||
|  |   '14 14 reserved-word' # ) | ||||||
|  |   '15 15 command-substitution-delimiter-unquoted' # ) | ||||||
|  | ) | ||||||
|  | @ -0,0 +1,37 @@ | ||||||
|  | #!/usr/bin/env zsh | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # Copyright (c) 2020 zsh-syntax-highlighting contributors | ||||||
|  | # All rights reserved. | ||||||
|  | # | ||||||
|  | # Redistribution and use in source and binary forms, with or without modification, are permitted | ||||||
|  | # provided that the following conditions are met: | ||||||
|  | # | ||||||
|  | #  * Redistributions of source code must retain the above copyright notice, this list of conditions | ||||||
|  | #    and the following disclaimer. | ||||||
|  | #  * Redistributions in binary form must reproduce the above copyright notice, this list of | ||||||
|  | #    conditions and the following disclaimer in the documentation and/or other materials provided | ||||||
|  | #    with the distribution. | ||||||
|  | #  * Neither the name of the zsh-syntax-highlighting contributors nor the names of its contributors | ||||||
|  | #    may be used to endorse or promote products derived from this software without specific prior | ||||||
|  | #    written permission. | ||||||
|  | # | ||||||
|  | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR | ||||||
|  | # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND | ||||||
|  | # FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR | ||||||
|  | # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | ||||||
|  | # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | ||||||
|  | # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER | ||||||
|  | # IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT | ||||||
|  | # OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # -*- mode: zsh; sh-indentation: 2; indent-tabs-mode: nil; sh-basic-offset: 2; -*- | ||||||
|  | # vim: ft=zsh sw=2 ts=2 et | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | 
 | ||||||
|  | BUFFER=$': $(( 6 * 9 ))' | ||||||
|  | 
 | ||||||
|  | expected_region_highlight=( | ||||||
|  |   '1 1 builtin' # : | ||||||
|  |   '3 14 default' # $(( 6 * 9 )) | ||||||
|  |   '3 14 arithmetic-expansion' # $(( 6 * 9 )) | ||||||
|  | ) | ||||||
|  | @ -0,0 +1,38 @@ | ||||||
|  | #!/usr/bin/env zsh | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # Copyright (c) 2020 zsh-syntax-highlighting contributors | ||||||
|  | # All rights reserved. | ||||||
|  | # | ||||||
|  | # Redistribution and use in source and binary forms, with or without modification, are permitted | ||||||
|  | # provided that the following conditions are met: | ||||||
|  | # | ||||||
|  | #  * Redistributions of source code must retain the above copyright notice, this list of conditions | ||||||
|  | #    and the following disclaimer. | ||||||
|  | #  * Redistributions in binary form must reproduce the above copyright notice, this list of | ||||||
|  | #    conditions and the following disclaimer in the documentation and/or other materials provided | ||||||
|  | #    with the distribution. | ||||||
|  | #  * Neither the name of the zsh-syntax-highlighting contributors nor the names of its contributors | ||||||
|  | #    may be used to endorse or promote products derived from this software without specific prior | ||||||
|  | #    written permission. | ||||||
|  | # | ||||||
|  | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR | ||||||
|  | # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND | ||||||
|  | # FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR | ||||||
|  | # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | ||||||
|  | # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | ||||||
|  | # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER | ||||||
|  | # IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT | ||||||
|  | # OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # -*- mode: zsh; sh-indentation: 2; indent-tabs-mode: nil; sh-basic-offset: 2; -*- | ||||||
|  | # vim: ft=zsh sw=2 ts=2 et | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | 
 | ||||||
|  | BUFFER=$': "$(( 6 * 9 ))"' | ||||||
|  | 
 | ||||||
|  | expected_region_highlight=( | ||||||
|  |   '1 1 builtin' # : | ||||||
|  |   '3 16 default' # "$(( 6 * 9 ))" | ||||||
|  |   '3 16 double-quoted-argument' # "$(( 6 * 9 ))" | ||||||
|  |   '4 15 arithmetic-expansion' # $(( 6 * 9 )) | ||||||
|  | ) | ||||||
|  | @ -0,0 +1,42 @@ | ||||||
|  | #!/usr/bin/env zsh | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # Copyright (c) 2020 zsh-syntax-highlighting contributors | ||||||
|  | # All rights reserved. | ||||||
|  | # | ||||||
|  | # Redistribution and use in source and binary forms, with or without modification, are permitted | ||||||
|  | # provided that the following conditions are met: | ||||||
|  | # | ||||||
|  | #  * Redistributions of source code must retain the above copyright notice, this list of conditions | ||||||
|  | #    and the following disclaimer. | ||||||
|  | #  * Redistributions in binary form must reproduce the above copyright notice, this list of | ||||||
|  | #    conditions and the following disclaimer in the documentation and/or other materials provided | ||||||
|  | #    with the distribution. | ||||||
|  | #  * Neither the name of the zsh-syntax-highlighting contributors nor the names of its contributors | ||||||
|  | #    may be used to endorse or promote products derived from this software without specific prior | ||||||
|  | #    written permission. | ||||||
|  | # | ||||||
|  | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR | ||||||
|  | # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND | ||||||
|  | # FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR | ||||||
|  | # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | ||||||
|  | # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | ||||||
|  | # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER | ||||||
|  | # IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT | ||||||
|  | # OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # -*- mode: zsh; sh-indentation: 2; indent-tabs-mode: nil; sh-basic-offset: 2; -*- | ||||||
|  | # vim: ft=zsh sw=2 ts=2 et | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | 
 | ||||||
|  | BUFFER=$': $(( $(echo 2) + 2 ))' | ||||||
|  | 
 | ||||||
|  | expected_region_highlight=( | ||||||
|  |   '1 1 builtin' # : | ||||||
|  |   '3 22 default' # $(( $(echo 2) + 2 )) | ||||||
|  |   '3 22 arithmetic-expansion' # $(( $(echo 2) + 2 )) | ||||||
|  |   '7 15 command-substitution-quoted' # $(echo 2) | ||||||
|  |   '7 8 command-substitution-delimiter-quoted' # $( | ||||||
|  |   '9 12 builtin' # echo | ||||||
|  |   '14 14 default' # 2 | ||||||
|  |   '15 15 command-substitution-delimiter' # ) | ||||||
|  | ) | ||||||
|  | @ -0,0 +1,37 @@ | ||||||
|  | #!/usr/bin/env zsh | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # Copyright (c) 2020 zsh-syntax-highlighting contributors | ||||||
|  | # All rights reserved. | ||||||
|  | # | ||||||
|  | # Redistribution and use in source and binary forms, with or without modification, are permitted | ||||||
|  | # provided that the following conditions are met: | ||||||
|  | # | ||||||
|  | #  * Redistributions of source code must retain the above copyright notice, this list of conditions | ||||||
|  | #    and the following disclaimer. | ||||||
|  | #  * Redistributions in binary form must reproduce the above copyright notice, this list of | ||||||
|  | #    conditions and the following disclaimer in the documentation and/or other materials provided | ||||||
|  | #    with the distribution. | ||||||
|  | #  * Neither the name of the zsh-syntax-highlighting contributors nor the names of its contributors | ||||||
|  | #    may be used to endorse or promote products derived from this software without specific prior | ||||||
|  | #    written permission. | ||||||
|  | # | ||||||
|  | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR | ||||||
|  | # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND | ||||||
|  | # FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR | ||||||
|  | # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | ||||||
|  | # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | ||||||
|  | # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER | ||||||
|  | # IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT | ||||||
|  | # OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # -*- mode: zsh; sh-indentation: 2; indent-tabs-mode: nil; sh-basic-offset: 2; -*- | ||||||
|  | # vim: ft=zsh sw=2 ts=2 et | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | 
 | ||||||
|  | BUFFER=$': $(( ((42)) ))' | ||||||
|  | 
 | ||||||
|  | expected_region_highlight=( | ||||||
|  |   '1 1 builtin' # : | ||||||
|  |   '3 15 default' # $(( ((42)) )) | ||||||
|  |   '3 15 arithmetic-expansion' # $(( ((42)) )) | ||||||
|  | ) | ||||||
|  | @ -0,0 +1,39 @@ | ||||||
|  | #!/usr/bin/env zsh | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # Copyright (c) 2020 zsh-syntax-highlighting contributors | ||||||
|  | # All rights reserved. | ||||||
|  | # | ||||||
|  | # Redistribution and use in source and binary forms, with or without modification, are permitted | ||||||
|  | # provided that the following conditions are met: | ||||||
|  | # | ||||||
|  | #  * Redistributions of source code must retain the above copyright notice, this list of conditions | ||||||
|  | #    and the following disclaimer. | ||||||
|  | #  * Redistributions in binary form must reproduce the above copyright notice, this list of | ||||||
|  | #    conditions and the following disclaimer in the documentation and/or other materials provided | ||||||
|  | #    with the distribution. | ||||||
|  | #  * Neither the name of the zsh-syntax-highlighting contributors nor the names of its contributors | ||||||
|  | #    may be used to endorse or promote products derived from this software without specific prior | ||||||
|  | #    written permission. | ||||||
|  | # | ||||||
|  | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR | ||||||
|  | # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND | ||||||
|  | # FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR | ||||||
|  | # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | ||||||
|  | # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | ||||||
|  | # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER | ||||||
|  | # IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT | ||||||
|  | # OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # -*- mode: zsh; sh-indentation: 2; indent-tabs-mode: nil; sh-basic-offset: 2; -*- | ||||||
|  | # vim: ft=zsh sw=2 ts=2 et | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | 
 | ||||||
|  | BUFFER=$': "foo"$(())"bar"' | ||||||
|  | 
 | ||||||
|  | expected_region_highlight=( | ||||||
|  |   '1 1 builtin' # : | ||||||
|  |   '3 17 default' # "foo"$(())"bar" | ||||||
|  |   '3 7 double-quoted-argument' # "foo" | ||||||
|  |   '8 12 arithmetic-expansion' # $(()) | ||||||
|  |   '13 17 double-quoted-argument' # "bar" | ||||||
|  | ) | ||||||
|  | @ -0,0 +1,38 @@ | ||||||
|  | #!/usr/bin/env zsh | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # Copyright (c) 2020 zsh-syntax-highlighting contributors | ||||||
|  | # All rights reserved. | ||||||
|  | # | ||||||
|  | # Redistribution and use in source and binary forms, with or without modification, are permitted | ||||||
|  | # provided that the following conditions are met: | ||||||
|  | # | ||||||
|  | #  * Redistributions of source code must retain the above copyright notice, this list of conditions | ||||||
|  | #    and the following disclaimer. | ||||||
|  | #  * Redistributions in binary form must reproduce the above copyright notice, this list of | ||||||
|  | #    conditions and the following disclaimer in the documentation and/or other materials provided | ||||||
|  | #    with the distribution. | ||||||
|  | #  * Neither the name of the zsh-syntax-highlighting contributors nor the names of its contributors | ||||||
|  | #    may be used to endorse or promote products derived from this software without specific prior | ||||||
|  | #    written permission. | ||||||
|  | # | ||||||
|  | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR | ||||||
|  | # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND | ||||||
|  | # FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR | ||||||
|  | # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | ||||||
|  | # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | ||||||
|  | # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER | ||||||
|  | # IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT | ||||||
|  | # OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # -*- mode: zsh; sh-indentation: 2; indent-tabs-mode: nil; sh-basic-offset: 2; -*- | ||||||
|  | # vim: ft=zsh sw=2 ts=2 et | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | 
 | ||||||
|  | BUFFER=$': $(( \!\! ))' | ||||||
|  | 
 | ||||||
|  | expected_region_highlight=( | ||||||
|  |   '1 1 builtin' # : | ||||||
|  |   '3 11 default' # $(( !! )) | ||||||
|  |   '3 11 arithmetic-expansion' # $(( !! )) | ||||||
|  |   '7 8 history-expansion "issue #713"' # !! | ||||||
|  | ) | ||||||
|  | @ -0,0 +1,39 @@ | ||||||
|  | #!/usr/bin/env zsh | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # Copyright (c) 2020 zsh-syntax-highlighting contributors | ||||||
|  | # All rights reserved. | ||||||
|  | # | ||||||
|  | # Redistribution and use in source and binary forms, with or without modification, are permitted | ||||||
|  | # provided that the following conditions are met: | ||||||
|  | # | ||||||
|  | #  * Redistributions of source code must retain the above copyright notice, this list of conditions | ||||||
|  | #    and the following disclaimer. | ||||||
|  | #  * Redistributions in binary form must reproduce the above copyright notice, this list of | ||||||
|  | #    conditions and the following disclaimer in the documentation and/or other materials provided | ||||||
|  | #    with the distribution. | ||||||
|  | #  * Neither the name of the zsh-syntax-highlighting contributors nor the names of its contributors | ||||||
|  | #    may be used to endorse or promote products derived from this software without specific prior | ||||||
|  | #    written permission. | ||||||
|  | # | ||||||
|  | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR | ||||||
|  | # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND | ||||||
|  | # FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR | ||||||
|  | # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | ||||||
|  | # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | ||||||
|  | # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER | ||||||
|  | # IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT | ||||||
|  | # OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # -*- mode: zsh; sh-indentation: 2; indent-tabs-mode: nil; sh-basic-offset: 2; -*- | ||||||
|  | # vim: ft=zsh sw=2 ts=2 et | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | 
 | ||||||
|  | BUFFER=$': $(( 0 * 1\'\'000 ))' | ||||||
|  | 
 | ||||||
|  | expected_region_highlight=( | ||||||
|  |   '1 1 builtin' # : | ||||||
|  |   '3 19 default' # $(( 0 * 1\'\'000 )) | ||||||
|  |   '3 19 arithmetic-expansion' # $(( 0 * 1\'\'000 )) | ||||||
|  |   '12 12 unknown-token' # \' | ||||||
|  |   '13 13 unknown-token' # \' | ||||||
|  | ) | ||||||
|  | @ -0,0 +1,39 @@ | ||||||
|  | #!/usr/bin/env zsh | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # Copyright (c) 2020 zsh-syntax-highlighting contributors | ||||||
|  | # All rights reserved. | ||||||
|  | # | ||||||
|  | # Redistribution and use in source and binary forms, with or without modification, are permitted | ||||||
|  | # provided that the following conditions are met: | ||||||
|  | # | ||||||
|  | #  * Redistributions of source code must retain the above copyright notice, this list of conditions | ||||||
|  | #    and the following disclaimer. | ||||||
|  | #  * Redistributions in binary form must reproduce the above copyright notice, this list of | ||||||
|  | #    conditions and the following disclaimer in the documentation and/or other materials provided | ||||||
|  | #    with the distribution. | ||||||
|  | #  * Neither the name of the zsh-syntax-highlighting contributors nor the names of its contributors | ||||||
|  | #    may be used to endorse or promote products derived from this software without specific prior | ||||||
|  | #    written permission. | ||||||
|  | # | ||||||
|  | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR | ||||||
|  | # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND | ||||||
|  | # FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR | ||||||
|  | # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | ||||||
|  | # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | ||||||
|  | # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER | ||||||
|  | # IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT | ||||||
|  | # OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # -*- mode: zsh; sh-indentation: 2; indent-tabs-mode: nil; sh-basic-offset: 2; -*- | ||||||
|  | # vim: ft=zsh sw=2 ts=2 et | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | 
 | ||||||
|  | BUFFER=$': foo*$(( 42 * 1729 ))*bar' | ||||||
|  | 
 | ||||||
|  | expected_region_highlight=( | ||||||
|  |   '1 1 builtin' # : | ||||||
|  |   '3 26 default' # foo*$(( 42 * 1729 ))*bar | ||||||
|  |   '6 6 globbing' # * | ||||||
|  |   '7 22 arithmetic-expansion' # $(( 42 * 1729 )) | ||||||
|  |   '23 23 globbing' # * | ||||||
|  | ) | ||||||
|  | @ -0,0 +1,38 @@ | ||||||
|  | #!/usr/bin/env zsh | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # Copyright (c) 2020 zsh-syntax-highlighting contributors | ||||||
|  | # All rights reserved. | ||||||
|  | # | ||||||
|  | # Redistribution and use in source and binary forms, with or without modification, are permitted | ||||||
|  | # provided that the following conditions are met: | ||||||
|  | # | ||||||
|  | #  * Redistributions of source code must retain the above copyright notice, this list of conditions | ||||||
|  | #    and the following disclaimer. | ||||||
|  | #  * Redistributions in binary form must reproduce the above copyright notice, this list of | ||||||
|  | #    conditions and the following disclaimer in the documentation and/or other materials provided | ||||||
|  | #    with the distribution. | ||||||
|  | #  * Neither the name of the zsh-syntax-highlighting contributors nor the names of its contributors | ||||||
|  | #    may be used to endorse or promote products derived from this software without specific prior | ||||||
|  | #    written permission. | ||||||
|  | # | ||||||
|  | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR | ||||||
|  | # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND | ||||||
|  | # FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR | ||||||
|  | # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | ||||||
|  | # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | ||||||
|  | # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER | ||||||
|  | # IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT | ||||||
|  | # OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # -*- mode: zsh; sh-indentation: 2; indent-tabs-mode: nil; sh-basic-offset: 2; -*- | ||||||
|  | # vim: ft=zsh sw=2 ts=2 et | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | 
 | ||||||
|  | BUFFER=$': $(( $(( 1 + 2 )) * 3 ))' | ||||||
|  | 
 | ||||||
|  | expected_region_highlight=( | ||||||
|  |   '1 1 builtin' # : | ||||||
|  |   '3 25 default' # $(( $(( 1 + 2 )) * 3 )) | ||||||
|  |   '3 25 arithmetic-expansion' # $(( $(( 1 + 2 )) * 3 )) | ||||||
|  |   '7 18 arithmetic-expansion' # $(( 1 + 2 )) | ||||||
|  | ) | ||||||
|  | @ -0,0 +1,38 @@ | ||||||
|  | #!/usr/bin/env zsh | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # Copyright (c) 2020 zsh-syntax-highlighting contributors | ||||||
|  | # All rights reserved. | ||||||
|  | # | ||||||
|  | # Redistribution and use in source and binary forms, with or without modification, are permitted | ||||||
|  | # provided that the following conditions are met: | ||||||
|  | # | ||||||
|  | #  * Redistributions of source code must retain the above copyright notice, this list of conditions | ||||||
|  | #    and the following disclaimer. | ||||||
|  | #  * Redistributions in binary form must reproduce the above copyright notice, this list of | ||||||
|  | #    conditions and the following disclaimer in the documentation and/or other materials provided | ||||||
|  | #    with the distribution. | ||||||
|  | #  * Neither the name of the zsh-syntax-highlighting contributors nor the names of its contributors | ||||||
|  | #    may be used to endorse or promote products derived from this software without specific prior | ||||||
|  | #    written permission. | ||||||
|  | # | ||||||
|  | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR | ||||||
|  | # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND | ||||||
|  | # FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR | ||||||
|  | # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | ||||||
|  | # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | ||||||
|  | # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER | ||||||
|  | # IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT | ||||||
|  | # OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # -*- mode: zsh; sh-indentation: 2; indent-tabs-mode: nil; sh-basic-offset: 2; -*- | ||||||
|  | # vim: ft=zsh sw=2 ts=2 et | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | 
 | ||||||
|  | BUFFER=$': "$(( 1 + 1 ))"' | ||||||
|  | 
 | ||||||
|  | expected_region_highlight=( | ||||||
|  |   '1 1 builtin' # : | ||||||
|  |   '3 16 default' # "$(( 1 + 1 ))" | ||||||
|  |   '3 16 double-quoted-argument' # "$(( 1 + 1 ))" | ||||||
|  |   '4 15 arithmetic-expansion' # $(( 1 + 1 )) | ||||||
|  | ) | ||||||
|  | @ -0,0 +1,37 @@ | ||||||
|  | #!/usr/bin/env zsh | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # Copyright (c) 2020 zsh-syntax-highlighting contributors | ||||||
|  | # All rights reserved. | ||||||
|  | # | ||||||
|  | # Redistribution and use in source and binary forms, with or without modification, are permitted | ||||||
|  | # provided that the following conditions are met: | ||||||
|  | # | ||||||
|  | #  * Redistributions of source code must retain the above copyright notice, this list of conditions | ||||||
|  | #    and the following disclaimer. | ||||||
|  | #  * Redistributions in binary form must reproduce the above copyright notice, this list of | ||||||
|  | #    conditions and the following disclaimer in the documentation and/or other materials provided | ||||||
|  | #    with the distribution. | ||||||
|  | #  * Neither the name of the zsh-syntax-highlighting contributors nor the names of its contributors | ||||||
|  | #    may be used to endorse or promote products derived from this software without specific prior | ||||||
|  | #    written permission. | ||||||
|  | # | ||||||
|  | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR | ||||||
|  | # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND | ||||||
|  | # FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR | ||||||
|  | # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | ||||||
|  | # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | ||||||
|  | # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER | ||||||
|  | # IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT | ||||||
|  | # OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # -*- mode: zsh; sh-indentation: 2; indent-tabs-mode: nil; sh-basic-offset: 2; -*- | ||||||
|  | # vim: ft=zsh sw=2 ts=2 et | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | 
 | ||||||
|  | BUFFER=$': $(( 1' | ||||||
|  | 
 | ||||||
|  | expected_region_highlight=( | ||||||
|  |   '1 1 builtin' # : | ||||||
|  |   '3 7 default' # $(( 1 | ||||||
|  |   '3 7 arithmetic-expansion' # $(( 1 | ||||||
|  | ) | ||||||
|  | @ -0,0 +1,41 @@ | ||||||
|  | #!/usr/bin/env zsh | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # Copyright (c) 2020 zsh-syntax-highlighting contributors | ||||||
|  | # All rights reserved. | ||||||
|  | # | ||||||
|  | # Redistribution and use in source and binary forms, with or without modification, are permitted | ||||||
|  | # provided that the following conditions are met: | ||||||
|  | # | ||||||
|  | #  * Redistributions of source code must retain the above copyright notice, this list of conditions | ||||||
|  | #    and the following disclaimer. | ||||||
|  | #  * Redistributions in binary form must reproduce the above copyright notice, this list of | ||||||
|  | #    conditions and the following disclaimer in the documentation and/or other materials provided | ||||||
|  | #    with the distribution. | ||||||
|  | #  * Neither the name of the zsh-syntax-highlighting contributors nor the names of its contributors | ||||||
|  | #    may be used to endorse or promote products derived from this software without specific prior | ||||||
|  | #    written permission. | ||||||
|  | # | ||||||
|  | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR | ||||||
|  | # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND | ||||||
|  | # FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR | ||||||
|  | # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | ||||||
|  | # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | ||||||
|  | # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER | ||||||
|  | # IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT | ||||||
|  | # OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # -*- mode: zsh; sh-indentation: 2; indent-tabs-mode: nil; sh-basic-offset: 2; -*- | ||||||
|  | # vim: ft=zsh sw=2 ts=2 et | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | 
 | ||||||
|  | BUFFER=$': $(( 1729 )' | ||||||
|  | 
 | ||||||
|  | expected_region_highlight=( | ||||||
|  |   '1 1 builtin' # : | ||||||
|  |   '3 12 default' # $(( 1729 ) | ||||||
|  |   '3 12 arithmetic-expansion' # $(( 1729 ) | ||||||
|  | ) | ||||||
|  | 
 | ||||||
|  | if [[ ${(z):-'$('} == '$( ' ]]; then # ignore zsh 5.0.8 bug | ||||||
|  |   expected_region_highlight[2]='3 13 default' # $(( 1729 ) | ||||||
|  | fi | ||||||
|  | @ -0,0 +1,45 @@ | ||||||
|  | #!/usr/bin/env zsh | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # Copyright (c) 2019 zsh-syntax-highlighting contributors | ||||||
|  | # All rights reserved. | ||||||
|  | # | ||||||
|  | # Redistribution and use in source and binary forms, with or without modification, are permitted | ||||||
|  | # provided that the following conditions are met: | ||||||
|  | # | ||||||
|  | #  * Redistributions of source code must retain the above copyright notice, this list of conditions | ||||||
|  | #    and the following disclaimer. | ||||||
|  | #  * Redistributions in binary form must reproduce the above copyright notice, this list of | ||||||
|  | #    conditions and the following disclaimer in the documentation and/or other materials provided | ||||||
|  | #    with the distribution. | ||||||
|  | #  * Neither the name of the zsh-syntax-highlighting contributors nor the names of its contributors | ||||||
|  | #    may be used to endorse or promote products derived from this software without specific prior | ||||||
|  | #    written permission. | ||||||
|  | # | ||||||
|  | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR | ||||||
|  | # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND | ||||||
|  | # FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR | ||||||
|  | # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | ||||||
|  | # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | ||||||
|  | # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER | ||||||
|  | # IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT | ||||||
|  | # OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # -*- mode: zsh; sh-indentation: 2; indent-tabs-mode: nil; sh-basic-offset: 2; -*- | ||||||
|  | # vim: ft=zsh sw=2 ts=2 et | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | 
 | ||||||
|  | BUFFER=$'a=( foo | bar )' | ||||||
|  | bar(){} | ||||||
|  | 
 | ||||||
|  | expected_region_highlight=( | ||||||
|  |   '1 3 assign' # a=( | ||||||
|  |   '3 3 reserved-word' # ( | ||||||
|  |   '5 7 default' # foo | ||||||
|  |   '9 9 unknown-token' # | | ||||||
|  |   # zsh reports a parse error at this point.  Nevertheless, we test how we | ||||||
|  |   # highlight the remainder of $BUFFER.  Currently we recover by treating the pipe | ||||||
|  |   # as a command separator.  That's not the only reasonable behaviour, though; if | ||||||
|  |   # we change the behaviour, we should adjust the following expectations accordingly. | ||||||
|  |   '11 13 function' # bar | ||||||
|  |   '15 15 unknown-token' # ) | ||||||
|  | ) | ||||||
|  | @ -0,0 +1,41 @@ | ||||||
|  | #!/usr/bin/env zsh | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # Copyright (c) 2019 zsh-syntax-highlighting contributors | ||||||
|  | # All rights reserved. | ||||||
|  | # | ||||||
|  | # Redistribution and use in source and binary forms, with or without modification, are permitted | ||||||
|  | # provided that the following conditions are met: | ||||||
|  | # | ||||||
|  | #  * Redistributions of source code must retain the above copyright notice, this list of conditions | ||||||
|  | #    and the following disclaimer. | ||||||
|  | #  * Redistributions in binary form must reproduce the above copyright notice, this list of | ||||||
|  | #    conditions and the following disclaimer in the documentation and/or other materials provided | ||||||
|  | #    with the distribution. | ||||||
|  | #  * Neither the name of the zsh-syntax-highlighting contributors nor the names of its contributors | ||||||
|  | #    may be used to endorse or promote products derived from this software without specific prior | ||||||
|  | #    written permission. | ||||||
|  | # | ||||||
|  | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR | ||||||
|  | # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND | ||||||
|  | # FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR | ||||||
|  | # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | ||||||
|  | # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | ||||||
|  | # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER | ||||||
|  | # IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT | ||||||
|  | # OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # -*- mode: zsh; sh-indentation: 2; indent-tabs-mode: nil; sh-basic-offset: 2; -*- | ||||||
|  | # vim: ft=zsh sw=2 ts=2 et | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | 
 | ||||||
|  | BUFFER=$'a=( foo ; bar )' | ||||||
|  | 
 | ||||||
|  | expected_region_highlight=( | ||||||
|  |   '1 3 assign' # a=( | ||||||
|  |   '3 3 reserved-word' # ( | ||||||
|  |   '5 7 default' # foo | ||||||
|  |   '9 9 unknown-token' # ; (not commandseparator; see highlighter source code) | ||||||
|  |   '11 13 default' # bar | ||||||
|  |   '15 15 assign' # ) | ||||||
|  |   '15 15 reserved-word' # ) | ||||||
|  | ) | ||||||
|  | @ -0,0 +1,41 @@ | ||||||
|  | #!/usr/bin/env zsh | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # Copyright (c) 2019 zsh-syntax-highlighting contributors | ||||||
|  | # All rights reserved. | ||||||
|  | # | ||||||
|  | # Redistribution and use in source and binary forms, with or without modification, are permitted | ||||||
|  | # provided that the following conditions are met: | ||||||
|  | # | ||||||
|  | #  * Redistributions of source code must retain the above copyright notice, this list of conditions | ||||||
|  | #    and the following disclaimer. | ||||||
|  | #  * Redistributions in binary form must reproduce the above copyright notice, this list of | ||||||
|  | #    conditions and the following disclaimer in the documentation and/or other materials provided | ||||||
|  | #    with the distribution. | ||||||
|  | #  * Neither the name of the zsh-syntax-highlighting contributors nor the names of its contributors | ||||||
|  | #    may be used to endorse or promote products derived from this software without specific prior | ||||||
|  | #    written permission. | ||||||
|  | # | ||||||
|  | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR | ||||||
|  | # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND | ||||||
|  | # FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR | ||||||
|  | # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | ||||||
|  | # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | ||||||
|  | # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER | ||||||
|  | # IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT | ||||||
|  | # OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # -*- mode: zsh; sh-indentation: 2; indent-tabs-mode: nil; sh-basic-offset: 2; -*- | ||||||
|  | # vim: ft=zsh sw=2 ts=2 et | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | 
 | ||||||
|  | BUFFER=$'a=( foo \n bar )' | ||||||
|  | 
 | ||||||
|  | expected_region_highlight=( | ||||||
|  |   '1 3 assign' # a=( | ||||||
|  |   '3 3 reserved-word' # ( | ||||||
|  |   '5 7 default' # foo | ||||||
|  |   '9 9 commandseparator' # \n | ||||||
|  |   '11 13 default' # bar | ||||||
|  |   '15 15 assign' # ) | ||||||
|  |   '15 15 reserved-word' # ) | ||||||
|  | ) | ||||||
|  | @ -31,7 +31,9 @@ BUFFER='a+=(lorem ipsum)' | ||||||
| 
 | 
 | ||||||
| expected_region_highlight=( | expected_region_highlight=( | ||||||
|   "1 4 assign" # a+=( |   "1 4 assign" # a+=( | ||||||
|  |   "4 4 reserved-word" # ( | ||||||
|   "5 9 default" # lorem |   "5 9 default" # lorem | ||||||
|   "11 15 default" # ipsum |   "11 15 default" # ipsum | ||||||
|   "16 16 assign" # ) |   "16 16 assign" # ) | ||||||
|  |   "16 16 reserved-word" # ) | ||||||
| ) | ) | ||||||
|  |  | ||||||
|  | @ -32,8 +32,10 @@ BUFFER='(A=(hello world))' | ||||||
| expected_region_highlight=( | expected_region_highlight=( | ||||||
|   "1 1 reserved-word" # ( |   "1 1 reserved-word" # ( | ||||||
|   "2 4 assign" # A=( |   "2 4 assign" # A=( | ||||||
|  |   "4 4 reserved-word" # ( | ||||||
|   "5 9 default" # hello |   "5 9 default" # hello | ||||||
|   "11 15 default" # world |   "11 15 default" # world | ||||||
|   "16 16 assign" # ) |   "16 16 assign" # ) | ||||||
|  |   "16 16 reserved-word" # ) | ||||||
|   "17 17 reserved-word" # ) |   "17 17 reserved-word" # ) | ||||||
| ) | ) | ||||||
|  |  | ||||||
|  | @ -31,8 +31,10 @@ BUFFER='A=(hello world) ls' | ||||||
| 
 | 
 | ||||||
| expected_region_highlight=( | expected_region_highlight=( | ||||||
|   "1 3 assign" # A=( |   "1 3 assign" # A=( | ||||||
|  |   "3 3 reserved-word" # ( | ||||||
|   "4 8 default" # hello |   "4 8 default" # hello | ||||||
|   "10 14 default" # world |   "10 14 default" # world | ||||||
|   "15 15 assign" # ) |   "15 15 assign" # ) | ||||||
|  |   "15 15 reserved-word" # ) | ||||||
|   "17 18 command" # ls |   "17 18 command" # ls | ||||||
| ) | ) | ||||||
|  |  | ||||||
|  | @ -31,9 +31,11 @@ BUFFER='A=(hello world) b=42' | ||||||
| 
 | 
 | ||||||
| expected_region_highlight=( | expected_region_highlight=( | ||||||
|   "1 3 assign" # A=( |   "1 3 assign" # A=( | ||||||
|  |   "3 3 reserved-word" # ( | ||||||
|   "4 8 default" # hello |   "4 8 default" # hello | ||||||
|   "10 14 default" # world |   "10 14 default" # world | ||||||
|   "15 15 assign" # ) |   "15 15 assign" # ) | ||||||
|  |   "15 15 reserved-word" # ) | ||||||
|   "17 20 assign" # b=42 |   "17 20 assign" # b=42 | ||||||
|   "19 20 default" # 42 |   "19 20 default" # 42 | ||||||
| ) | ) | ||||||
|  |  | ||||||
|  | @ -0,0 +1,37 @@ | ||||||
|  | #!/usr/bin/env zsh | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # Copyright (c) 2020 zsh-syntax-highlighting contributors | ||||||
|  | # All rights reserved. | ||||||
|  | # | ||||||
|  | # Redistribution and use in source and binary forms, with or without modification, are permitted | ||||||
|  | # provided that the following conditions are met: | ||||||
|  | # | ||||||
|  | #  * Redistributions of source code must retain the above copyright notice, this list of conditions | ||||||
|  | #    and the following disclaimer. | ||||||
|  | #  * Redistributions in binary form must reproduce the above copyright notice, this list of | ||||||
|  | #    conditions and the following disclaimer in the documentation and/or other materials provided | ||||||
|  | #    with the distribution. | ||||||
|  | #  * Neither the name of the zsh-syntax-highlighting contributors nor the names of its contributors | ||||||
|  | #    may be used to endorse or promote products derived from this software without specific prior | ||||||
|  | #    written permission. | ||||||
|  | # | ||||||
|  | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR | ||||||
|  | # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND | ||||||
|  | # FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR | ||||||
|  | # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | ||||||
|  | # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | ||||||
|  | # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER | ||||||
|  | # IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT | ||||||
|  | # OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # -*- mode: zsh; sh-indentation: 2; indent-tabs-mode: nil; sh-basic-offset: 2; -*- | ||||||
|  | # vim: ft=zsh sw=2 ts=2 et | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | 
 | ||||||
|  | BUFFER=$'x=y nosuchcommand' | ||||||
|  | 
 | ||||||
|  | expected_region_highlight=( | ||||||
|  |   '1 3 assign' # x=y | ||||||
|  |   '3 3 default' # y | ||||||
|  |   '5 17 unknown-token' # nosuchcommand | ||||||
|  | ) | ||||||
|  | @ -0,0 +1,45 @@ | ||||||
|  | #!/usr/bin/env zsh | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # Copyright (c) 2018 zsh-syntax-highlighting contributors | ||||||
|  | # All rights reserved. | ||||||
|  | # | ||||||
|  | # Redistribution and use in source and binary forms, with or without modification, are permitted | ||||||
|  | # provided that the following conditions are met: | ||||||
|  | # | ||||||
|  | #  * Redistributions of source code must retain the above copyright notice, this list of conditions | ||||||
|  | #    and the following disclaimer. | ||||||
|  | #  * Redistributions in binary form must reproduce the above copyright notice, this list of | ||||||
|  | #    conditions and the following disclaimer in the documentation and/or other materials provided | ||||||
|  | #    with the distribution. | ||||||
|  | #  * Neither the name of the zsh-syntax-highlighting contributors nor the names of its contributors | ||||||
|  | #    may be used to endorse or promote products derived from this software without specific prior | ||||||
|  | #    written permission. | ||||||
|  | # | ||||||
|  | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR | ||||||
|  | # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND | ||||||
|  | # FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR | ||||||
|  | # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | ||||||
|  | # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | ||||||
|  | # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER | ||||||
|  | # IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT | ||||||
|  | # OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # -*- mode: zsh; sh-indentation: 2; indent-tabs-mode: nil; sh-basic-offset: 2; -*- | ||||||
|  | # vim: ft=zsh sw=2 ts=2 et | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | 
 | ||||||
|  | BUFFER=$'x="$(ls x y z)"' | ||||||
|  | 
 | ||||||
|  | expected_region_highlight=( | ||||||
|  |   '1 15 assign' # x="$(ls x y z)" | ||||||
|  |   '3 15 default' # "$(ls x y z)" | ||||||
|  |   '3 3 double-quoted-argument' # " | ||||||
|  |   '15 15 double-quoted-argument' # " | ||||||
|  |   '4 14 command-substitution-quoted' # $(ls x y z) | ||||||
|  |   '4 5 command-substitution-delimiter-quoted' # $( | ||||||
|  |   '6 7 command' # ls | ||||||
|  |   '9 9 default' # x | ||||||
|  |   '11 11 default' # y | ||||||
|  |   '13 13 default' # z | ||||||
|  |   '14 14 command-substitution-delimiter-quoted' # ) | ||||||
|  | ) | ||||||
|  | @ -0,0 +1,37 @@ | ||||||
|  | #!/usr/bin/env zsh | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # Copyright (c) 2020 zsh-syntax-highlighting contributors | ||||||
|  | # All rights reserved. | ||||||
|  | # | ||||||
|  | # Redistribution and use in source and binary forms, with or without modification, are permitted | ||||||
|  | # provided that the following conditions are met: | ||||||
|  | # | ||||||
|  | #  * Redistributions of source code must retain the above copyright notice, this list of conditions | ||||||
|  | #    and the following disclaimer. | ||||||
|  | #  * Redistributions in binary form must reproduce the above copyright notice, this list of | ||||||
|  | #    conditions and the following disclaimer in the documentation and/or other materials provided | ||||||
|  | #    with the distribution. | ||||||
|  | #  * Neither the name of the zsh-syntax-highlighting contributors nor the names of its contributors | ||||||
|  | #    may be used to endorse or promote products derived from this software without specific prior | ||||||
|  | #    written permission. | ||||||
|  | # | ||||||
|  | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR | ||||||
|  | # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND | ||||||
|  | # FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR | ||||||
|  | # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | ||||||
|  | # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | ||||||
|  | # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER | ||||||
|  | # IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT | ||||||
|  | # OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # -*- mode: zsh; sh-indentation: 2; indent-tabs-mode: nil; sh-basic-offset: 2; -*- | ||||||
|  | # vim: ft=zsh sw=2 ts=2 et | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | 
 | ||||||
|  | BUFFER=$'s="foo\'bar"' | ||||||
|  | 
 | ||||||
|  | expected_region_highlight=( | ||||||
|  |   '1 11 assign' # s="foo'bar" | ||||||
|  |   '3 11 default' # "foo'bar" | ||||||
|  |   '3 11 double-quoted-argument' # "foo'bar" | ||||||
|  | ) | ||||||
|  | @ -0,0 +1,37 @@ | ||||||
|  | #!/usr/bin/env zsh | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # Copyright (c) 2020 zsh-syntax-highlighting contributors | ||||||
|  | # All rights reserved. | ||||||
|  | # | ||||||
|  | # Redistribution and use in source and binary forms, with or without modification, are permitted | ||||||
|  | # provided that the following conditions are met: | ||||||
|  | # | ||||||
|  | #  * Redistributions of source code must retain the above copyright notice, this list of conditions | ||||||
|  | #    and the following disclaimer. | ||||||
|  | #  * Redistributions in binary form must reproduce the above copyright notice, this list of | ||||||
|  | #    conditions and the following disclaimer in the documentation and/or other materials provided | ||||||
|  | #    with the distribution. | ||||||
|  | #  * Neither the name of the zsh-syntax-highlighting contributors nor the names of its contributors | ||||||
|  | #    may be used to endorse or promote products derived from this software without specific prior | ||||||
|  | #    written permission. | ||||||
|  | # | ||||||
|  | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR | ||||||
|  | # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND | ||||||
|  | # FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR | ||||||
|  | # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | ||||||
|  | # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | ||||||
|  | # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER | ||||||
|  | # IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT | ||||||
|  | # OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # -*- mode: zsh; sh-indentation: 2; indent-tabs-mode: nil; sh-basic-offset: 2; -*- | ||||||
|  | # vim: ft=zsh sw=2 ts=2 et | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | 
 | ||||||
|  | BUFFER=$'s="foo \'\' bar"' | ||||||
|  | 
 | ||||||
|  | expected_region_highlight=( | ||||||
|  |   '1 14 assign' # s="foo '' bar" | ||||||
|  |   '3 14 default' # "foo '' bar" | ||||||
|  |   '3 14 double-quoted-argument' # "foo '' bar" | ||||||
|  | ) | ||||||
|  | @ -33,8 +33,10 @@ expected_region_highlight=( | ||||||
|   "1 3 assign" # A=1 |   "1 3 assign" # A=1 | ||||||
|   "3 3 default" # 1 |   "3 3 default" # 1 | ||||||
|   "5 7 assign" # b=( |   "5 7 assign" # b=( | ||||||
|  |   "7 7 reserved-word" # ( | ||||||
|   "8 12 default" # "foo" |   "8 12 default" # "foo" | ||||||
|   "8 12 double-quoted-argument" # "foo" |   "8 12 double-quoted-argument" # "foo" | ||||||
|   "14 16 default" # bar |   "14 16 default" # bar | ||||||
|   "17 17 assign" # ) |   "17 17 assign" # ) | ||||||
|  |   "17 17 reserved-word" # ) | ||||||
| ) | ) | ||||||
|  |  | ||||||
|  | @ -0,0 +1,40 @@ | ||||||
|  | #!/usr/bin/env zsh | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # Copyright (c) 2017 zsh-syntax-highlighting contributors | ||||||
|  | # All rights reserved. | ||||||
|  | # | ||||||
|  | # Redistribution and use in source and binary forms, with or without modification, are permitted | ||||||
|  | # provided that the following conditions are met: | ||||||
|  | # | ||||||
|  | #  * Redistributions of source code must retain the above copyright notice, this list of conditions | ||||||
|  | #    and the following disclaimer. | ||||||
|  | #  * Redistributions in binary form must reproduce the above copyright notice, this list of | ||||||
|  | #    conditions and the following disclaimer in the documentation and/or other materials provided | ||||||
|  | #    with the distribution. | ||||||
|  | #  * Neither the name of the zsh-syntax-highlighting contributors nor the names of its contributors | ||||||
|  | #    may be used to endorse or promote products derived from this software without specific prior | ||||||
|  | #    written permission. | ||||||
|  | # | ||||||
|  | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR | ||||||
|  | # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND | ||||||
|  | # FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR | ||||||
|  | # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | ||||||
|  | # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | ||||||
|  | # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER | ||||||
|  | # IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT | ||||||
|  | # OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # -*- mode: zsh; sh-indentation: 2; indent-tabs-mode: nil; sh-basic-offset: 2; -*- | ||||||
|  | # vim: ft=zsh sw=2 ts=2 et | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | 
 | ||||||
|  | BUFFER=$'foo=bar { :; }' | ||||||
|  | 
 | ||||||
|  | expected_region_highlight=( | ||||||
|  |   '1 7 assign' # foo=bar | ||||||
|  |   '5 7 default' # bar | ||||||
|  |   '9 9 unknown-token' # { | ||||||
|  |   '11 11 builtin' # : | ||||||
|  |   '12 12 commandseparator' # ; | ||||||
|  |   '14 14 reserved-word' # } | ||||||
|  | ) | ||||||
|  | @ -0,0 +1,40 @@ | ||||||
|  | #!/usr/bin/env zsh | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # Copyright (c) 2017 zsh-syntax-highlighting contributors | ||||||
|  | # All rights reserved. | ||||||
|  | # | ||||||
|  | # Redistribution and use in source and binary forms, with or without modification, are permitted | ||||||
|  | # provided that the following conditions are met: | ||||||
|  | # | ||||||
|  | #  * Redistributions of source code must retain the above copyright notice, this list of conditions | ||||||
|  | #    and the following disclaimer. | ||||||
|  | #  * Redistributions in binary form must reproduce the above copyright notice, this list of | ||||||
|  | #    conditions and the following disclaimer in the documentation and/or other materials provided | ||||||
|  | #    with the distribution. | ||||||
|  | #  * Neither the name of the zsh-syntax-highlighting contributors nor the names of its contributors | ||||||
|  | #    may be used to endorse or promote products derived from this software without specific prior | ||||||
|  | #    written permission. | ||||||
|  | # | ||||||
|  | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR | ||||||
|  | # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND | ||||||
|  | # FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR | ||||||
|  | # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | ||||||
|  | # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | ||||||
|  | # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER | ||||||
|  | # IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT | ||||||
|  | # OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # -*- mode: zsh; sh-indentation: 2; indent-tabs-mode: nil; sh-basic-offset: 2; -*- | ||||||
|  | # vim: ft=zsh sw=2 ts=2 et | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | 
 | ||||||
|  | BUFFER=$'foo=bar ( :; )' | ||||||
|  | 
 | ||||||
|  | expected_region_highlight=( | ||||||
|  |   '1 7 assign' # foo=bar | ||||||
|  |   '5 7 default' # bar | ||||||
|  |   '9 9 unknown-token' # ( | ||||||
|  |   '11 11 builtin' # : | ||||||
|  |   '12 12 commandseparator' # ; | ||||||
|  |   '14 14 unknown-token' # ) | ||||||
|  | ) | ||||||
|  | @ -0,0 +1,37 @@ | ||||||
|  | #!/usr/bin/env zsh | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # Copyright (c) 2017 zsh-syntax-highlighting contributors | ||||||
|  | # All rights reserved. | ||||||
|  | # | ||||||
|  | # Redistribution and use in source and binary forms, with or without modification, are permitted | ||||||
|  | # provided that the following conditions are met: | ||||||
|  | # | ||||||
|  | #  * Redistributions of source code must retain the above copyright notice, this list of conditions | ||||||
|  | #    and the following disclaimer. | ||||||
|  | #  * Redistributions in binary form must reproduce the above copyright notice, this list of | ||||||
|  | #    conditions and the following disclaimer in the documentation and/or other materials provided | ||||||
|  | #    with the distribution. | ||||||
|  | #  * Neither the name of the zsh-syntax-highlighting contributors nor the names of its contributors | ||||||
|  | #    may be used to endorse or promote products derived from this software without specific prior | ||||||
|  | #    written permission. | ||||||
|  | # | ||||||
|  | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR | ||||||
|  | # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND | ||||||
|  | # FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR | ||||||
|  | # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | ||||||
|  | # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | ||||||
|  | # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER | ||||||
|  | # IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT | ||||||
|  | # OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # -*- mode: zsh; sh-indentation: 2; indent-tabs-mode: nil; sh-basic-offset: 2; -*- | ||||||
|  | # vim: ft=zsh sw=2 ts=2 et | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | 
 | ||||||
|  | BUFFER=$'foo=bar (( foo ))' | ||||||
|  | 
 | ||||||
|  | expected_region_highlight=( | ||||||
|  |   '1 7 assign' # foo=bar | ||||||
|  |   '5 7 default' # bar | ||||||
|  |   '9 17 unknown-token' # (( foo )) | ||||||
|  | ) | ||||||
|  | @ -0,0 +1,40 @@ | ||||||
|  | #!/usr/bin/env zsh | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # Copyright (c) 2017 zsh-syntax-highlighting contributors | ||||||
|  | # All rights reserved. | ||||||
|  | # | ||||||
|  | # Redistribution and use in source and binary forms, with or without modification, are permitted | ||||||
|  | # provided that the following conditions are met: | ||||||
|  | # | ||||||
|  | #  * Redistributions of source code must retain the above copyright notice, this list of conditions | ||||||
|  | #    and the following disclaimer. | ||||||
|  | #  * Redistributions in binary form must reproduce the above copyright notice, this list of | ||||||
|  | #    conditions and the following disclaimer in the documentation and/or other materials provided | ||||||
|  | #    with the distribution. | ||||||
|  | #  * Neither the name of the zsh-syntax-highlighting contributors nor the names of its contributors | ||||||
|  | #    may be used to endorse or promote products derived from this software without specific prior | ||||||
|  | #    written permission. | ||||||
|  | # | ||||||
|  | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR | ||||||
|  | # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND | ||||||
|  | # FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR | ||||||
|  | # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | ||||||
|  | # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | ||||||
|  | # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER | ||||||
|  | # IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT | ||||||
|  | # OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # -*- mode: zsh; sh-indentation: 2; indent-tabs-mode: nil; sh-basic-offset: 2; -*- | ||||||
|  | # vim: ft=zsh sw=2 ts=2 et | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | 
 | ||||||
|  | BUFFER=$'foo=bar [[ -n foo ]]' | ||||||
|  | 
 | ||||||
|  | expected_region_highlight=( | ||||||
|  |   '1 7 assign' # foo=bar | ||||||
|  |   '5 7 default' # bar | ||||||
|  |   '9 10 unknown-token' # [[ | ||||||
|  |   '12 13 single-hyphen-option' # -n | ||||||
|  |   '15 17 default' # foo | ||||||
|  |   '19 20 reserved-word' # ]] | ||||||
|  | ) | ||||||
|  | @ -0,0 +1,38 @@ | ||||||
|  | #!/usr/bin/env zsh | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # Copyright (c) 2017 zsh-syntax-highlighting contributors | ||||||
|  | # All rights reserved. | ||||||
|  | # | ||||||
|  | # Redistribution and use in source and binary forms, with or without modification, are permitted | ||||||
|  | # provided that the following conditions are met: | ||||||
|  | # | ||||||
|  | #  * Redistributions of source code must retain the above copyright notice, this list of conditions | ||||||
|  | #    and the following disclaimer. | ||||||
|  | #  * Redistributions in binary form must reproduce the above copyright notice, this list of | ||||||
|  | #    conditions and the following disclaimer in the documentation and/or other materials provided | ||||||
|  | #    with the distribution. | ||||||
|  | #  * Neither the name of the zsh-syntax-highlighting contributors nor the names of its contributors | ||||||
|  | #    may be used to endorse or promote products derived from this software without specific prior | ||||||
|  | #    written permission. | ||||||
|  | # | ||||||
|  | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR | ||||||
|  | # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND | ||||||
|  | # FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR | ||||||
|  | # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | ||||||
|  | # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | ||||||
|  | # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER | ||||||
|  | # IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT | ||||||
|  | # OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # -*- mode: zsh; sh-indentation: 2; indent-tabs-mode: nil; sh-basic-offset: 2; -*- | ||||||
|  | # vim: ft=zsh sw=2 ts=2 et | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | 
 | ||||||
|  | BUFFER=$'foo=bar \! :' | ||||||
|  | 
 | ||||||
|  | expected_region_highlight=( | ||||||
|  |   '1 7 assign' # foo=bar | ||||||
|  |   '5 7 default' # bar | ||||||
|  |   '9 9 unknown-token' # \! | ||||||
|  |   '11 11 builtin' # : | ||||||
|  | ) | ||||||
|  | @ -0,0 +1,37 @@ | ||||||
|  | #!/usr/bin/env zsh | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # Copyright (c) 2020 zsh-syntax-highlighting contributors | ||||||
|  | # All rights reserved. | ||||||
|  | # | ||||||
|  | # Redistribution and use in source and binary forms, with or without modification, are permitted | ||||||
|  | # provided that the following conditions are met: | ||||||
|  | # | ||||||
|  | #  * Redistributions of source code must retain the above copyright notice, this list of conditions | ||||||
|  | #    and the following disclaimer. | ||||||
|  | #  * Redistributions in binary form must reproduce the above copyright notice, this list of | ||||||
|  | #    conditions and the following disclaimer in the documentation and/or other materials provided | ||||||
|  | #    with the distribution. | ||||||
|  | #  * Neither the name of the zsh-syntax-highlighting contributors nor the names of its contributors | ||||||
|  | #    may be used to endorse or promote products derived from this software without specific prior | ||||||
|  | #    written permission. | ||||||
|  | # | ||||||
|  | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR | ||||||
|  | # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND | ||||||
|  | # FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR | ||||||
|  | # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | ||||||
|  | # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | ||||||
|  | # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER | ||||||
|  | # IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT | ||||||
|  | # OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # -*- mode: zsh; sh-indentation: 2; indent-tabs-mode: nil; sh-basic-offset: 2; -*- | ||||||
|  | # vim: ft=zsh sw=2 ts=2 et | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | 
 | ||||||
|  | BUFFER=$'1="foo"' | ||||||
|  | 
 | ||||||
|  | expected_region_highlight=( | ||||||
|  |   '1 7 assign' # 1="foo" | ||||||
|  |   '3 7 default' # "foo" | ||||||
|  |   '3 7 double-quoted-argument' # "foo" | ||||||
|  | ) | ||||||
|  | @ -0,0 +1,37 @@ | ||||||
|  | #!/usr/bin/env zsh | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # Copyright (c) 2020 zsh-syntax-highlighting contributors | ||||||
|  | # All rights reserved. | ||||||
|  | # | ||||||
|  | # Redistribution and use in source and binary forms, with or without modification, are permitted | ||||||
|  | # provided that the following conditions are met: | ||||||
|  | # | ||||||
|  | #  * Redistributions of source code must retain the above copyright notice, this list of conditions | ||||||
|  | #    and the following disclaimer. | ||||||
|  | #  * Redistributions in binary form must reproduce the above copyright notice, this list of | ||||||
|  | #    conditions and the following disclaimer in the documentation and/or other materials provided | ||||||
|  | #    with the distribution. | ||||||
|  | #  * Neither the name of the zsh-syntax-highlighting contributors nor the names of its contributors | ||||||
|  | #    may be used to endorse or promote products derived from this software without specific prior | ||||||
|  | #    written permission. | ||||||
|  | # | ||||||
|  | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR | ||||||
|  | # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND | ||||||
|  | # FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR | ||||||
|  | # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | ||||||
|  | # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | ||||||
|  | # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER | ||||||
|  | # IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT | ||||||
|  | # OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # -*- mode: zsh; sh-indentation: 2; indent-tabs-mode: nil; sh-basic-offset: 2; -*- | ||||||
|  | # vim: ft=zsh sw=2 ts=2 et | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | 
 | ||||||
|  | BUFFER=$'echo foo\\\nbar"baz"' | ||||||
|  | 
 | ||||||
|  | expected_region_highlight=( | ||||||
|  |   '1 4 builtin' # echo | ||||||
|  |   '6 18 default "issue #705"' # foo\\\nbar"baz" | ||||||
|  |   '14 18 double-quoted-argument "issue #705"' # "baz" | ||||||
|  | ) | ||||||
|  | @ -0,0 +1,34 @@ | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # Copyright (c) 2018 zsh-syntax-highlighting contributors | ||||||
|  | # All rights reserved. | ||||||
|  | # | ||||||
|  | # Redistribution and use in source and binary forms, with or without modification, are permitted | ||||||
|  | # provided that the following conditions are met: | ||||||
|  | # | ||||||
|  | #  * Redistributions of source code must retain the above copyright notice, this list of conditions | ||||||
|  | #    and the following disclaimer. | ||||||
|  | #  * Redistributions in binary form must reproduce the above copyright notice, this list of | ||||||
|  | #    conditions and the following disclaimer in the documentation and/or other materials provided | ||||||
|  | #    with the distribution. | ||||||
|  | #  * Neither the name of the zsh-syntax-highlighting contributors nor the names of its contributors | ||||||
|  | #    may be used to endorse or promote products derived from this software without specific prior | ||||||
|  | #    written permission. | ||||||
|  | # | ||||||
|  | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR | ||||||
|  | # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND | ||||||
|  | # FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR | ||||||
|  | # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | ||||||
|  | # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | ||||||
|  | # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER | ||||||
|  | # IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT | ||||||
|  | # OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # -*- mode: zsh; sh-indentation: 2; indent-tabs-mode: nil; sh-basic-offset: 2; -*- | ||||||
|  | # vim: ft=zsh sw=2 ts=2 et | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | 
 | ||||||
|  | BUFFER=$'\\' | ||||||
|  | 
 | ||||||
|  | expected_region_highlight=( | ||||||
|  |   '1 1 unknown-token' # \\ | ||||||
|  | ) | ||||||
|  | @ -0,0 +1,42 @@ | ||||||
|  | #!/usr/bin/env zsh | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # Copyright (c) 2018 zsh-syntax-highlighting contributors | ||||||
|  | # All rights reserved. | ||||||
|  | # | ||||||
|  | # Redistribution and use in source and binary forms, with or without modification, are permitted | ||||||
|  | # provided that the following conditions are met: | ||||||
|  | # | ||||||
|  | #  * Redistributions of source code must retain the above copyright notice, this list of conditions | ||||||
|  | #    and the following disclaimer. | ||||||
|  | #  * Redistributions in binary form must reproduce the above copyright notice, this list of | ||||||
|  | #    conditions and the following disclaimer in the documentation and/or other materials provided | ||||||
|  | #    with the distribution. | ||||||
|  | #  * Neither the name of the zsh-syntax-highlighting contributors nor the names of its contributors | ||||||
|  | #    may be used to endorse or promote products derived from this software without specific prior | ||||||
|  | #    written permission. | ||||||
|  | # | ||||||
|  | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR | ||||||
|  | # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND | ||||||
|  | # FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR | ||||||
|  | # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | ||||||
|  | # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | ||||||
|  | # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER | ||||||
|  | # IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT | ||||||
|  | # OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # -*- mode: zsh; sh-indentation: 2; indent-tabs-mode: nil; sh-basic-offset: 2; -*- | ||||||
|  | # vim: ft=zsh sw=2 ts=2 et | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | 
 | ||||||
|  | BUFFER=$'foo=(bar abaz) \! ls' | ||||||
|  | 
 | ||||||
|  | expected_region_highlight=( | ||||||
|  |   '1 5 assign' # foo=( | ||||||
|  |   '5 5 reserved-word' # ( | ||||||
|  |   '6 8 default' # bar | ||||||
|  |   '10 13 default' # abaz | ||||||
|  |   '14 14 assign' # ) | ||||||
|  |   '14 14 reserved-word' # ) | ||||||
|  |   '16 16 unknown-token' # \! | ||||||
|  |   '18 19 command' # ls | ||||||
|  | ) | ||||||
|  | @ -0,0 +1,38 @@ | ||||||
|  | #!/usr/bin/env zsh | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # Copyright (c) 2018 zsh-syntax-highlighting contributors | ||||||
|  | # All rights reserved. | ||||||
|  | # | ||||||
|  | # Redistribution and use in source and binary forms, with or without modification, are permitted | ||||||
|  | # provided that the following conditions are met: | ||||||
|  | # | ||||||
|  | #  * Redistributions of source code must retain the above copyright notice, this list of conditions | ||||||
|  | #    and the following disclaimer. | ||||||
|  | #  * Redistributions in binary form must reproduce the above copyright notice, this list of | ||||||
|  | #    conditions and the following disclaimer in the documentation and/or other materials provided | ||||||
|  | #    with the distribution. | ||||||
|  | #  * Neither the name of the zsh-syntax-highlighting contributors nor the names of its contributors | ||||||
|  | #    may be used to endorse or promote products derived from this software without specific prior | ||||||
|  | #    written permission. | ||||||
|  | # | ||||||
|  | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR | ||||||
|  | # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND | ||||||
|  | # FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR | ||||||
|  | # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | ||||||
|  | # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | ||||||
|  | # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER | ||||||
|  | # IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT | ||||||
|  | # OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # -*- mode: zsh; sh-indentation: 2; indent-tabs-mode: nil; sh-basic-offset: 2; -*- | ||||||
|  | # vim: ft=zsh sw=2 ts=2 et | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | 
 | ||||||
|  | BUFFER=$'foo=bar \! ls' | ||||||
|  | 
 | ||||||
|  | expected_region_highlight=( | ||||||
|  |   '1 7 assign' # foo=bar | ||||||
|  |   '5 7 default' # bar | ||||||
|  |   '9 9 unknown-token' # \! | ||||||
|  |   '11 12 command' # ls | ||||||
|  | ) | ||||||
|  | @ -0,0 +1,39 @@ | ||||||
|  | #!/usr/bin/env zsh | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # Copyright (c) 2018 zsh-syntax-highlighting contributors | ||||||
|  | # All rights reserved. | ||||||
|  | # | ||||||
|  | # Redistribution and use in source and binary forms, with or without modification, are permitted | ||||||
|  | # provided that the following conditions are met: | ||||||
|  | # | ||||||
|  | #  * Redistributions of source code must retain the above copyright notice, this list of conditions | ||||||
|  | #    and the following disclaimer. | ||||||
|  | #  * Redistributions in binary form must reproduce the above copyright notice, this list of | ||||||
|  | #    conditions and the following disclaimer in the documentation and/or other materials provided | ||||||
|  | #    with the distribution. | ||||||
|  | #  * Neither the name of the zsh-syntax-highlighting contributors nor the names of its contributors | ||||||
|  | #    may be used to endorse or promote products derived from this software without specific prior | ||||||
|  | #    written permission. | ||||||
|  | # | ||||||
|  | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR | ||||||
|  | # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND | ||||||
|  | # FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR | ||||||
|  | # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | ||||||
|  | # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | ||||||
|  | # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER | ||||||
|  | # IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT | ||||||
|  | # OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # -*- mode: zsh; sh-indentation: 2; indent-tabs-mode: nil; sh-basic-offset: 2; -*- | ||||||
|  | # vim: ft=zsh sw=2 ts=2 et | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | 
 | ||||||
|  | BUFFER=$'\! ls | \! ls' | ||||||
|  | 
 | ||||||
|  | expected_region_highlight=( | ||||||
|  |   '1 1 reserved-word' # \! | ||||||
|  |   '3 4 command' # ls | ||||||
|  |   '6 6 commandseparator' # | | ||||||
|  |   '8 8 unknown-token' # \! | ||||||
|  |   '10 11 command' # ls | ||||||
|  | ) | ||||||
|  | @ -0,0 +1,38 @@ | ||||||
|  | #!/usr/bin/env zsh | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # Copyright (c) 2018 zsh-syntax-highlighting contributors | ||||||
|  | # All rights reserved. | ||||||
|  | # | ||||||
|  | # Redistribution and use in source and binary forms, with or without modification, are permitted | ||||||
|  | # provided that the following conditions are met: | ||||||
|  | # | ||||||
|  | #  * Redistributions of source code must retain the above copyright notice, this list of conditions | ||||||
|  | #    and the following disclaimer. | ||||||
|  | #  * Redistributions in binary form must reproduce the above copyright notice, this list of | ||||||
|  | #    conditions and the following disclaimer in the documentation and/or other materials provided | ||||||
|  | #    with the distribution. | ||||||
|  | #  * Neither the name of the zsh-syntax-highlighting contributors nor the names of its contributors | ||||||
|  | #    may be used to endorse or promote products derived from this software without specific prior | ||||||
|  | #    written permission. | ||||||
|  | # | ||||||
|  | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR | ||||||
|  | # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND | ||||||
|  | # FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR | ||||||
|  | # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | ||||||
|  | # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | ||||||
|  | # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER | ||||||
|  | # IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT | ||||||
|  | # OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # -*- mode: zsh; sh-indentation: 2; indent-tabs-mode: nil; sh-basic-offset: 2; -*- | ||||||
|  | # vim: ft=zsh sw=2 ts=2 et | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | 
 | ||||||
|  | BUFFER='[[ -n foo ]]' | ||||||
|  | 
 | ||||||
|  | expected_region_highlight=( | ||||||
|  |   '1 2 reserved-word' # [[ | ||||||
|  |   '4 5 single-hyphen-option' # -n | ||||||
|  |   '7 9 default' # foo | ||||||
|  |   '11 12 reserved-word' # ]] | ||||||
|  | ) | ||||||
|  | @ -0,0 +1,38 @@ | ||||||
|  | #!/usr/bin/env zsh | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # Copyright (c) 2018 zsh-syntax-highlighting contributors | ||||||
|  | # All rights reserved. | ||||||
|  | # | ||||||
|  | # Redistribution and use in source and binary forms, with or without modification, are permitted | ||||||
|  | # provided that the following conditions are met: | ||||||
|  | # | ||||||
|  | #  * Redistributions of source code must retain the above copyright notice, this list of conditions | ||||||
|  | #    and the following disclaimer. | ||||||
|  | #  * Redistributions in binary form must reproduce the above copyright notice, this list of | ||||||
|  | #    conditions and the following disclaimer in the documentation and/or other materials provided | ||||||
|  | #    with the distribution. | ||||||
|  | #  * Neither the name of the zsh-syntax-highlighting contributors nor the names of its contributors | ||||||
|  | #    may be used to endorse or promote products derived from this software without specific prior | ||||||
|  | #    written permission. | ||||||
|  | # | ||||||
|  | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR | ||||||
|  | # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND | ||||||
|  | # FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR | ||||||
|  | # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | ||||||
|  | # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | ||||||
|  | # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER | ||||||
|  | # IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT | ||||||
|  | # OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # -*- mode: zsh; sh-indentation: 2; indent-tabs-mode: nil; sh-basic-offset: 2; -*- | ||||||
|  | # vim: ft=zsh sw=2 ts=2 et | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | 
 | ||||||
|  | BUFFER='[ -n foo ]' | ||||||
|  | 
 | ||||||
|  | expected_region_highlight=( | ||||||
|  |   '1 1 builtin' # [ | ||||||
|  |   '3 4 single-hyphen-option' # -n | ||||||
|  |   '6 8 default' # foo | ||||||
|  |   '10 10 builtin' # ] | ||||||
|  | ) | ||||||
|  | @ -0,0 +1,40 @@ | ||||||
|  | #!/usr/bin/env zsh | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # Copyright (c) 2018 zsh-syntax-highlighting contributors | ||||||
|  | # All rights reserved. | ||||||
|  | # | ||||||
|  | # Redistribution and use in source and binary forms, with or without modification, are permitted | ||||||
|  | # provided that the following conditions are met: | ||||||
|  | # | ||||||
|  | #  * Redistributions of source code must retain the above copyright notice, this list of conditions | ||||||
|  | #    and the following disclaimer. | ||||||
|  | #  * Redistributions in binary form must reproduce the above copyright notice, this list of | ||||||
|  | #    conditions and the following disclaimer in the documentation and/or other materials provided | ||||||
|  | #    with the distribution. | ||||||
|  | #  * Neither the name of the zsh-syntax-highlighting contributors nor the names of its contributors | ||||||
|  | #    may be used to endorse or promote products derived from this software without specific prior | ||||||
|  | #    written permission. | ||||||
|  | # | ||||||
|  | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR | ||||||
|  | # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND | ||||||
|  | # FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR | ||||||
|  | # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | ||||||
|  | # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | ||||||
|  | # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER | ||||||
|  | # IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT | ||||||
|  | # OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # -*- mode: zsh; sh-indentation: 2; indent-tabs-mode: nil; sh-basic-offset: 2; -*- | ||||||
|  | # vim: ft=zsh sw=2 ts=2 et | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | 
 | ||||||
|  | BUFFER='[[ -n foo; echo ]]' | ||||||
|  | 
 | ||||||
|  | expected_region_highlight=( | ||||||
|  |   '1 2 reserved-word' # [[ | ||||||
|  |   '4 5 single-hyphen-option' # -n | ||||||
|  |   '7 9 default' # foo | ||||||
|  |   '10 10 unknown-token' # ; | ||||||
|  |   '12 15 builtin' # echo | ||||||
|  |   '17 18 default' # ]] | ||||||
|  | ) | ||||||
|  | @ -0,0 +1,38 @@ | ||||||
|  | #!/usr/bin/env zsh | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # Copyright (c) 2020 zsh-syntax-highlighting contributors | ||||||
|  | # All rights reserved. | ||||||
|  | # | ||||||
|  | # Redistribution and use in source and binary forms, with or without modification, are permitted | ||||||
|  | # provided that the following conditions are met: | ||||||
|  | # | ||||||
|  | #  * Redistributions of source code must retain the above copyright notice, this list of conditions | ||||||
|  | #    and the following disclaimer. | ||||||
|  | #  * Redistributions in binary form must reproduce the above copyright notice, this list of | ||||||
|  | #    conditions and the following disclaimer in the documentation and/or other materials provided | ||||||
|  | #    with the distribution. | ||||||
|  | #  * Neither the name of the zsh-syntax-highlighting contributors nor the names of its contributors | ||||||
|  | #    may be used to endorse or promote products derived from this software without specific prior | ||||||
|  | #    written permission. | ||||||
|  | # | ||||||
|  | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR | ||||||
|  | # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND | ||||||
|  | # FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR | ||||||
|  | # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | ||||||
|  | # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | ||||||
|  | # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER | ||||||
|  | # IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT | ||||||
|  | # OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # -*- mode: zsh; sh-indentation: 2; indent-tabs-mode: nil; sh-basic-offset: 2; -*- | ||||||
|  | # vim: ft=zsh sw=2 ts=2 et | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | 
 | ||||||
|  | cdpath=( $PWD ) | ||||||
|  | mkdir foo foo/bar | ||||||
|  | 
 | ||||||
|  | BUFFER="/foo" | ||||||
|  | 
 | ||||||
|  | expected_region_highlight=( | ||||||
|  |   '1 4 unknown-token' # x (/) | ||||||
|  | ) | ||||||
|  | @ -0,0 +1,44 @@ | ||||||
|  | #!/usr/bin/env zsh | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # Copyright (c) 2020 zsh-syntax-highlighting contributors | ||||||
|  | # All rights reserved. | ||||||
|  | # | ||||||
|  | # Redistribution and use in source and binary forms, with or without modification, are permitted | ||||||
|  | # provided that the following conditions are met: | ||||||
|  | # | ||||||
|  | #  * Redistributions of source code must retain the above copyright notice, this list of conditions | ||||||
|  | #    and the following disclaimer. | ||||||
|  | #  * Redistributions in binary form must reproduce the above copyright notice, this list of | ||||||
|  | #    conditions and the following disclaimer in the documentation and/or other materials provided | ||||||
|  | #    with the distribution. | ||||||
|  | #  * Neither the name of the zsh-syntax-highlighting contributors nor the names of its contributors | ||||||
|  | #    may be used to endorse or promote products derived from this software without specific prior | ||||||
|  | #    written permission. | ||||||
|  | # | ||||||
|  | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR | ||||||
|  | # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND | ||||||
|  | # FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR | ||||||
|  | # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | ||||||
|  | # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | ||||||
|  | # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER | ||||||
|  | # IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT | ||||||
|  | # OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # -*- mode: zsh; sh-indentation: 2; indent-tabs-mode: nil; sh-basic-offset: 2; -*- | ||||||
|  | # vim: ft=zsh sw=2 ts=2 et | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | 
 | ||||||
|  | # Test elision of some, but not all of the words | ||||||
|  | # See issue #667 for the case of eliding all words | ||||||
|  | local -a x; x=(sudo "") | ||||||
|  | 
 | ||||||
|  | sudo(){} | ||||||
|  | BUFFER=$'$x -u phy1729 ls' | ||||||
|  | 
 | ||||||
|  | expected_region_highlight=( | ||||||
|  |   '1 2 precommand' # $x | ||||||
|  |   # The "" is elided.  If it weren't elided, the «ls» would be highlighted as an ordinary argument. | ||||||
|  |   '4 5 single-hyphen-option' # -u | ||||||
|  |   '7 13 default' # phy1729 | ||||||
|  |   '15 16 command' # ls | ||||||
|  | ) | ||||||
|  | @ -0,0 +1,45 @@ | ||||||
|  | #!/usr/bin/env zsh | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # Copyright (c) 2019 zsh-syntax-highlighting contributors | ||||||
|  | # All rights reserved. | ||||||
|  | # | ||||||
|  | # Redistribution and use in source and binary forms, with or without modification, are permitted | ||||||
|  | # provided that the following conditions are met: | ||||||
|  | # | ||||||
|  | #  * Redistributions of source code must retain the above copyright notice, this list of conditions | ||||||
|  | #    and the following disclaimer. | ||||||
|  | #  * Redistributions in binary form must reproduce the above copyright notice, this list of | ||||||
|  | #    conditions and the following disclaimer in the documentation and/or other materials provided | ||||||
|  | #    with the distribution. | ||||||
|  | #  * Neither the name of the zsh-syntax-highlighting contributors nor the names of its contributors | ||||||
|  | #    may be used to endorse or promote products derived from this software without specific prior | ||||||
|  | #    written permission. | ||||||
|  | # | ||||||
|  | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR | ||||||
|  | # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND | ||||||
|  | # FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR | ||||||
|  | # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | ||||||
|  | # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | ||||||
|  | # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER | ||||||
|  | # IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT | ||||||
|  | # OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # -*- mode: zsh; sh-indentation: 2; indent-tabs-mode: nil; sh-basic-offset: 2; -*- | ||||||
|  | # vim: ft=zsh sw=2 ts=2 et | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | 
 | ||||||
|  | BUFFER='echo "$(echo)$(echo)' | ||||||
|  | 
 | ||||||
|  | expected_region_highlight=( | ||||||
|  |   '1 4 builtin' # echo | ||||||
|  |   '6 20 default' # "$(echo)$(echo) | ||||||
|  |   '6 6 double-quoted-argument-unclosed' # " | ||||||
|  |   '7 13 command-substitution-quoted' # $(echo) | ||||||
|  |   '7 8 command-substitution-delimiter-quoted' # $( | ||||||
|  |   '9 12 builtin' # echo | ||||||
|  |   '13 13 command-substitution-delimiter-quoted' # ) | ||||||
|  |   '14 20 command-substitution-quoted' # $(echo) | ||||||
|  |   '14 15 command-substitution-delimiter-quoted' # $( | ||||||
|  |   '16 19 builtin' # echo | ||||||
|  |   '20 20 command-substitution-delimiter-quoted' # ) | ||||||
|  | ) | ||||||
|  | @ -33,10 +33,10 @@ BUFFER=$'foo=$(echo bar) :' | ||||||
| expected_region_highlight=( | expected_region_highlight=( | ||||||
|   '1 15 assign' # foo=$(echo bar) |   '1 15 assign' # foo=$(echo bar) | ||||||
|   '5 15 default' # $(echo bar) |   '5 15 default' # $(echo bar) | ||||||
|   '5 15 command-substitution' # $(echo bar) |   '5 15 command-substitution-unquoted' # $(echo bar) | ||||||
|   '5 6 command-substitution-delimiter' # $( |   '5 6 command-substitution-delimiter-unquoted' # $( | ||||||
|   '7 10 builtin' # echo |   '7 10 builtin' # echo | ||||||
|   '12 14 default' # bar |   '12 14 default' # bar | ||||||
|   '15 15 command-substitution-delimiter' # ) |   '15 15 command-substitution-delimiter-unquoted' # ) | ||||||
|   '17 17 builtin' # : |   '17 17 builtin' # : | ||||||
| ) | ) | ||||||
|  |  | ||||||
|  | @ -33,12 +33,13 @@ BUFFER=$': foo$(echo bar' | ||||||
| expected_region_highlight=( | expected_region_highlight=( | ||||||
|   '1 1 builtin' # : |   '1 1 builtin' # : | ||||||
|   '3 15 default' # foo$(echo bar |   '3 15 default' # foo$(echo bar | ||||||
|   '6 15 command-substitution' # $(echo bar |   '6 15 command-substitution-unquoted' # $(echo bar | ||||||
|   '6 7 command-substitution-delimiter' # $( |   '6 7 command-substitution-delimiter-unquoted' # $( | ||||||
|   '8 11 builtin' # echo |   '8 11 builtin' # echo | ||||||
|   '13 15 default' # bar |   '13 15 default' # bar | ||||||
| ) | ) | ||||||
| 
 | 
 | ||||||
| if [[ ${(z):-'$('} == '$( ' ]]; then # ignore zsh 5.0.8 bug | if [[ ${(z):-'$('} == '$( ' ]]; then # ignore zsh 5.0.8 bug | ||||||
|   expected_region_highlight[2]='3 16 default' # foo$(echo bar |   expected_region_highlight[2]='3 16 default' # foo$(echo bar | ||||||
|  |   expected_region_highlight[3]='6 16 command-substitution-unquoted' # $(echo bar | ||||||
| fi | fi | ||||||
|  |  | ||||||
|  | @ -28,11 +28,12 @@ | ||||||
| # vim: ft=zsh sw=2 ts=2 et | # vim: ft=zsh sw=2 ts=2 et | ||||||
| # ------------------------------------------------------------------------------------------------- | # ------------------------------------------------------------------------------------------------- | ||||||
| 
 | 
 | ||||||
|  | # see alias-comment1.zsh | ||||||
| setopt interactivecomments | setopt interactivecomments | ||||||
| BUFFER=$'# foo\ntrue' | BUFFER=$'# foo\ntrue' | ||||||
| 
 | 
 | ||||||
| expected_region_highlight=( | expected_region_highlight=( | ||||||
|   '1 5 comment' # # foo |   '1 5 comment' # # foo | ||||||
|   '6 6 commandseparator "issue #501"' # \n |   '6 6 commandseparator' # \n | ||||||
|   '7 10 builtin' # true |   '7 10 builtin' # true | ||||||
| ) | ) | ||||||
|  |  | ||||||
|  | @ -53,8 +53,8 @@ expected_region_highlight=( | ||||||
|   '55 58 double-quoted-argument-unclosed' # "lhu |   '55 58 double-quoted-argument-unclosed' # "lhu | ||||||
|   '59 62 back-quoted-argument-delimiter' # \\\` |   '59 62 back-quoted-argument-delimiter' # \\\` | ||||||
|   '64 112 default' # R\\'ly$(echo eh wag\\\`echo h\'nag\\\`'l' fht)agn |   '64 112 default' # R\\'ly$(echo eh wag\\\`echo h\'nag\\\`'l' fht)agn | ||||||
|   '70 109 command-substitution' # $(echo eh wag\\\`echo h\'nag\\\`'l' fht) |   '70 109 command-substitution-unquoted' # $(echo eh wag\\\`echo h\'nag\\\`'l' fht) | ||||||
|   '70 71 command-substitution-delimiter' # $( |   '70 71 command-substitution-delimiter-unquoted' # $( | ||||||
|   '72 75 builtin' # echo |   '72 75 builtin' # echo | ||||||
|   '77 78 default' # eh |   '77 78 default' # eh | ||||||
|   '80 104 default' # wag\\\`echo h\'nag\\\`'l' |   '80 104 default' # wag\\\`echo h\'nag\\\`'l' | ||||||
|  | @ -65,6 +65,6 @@ expected_region_highlight=( | ||||||
|   '98 101 back-quoted-argument-delimiter' # \\\` |   '98 101 back-quoted-argument-delimiter' # \\\` | ||||||
|   '102 104 single-quoted-argument' # 'l' |   '102 104 single-quoted-argument' # 'l' | ||||||
|   '106 108 default' # fht |   '106 108 default' # fht | ||||||
|   '109 109 command-substitution-delimiter' # ) |   '109 109 command-substitution-delimiter-unquoted' # ) | ||||||
|   '113 113 unknown-token' # ` |   '113 113 unknown-token' # ` | ||||||
| ) | ) | ||||||
|  |  | ||||||
|  | @ -0,0 +1,41 @@ | ||||||
|  | #!/usr/bin/env zsh | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # Copyright (c) 2020 zsh-syntax-highlighting contributors | ||||||
|  | # All rights reserved. | ||||||
|  | # | ||||||
|  | # Redistribution and use in source and binary forms, with or without modification, are permitted | ||||||
|  | # provided that the following conditions are met: | ||||||
|  | # | ||||||
|  | #  * Redistributions of source code must retain the above copyright notice, this list of conditions | ||||||
|  | #    and the following disclaimer. | ||||||
|  | #  * Redistributions in binary form must reproduce the above copyright notice, this list of | ||||||
|  | #    conditions and the following disclaimer in the documentation and/or other materials provided | ||||||
|  | #    with the distribution. | ||||||
|  | #  * Neither the name of the zsh-syntax-highlighting contributors nor the names of its contributors | ||||||
|  | #    may be used to endorse or promote products derived from this software without specific prior | ||||||
|  | #    written permission. | ||||||
|  | # | ||||||
|  | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR | ||||||
|  | # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND | ||||||
|  | # FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR | ||||||
|  | # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | ||||||
|  | # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | ||||||
|  | # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER | ||||||
|  | # IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT | ||||||
|  | # OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # -*- mode: zsh; sh-indentation: 2; indent-tabs-mode: nil; sh-basic-offset: 2; -*- | ||||||
|  | # vim: ft=zsh sw=2 ts=2 et | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | 
 | ||||||
|  | BUFFER=$'[[ foo && bar || baz ]]' | ||||||
|  | 
 | ||||||
|  | expected_region_highlight=( | ||||||
|  |   '1 2 reserved-word' # [[ | ||||||
|  |   '4 6 default' # foo | ||||||
|  |   '8 9 default' # && | ||||||
|  |   '11 13 default' # bar | ||||||
|  |   '15 16 default' # || | ||||||
|  |   '18 20 default' # baz | ||||||
|  |   '22 23 reserved-word' # ]] | ||||||
|  | ) | ||||||
|  | @ -30,7 +30,7 @@ | ||||||
| mkdir foo | mkdir foo | ||||||
| touch foo/bar | touch foo/bar | ||||||
| BUFFER=": foo/bar $PWD/foo foo/b" | BUFFER=": foo/bar $PWD/foo foo/b" | ||||||
| X_ZSH_HIGHLIGHT_DIRS_BLACKLIST=($PWD/foo $PWD/bar) | ZSH_HIGHLIGHT_DIRS_BLACKLIST=($PWD/foo $PWD/bar) | ||||||
| 
 | 
 | ||||||
| expected_region_highlight=( | expected_region_highlight=( | ||||||
|   '1 1 builtin' # : |   '1 1 builtin' # : | ||||||
|  |  | ||||||
|  | @ -28,14 +28,22 @@ | ||||||
| # vim: ft=zsh sw=2 ts=2 et | # vim: ft=zsh sw=2 ts=2 et | ||||||
| # ------------------------------------------------------------------------------------------------- | # ------------------------------------------------------------------------------------------------- | ||||||
| 
 | 
 | ||||||
| BUFFER=': "$(:)"' | BUFFER=': "$(:)" "foo$(:)bar' | ||||||
| 
 | 
 | ||||||
| expected_region_highlight=( | expected_region_highlight=( | ||||||
|   '1 1 builtin' # : |   '1 1 builtin' # : | ||||||
|   '3 8 default' # "$(:)" |   '3 8 default' # "$(:)" | ||||||
|   '3 8 double-quoted-argument' # "$(:)" |   '3 3 double-quoted-argument' # "$(:)" | ||||||
|   '4 7 command-substitution' # $(:) |   '8 8 double-quoted-argument' # "$(:)" | ||||||
|   '4 5 command-substitution-delimiter' # $( |   '4 7 command-substitution-quoted' # $(:) | ||||||
|  |   '4 5 command-substitution-delimiter-quoted' # $( | ||||||
|   '6 6 builtin' # : |   '6 6 builtin' # : | ||||||
|   '7 7 command-substitution-delimiter' # ) |   '7 7 command-substitution-delimiter-quoted' # ) | ||||||
|  |   '10 20 default' # "foo$(:)bar | ||||||
|  |   '10 13 double-quoted-argument-unclosed' # "foo | ||||||
|  |   '18 20 double-quoted-argument-unclosed' # bar | ||||||
|  |   '14 17 command-substitution-quoted' # $(:) | ||||||
|  |   '14 15 command-substitution-delimiter-quoted' # $( | ||||||
|  |   '16 16 builtin' # : | ||||||
|  |   '17 17 command-substitution-delimiter-quoted' # ) | ||||||
| ) | ) | ||||||
|  |  | ||||||
|  | @ -0,0 +1,39 @@ | ||||||
|  | #!/usr/bin/env zsh | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # Copyright (c) 2019 zsh-syntax-highlighting contributors | ||||||
|  | # All rights reserved. | ||||||
|  | # | ||||||
|  | # Redistribution and use in source and binary forms, with or without modification, are permitted | ||||||
|  | # provided that the following conditions are met: | ||||||
|  | # | ||||||
|  | #  * Redistributions of source code must retain the above copyright notice, this list of conditions | ||||||
|  | #    and the following disclaimer. | ||||||
|  | #  * Redistributions in binary form must reproduce the above copyright notice, this list of | ||||||
|  | #    conditions and the following disclaimer in the documentation and/or other materials provided | ||||||
|  | #    with the distribution. | ||||||
|  | #  * Neither the name of the zsh-syntax-highlighting contributors nor the names of its contributors | ||||||
|  | #    may be used to endorse or promote products derived from this software without specific prior | ||||||
|  | #    written permission. | ||||||
|  | # | ||||||
|  | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR | ||||||
|  | # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND | ||||||
|  | # FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR | ||||||
|  | # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | ||||||
|  | # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | ||||||
|  | # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER | ||||||
|  | # IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT | ||||||
|  | # OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # -*- mode: zsh; sh-indentation: 2; indent-tabs-mode: nil; sh-basic-offset: 2; -*- | ||||||
|  | # vim: ft=zsh sw=2 ts=2 et | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | 
 | ||||||
|  | # Newline after semicolon isn't unknown-token | ||||||
|  | BUFFER=$':;\n:' | ||||||
|  | 
 | ||||||
|  | expected_region_highlight=( | ||||||
|  |   '1 1 builtin' # : | ||||||
|  |   '2 2 commandseparator' # ; | ||||||
|  |   '3 3 commandseparator' # \n | ||||||
|  |   '4 4 builtin' # : | ||||||
|  | ) | ||||||
|  | @ -0,0 +1,36 @@ | ||||||
|  | #!/usr/bin/env zsh | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # Copyright (c) 2018 zsh-syntax-highlighting contributors | ||||||
|  | # All rights reserved. | ||||||
|  | # | ||||||
|  | # Redistribution and use in source and binary forms, with or without modification, are permitted | ||||||
|  | # provided that the following conditions are met: | ||||||
|  | # | ||||||
|  | #  * Redistributions of source code must retain the above copyright notice, this list of conditions | ||||||
|  | #    and the following disclaimer. | ||||||
|  | #  * Redistributions in binary form must reproduce the above copyright notice, this list of | ||||||
|  | #    conditions and the following disclaimer in the documentation and/or other materials provided | ||||||
|  | #    with the distribution. | ||||||
|  | #  * Neither the name of the zsh-syntax-highlighting contributors nor the names of its contributors | ||||||
|  | #    may be used to endorse or promote products derived from this software without specific prior | ||||||
|  | #    written permission. | ||||||
|  | # | ||||||
|  | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR | ||||||
|  | # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND | ||||||
|  | # FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR | ||||||
|  | # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | ||||||
|  | # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | ||||||
|  | # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER | ||||||
|  | # IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT | ||||||
|  | # OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | # -*- mode: zsh; sh-indentation: 2; indent-tabs-mode: nil; sh-basic-offset: 2; -*- | ||||||
|  | # vim: ft=zsh sw=2 ts=2 et | ||||||
|  | # ------------------------------------------------------------------------------------------------- | ||||||
|  | 
 | ||||||
|  | BUFFER=$'\\\n; ls' | ||||||
|  | 
 | ||||||
|  | expected_region_highlight=( | ||||||
|  |   '3 3 unknown-token' # ; | ||||||
|  |   '5 6 command' # ls | ||||||
|  | ) | ||||||
Some files were not shown because too many files have changed in this diff Show More
		Loading…
	
		Reference in New Issue