4

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

4

2 回答 2

2

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对于 windows) 打开fzf并选择一个文件。选定的文件路径将放在终端中。然后vim在打开它的路径前添加vim. 更多示例可以在fzf wiki找到。

由于fasd不支持neovim,所以我为它制作了一个类似的工具。请查看:https ://github.com/haifengkao/nfasd

于 2016-07-13T00:54:09.273 回答
0

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

fasd-fzf-cd-vi() {
   item="$(fasd -Rl "$1" | 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 ) 文件/文件夹,并根据文件类型导航到目录 ( cd ) 或使用文本编辑器 ( vim ) 打开文件。

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

于 2021-10-23T07:01:25.877 回答