一个前端开发工程师的Vim跟IDE一样,用Vim逐步打造一个IDE

一个前端开发工程师的Vim跟IDE一样

2017/01/18 · 基本功技术 ·
vim

原稿出处: 小叔子调调   

此地是本人新配置出来的
jaywcjlove/vim-web
一向在打磨中,基本上可以用了。拿出去骗 star 先上图

图片 1

当下制作落成的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 调教成最契合您的编辑器。

图片 2

1,当职分比较多的时候,假诺在Ubuntu下切换多个顶峰,会相比劳苦,这里我找到一个比较好的终端(terminator)

图片 3

查阅配置地点

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

图片 4

sudo apt-get install terminator

创新插件

插件更新频率较高,大致每隔一个月你应当看看如何插件有推出新本子,批量创新,只需在
vim 中举行下边发号施令即可。

Vim

:PlugUpdate

1
:PlugUpdate

安装完今后的效果:

右键可以划分窗口依然新建tab, preference可以定制外观

设置完事后的法力:

卸载插件

先在 .vimrc 中注释可能去除相应插件配置消息,然后在 vim
中实践下边发号施令,即可删除相应插件。

Vim

:PlugClean

1
:PlugClean

图片 5

图片 6

图片 7

启动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

图片 8

bundle是一个插件安装管理器,安装完毕以往,就会在家目录上边的.vim目录生成bundle目录及有关配置

图片 9

基本功运用

  • 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:

相关文章

发表评论

电子邮件地址不会被公开。 必填项已用*标注

*
*
Website