Answers:
有一个插件:zsh-snippets。与zplugin等插件管理器一起使用。它绑定到Meta-x,测试它 - 工作。这是完整的zplugin报告:
Plugin report for willghatch/zsh-snippets
-----------------------------------------
Source snippets.plugin.zsh
Zle -N snippet-expand
Bindkey ^[x snippet-expand
Zle -N run-help-list-snippets
Functions created:
help-list-snippets run-help-list-snippets
snippet-add snippet-expand
Variables added or redefined:
snippets [ "" -> association ]
您可以尝试使用全局别名。与常规别名相比,无论它们出现在命令行中的哪个位置,它们都会被扩展,而不仅仅是在命令位置。
alias -g :tmux='"tmux a || tmux"'
有了它,:tmux
将扩展到(替换为)"tmux a || tmux"
。请注意,您需要引用两次,一次用于定义,一次用于最终命令行。所以,如果你跑
ssh ssh_alias -t :tmux
zsh
将取代:tmux
并执行
ssh ssh_alias -t "tmux a || tmux"
通常在按下时不显示扩展Tab- 就像使用常规别名一样。话虽这么说,_expand_alias
小部件可用于扩展别名。您可以直接调用它(在emacs模式下它绑定到Ctrl+ x, a.在vi模式下没有默认绑定,但您可以从vicmd模式运行它:_expand_alias
)或将其添加到completer
zstyle。
Tab
。
:
。