一个前端开发工程师的Vim跟IDE一样
2017/01/18 · 基本功技术 ·
vim
原稿出处: 小叔子调调
此地是本人新配置出来的
jaywcjlove/vim-web
一向在打磨中,基本上可以用了。拿出去骗 star 先上图
当下制作落成的IDE主要有:
terminator+Bundle+NERDtree+YCF(youcompleteme)+UltiSnips+新创设文件自动补充注释和小编,版权音信等
现阶段增强了一晃Ubuntu
16.04巅峰,代码指示和树形文件管理:
当下制作已毕的IDE紧要有:
terminator+Bundle+NERDtree+YCF(youcompleteme)+UltiSnips+新创造文件自动补充注释和小编,版权消息等
安装
最新版本的Vim 7.4+ 使用(brew install macvim
)安装,vim 版本更新
brew install macvim --override-system-vim
Shell
$ git clone 一个前端开发工程师的Vim跟IDE一样,用Vim逐步打造一个IDE。~/.vim $ ln -s
~/.vim/.vimrc ~/.vimrc # 上边执行到位之后 # 开头下载安装插件 $ vim #
在vim中运行 “:PlugInstall” # 上边插件安装到位之后执行下边内容 #
command-t 文件搜索插件安装 $ cd ~/.vim/plugged/command-t $ rake make #
搜索文本内容工具 # 须要安装 CtrlSF的爱护ripgrep $ brew install ripgrep
# 代码提醒插件也须求您运行安装哦,不然没有效劳嘞 cd
~/.vim/plugged/YouCompleteMe ./install.sh # 需求安装ctags
不然配置没效果啊 # ctags for Mac $ brew install ctags # ctags for
Centos7 $ yum install ctags
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
$ git clone https://github.com/jaywcjlove/vim-web.git ~/.vim
$ ln -s ~/.vim/.vimrc ~/.vimrc
# 上面执行完成之后
# 开始下载安装插件
$ vim # 在vim中运行 ":PlugInstall"
# 上面插件安装完成之后执行下面内容
# command-t 文件搜索插件安装
$ cd ~/.vim/plugged/command-t
$ rake make
# 搜索文本内容工具
# 需要安装 CtrlSF的依赖ripgrep
$ brew install ripgrep
# 代码提示插件也需要你运行安装哦,不然没有效果嘞
cd ~/.vim/plugged/YouCompleteMe
./install.sh
# 需要安装ctags 不然配置没效果哦
# ctags for Mac
$ brew install ctags
# ctags for Centos7
$ yum install ctags
|
注: 暗许已经安装了前者必备插件。.vimrc
是控制 vim
行为的陈设文件,位于 ~/.vimrc,不论 vim
窗口外观、突显字体,依旧操作方法、火速键、插件属性均可透过编制该配置文件将
vim 调教成最契合您的编辑器。
1,当职分比较多的时候,假诺在Ubuntu下切换多个顶峰,会相比劳苦,这里我找到一个比较好的终端(terminator)
查阅配置地点
Shell
# 进入vim输入上面字符 :echo $MYVIMRC
1
2
|
# 进入vim输入下面字符
:echo $MYVIMRC
|
sudo apt-get install terminator
插件管理
这中间刚起初利用的Vim插件管理工具VundleVim/Vundle.vim,前面为了我们安装方便,使用了
junegunn/vim-plug,这么些插件管理工具,俺至极不希罕,多了个
autoload
目录,安装进度也奇丑无比,安装便捷,所以就选择它吧,上边发号施令更新安装的
plug.vim
,暗中认同已经有了不须要这一步。
Shell
curl -fLo ~/.vim/autoload/plug.vim –create-dirs \
1
2
|
curl -fLo ~/.vim/autoload/plug.vim –create-dirs \
https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim
|
1,当职务比较多的时候,假设在Ubuntu下切换两极分歧,会比较麻烦,那里我找到一个相比好的巅峰(terminator)
设置完之后的作用:
1,当职务相比多的时候,即使在Ubuntu下切换七个极端,会相比费心,这里我找到一个相比好的巅峰(terminator)
设置插件
将安插新闻其参预 ~/.vim/.vimrc
中的call plug#begin()
和
call plug#end()
之间,最终进入 vim 输入下边发号施令,摁 enter
举办设置。
Shell
:PlugInstall
1
|
:PlugInstall
|
sudo apt-get install terminator
sudo apt-get install terminator
创新插件
插件更新频率较高,大致每隔一个月你应当看看如何插件有推出新本子,批量创新,只需在
vim 中举行下边发号施令即可。
Vim
:PlugUpdate
1
|
:PlugUpdate
|
安装完今后的效果:
右键可以划分窗口依然新建tab, preference可以定制外观
设置完事后的法力:
卸载插件
先在 .vimrc 中注释可能去除相应插件配置消息,然后在 vim
中实践下边发号施令,即可删除相应插件。
Vim
:PlugClean
1
|
:PlugClean
|
启动Vim
Shell
$ vim
1
|
$ vim
|
右键可以分开窗口可能新建tab, preference可以定制外观
2,安装YouCompleteMe
右键可以分开窗口仍然新建tab, preference可以定制外观
常用快速键
此间的连忙键是本人安插好的可用的。
Vim
;fl # 换出菜单列表 nw # 窗口切换 ;lw # 跳转至右方的窗口 ;hw #
跳转至左方的窗口 ;kw # 跳转至上方的子窗口 ;jw # 跳转至下方的子窗口 #
能够一向在Tab之间切换。 gt # 后一个Tab标签 gT # 前一个Tab标签 ;q #
关闭一个标签 ctrl-f # 下一页 f 就是`forword` ctrl-b # 上一页 b
就是`backward` ;t # 通过寻找文件打开文件 # 疾速文本内定位 ;;b #
光标前代码定位 ;;e # 光标后代码定位 ;;f # 光标后代码定位
<搜索自负> 出现一定消息 ;;F # 光标前代码定位 <搜索自负>
出现一定音信 ;ilt #
设置彰显/隐藏标签列表子窗口(函数列表)的火速键。速记:identifier list by
tag 0 # 行首 $ # 行尾 :r ~/git/R.js # 将文件内容导入到该文件中
:!which ls # 找命令不生产vim运行命令 :!date # 查看编辑时间 :r !date #
将近来编制时间导入当前文件光标所在行 U # 选中 – 变大写 u # 选中 –
变小写 ~ # 选中 – 变大写变小写,小写变大写 ;cc # 代码注释”//” ;cm #
代码段落注释”/**/” ;ci # 注释相反,注释的废除注释,没注释的表明 ;cs
# 段落注释,注释每行前边加”*” ;c$ # 光标开始到行终止的任务注释 ;cA #
在行底部添加注释符”//” ;cu # 取消代码注释 za # 单个代码折叠 zM #
折叠左右代码 zR # 所有代码折叠裁撤 ;i # 开/关缩进可视化 > #
代码锁进 – 选中摁尖括号 < # 代码锁进 – 选中摁尖括号
:1,24s/header/www/g # 第1到24行将header替换成www <c-z> # 退出Vim
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
|
;fl # 换出菜单列表
nw # 窗口切换
;lw # 跳转至右方的窗口
;hw # 跳转至左方的窗口
;kw # 跳转至上方的子窗口
;jw # 跳转至下方的子窗口
# 可以直接在Tab之间切换。
gt # 后一个Tab标签
gT # 前一个Tab标签
;q # 关闭一个标签
ctrl-f # 下一页 f 就是`forword`
ctrl-b # 上一页 b 就是`backward`
;t # 通过搜索文件打开文件
# 快速文本内定位
;;b # 光标前代码定位
;;e # 光标后代码定位
;;f # 光标后代码定位 <搜索自负> 出现定位信息
;;F # 光标前代码定位 <搜索自负> 出现定位信息
;ilt # 设置显示/隐藏标签列表子窗口(函数列表)的快捷键。速记:identifier list by tag
0 # 行首
$ # 行尾
:r ~/git/R.js # 将文件内容导入到该文件中
:!which ls # 找命令不推出vim运行命令
:!date # 查看编辑时间
:r !date # 将当前编辑时间导入当前文本光标所在行
U # 选中 – 变大写
u # 选中 – 变小写
~ # 选中 – 变大写变小写,小写变大写
;cc # 代码注释"//"
;cm # 代码段落注释"/**/"
;ci # 注释相反,注释的取消注释,没注释的注释
;cs # 段落注释,注释每行前面加"*"
;c$ # 光标开始到行结束的位置注释
;cA # 在行尾部添加注释符"//"
;cu # 取消代码注释
za # 单个代码折叠
zM # 折叠左右代码
zR # 所有代码折叠取消
;i # 开/关缩进可视化
> # 代码锁进 – 选中摁尖括号
< # 代码锁进 – 选中摁尖括号
:1,24s/header/www/g # 第1到24行将header替换成www
<c-z> # 退出Vim
|
bundle是一个插件安装管理器,安装完毕以往,就会在家目录上边的.vim目录生成bundle目录及有关配置
基本功运用
inoremap
(Insert Mode)就只在插入(insert)情势下生效vnoremap
(Visual Mode)只在visual格局下生效nnoremap
(Normal Mode)就在normal形式下(狂按esc后的方式)生效- 快捷键
<c-y>,
标示(Ctrly,)
2,安装YouCompleteMe
自我利用的是git安装,bundle安装太慢了,看不见进程
2,安装YouCompleteMe
马上键通配符
赶快键通配符 <leader>
相当于是一个通用的命令符,默许好像是\
,你可以在.vimrc
大校他改为随机一个按键,在我们以此布局我改为了冒号;
Vim
” 定义快捷键的前缀,即 <Leader> let mapleader=”;”
1
2
|
" 定义快捷键的前缀,即 <Leader>
let mapleader=";"
|
bundle是一个插件安装管理器,安装到位将来,就会在家目录上边的.vim目录生成bundle目录及有关配置
在家目录下,cd .vim/bundle/
bundle是一个插件安装管理器,安装完毕将来,就会在家目录下边的.vim目录生成bundle目录及有关配置
布置命令
Vim
a # → 在光标所在字符后插入 A # → 在光标所在字符尾插入 i # →
在光标所在字符前安顿 I # → 在光标所在行行首插入 o # → 在光标下插入新行
O # → 在光标上插入新行
1
2
3
4
5
6
|
a # → 在光标所在字符后插入
A # → 在光标所在字符尾插入
i # → 在光标所在字符前插入
I # → 在光标所在行行首插入
o # → 在光标下插入新行
O # → 在光标上插入新行
|
自身使用的是git安装,bundle安装太慢了,看不见进度
下载YouCompleteMe:
我使用的是git安装,bundle安装太慢了,看不见进程
去除命令
Vim
x # → 删除关闭所在处字符 nx # → 删除关闭所在处n个字符 dd # →
删除光标所在行, ndd # → 删除n行 dG # → 删除光标所在行到文件末尾内容 D
# → 删除光标所在处到行尾内容 :n1,n2d # → 删除指定范围的行 如:1,2d
1
2
3
4
5
6
7
|
x # → 删除关闭所在处字符
nx # → 删除关闭所在处n个字符
dd # → 删除光标所在行,
ndd # → 删除n行
dG # → 删除光标所在行到文件末尾内容
D # → 删除光标所在处到行尾内容
:n1,n2d # → 删除指定范围的行 如:1,2d
|
在家目录下,cd .vim/bundle/
git clone –recursive
在家目录下,cd .vim/bundle/
定点命令
Vim
:set number #→ 设置行号 简写set nu :set nonu #→ 打消行号 gg #→
到第一行 G #→ 到最终一行 nG #→ 到第n行 :n #→ 到第n行 S #→ 移至行尾 0
#→ 移至行尾 hjkl #→ 前下上后 w #→ 到下一个单词的发端 b #→ 与w相反 e
#→ 到下一个单词的结尾。 ge #→ 与e相反 0 #→ 到行头 ^ #→
到本行的首先个非blank字符 $ #→ 到行尾 g_ #→
到本行最终一个不是blank字符的岗位。 fa #→
到下一个为a的字符处,你也可以fs到下一个为s的字符。 t, #→
到逗号前的首先个字符。逗号可以成为任何字符。 3fa #→
在现阶段行查找第七个冒出的a。 F 和 T → 和 f 和 t 一样,只可是是倒转方向。
zz # 将目前行置于屏幕中间(不是转发…) zt #
将近年来行置于显示屏上方(不是猪头~) zb # 底端啦~
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
|
:set number #→ 设置行号 简写set nu
:set nonu #→ 取消行号
gg #→ 到第一行
G #→ 到最后一行
nG #→ 到第n行
:n #→ 到第n行
S #→ 移至行尾
0 #→ 移至行尾
hjkl #→ 前下上后
w #→ 到下一个单词的开头
b #→ 与w相反
e #→ 到下一个单词的结尾。
ge #→ 与e相反
0 #→ 到行头
^ #→ 到本行的第一个非blank字符
$ #→ 到行尾
g_ #→ 到本行最后一个不是blank字符的位置。
fa #→ 到下一个为a的字符处,你也可以fs到下一个为s的字符。
t, #→ 到逗号前的第一个字符。逗号可以变成其它字符。
3fa #→ 在当前行查找第三个出现的a。
F 和 T → 和 f 和 t 一样,只不过是相反方向。
zz # 将当前行置于屏幕中间(不是转载…)
zt # 将当前行置于屏幕顶端(不是猪头~)
zb # 底端啦~
|
下载YouCompleteMe:
以下为重点安装命令和急需设置的东西:
下载YouCompleteMe: