一、完全卸载vim的方法
sudo apt-get remove --purge vim (--purge 是完全删除,会连配置文件一起删除)
二、Vim前言——————“世界上只有三种编辑器,EMACS、VIM和其它”
三、Vim基础入门
1、光标在屏幕文本中的移动既可以用箭头键,也可以使用hjkl字母键
h(左移) j(上移) k(下移) l(右移)
2、进入vim编辑器方法:
vim 文件名
3、退出vim编辑器的方法:
<ESC> :q! <回车> 放弃所有改动退出
<ESC> :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字符串为new s/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上的插件,需要写出Git全路径
3、配置vundle插件
vim ~/.vimrc
4、vimrc样例
set nocompatible " 去除VI一致性,必须要添加 filetype off " 必须要添加 " 设置包括vundle和初始化相关的runtime path set rtp+=~/.vim/bundle/Vundle.vim call 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、很好的一篇博文:讲解常用配置,可惜太小白了,自己装一个都跑不起来,研究出来再做下笔记。