我的 Vim 配置分享

发布于 2022-06-21 21:11:36 字数 4280 浏览 1070 评论 0

存一下自己的 vim 配置。

vi 跟 vim

vim = Vi IMproved

现在很多发行版直接把 vi 做成 vim 的软连接了,如果你直接执行 vi 欢迎界面上显示了 VIM - Vi IMproved 字样,就说明你实际上用的就是 vim。vi 本来只能运行于 unix 中,而 vim 可以运行于 unix、windows、mac 等多操作平台。另外 vim 在多级撤销,语法高亮等方面做了增强。

安装

linux

一般都是用 apt-get 安装,ubuntu 下

sudo apt-get install vim-gtk

Mac os 自带 vim,我升级是使用 homebrew 安装的。

brew install vim --with-lua --with-override-system-vi

这样安装是放到

/usr/local/bin/vim

目录下的,也就是用户自己编译的放在 /usr/local/xxx,关于 linux 的文件系统区别

终端配置

因为我用的是 oh-my-zsh,并不是 mac 自带的 bash,很多配置文件都要单独 source。zsh 的配置都在 ~/.zshrc 里。比如我执行vi的时候,都是执行我安装的最新 vim,可以使用 alias(别名设置),就可以在 .zshrc 加 alias vi=vim,当然也可以单独建一个 .alias 文件,在 .zshrc 里面 source .alias。 注意都在 ~ 目录下。

由于个人比较喜欢直接 git commit 写 commit 文本,所以我的 git 配置里面 editor=vim,特定的仓库在 someproject/.git/config 文件,加入

[core]
   editor = vim

用户 git 全局的配置在 ~/.gitconfig

我的 Vim 配置

插件管理是用的比较老的 vundle,常用的工作目录,自动补全,语法检测,文件搜索,都是有的,选用哪些插件可以边试边选择, 关于如何配置,网上的教程很多,随便搜了一个

" vundle支持
filetype off
set rtp+=~/.vim/bundle/vundle/
call vundle#rc()

" 集中管理vim插件
execute pathogen#infect()

" 文件目录插件
Bundle "scrooloose/nerdtree"
nmap <F5> :NERDTreeToggle<cr>
let NERDTreeWinSize=30

" 状态栏插件
Bundle "Lokaltog/vim-powerline"
set laststatus=2
let g:Powerline_symbols='unicode'

Bundle 'neomake/neomake'

function! NeomakeEslintChecker()
    let l:eslint = 'eslint'
    let l:git_root = split(system('git rev-parse --show-toplevel'))[0]
    if executable(l:git_root . '/node_modules/.bin/eslint')
      let l:eslint = l:git_root . '/node_modules/.bin/eslint'
    endif
    let b:neomake_javascript_eslint_exe = l:eslint
endfunction

let g:neomake_javascript_enabled_makers=['eslint']
let g:syntastic_check_on_open=1

autocmd FileType javascript :call NeomakeEslintChecker()
" 模糊搜索插件
Bundle 'kien/ctrlp.vim'

Bundle 'croaky/vim-colors-github'

" 搜索高亮度反白
set hlsearch

" 启用语法折叠
set foldmethod=syntax

" tab自动缩进
set tabstop=2

"autoindent
set ai!

" 显示行号
set nu

" 设置默认进行大小写不敏感查找
set ignorecase

" 如果有一个大写字母,则切换到大小写敏感查找
set smartcase 

" 修复delete不能删除的情况
set backspace=2
colorscheme solarized

"自动补全
Bundle 'Valloric/YouCompleteMe'

" ternjs
Bundle 'marijnh/tern_for_vim'

" 设置错误符号
let g:syntastic_error_symbol='o'
" 设置警告符号
let g:syntastic_warning_symbol='⚠'
" 是否在打开文件时检查
" 是否在保存文件后检查
let g:syntastic_check_on_wq=1


syntax enable "开启语法高亮功能
syntax on " 允许用指定语法高亮配色方案替换默认方案
set t_Co=256
let g:solarized_termtrans=1
set background=dark
let g:solarized_termcolors=256
set tags+=~/.vim/systags "路径跳转


"CtrlP 配置
let g:ctrlp_map = '<c-p>'
let g:ctrlp_cmd = 'CtrlP'
" 设置过滤不进行查找的后缀名
let g:ctrlp_custom_ignore = 'v[/].(git|hg|svn|pyc)

主题要配合 shell 的主题,一起才会好看一些。关于我使用的配置推荐两个文章,别人已经写好的教程,我就不写了。有问题可以 comment.

自我感觉还是比较秀色可餐的:

vim

autocmd BufNewFile,BufFilePre,BufRead *.jsx set filetype=javascript autocmd! BufWritePost,BufEnter * Neomake

主题要配合 shell 的主题,一起才会好看一些。关于我使用的配置推荐两个文章,别人已经写好的教程,我就不写了。有问题可以 comment.

自我感觉还是比较秀色可餐的:

vim

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据

关于作者

初见

暂无简介

0 文章
0 评论
23 人气
更多

推荐作者

遂心如意

文章 0 评论 0

5513090242

文章 0 评论 0

巷雨优美回忆

文章 0 评论 0

junpengz2000

文章 0 评论 0

13郎

文章 0 评论 0

qq_xU4RDg

文章 0 评论 0

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文