Skip to content

juandx/vimrc

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

42 Commits
 
 
 
 

Repository files navigation

如果vim意外关闭,一般会保留一个.filename.swp文件,你vim filename 的时候会提示你,一般键入r进行继续编辑上次没改完的内容,或者键入e编辑上次修改之前的内容,然后保存退出,然后再vim filename,键入d删除.filename.swp就行

我平时用python+vim编辑居多 所以在网上参考并使用了一些vim插件、主题、用法 希望能够分享出来并建立一个自己的vimrc

安装最新的vim  https://www.linuxprobe.com/vim8-0-linux.html 注意必须编译的时候加入允许python插入,不然后面youcompleteme的时候会报错 requires Vim compiled with Python (2.7 or 3.4+) support.

yum install ncurses-devel
wget https://github.com/vim/vim/archive/master.zip
unzip master.zip
cd vim-master
cd src/
./configure --enable-pythoninterp=yes
make
make install
vim

1 首先是安装vendle, git clone https://github.com/VundleVim/Vundle.vim.git ~/.vim/bundle/Vundle.vim

2 然后替换这个vimrc,如果是mac直接在用户目录建立一个.vimrc文件

3 注意看到set rtp+=/.vim/bundle/Vundle.vim ,把换成自己的home目录,比如我的/home/wenbin/

4 Launch vim and run :PluginInstall 或者 To install from command line: vim +PluginInstall +qall

5 对youcompleteme 安装一对底层需要的编译的东西

yum install automake gcc gcc-c++ kernel-devel cmake python-devel

cd ~/.vim/bundle/YouCompleteMe

./install.py --clang-completer

./install.py

6 下面是一些解释和用法

空格是代码折叠

F3是切换复制粘贴

F4是切换行号显示(行号使用相对+绝对行号)

F5是格式化,把tab改为space,删除windows末尾^M

F8 和 F9 是vimgrep搜索的上一个和下一个结果

F10是缓冲区显示

F11是缓冲区下一个文件

F12是缓冲区上一个文件

;fl 或者 :NERDTree 实现目录树,?是帮助,i是打开一个新的文件(类似:sp)

p 到上层目录
P 到根目录
K 到第一个节点
J 到最后一个节点
u 打开上层目录
i       split 一个新窗口打开选中文件,并跳到该窗口
gi      split 一个新窗口打开选中文件,但不跳到该窗口
s       vsplit 一个新窗口打开选中文件,并跳到该窗口
gs      vsplit 一个新 窗口打开选中文件,但不跳到该窗口

ctrl+p是查找文件,esc可以退出

单词自动补全: CTRL+n :当你输入第一个字母的时候,再CTRL+n,自动出现下拉菜单,单词默认选中第一个,继续CTRL+n,CTRL+p可以上下切换,或者用方向键(太慢)

CTRL+p :同上,只是默认的选中的是列表中最后一个单词

molokai这个配色我很喜欢

:set nu, :set nonu 是切换行号出现和消失 同F4

先用v选择多行

ga进入easyalign模式 默认向左对其,比如按照空格对其 向右对其 居中对其 如果遇到其他字符比如 | , = 啥的,都把空格替换>为对应的即可 *可以换成数字,对应后面的第几个字符,就是全部都指定

:vsp file 或者 :vp file 是新窗口打开文件, 用 CTRL+w可以切换窗口

;gg YCM 跳转到定义的函数

:open file 打开新的file文件后可以用 CTRL-^ 或者 :e# 返回(:e#n 返回到n个之前的文件)

:cw 打开vimgrep搜索结果 :ccl 关闭vimgrep搜索结果


vim[grep] 命令行:
:vim[grep] /pattern/[g][j] files ...


g 选项:
不加该选项时,当一行中有多个匹配项时,仅在 quickfix 中添加一行。添加该选项时,每个匹配都在 quickfix 列表中添加一项。

j 选项:
不加该选项,查找完毕,光标将跳转到第一个匹配处。添加该选项时,查找完毕,仅更新 quickfix 列表,光标不跳转。


:vim /wenbin/g pkg/**/* *.go
表示 比如当前目录(kubernetes)下有pkg文件下,想搜索pkg文件夹及其子目录下所有.go文件中含有字符串wenbin的文件

:vim /wenbin/g pkg/**/*
表示 比如当前目录(kubernetes)下有pkg文件下,想搜索pkg文件夹及其子目录下所有文件中含有字符串wenbin的文件

:vim /wenbin/g **/*
表示 想搜索当前文件夹及其子目录下所有文件中含有字符串wenbin的文件

:cw打开搜索列表  :ccl关闭搜索列表    F8 和 F9 是下一个上一个结果
       
在查找模式中加入\c表示大小写不敏感查找,\C表示大小写敏感查找。例如:
/foo\c
将会查找所有的"foo","FOO","Foo"等字符串。

精确匹配查找单词
如果你输入 "/the",你也可能找到 "there"。要找到以 "the" 结尾的单词,可以用:
/the\> "\>" 是一个特殊的记号,表示只匹配单词末尾。类似地,"\<" 只匹配单词的开头。
这样,要匹配一个完整的单词 "the",只需:/\<the\>

:vim /\<Generator\>/g pkg/**/* *.go
表示精确找到Generator这个字段,来找函数很方便

7 go 用法  安装了vim-go 非常方便, gd是跳转到定义处,相当好用,其他请看https://github.com/fatih/vim-go  但是,安装vim-go会有遇到几个问题,基本是包没装,而且有的包还在墙外面。。。大概要装下面几个

go get -u github.com/nsf/gocode
go get golang.org/x/tools/cmd/goimports
go get golang.org/x/tools/cmd/guru
go get golang.org/x/tools/cmd/gorename

About

wenbin's vimrc, for python go and js

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published