一、完全卸载vim的方法
sudo apt-get remove --purge vim (--purge 是完全删除,会连配置文件一起删除)
二、Vim前言——————“世界上只有三种编辑器,EMACS、VIM和其它”
三、Vim基础入门
1、光标在屏幕文本中的移动既可以用箭头键,也可以使用hjkl字母键
h(左移) j(上移) k(下移) l(右移)
2、进入vim编辑器方法:
vim 文件名
3、退出vim编辑器的方法:
:q! <回车> 放弃所有改动退出 :wq <回车> 保存改动退出 回车> 回车>
4、在正常模式下删除光标所在位置的字符
x
5、插入文本
i 输入插入文本(在光标处)A 输入插入文本(在一行后添加文本)
6、删除
dw 从光标处删除到下一个单词d$ 从光标处删除到当前行末尾dd 删除整行
7、动作重复
operator [number] motion
8、光标移动到首行
0
9、撤销动作
u 撤销U 撤销在一行所做的改动ctrl-R 恢复撤销的结果
10、重新置入删除内容
p
11、替换
r 替换当前光标的字符ce 替换当前光标到单词的末尾的内容c$ 替换当前光标到行末的内容
12、光标跳转
CTRL-G 用于显示当前光标所在位置和文件状态信息G 光标跳到文件最后一行行号-G 先输入行号再输入G,则是将光标移动到该行号代表的行gg 光标跳到文件到首行
13、查找
/ '+' 字符 正向查找该字符?'+'字符 反向查找字符n 重复正常执行查找字符串N 重复反向执行查找字符串CTRL-O 跳转回较旧位置CTRL-I 跳转回较新位置 :nohl 取消高亮
14、括号匹配
%
15、替换字符串
s/old/new 在一行内替换第一个old字符串为news/old/new/g 在一行内替换所old为new#,#/s/old/new/g 从#到#行内的所有old替换为new%s/old/new/g 替换文件内的全部old为new%s/old/new/gc 进行全文替换的时候询问用户确认每个替换需添加c标志
16、在vim中使用外部命令
:!command 执行一个外部命令command:!ls 用于显示当前目录的内容:!del filename 删除名字为filename的文件
17、文件间操作
:w FILENAME 将当前vim编辑的内容保存命名为FILENAME的文件中v motion:w FILENAME 将当前编辑文件中可视模式下选中的内容保存到FILENAME中:r FILENAME 提取磁盘文件FILENAME幷插入到当前文件的光标位置后面:r !dir 可读取dir命令的输出幷放置到当前文件的光标位置后面
18、插入模式进入
19、光标移动
w 移动到下一个单词的首部e 移动到当前单词的尾部b 返回到上一个单词的首部
20、复制黏贴
y 复制文本p 黏贴文本
21、替换模式
R
22、set xxx进行一些有用的设置
'ic' 'ignorecase' 查找时忽略字母的大小写'is' 'incsearch' 查找短语时显示部分匹配'hls' 'hlsearch' 高亮显示所有的匹配短语在选项前加上'no’可以关闭选项 set noic
四、vim基础入门推荐教程
1、自带的vimtutor
2、http://coolshell.cn/articles/5426.html 简明VIM练级攻略
3、https://vim-adventures.com/ VIM大冒险
4、命令图解
五、插件管理神器vundle安装
链接:http://blog.csdn.net/zhangpower1993/article/details/52184581
1、安装vundle
git clone https://github.com/VundleVim/Vundle.vim.git ~/.vim/bundle/Vundle.vim
2、配置说明
插件有三种类型:
1. Github上vim-scripts仓库的插件 2. Github上非vim-scripts仓库的插件 3. 不在Github上的插件 对于不同的插件,vundle自动管理和下载插件的时候,有不同的地址填写方法,有如下三类: 1. 在Github上vim-scripts用户下的仓库,只需要写出repos(仓库)名称 2. 在Github其他用户下的repos, 需要写出”用户名/repos名” 3. 不在Github上的插件,需要写出全路径
3、配置vundle插件
vim ~/.vimrc
4、vimrc样例
set nocompatible " 去除VI一致性,必须要添加filetype off " 必须要添加" 设置包括vundle和初始化相关的runtime pathset rtp+=~/.vim/bundle/Vundle.vimcall vundle#begin()" 另一种选择, 指定一个vundle安装插件的路径"call vundle#begin('~/some/path/here')" 让vundle管理插件版本,必须Plugin 'VundleVim/Vundle.vim'" 以下范例用来支持不同格式的插件安装." 请将安装插件的命令放在vundle#begin和vundle#end之间." Github上的插件" 格式为 Plugin '用户名/插件仓库名'Plugin 'tpope/vim-fugitive'" 来自 http://vim-scripts.org/vim/scripts.html 的插件" Plugin '插件名称' 实际上是 Plugin 'vim-scripts/插件仓库名' 只是此处的用户名可以省略Plugin 'L9'" 由Git支持但不再github上的插件仓库 Plugin 'git clone 后面的地址'Plugin 'git://git.wincent.com/command-t.git'" 本地的Git仓库(例如自己的插件) Plugin 'file:///+本地插件仓库绝对路径'Plugin 'file:///home/gmarik/path/to/plugin'" 插件在仓库的子目录中." 正确指定路径用以设置runtimepath. 以下范例插件在sparkup/vim目录下Plugin 'rstacruz/sparkup', {'rtp': 'vim/'}" 安装L9,如果已经安装过这个插件,可利用以下格式避免命名冲突Plugin 'ascenator/L9', {'name': 'newL9'}" 你的所有插件需要在下面这行之前call vundle#end() " 必须filetype plugin indent on " 必须 加载vim自带和插件相应的语法和文件类型相关脚本" 忽视插件改变缩进,可以使用以下替代:"filetype plugin on"" 常用的命令" :PluginList - 列出所有已配置的插件" :PluginInstall - 安装插件,追加 `!` 用以更新或使用 :PluginUpdate" :PluginSearch foo - 搜索 foo ; 追加 `!` 清除本地缓存" :PluginClean - 清除未使用插件,需要确认; 追加 `!` 自动批准移除未使用插件"" 查阅 :h vundle 获取更多细节和wiki以及FAQ" 将你自己对非插件片段放在这行之后
5、安装需要的插件
(1)将想要安装的插件,按照地址填写方法,将地址填写在vundle#begin和vundle#end之间就可以
(2)保存之后,有两种方法安装插件
A、运行 vim ,再运行 :PluginInstall
B、vim +PluginInstall +qall
6、移除不需要的插件
- 编辑.vimrc文件移除的你要移除的插件所对应的plugin那一行。
- 保存退出当前的vim
- 重新打开vim,输入命令
BundleClean
7、其他常用命令
- 更新插件
BundleUpdate
- 列出所有插件
BundleList
- 查找插件
BundleSearch
六、vim配置
1、无敌现成vim配置:https://github.com/spf13/spf13-vim/
curl https://j.mp/spf13-vim3 -L > spf13-vim.sh && sh spf13-vim.sh
2、很好的一篇博文:讲解常用配置,可惜太小白了,自己装一个都跑不起来,研究出来再做下笔记。