Command line 如何解决fzf的CTRL-t键绑定问题?

Command line 如何解决fzf的CTRL-t键绑定问题?,command-line,terminal,homebrew,fzf,Command Line,Terminal,Homebrew,Fzf,我最近发现这个命令行工具叫做。我按照说明安装了它,除了CTRL-T键绑定之外,它确实可以工作。尽管我按照他们的说明安装了带有键绑定的特殊东西,并且我还尝试安装从git repo下载的fzf,而不是通过自制,但CTRL-T键绑定所做的一切仍然是交换最后两个字符 我找到了关于这一点的讨论,但没有一个答案对我有效 编辑:你可以在第一个视频中看到我想要实现的目标。 编辑2:我正在使用MacOs的终端。如果从存储库克隆fzf,它包含一个名为fzf/shell/key bindings.zsh的文件,该文件

我最近发现这个命令行工具叫做。我按照说明安装了它,除了CTRL-T键绑定之外,它确实可以工作。尽管我按照他们的说明安装了带有键绑定的特殊东西,并且我还尝试安装从git repo下载的fzf,而不是通过自制,但CTRL-T键绑定所做的一切仍然是交换最后两个字符

我找到了关于这一点的讨论,但没有一个答案对我有效

编辑:你可以在第一个视频中看到我想要实现的目标。
编辑2:我正在使用MacOs的终端。

如果从存储库克隆fzf,它包含一个名为
fzf/shell/key bindings.zsh的文件,该文件引用

fzf-file-widget() {
  LBUFFER="${LBUFFER}${__fsel}"
  local ret=$?
  zle redisplay
  typeset -f zle-line-init >/dev/null && zle-line-init
  return $ret
}
zle -N fzf-file-widget
bindkey "^T" fzf-file-widget
Control-T键绑定。这通常由您的
.zshrc

[ -f ~/.fzf.zsh ] && source ~/.fzf.zsh
应在
.fzf.zsh
中包含其引用:

source "$HOME/.fzf/shell/key-bindings.zsh"

如果您的键绑定不工作,那么您的键绑定可能会被您的zshrc覆盖,或者可能不会被您的zshrc调用。

我成功地使CTRL-t键组合按需要工作。我错过了一步

在用
/usr/local/opt/fzf/install
安装了有用的键绑定和模糊补全后,我用
[-f~/.fzf.bash]&&source~/.fzf.bash
手动更新了
fzf.bash
。重新启动终端后,它现在可以工作了


编辑:另外,这一行需要添加到您的.bash_配置文件或.bashrc:
source~/.fzf.bash
我注意到当我使用
set-o vi
启用“vi模式”时,CTRL-T不起作用(在bash中)。在我的情况下,
CTRL+T
分割当前窗口,
fzf
tmux
窗格中运行,这就是你想要的吗?@nbari我想要实现的是第一个嵌入视频中显示的内容:我想你的ctrl-t映射有点过火了。键入
:调用fzf#vim#maps('n')
并搜索
'
。你看到了什么?@sudavid4不起作用,输入mac终端的那一行给了我这个错误:-bash:意外标记附近的语法错误`('不在vim的终端中!您好,我做了您在这里概述的很多事情,但仍然无法使密钥绑定工作。我使用的是zsh;使用自制软件安装并运行
/usr/local/opt/fzf/install
,这促使我安装密钥绑定并将这些行添加到我的.zshrc中。但是**选项卡可以工作。您能提供一些信息吗故障排除帮助?