在 Prezto 中获取 Oh-My-ZSH 历史行为
Get Oh-My-ZSH history behaviour in Prezto
在 Oh My Zsh 中,默认情况下,历史功能匹配前缀。
键入 ls
并点击向上箭头将滚动浏览 以 您键入的内容开头的命令:匹配 ls
和 ls -l
但 不是 echo ls
.
在 Prezto 中,默认情况下,历史功能匹配字符串中的任何位置。
键入 ls
并点击向上箭头将滚动浏览 包含 您键入内容的命令:匹配 ls
和 ls -l
和 也 echo ls
.
有没有办法将 Prezto 设置为仅匹配前缀,就像 Oh My Zsh 默认行为一样?
(根据 history-substring-search
文档,设置 HISTORY_SUBSTRING_SEARCH_PREFIXED=1
将执行此操作,但我在 .zshrc
中设置了此设置,它仍然匹配字符串中的任何位置。)
我现在发现可以使用 built-in zsh 功能,而不是使用 Prezto 附带的任何插件。
将以下内容添加到 ~/.zshrc
的末尾:
autoload -U up-line-or-beginning-search
autoload -U down-line-or-beginning-search
zle -N up-line-or-beginning-search
zle -N down-line-or-beginning-search
bindkey "^[[A" up-line-or-beginning-search
bindkey "^[[B" down-line-or-beginning-search
在 Oh My Zsh 中,默认情况下,历史功能匹配前缀。
键入 ls
并点击向上箭头将滚动浏览 以 您键入的内容开头的命令:匹配 ls
和 ls -l
但 不是 echo ls
.
在 Prezto 中,默认情况下,历史功能匹配字符串中的任何位置。
键入 ls
并点击向上箭头将滚动浏览 包含 您键入内容的命令:匹配 ls
和 ls -l
和 也 echo ls
.
有没有办法将 Prezto 设置为仅匹配前缀,就像 Oh My Zsh 默认行为一样?
(根据 history-substring-search
文档,设置 HISTORY_SUBSTRING_SEARCH_PREFIXED=1
将执行此操作,但我在 .zshrc
中设置了此设置,它仍然匹配字符串中的任何位置。)
我现在发现可以使用 built-in zsh 功能,而不是使用 Prezto 附带的任何插件。
将以下内容添加到 ~/.zshrc
的末尾:
autoload -U up-line-or-beginning-search
autoload -U down-line-or-beginning-search
zle -N up-line-or-beginning-search
zle -N down-line-or-beginning-search
bindkey "^[[A" up-line-or-beginning-search
bindkey "^[[B" down-line-or-beginning-search