您如何在 VIM 中使用 FASD 和 FZF 进行外部导航?

How you are using outside navigation in VIM with FASD and FZF?

在使用 FASD 或 fzf 和 VIM 进行文件导航时,您是否找到任何舒适的工作流程?我在 VIM 中打开最近的文件时遇到问题,因为 FASD 没有捕捉到它们。我正在寻找一些提示。

FASD 工作流程:

将以下行放入 ~/.zshrc

alias v='f -t -e vim -b viminfo

然后你可以在终端输入

v myP<TAB>

使其制表符完成 vim

最近的文件

v myProject

FZF 工作流程:

将以下脚本放入 ~/.zshrc:

ctrlp() {
  local selected
  if selected=$(find . -type f | grep -v .git | grep -v node_modules | fzf -q "$LBUFFER"); then
    LBUFFER=$selected
  fi  
  zle redisplay
}

# option-g to find files and put the result in command
zle -N ctrlp
bindkey "\eg" ctrlp

使用 <option>-g<alt>-g for windows)打开 fzf 和 select 文件。 selected 文件路径将放在终端中。然后在路径前加上vim,在vim中打开。更多示例可在 fzf wiki.

中找到

因为fasd不支持neovim, I made a similar tool for it. Please check it out: https://github.com/haifengkao/nfasd

在终端中导航 ZSH 的极快方法是 FASDFZF 的组合, VIMCD。 将脚本添加到 ~/.zshrc

fasd-fzf-cd-vi() {
   item="$(fasd -Rl "" | fzf -1 -0 --no-sort +m)"
  if [[ -d ${item} ]]; then
    cd "${item}" || return 1
  elif [[ -f ${item} ]]; then
    (vi "${item}" < /dev/tty) || return 1
  else
    return 1
  fi
   zle accept-line
}
zle -N fasd-fzf-cd-vi
bindkey '^e' fasd-fzf-cd-vi

键盘快捷键'Ctrl+E'改为运行吧,可以在bindkey '^e'中更改。 它搜索 (fzf) 最近的 (fasd) files/folders 并根据文件类型导航到目录 ( cd) 或用文本编辑器打开文件 (vim).

另请查看其他有用的提示和技巧,以便在终端内快速导航 https://github.com/webdev4422/.dotfiles