Roman Perepelitsa
1b8f49ac5b
Perf: backport recent changes to older zsh versions
4 jaren geleden
Roman Perepelitsa
f063829450
Perf: speed up _zsh_highlight
4 jaren geleden
Daniel Shahaf
3944a44ffe
driver: Fix a version number check to work around a bug in the zsh version whereunder the check should return false.
The bug is as follows:
% zsh-5.8 -fc 'autoload is-at-least; is-at-least 5.8.0.2 && echo yes || echo no'
yes
% zsh-5.8 -fc 'autoload is-at-least; is-at-least 5.8.0.2 $ZSH_VERSION && echo yes || echo no'
yes
This commit deploys the following workaround:
% zsh-5.8 -fc 'autoload is-at-least; is-at-least 5.8.0.2 $ZSH_VERSION.0.0 && echo yes || echo no'
no
Fixes #756 .
4 jaren geleden
Daniel Shahaf
cb33cc0081
On the feature/redrawhook branch, change the detection of the 'memo=' feature to avoid a catch-22.
4 jaren geleden
Daniel Shahaf
d62baa50f4
Revert "driver: Move the initialization of $zsh_highlight__memo_feature out of the entry point function."
This reverts commit 8a1bd7c8b6
.
The detection only works correctly from a widget function, so the change
was wrong: it caused zsh_highlight__memo_feature to be set to false
every time.
4 jaren geleden
Daniel Shahaf
59cb9a560d
driver: Make the redrawhook codepath conditional upon the memo= feature.
Fixes #579 (zsh-autosuggestions interoperability).
Fixes #735 (ditto).
See https://github.com/zsh-users/zsh-syntax-highlighting/issues/579#issuecomment-650126055
See https://github.com/zsh-users/zsh-autosuggestions/issues/529#issuecomment-650481227
4 jaren geleden
Daniel Shahaf
8a1bd7c8b6
driver: Move the initialization of $zsh_highlight__memo_feature out of the entry point function.
This is needed for feature/redrawhook to be able to use it.
4 jaren geleden
Daniel Shahaf
810c2dcede
Use the new, unreleased zsh 'memo=' feature to remove only our own entries from $region_highlight.
Fixes #418 (interoperability issue with other plugins).
4 jaren geleden
Daniel Shahaf
075c852924
driver: Stop re-declaring $region_highlight. It's unneeded.
4 jaren geleden
Daniel Shahaf
b08d508cd8
driver: Fix a bug that prevented subsequent, third-party zle-line-pre-redraw hooks from running.
Without this patch, `_zsh_highlight` was invoked by add-zle-hook-widget
with `$?` being non-zero (see add-zle-hook-widget:48-52). Since
`_zsh_highlight` preserves `$?` from its caller's point of view,
add-zle-hook-widget saw a non-zero exit code from `_zsh_highlight` and
did not run any the remaining zle-line-pre-redraw hooks.
See https://github.com/zsh-users/zsh-syntax-highlighting/issues/579#issuecomment-623576907 .
4 jaren geleden
Daniel Shahaf
ccb1da4ae8
Bump copyright years.
4 jaren geleden
Daniel Shahaf
96eb2e31a1
driver: Fix "_zsh_highlight:3: read-only variable: ret" warnings when POSIX_BUILTINS is set.
Fixes #719 .
Cf. #688 .
4 jaren geleden
Daniel Shahaf
f563780236
driver: Simplify initialization of $zsyh_user_options in the fallback codepath.
4 jaren geleden
Daniel Shahaf
b8c93afd34
driver: Make sure we don't change the return value in a called function.
4 jaren geleden
Daniel Shahaf
5d139fcd94
Fix typos in comments.
4 jaren geleden
Austin Traver
b00be5f741
driver: Be resilient to KSH_ARRAYS being set in the calling scope
The «emulate» call isn't sufficient, since these lines are parsed before
it takes effect.
Fixes #689 (née #622 ).
See also #688 for preventing these gymnastics from being needed in the
first place.
See also https://github.com/junegunn/fzf/pull/1924 for an inter-plugin
interaction that this probably fixes.
4 jaren geleden
Daniel Shahaf
4a043b4d15
noop: Whitespace changes only.
./.editorconfig is already set correctly.
4 jaren geleden
Oliver Kiddle
be3882aeb0
driver: adjust region end for vi command mode
5 jaren geleden
Matthew Martin
b55832c5f8
main: Drop X_ from X_ZSH_HIGHLIGHT_DIRS_BLACKLIST
5 jaren geleden
Matthew Martin
972ad197c1
driver: Disable BASH_REMATCH
Fixes #612 .
5 jaren geleden
dana
55f846c673
driver: Avoid warn_create_global warnings
5 jaren geleden
Matthew Martin
8d4c6355e6
driver: Do not pass widget arguments to _zsh_highlight
This avoids a bug in zsh 4.3.12 and prior which affects passing
arguments to an anonymous function.
6 jaren geleden
Daniel Shahaf
56ba7f082d
driver: Clarify comment. No functional change.
6 jaren geleden
Matthew Martin
2cbb3fb24e
driver: Allow for -U in autoloaded function definition
6 jaren geleden
Matthew Martin
f265ef0b9a
driver: Use idiomatic module check
6 jaren geleden
Daniel Shahaf
d0fb0df4ff
driver: Make the shadowing $WIDGET read only.
6 jaren geleden
Daniel Shahaf
f665eec230
driver: Avoid a fork in the common case.
Found-by: Matthew Martin
6 jaren geleden
Daniel Shahaf
b5249f17ab
driver: Rewrite without a state variable
Suggested-by: m0viefreak
8 jaren geleden
Daniel Shahaf
d2594c1157
noop: Make a whitespace-only change to reduce noise in the next commit.
8 jaren geleden
Daniel Shahaf
d4ab7e51d2
redo _zsh_highlight__function_callable_p
8 jaren geleden
Daniel Shahaf
38477f2a3d
driver: Use a different way of checking whether add-zle-hook-widget is present.
Based on code by Bart Schaefer (reference within).
Tested with zsh 5.0.7-5 (debian package) and with 5b4cbcc842c6 (39158,
5.3-to-be of today).
8 jaren geleden
Daniel Shahaf
30c6e70394
driver: Pass zle-line-finish arguments on to _zsh_highlight.
(Currently a noop)
8 jaren geleden
Daniel Shahaf
74a27de70d
driver: Hook zle-line-finish.
Compare issue #288 .
8 jaren geleden
Daniel Shahaf
85e62a8171
driver: Reimplement using 'add-zle-hook-widget zle-line-pre-redraw'
This feature will be released in zsh 5.3. Older zsh's will use the existing
codepath.
8 jaren geleden
Daniel Shahaf
aed99f6a3e
wrappers: Reimplement using Mikachu's zle-line-pre-redraw hook (workers/36650).
9 jaren geleden
Julien Nicoulaud
3a7ddcda0b
#535 : locally enable BARE_GLOB_QUAL option when loading highlighters
6 jaren geleden
Adam Johnson
42d396d819
driver: Exclude yank-pop again ( #183 ).
6 jaren geleden
Bengt Brodersen
db6cac391b
main: Add glob qualifier to work around zsh/macOS bug
zsh/macOS bug: http://www.zsh.org/cgi-bin/mla/redirect?WORKERNUMBER=42891
6 jaren geleden
Matthew Martin
2c0c75a8ee
driver, main: Add -z to autoload calls
6 jaren geleden
Matthew Martin
ff85c7e01b
driver: Do not highlight newlines or past BUFFER for zle standout
6 jaren geleden
Matthew Martin
84f0507cf6
driver: Replace eval with ${(P)
6 jaren geleden
Matthew Martin
b07ada1255
driver: Run under emulate -L zsh and add zsyh_user_options
6 jaren geleden
Daniel Shahaf
e4352f98bb
driver: Revert previous commit, unbreaking the build on zsh<5.0.8.
6 jaren geleden
Daniel Shahaf
9d9e9662cf
driver: Correctly escape assoc key pattern
6 jaren geleden
Matthew Martin
a9ce931439
Default possibly unset variables to empty
6 jaren geleden
Daniel Shahaf
a2a899b41b
driver: _zsh_highlight_bind_widgets: Be resilient to NO_UNSET being set in the calling scope.
Fixes #449 .
6 jaren geleden
m0viefreak
3c43da5ffe
driver: Improve comment about ^r pattern match bug
The bug is not specific to 5.3.1.
7 jaren geleden
m0viefreak
f2ba507bbc
driver: Adjust zsh version for probing for pattern match bug
7 jaren geleden
jsoizo
ad522a0914
driver: Fix printing error message to file when cannot resolve highlighters directory location
Fixes #426 .
Review-by: Matthew Martin, me
7 jaren geleden
Daniel Shahaf
be083d7f37
driver: Improve «unhandled ZLE widget 'foo'» error message.
Fixes #409 .
7 jaren geleden