V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
yazoox
V2EX  ›  Vim

有使用 vim 写代码的兄弟姐妹么?你们都安装了哪些插件?

  •  
  •   yazoox · 340 天前 · 4753 次点击
    这是一个创建于 340 天前的主题,其中的信息可能已经有所发展或是发生改变。

    先祝大家新年快乐!

    如题!

    有直接使用 vim coding 的兄弟么?( vim/neovim ) 你们都使用了哪些插件?

    比如, 插件管理器,vundle or vim-plug ? 文件浏览,nerdtree ? 状态栏,airline ? 或者,什么,文件查找搜索,fzf ? CtrlP? 又或者什么代码提示 Coc 还是 LSP ?

    等等……

    分享一下。

    46 条回复    2021-02-15 16:15:08 +08:00
    darksword21
        1
    darksword21  
       340 天前   ❤️ 1
    有用 emacs,你重新发个帖子我告诉你🐕️
    PeterD
        2
    PeterD  
       340 天前
    rim99
        3
    rim99  
       340 天前
    加了插件不卡吗?我以前加过很多插件,用了嫌卡。后来整理了一份无插件的 vim 配置。做个简单的编辑器,也挺好的
    yazoox
        4
    yazoox  
    OP
       340 天前
    @PeterD
    厉害!第一次知道这个,看看先。谢了
    gitopen
        5
    gitopen  
       340 天前
    有,码 Python 的时候只用 nvim,进行数据处理可视化的工作
    so1n
        6
    so1n  
       340 天前 via Android
    一般是 ide+vim
    IgniteWhite
        7
    IgniteWhite  
       340 天前 via iPhone   ❤️ 1
    可以点我头像看主页 github 里面我的 dotfiles,我在这里粘贴一下插件部分:

    Plug 'tpope/vim-fugitive'
    Plug 'vim-airline/vim-airline'
    Plug 'vim-airline/vim-airline-themes'
    Plug 'nathanaelkane/vim-indent-guides'
    Plug 'morhetz/gruvbox'
    Plug 'scrooloose/nerdtree'
    Plug 'Xuyuanp/nerdtree-git-plugin'
    Plug 'edkolev/tmuxline.vim' " See tmuxline.vim settings section
    Plug 'lervag/vimtex'
    Plug 'godlygeek/tabular' " tabular plugin must come before vim-markdown
    Plug 'plasticboy/vim-markdown'
    Plug 'JamshedVesuna/vim-markdown-preview'
    Plug 'neoclide/coc.nvim'
    Plug 'SirVer/ultisnips'
    Plug 'honza/vim-snippets'
    Plug 'Yggdroot/LeaderF', { 'do': ':LeaderfInstallCExtension' }
    Plug 'psliwka/vim-smoothie'
    Plug 'skywind3000/Leaderf-snippet'
    radioactivezx
        8
    radioactivezx  
       340 天前
    最近刚好整理了一下 vim plugin 另外学习了一下 vimscript,把我之前用的插件过时的不更新的删除,在 fzf.vim 基础上改了一两个函数自己用。

    地址在这里: https://github.com/xzhangxa/dotfiles/blob/master/vimrc

    - 里面虽然有 gruvbox colorscheme 插件但是默认没有设它,因为要自动化 vim-plug 装插件引用一个还没装的会有 error ;
    - 用 YouCompleteMe 做 LSP client,别的看起来都很折腾,相对来说 YouCompleteMe 最不折腾就用这个了,想等 neovim 原生的 LSP client 出来看怎么样;
    - FZF 和 fzf.vim 大量使用,FZF 用 vim plugin 管理自动化脚本直接装给 zsh 。fzf.vim 非常有用,现在我用它来管理 buffers/windows/git history/search (ripgrep);
    - 别的一些很大众的插件也都装了,文件里能看到就不挨个说了。

    总得来说这个插件数量很少所以没有感觉有延迟或者什么问题,虽然现在在用 neovim 但是还是用这个 vimrc 并保持 vim 的设置。同级目录里放了其它一些配置文件和自动化 shell 环境安装脚本( for Debian, Mac),vimrc 里一些依赖在安装脚本里能找到,就不详细说了。
    jinqzzz
        9
    jinqzzz  
       340 天前
    https://github.com/peeweep/dotfiles/blob/master/nvim/.config/nvim/init.vim

    call plug#begin('~/.vim/plugged')
    " git
    Plug 'tpope/vim-fugitive'
    " nerdtree
    Plug 'preservim/nerdtree'
    Plug 'Xuyuanp/nerdtree-git-plugin'
    " clang-foramt
    " Plug 'rhysd/vim-clang-format'
    " colorscheme
    Plug 'vim-airline/vim-airline'
    Plug 'challenger-deep-theme/vim', { 'as': 'challenger-deep' }
    " translator
    Plug 'voldikss/vim-translator'
    " coc
    Plug 'neoclide/coc.nvim', {'branch': 'release'}
    " history
    Plug 'mhinz/vim-startify'
    " tagbar
    Plug 'preservim/tagbar'
    Plug 'mg979/vim-visual-multi', {'branch': 'master'}
    call plug#end()
    IgniteWhite
        10
    IgniteWhite  
       340 天前 via iPhone
    @rim99 我在 vimrc 里写了个探测操作系统和内存的功能,如果配置不够就不加载插件,只保留基本配置和自己设置的简单配色。
    hankai17
        11
    hankai17  
       340 天前
    就用默认的就够用了 + grep 查找很方便
    代码熟了以后 用不到插件
    jessun1990
        12
    jessun1990  
       340 天前
    " UI ==========================
    Plug 'sheerun/vim-polyglot' " 语法高亮
    Plug 'flazz/vim-colorschemes' " 配色主题
    Plug 'overcache/NeoSolarized'
    Plug 'itchyny/lightline.vim' " 底部条
    Plug 'sainnhe/forest-night'

    " general =====================
    Plug 'junegunn/fzf', { 'do': { -> fzf#install() } }
    Plug 'junegunn/fzf.vim'

    " code ======================== Plug 'tommcdo/vim-fugitive-blame-ext' " git 信息
    Plug 'tpope/vim-fugitive' " git 相关
    Plug 'dense-analysis/ale'
    Plug 'liuchengxu/vista.vim' " tag
    Plug 'ap/vim-css-color'
    Plug 'scrooloose/nerdcommenter' " 注释
    Plug 'tpope/vim-surround' " 快捷操作

    " coc.nvim
    Plug 'neoclide/coc.nvim', {'do': 'yarn install --frozen-lockfile'}
    Plug 'fannheyward/coc-marketplace', {'do': 'yarn install --frozen-lockfile'}
    Plug 'iamcco/coc-actions', {'do': 'yarn install --frozen-lockfile'}
    Plug 'neoclide/coc-lists', {'do': 'yarn install --frozen-lockfile'}
    Plug 'neoclide/coc-yank', {'do': 'yarn install --frozen-lockfile'}
    Plug 'neoclide/coc-snippets', {'do': 'yarn install --frozen-lockfile'}
    Plug 'iamcco/coc-spell-checker', {'do': 'yarn install --frozen-lockfile'}
    Plug 'neoclide/coc-git', {'do': 'yarn install --frozen-lockfile'}
    Plug 'weirongxu/coc-explorer', {'do': 'yarn install --frozen-lockfile'}
    Plug 'josa42/coc-sh', {'do': 'yarn install --frozen-lockfile && npm i -g bash-language-server', 'for': 'sh'}

    " rust
    Plug 'fannheyward/coc-rust-analyzer', {'do': 'yarn install --frozen-lockfile', 'for': 'rust'}

    " gopls
    Plug 'josa42/coc-go', {'do': 'yarn install --frozen-lockfile', 'for': 'go'}

    " markdown
    " Plug 'plasticboy/vim-markdown', {'for': 'markdown'}
    Plug 'iamcco/markdown-preview.nvim', { 'do': 'cd app & yarn install' }
    Plug 'neoclide/coc-json', {'do': 'yarn install --frozen-lockfile', 'for': 'json'}
    Plug 'neoclide/coc-yaml', {'do': 'yarn install --frozen-lockfile', 'for': 'yaml'}
    Plug 'neoclide/coc-css', {'do': 'yarn install --frozen-lockfile', 'for': 'css'}
    xiaozizayang
        13
    xiaozizayang  
       340 天前
    我的配置,主要写 py:

    https://github.com/howie6879/vim_config
    thedrwu
        14
    thedrwu  
       339 天前 via Android
    fugitive 和 lsp,其他都是十年前的早就忘记怎么实现的自写的 filetype 相关的插件
    levelworm
        15
    levelworm  
       339 天前 via Android
    我一直好奇你们做大型项目的也用 vim 吗?
    VoldikSS
        16
    VoldikSS  
       339 天前
    coc.nvim 全家桶
    yazoox
        17
    yazoox  
    OP
       339 天前
    @hankai17 你是说直接用 grep 在源代码里 查找关键字么?能分享一些实例,咋操作?
    另,文件浏览,尤其是 code intelligence and complete,怎么办?
    当然,如果能不用任何提示,直接写代码,那是真的厉害
    yazoox
        18
    yazoox  
    OP
       339 天前
    @jessun1990 @VoldikSS
    兄弟,coc 好像需要有很详细配置。有合适配置分享么?!
    relaxgo
        19
    relaxgo  
       339 天前 via Android
    lniwn
        20
    lniwn  
       339 天前
    我觉得 vscode + vim 插件挺香的
    jeeyong
        21
    jeeyong  
       339 天前
    这两天在配置的路上.....夭折了
    MCVector
        22
    MCVector  
       339 天前
    用的比较多的 Vimspector YouCompleteme
    vigack
        23
    vigack  
       339 天前 via iPhone
    什么插件都没装,临时改配置文件用 neovim,写文档、日志用 doom emacs evil mode,写代码用 viscodevim
    wqzjk393
        24
    wqzjk393  
       339 天前 via iPhone
    各大 ide 都支持 vim 了,为啥还要用 vim 写代码呢,插件装的不烦么…
    jessun1990
        25
    jessun1990  
       339 天前
    @yazoox https://github.com/jessun2017/dotfiles

    @wqzjk393 主要是个人习惯,neovim + tmux 一套组合拳已经习惯了。而且还可以把公司服务器当作开发机来使唤,自己的机器就开个 ssh 上去就行。
    jdhao
        26
    jdhao  
       339 天前 via Android
    平时主要写 python,用 neovim 写完全不成问题,我装了 60 多个插件,在 Linux 上启动时间大概 300 多秒,下面链接是我用到的插件。另外这个仓库放的是我完整的配置,对于如何配置有完整的文档,楼主可以参考一下。
    https://github.com/jdhao/nvim-config/blob/master/core/plugins.vim#L16
    darksword21
        27
    darksword21  
       339 天前 via iPhone
    @jdhao #26 300 多秒。。
    no1xsyzy
        28
    no1xsyzy  
       339 天前
    就直接 amix/vimrc,可以 yay -S vimrc-git
    yazoox
        29
    yazoox  
    OP
       339 天前
    @jdhao 什么? 300 多秒…… 还是毫秒?
    jdhao
        30
    jdhao  
       339 天前
    @darksword21 @yazoox 毫秒,哈哈,手误
    yazoox
        31
    yazoox  
    OP
       339 天前
    @no1xsyzy 没看懂……
    no1xsyzy
        32
    no1xsyzy  
       339 天前
    @yazoox I use Arch Linux (笑
    yazoox
        33
    yazoox  
    OP
       339 天前
    @jdhao 你有用 nerdtree 这个插件么?(出门在外,还没看你的插件列表)昨儿我添加了这个插件试了一下,toggle nerdtree,打开或者隐藏居然要 2-3 秒……
    poplar50
        34
    poplar50  
       339 天前 via iPhone
    https://github.com/bryceyang/dotConfigs 用 vim 开发 golang 和 python,日常玩儿玩儿 rust 。
    如果用 neovim 的话,可以翻看一下 nvim-lua 文件夹里的 lua config 。
    jessun1990
        35
    jessun1990  
       339 天前
    @yazoox 如果你用 coc.nvim 或者插件的话,可以使用一下 coc-explorer 这个插件来考虑替代 nerdtree 。
    jdhao
        36
    jdhao  
       339 天前
    @yazoox 之前用过,打开有很多文件的目录,速度比较慢,就不用了。目前我打开项目文件的方式是使用 fuzzy finder,可以选择 fzf.vim 或者使用 LeaderF,个人推荐 LeaderF,目前应该是最强 Vim 搜索插件。

    fzf.vim: https://github.com/junegunn/fzf.vim

    leaderf: https://github.com/Yggdroot/LeaderF
    hanxiV2EX
        37
    hanxiV2EX  
       339 天前 via Android
    SpaceVim
        38
    SpaceVim  
       339 天前
    zzzmj
        39
    zzzmj  
       338 天前
    在这里顺便问一个,用 vim 写 python 的老哥,如何实现类似 pycharm 中用 alt-enter auto-import 的功能
    yazoox
        40
    yazoox  
    OP
       338 天前
    @SpaceVim @PeterD 今天试了一下,安装失败了。

    fatal: could not create leading directories of '/Users/yazoox/.cache/vimfiles/repos/github.com/Shougo/dein.vim': Permission denied

    手工先创建 这个目录,然后再 sudo curl -sLf https://spacevim.org/install.sh | bash 可以成功。

    但是启动 nvim/vim 的时候,还是报错

    Error detected while processing function SpaceVim#begin[75]..SpaceVim#default#options:
    line 70:
    E739: Cannot create directory /Users/yazoox/.cache//SpaceVim: permission denied
    Error detected while processing function SpaceVim#custom#load[34]..<SNR>19_load_glob_conf:
    line 13:
    E482: Can't open file /Users/yazoox/.cache/SpaceVim/conf/.SpaceVim.dinit.json for writing: no such f
    ile or directory
    Error detected while processing function SpaceVim#end[97]..SpaceVim#plugins#load[2]..SpaceVim#plugin
    s#begin[9]..dein#begin[1]..dein#util#_begin[20]..dein#util#_get_runtime_path[5]..dein#util#_get_cach
    e_path:
    line 9:
    E739: Cannot create directory /Users/yazoox/.cache/vimfiles: permission denied
    Press ENTER or type command to continu

    不知道是不是我用的 zsh 不是 bash 的原因...
    k4nUu
        41
    k4nUu  
       338 天前
    ```viml
    if dein#load_state('~/.cache/dein')
    call dein#begin('~/.cache/dein')

    call dein#add('~/.cache/dein/repos/github.com/Shougo/dein.vim')

    call dein#add('mhinz/vim-startify')
    call dein#add('junegunn/vim-easy-align')
    call dein#add('junegunn/goyo.vim')
    call dein#add('junegunn/limelight.vim')
    call dein#add('junegunn/seoul256.vim')
    call dein#add('ianva/vim-youdao-translater')
    call dein#add('matze/vim-move')
    call dein#add('yuttie/comfortable-motion.vim')
    call dein#add('tpope/vim-surround')
    call dein#add('tpope/vim-repeat')
    call dein#add('jiangmiao/auto-pairs')
    call dein#add('preservim/nerdcommenter')

    call dein#end()
    call dein#save_state()
    endif
    ````
    SpaceVim
        42
    SpaceVim  
       338 天前
    @yazoox 你的这个权限问题我看得不懂,为什么在自己的 home 目录下的一些文件居然没有权限读写?
    ZxykM
        43
    ZxykM  
       337 天前
    我用 nvim,基本上是 coc 一把梭
    yazoox
        44
    yazoox  
    OP
       337 天前
    @ZxykM 没用过。听说很好用,但配置很复杂。分享一下配置?
    bintianbaihua
        45
    bintianbaihua  
       337 天前
    可以参考下开源的 .vimrc
    CrazyRundong
        46
    CrazyRundong  
       337 天前 via iPhone
    只留了一句 set nu 开行号,绝大多数时候都是 PyCharm/VSCode + vim plugin 了
    关于   ·   帮助文档   ·   API   ·   FAQ   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   1218 人在线   最高记录 5497   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 19:32 · PVG 03:32 · LAX 11:32 · JFK 14:32
    ♥ Do have faith in what you're doing.