This is a fork from hchbaw/zce.zsh.
Tanks to help of claude-3.5-sonnet in cursor, the target character is now matched smartly for case. In the mode, the motion argument "a" matches both "a" and "A", and "A" matches "A" only. I prefer smart-case matching, because the matched characters are not so many in the command line typically.
Author: Takeshi Banse <takebi@laafc.net>
License: BSD-3
Thank you very much, Kim Silkebækken and winterTTr! I want to use the EasyMotion/ace-jump-mode in zsh.
Please source it and bind the function to your favorite key.
% . zce.zsh % bindkey "^Xz" zce
:zce:* keys-
Keys to be used for target characters.
(default: the result ofsetopt braceccl; ${(j..)$(print {a-z} {A-Z})}) :zce:* fg-
A highlight sepc for target characters.
(default:'fg=196,bold') :zce:* bg-
A highlight spec for BUFFER during zce is in effect.
(default:'fg=black,bold') :zce:* prompt-char-
A prompt string for querying the searching character.
(default:'%{\e[1;32m%}Search for character:%{\e[0m%} ') :zce:* prompt-key-
A prompt string for querying the target character.
(default:'%{\e[1;32m%}Target key:%{\e[0m%} ')
Optionally you can use the zcompiled file with the autoloading for a little faster loading on every shell start up, if you zcompile the necessary functions.
zcompile zce.zsh to ~/.zsh/zfunc/zce:
% Z=~/c/experiment/zsh/zce.zsh/zce.zsh; ($SHELL -c ". $Z && zce-zcompile $Z ~/.zsh/zfunc") ** zcompiling zce in ~/.zsh/zfunc for a little faster startups... + mkdir -p ~/.zsh/zfunc * writing code ~/.zsh/zfunc/zce * re-compiling ~/.zsh/zfunc/zce.zwc: succeeded ** All done. ** Please update your .zshrc to load the zcompiled file like this, -- >8 -- ## zce.zsh stuff. # source ~/c/experiment/zsh/zce.zsh/zce.zsh autoload -w ~/.zsh/zfunc/zce; zle -N zce # bindkey "^Xz" zce -- 8< --
Please copy and paste the contents between -- >8 -- and -- 8< -- into your ~/.zshrc