我在vim中设置了fzf,几乎没有任何定制:
" fzf and ripgrep settings
set rtp+=/usr/local/opt/fzf
let g:fzf_action = {
\ 'ctrl-t': 'tab split',
\ 'ctrl-i': 'split',
\ 'ctrl-s': 'vsplit'
\ }
在我的.bash_profile
中,我将环境变量FZF_DEFAULT_COMMAND
设置为show hidden,但忽略node_modules
和.git
:
export FZF_DEFAULT_COMMAND='rg --files --follow --no-ignore-vcs --hidden -g "!{node_modules/*,.git/*}"'
但是,当我在vim中使用:Files
函数时,它仍然会搜索我想要忽略的文件夹。
7条答案
按热度按时间i34xakig1#
你试过
:GFiles
命令吗?它是排除. gitignore中任何内容的最佳FZF命令之一。
就我个人而言,我喜欢将其用作默认值。
ctrmrzij2#
您可以通过使用自定义FZF_DEFAULT_COMMAND来忽略node_modules(以及您想要忽略的任何其他文件夹)。我使用这样的东西:
(将其放入Vimrc)
let $FZF_DEFAULT_COMMAND='find . \( -name node_modules -o -name .git \) -prune -o -print'
zbdgwd5y3#
我真傻,我忘了
source ~/.bash_profile
wgmfuz8q4#
我想我们是在谈论“junegunn/fzf”。
我已经成功地使fzf和rg为我的需要工作。(我是开发人员)
这是我的vim 8.2配置:
在此配置中,最后一行
--exact
中删除所有模糊搜索:开发人员我更喜欢exatc metch不包括文件夹和文件我不喜欢我使用
-g
选项:rg -g '!design/' -g '!dist/' -g '!pnpm-lock.yaml' -g '!.git' -g '!node_modules'
!
要排除我排除 design,dist 文件夹从我的搜索基本路径(当前目录)
并排除il file pnpm-lock.yaml anywhare
和excluse .git 和 node_modules anywhare(文件或文件夹)
希望能帮上忙,问候,列奥纳多
oogrdqng5#
可以使用fzf.vim
它允许您使用默认的$FZF_DEFAULT_COMMAND(如果已定义)。
如果您使用vim-plug管理插件,请安装fzf.vim:
pgx2nnw86#
如果导致:
这是因为它是由
rg
错误引起的,或者您没有安装它,因此您只需执行如果您使用脚本进行安装,则可以用途:
holgip5t7#
添加到shell配置文件中:
就是这样