aboutsummaryrefslogtreecommitdiff
path: root/.config/shell/zsh-fast-syntax-highlighting/:chroma/-fpath_peq.ch
diff options
context:
space:
mode:
authorkj-sh6042025-07-16 22:10:52 -0400
committerkj-sh6042025-07-16 22:10:52 -0400
commit1e204d36c1fab9884f65618ccca019d8cd5f9386 (patch)
tree962ebadaa02a15d2f8441b290daf330bfbd48417 /.config/shell/zsh-fast-syntax-highlighting/:chroma/-fpath_peq.ch
parent7c9e54b5366ada655baf8c2b61914182840d6bb6 (diff)
refactor: update `zsh-fast-syntax-highlighting` plugin
Diffstat (limited to '.config/shell/zsh-fast-syntax-highlighting/:chroma/-fpath_peq.ch')
-rw-r--r--.config/shell/zsh-fast-syntax-highlighting/:chroma/-fpath_peq.ch61
1 files changed, 0 insertions, 61 deletions
diff --git a/.config/shell/zsh-fast-syntax-highlighting/:chroma/-fpath_peq.ch b/.config/shell/zsh-fast-syntax-highlighting/:chroma/-fpath_peq.ch
deleted file mode 100644
index 072cee3..0000000
--- a/.config/shell/zsh-fast-syntax-highlighting/:chroma/-fpath_peq.ch
+++ /dev/null
@@ -1,61 +0,0 @@
-# -*- mode: sh; sh-indentation: 4; indent-tabs-mode: nil; sh-basic-offset: 4; -*-
-# Copyright (c) 2018 Sebastian Gniazdowski
-#
-# This chroma does a narrow, obscure but prestigious parsing of fpath+=( elem1
-# elem2 ... ) construct to provide *the* *future* contents of $fpath to
-# -autoload.ch, so that it can detect functions in those provided directories
-# `elem1', `elem2', etc. and highlight the functions with `correct-subtle'
-# instead of `incorrect-subtle'. Basically all thit is for command-lines like:
-#
-# % fpath+=( `pwd` ); autoload my-fun-from-PWD
-
-# Keep chroma-takever state meaning: until ; or similar (see $__arg_type below)
-# The 8192 sum takes care that the next token will be routed to this chroma
-(( next_word = 2 | 8192 ))
-
-local __first_call="$1" __wrd="$2" __start_pos="$3" __end_pos="$4"
-local -a deserialized
-
-(( __first_call )) && {
- case $__wrd in
- (fpath=\()
- FAST_HIGHLIGHT[fpath_peq_mode]=1
- ;;
- (fpath+=\()
- FAST_HIGHLIGHT[fpath_peq_mode]=2
- ;;
- (FPATH=)
- FAST_HIGHLIGHT[fpath_peq_mode]=4
- ;;
- (FPATH+=)
- FAST_HIGHLIGHT[fpath_peq_mode]=8
- ;;
- esac
- if (( FAST_HIGHLIGHT[fpath_peq_mode] & 5 )); then
- FAST_HIGHLIGHT[chroma-fpath_peq-elements]="! ${FAST_HIGHLIGHT[chroma-fpath_peq-elements]}"
- fi
- return 1
-} || {
- # Following call, i.e. not the first one
-
- # Check if chroma should end – test if token is of type
- # "starts new command", if so pass-through – chroma ends
- [[ "$__arg_type" = 3 ]] && return 2
-
- [[ "$__wrd" != ")" ]] && {
- deserialized=( "${(Q@)${(z@)FAST_HIGHLIGHT[chroma-fpath_peq-elements]}}" )
- [[ -z "${deserialized[1]}" && ${#deserialized} -eq 1 ]] && deserialized=()
- # Support ~ and $VAR, for [a-zA-Z_][a-ZA-Z0-9_]# characters in "VAR"
- deserialized+=( "${(Q)${${(j: :)__wrd}//(#b)((\$([0-9]##|[a-zA-Z_][a-zA-Z0-9_]#))|(\$\{([0-9]##|[a-zA-Z_][a-zA-Z0-9_]#)\})|(#s)~)/${(P)${${${${match[1]##\$\{(#c0,1)}%\}}:#\~}:-HOME}}}}" )
- FAST_HIGHLIGHT[chroma-fpath_peq-elements]="${(j: :)${(q@)deserialized}}"
- }
-
- return 1
-}
-
-(( this_word = next_word ))
-_start_pos=$_end_pos
-
-return 0
-
-# vim:ft=zsh:et:sw=4