vim使用技巧

一,vim基本设置

1,显示中文,

在/etc/vimrc里面适当(别加在类似循环语句里面)的地方加上。

let &termencoding=&encoding
set fileencoding=utf-8,gbk,ucs-bom,cpArray36

或者:

set fileencodings=utf-8,gb2312,gbk,gb18030

set termencoding=utf-8

set fileformats=unix 

set encoding=prc

2,变成支持彩色

需要四个安装包:

    vim-minimal-6.1-2
  vim-common-6.1-2
  vim-X11-6.1-2
  vim-enhanced-6.1-2
  我只装了两个,除去vim-X11-6.1-2之外,还有个vim-enhanced-6.1-2未装。装上之后,就可以正常使用语法

Vim-plug 安装

这里的安装方式是出自Vim-Plug原作者的Github项目的Readme.md里,这个项目地址是:https://github.com/junegunn/vim-plug
########################################################################

curl -fLo ~/.vim/autoload/plug.vim --create-dirs \
    https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim

########################################################################
如果下载失败, 去 github 下载

cd ~/下载
git clone https://github.com/junegunn/vim-plug
mkdir ~/.vim/autoload
cp vim-plug/plug.vim  ~/.vim/autoload/



这一步是下载Vim-plug,~/.vim/autoload/这个是它下载后的位置

如果下载不了,可以去官网下载,下完的文件是plug.vim,然后在用户目录下创建目录mkdir ~/.vim/autoload ,把plug.vim放进去

主要原因:vim-plug 上的插件大部分都托管在github上。

解决方案:用国内镜像,间接访问vim-plug的实际网站。即修改plug.vim访问的网站为镜像网站。

上述两个步骤的目是让镜像网站代替实际网站, 这样能有效提高下载成功率。
 

打开 plug.vim ,搜索 github, 修改两条语句,即可成功下载GitHub资源。 

let fmt = get(g:, 'plug_url_format', 'https://git::@github.com/%s.git')
 改为

let fmt = get(g:, 'plug_url_format', 'https://git::@hub.fastgit.org/%s.git')



\ '^https://git::@github\.com', 'https://github.com', '')

改为

\ '^https://git::@hub.fastgit\.org', 'https://hub.fastgit.org', '')


 

set ai                     " 开启自动缩进
set cindent                " 开启C语言的自动缩进
set nu                     " 显示行号
syntax on                  " 开启语法高亮
set tabstop=4              " 制表符宽度为4个空格
set softtabstop=4          " 在插入模式下,退格键的宽度
set hlsearch
set incsearch


" 开启高亮光标行
set cursorline
hi CursorLine   cterm=NONE ctermbg=darkblue  ctermfg=white guibg=darkred guifg=white

" 开启高亮光标列
"set cursorcolumn
"hi CursorColumn cterm=NONE ctermbg=darkred ctermfg=white guibg=darkred guifg=white


" Specify a directory for plugins
" - For Neovim: ~/.local/share/nvim/plugged
" - Avoid using standard Vim directory names like 'plugin'
call plug#begin('~/.vim/plugged')   " 指定插件存放的目录

Plug "hdima/python-syntax"                      "python 高亮显示
let python_highlight_all = 1


Plug 'junegunn/vim-easy-align'                     " 对齐文本的插件
Plug 'kien/ctrlp.vim'                              " 强大的文件、缓冲区、mru、标签等查找插件
Plug 'vim-scripts/taglist.vim'                     " 利用 ctags 显示源代码结构的插件
Plug 'majutsushi/tagbar'                           " 用于显示 tags 的边栏,比如变量、方法列表
Plug 'https://github.com/junegunn/vim-github-dashboard.git'  " GitHub 仪表板插件
Plug 'Yggdroot/LeaderF', { 'do': './install.sh' }  " 文件、缓冲区、mru的快速查找插件
Plug 'https://github.com/vim-syntastic/syntastic.git'      " 语法检查插件
Plug 'https://github.com/rking/ag.vim.git'        " 整合The Silver Searcher(ag)到vim的插件

function! BuildYCM(info) "为YouCompleteMe插件定义一个安装后的构建函数
if a:info.status == 'installed' || a:info.force
!./install.py
endif
endfunction

Plug 'ycm-core/YouCompleteMe', { 'do': function('BuildYCM') }  " 自动补全插件
Plug 'rdnetto/YCM-Generator', { 'branch': 'stable'}             " 为YCM生成编译数据库
Plug 'vim-scripts/a.vim'                                        " 在头文件和源文件间快速切换
Plug 'universal-ctags/ctags'                                    " 更好的ctags支持
Plug 'ludovicchabant/vim-gutentags'                             " 自动生成和更新tags的插件
Plug 'SirVer/ultisnips' | Plug 'honza/vim-snippets'             " 代码片段扩展
Plug 'scrooloose/nerdtree', { 'on': 'NERDTreeToggle' }          " 用于浏览文件系统的插件
Plug 'tpope/vim-fireplace', { 'for': 'clojure' }                " Clojure 开发支持
Plug 'fatih/vim-go', { 'tag': '*' }                             " Go 语言开发支持
Plug 'nsf/gocode', { 'tag': 'v.20150303', 'rtp': 'vim' }        " Go语言的自动补全插件
Plug '~/my-prototype-plugin'                                    " 用户的原型插件(本地插件)

nmap <F6> :TlistToggle<cr>         " F6键映射到TlistToggle命令
nmap <F5> :NERDTreeToggle<cr>      " F5键映射到NERDTreeToggle命令
nmap <F8> :TagbarToggle<CR>        " F8键映射到TagbarToggle命令

" 下面是针对gutentags插件的配置
let g:gutentags_project_root = ['.root', '.svn', '.git', '.hg', '.project']
let g:gutentags_ctags_tagfile = '.tags'
let s:vim_tags = expand('~/.cache/tags')
let g:gutentags_cache_dir = s:vim_tags
let g:gutentags_ctags_extra_args = ['--fields=+niazS', '--extra=+q']
let g:gutentags_ctags_extra_args += ['--c++-kinds=+px']
let g:gutentags_ctags_extra_args += ['--c-kinds=+px']

if !isdirectory(s:vim_tags)       " 如果目录不存在,则创建
   silent! call mkdir(s:vim_tags, 'p')
endif

" 下面是针对YouCompleteMe插件的配置
let g:ycm_add_preview_to_completeopt = 0
let g:ycm_show_diagnostics_ui = 0
let g:ycm_server_log_level = 'info'
let g:ycm_min_num_identifier_candidate_chars = 2
let g:ycm_collect_identifiers_from_comments_and_strings = 1
let g:ycm_complete_in_strings=1
let g:ycm_key_invoke_completion = '<c-z>'
set completeopt=menu,menuone
noremap <c-z> <NOP>
let g:ycm_semantic_triggers =  {
           \ 'c,cpp,python,java,go,erlang,perl': ['re!\w{2}'],
           \ 'cs,lua,javascript': ['re!\w{2}'],
           \ }

call plug#end()                " 结束插件声明和配置

二:三种模式

1,命令行模式

2,输入模式

3,视图模式

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值