zoukankan      html  css  js  c++  java
  • vim 简易模块化配置思路

    最初把所有配置都写到 _vimrc 里,随着内容增多,就感觉有点混乱了,
    一直没用过专门的模块化插件,于是就手工把配置分为以下4类

    • 插件管理(我用的是 dein.vim ) 这块还是放原来的 _vimrc 里
    • set 选项($Vim\config\set.vim)
    • map 定义($Vim\config\map.vim)
    • 各插件配置($Vim\config\plugin.vim)

    这样分类后,直接在 _vimrc 末尾加上3行加载代码即可

    下面为本人的 _vimrc 的内容模板

    let mapleader = ","
    " https://www.jianshu.com/p/0874e6be9d74
    " 安装:
    "   1. git
    "   2. git clone至 $Vim/vimfiles/bundle/repos/github.com/Shougo/dein.vim 
    "   3. dein#install()
    "   4. dein#recache_runtimepath()
    " 升级插件(含自身) dein :call dein#update()
    " 卸载其他插件
    "   1. 注释 dein#add(...)
    "   2. call dein#recache_runtimepath()
    "   3. call map(dein#check_clean(), "delete(v:val, 'rf')")
    if &compatible | set nocompatible | endif
    let g:dein#types#git#clone_depth = 1
    let g:dein#install_github_api_token = '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'
    "let g:dein#types#git#default_hub_site = 'github.com.cnpmjs.org'
    set runtimepath+=$Vim/vimfiles/bundle/repos/github.com/Shougo/dein.vim
    call dein#begin($VIM . '/vimfiles/bundle')
    
    " Let dein manage dein
    call dein#add($VIM . '/vimfiles/bundle/repos/github.com/Shougo/dein.vim')
    
    if !has('nvim')
        call dein#add('roxma/nvim-yarp')
        call dein#add('roxma/vim-hug-neovim-rpc')
    endif
    
    "定义要安装的插件
    call dein#add('neoclide/coc.nvim', {'merged': 0, 'rev': 'release'})
    call dein#end()
    
    filetype plugin indent on
    syntax enable
    "echom dein#check_install('Shougo/dein.vim')
    if dein#check_install() | call dein#install() | endif
    nnoremap <leader>pi :<C-u>call dein#install()<cr>
    nnoremap <leader>pu :<C-u>call dein#update()<cr>
    nnoremap <leader>pb :<C-u>call dein#recache_runtimepath()<cr>
    
    "加载其他模块的配置
    source $Vim\config\set.vim
    source $Vim\config\map.vim
    source $Vim\config\plugin.vim
    
  • 相关阅读:
    堆、栈及静态数据区详解
    新浪云上传代码包
    主机屋MySQL数据库链接
    Doctype作用?严格模式与混杂模式如何区分?它们有何意义?
    height 与 min-height 的继承
    @media 照成的问题
    img 在chrome和Firefox下的兼容性
    Ionic
    setInterval()和setTimeout()可以接收更多的参数
    angularJs 模拟jQuery中的this
  • 原文地址:https://www.cnblogs.com/hyaray/p/15547906.html
Copyright © 2011-2022 走看看