[vim]defx.nvim 文件树插件

defx.nvim是一款用于Neovim/Vim的文件浏览插件,它替代了vimfiler。由于其异步特性,它理论上比nerdtree更快。安装需要确保pynvim已安装。要自定义配置和快捷键,用户可以参考帮助文档,并通过添加特定代码在左侧栏显示。此外,可以安装defx-icons和defx-git来支持图标和Git集成。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

defx.nvim

defx.nvim is a dark powered plugin for Neovim/Vim to browse files. It replaces the deprecated vimfiler plugin.

nerdtree, vim 文件导航界经典工具.

defx.nvim 乃后起之秀,因为其异步特性,理论上较 nerdtree 更快(浏览特大型项目才会感知到).

安装

对于 neovim + vim-plug, 仅需添加如下一行:

Plug 'Shougo/defx.nvim', { 'do': ':UpdateRemotePlugins' }

defx.nvim 外部依赖 python, 确保 pynvim 有装.

$ pip3 install --user pynvim

使用

:Defx

然而, defx.nvim 强烈依赖自定义,默认状态非常简陋.
可根据 :help defx 帮助文档进行配置.

如何在左边栏显示

~/.config/nvim/init.vim 中添加:

call defx#custom#option('_', {
            \ 'winwidth': 30,
            \ 'split': 'vertical',
            \ 'direction': 'topleft',
            \ 'show_ignored_files': 0,
            \ 'buffer_name': '',
            \ 'toggle': 1,
            \ 'resume': 1
            \ })

自定义快捷键

执行 :help defx, 在帮助文档中查找 defx_my_settings, 其中有自定义的快捷键设置:

autocmd FileType defx call s:defx_my_settings()
function! s:defx_my_settings() abort
    " Define mappings
    setl nonu                            " 勿在 defx 栏显示行号
    nnoremap <silent><buffer><expr> <CR> " 点击 enter 键打开
                \ defx#is_directory() ?
                \ defx#do_action('open_or_close_tree') :
                \ defx#do_action('drop',)
    nnoremap <silent><buffer><expr> c    " 复制
                \ defx#do_action('copy')
    nnoremap <silent><buffer><expr> K    " 新建文件夾
                \ defx#do_action('new_directory')
    nnoremap <silent><buffer><expr> N    " 新建文件
                \ defx#do_action('new_file')
endfunction

图标支持

安装 defx-icons.

defx-icons 依赖 nerd-fonts.
在这里插入图片描述

安装 nerd-fonts 之后,在 init.vim 中添加:

Plug 'kristijanhusak/defx-icons'

使用方法:

:Defx -columns=icons:indent:filename:type

在这里插入图片描述

可将其添加为快捷键:

nmap <silent> <leader>e :Defx -columns=indent:icons:filename:type<cr>

可再安裝 defx-git:

Plug 'kristijanhusak/defx-git'

修改快捷键为:

nmap <silent> <leader>e :Defx -columns=indent:icons:git:filename:type<cr>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值