Zsh 从ZLE脚本向终端发送模拟按键

Zsh 从ZLE脚本向终端发送模拟按键,zsh,zsh-zle,Zsh,Zsh Zle,是否可以使用zle功能模拟按键 test (){ BUFFER="sudo $BUFFER" CURSOR=$#BUFFER <??send right-arrow keypress??> } zle -N test bindkey "^f" test test(){ BUFFER=“sudo$BUFFER” 游标=$#缓冲区 } zle-N试验 bindkey“^f”测试 我觉得这将是我的视觉irk的一个解决方案,当我玩缓冲区和光标位置时,我将剩余光标放在光标的原始位置上。我认

是否可以使用zle功能模拟按键

test (){
BUFFER="sudo $BUFFER"
CURSOR=$#BUFFER
<??send right-arrow keypress??>
}
zle -N test
bindkey "^f" test
test(){
BUFFER=“sudo$BUFFER”
游标=$#缓冲区
}
zle-N试验
bindkey“^f”测试
我觉得这将是我的视觉irk的一个解决方案,当我玩缓冲区和光标位置时,我将剩余光标放在光标的原始位置上。我认为,如果我能够在测试功能中向终端发送右箭头键,它就会删除它


这适用于xdotool软件包

sudo_ (){
    BUFFER="sudo $BUFFER"
    CURSOR=$#BUFFER
    xdotool key 0xff53
}
zle -N sudo_
bindkey "^f" sudo_

在我看来,这是您的终端模拟器的一个小故障。我刚刚用
zsh
版本5.0.6和5.2在三种不同的终端模拟器(
urxvt
9.22、
xterm
324和
termite
v11)上测试了您的代码,无论是否使用
zsh语法高亮显示
。没有星座导致你的截图显示的人造物。您正在使用哪个终端仿真器?您的
zsh语法突出显示是否是最新的?如果您在普通zsh会话中尝试,问题是否仍然存在?即没有配置文件;您可以使用
zsh-f
@Adaephon启动这样的会话,正如我通过测试发现的,这更多是框架的一个小故障。。我也在几个终端上进行了测试,在我测试的所有终端上都发生了。但是切换到oh my zsh解决了这个问题,但prezto和zsh zim都有。我在所有设备上使用默认设置。