Vim常见配置与命令
本文引自http://www.acczy.net/?p=301,在自己这里放一个以后方便查看
1. 基本安装
安装Vim,Windows系统中的主目录(类似于Linux的Home)中建立vimfiles文件夹、_vimrc文件和_gvimrc文件,_gvimrc是Vim的GUI配置文件,在_vimrc之后执行,由于一直使用的是gVim,因此就把_vimrc留空,所有的配置写入_gvimrc中。
2. 基本配置
"行号 |
上面的配置基本上将Vim配置成比较给力的编辑器
( p.s.: candy配色方案,下载,置于vimfiles\colors文件夹中 )
3. 插件配置
taglist和ctags,能够非常方便地在Vim中浏览代码,下载taglist插件,置于vimfiles文件夹中,再将ctags.exe置于Windows\System32文件夹中,最后把下面的配置添加到_gvimrc中。
"只显示当前文件的tag |
(2) winmanager插件
winmanager插件,一个文件浏览器和窗口管理器,下载winmanager插件,置于vimfiles文件夹中,再把下面的配置添加到_gvimrc中。
let g:winManagerWindowLayout='FileExplorer' |
(3) txt插件
txt文件是有文件类型的哦~~下载,置于vimfiles\syntax文件夹中,再配置下。
"txt插件 |
(4) Buffer Explorer / Browser 插件
Vim Buffer 管理器,可视化管理,置于vimfiles文件夹中。
(5) HTML插件
非常适合于HTML开发的插件,非常和谐,下载HTML插件,置于vimfiles文件夹中,再简单配置下。
"HTML插件 |
(6) CSS 颜色预览插件
将CSS的16进制的颜色代码显示预览成可视化的颜色,很给力哇,下载之,置于vimfiles\after\syntax中。
4. 基本操作
(1) 文件保存&&退出
| 操作 | 功能 |
| :w | 保存 |
| :w filename | 另存为filename |
| :wq! | 保存退出 |
| :wq! filename | 以filename为文件名保存退出 |
| :q! | 强制退出 |
(2) 光标移动
| 操作 | 功能 |
| k | 向上移动一行 |
| j | 向下移动一行 |
| h | 向左移动一个字符 |
| l | 向右移动一个字符 |
| #k | 向上移动#行 |
| #j | 向下移动#行 |
| #k | 向上移动#行 |
| #h | 向左移动#个字符 |
| #l | 向右移动#个字符 |
| gk | 向上移动一行(适用于单行跨越多行) |
| gj | 向下移动一行(适用于单行跨越多行) |
| fx | 移动到当前行下一个字母x处(;重复命令) |
| tx | 移动到当前行下一个字母x的左边一个位置(;重复命令) |
| Fx | 移动到当前行上一个字母x处(;重复命令) |
| w | 移动到后一个词 |
| b | 移动到前一个词 |
| ^ | 移动到当前行行首 |
| $ | 移动到当前行行尾 |
| ) | 移动到后一个句子 |
| ( | 移动到前一个句子 |
| G | 移动到文件的最后一行 |
| gg | 移动到文件的第一行 |
| #G | 移动到文件第#行 |
| H | 移动到屏幕首行 |
| L | 当前屏幕末行 |
| M | 当前屏幕末行 |
| * | 读取光标处字符串,移动到下一个出现的位置 |
| # | 读取光标处字符串,移动到上一个出现的位置 |
| ctrl+b | 向上移动一屏 |
| ctrl+f | 向下移动一屏 |
| `. | 移动到上次编辑文件的位置 |
(3) 文本的插入
| 操作 | 功能 |
| i | 在光标之前插入 |
| a | 在光标之后插入 |
| I | 光标所在行的行首插入 |
| A | 光标所在行的行末插入 |
| o | 光标所在的行的下面插入一行 |
| O | 光标所在的行的上面插入一行 |
| s | 删除光标后的一个字符,进入插入模式 |
| S | 删除光标所在的行,进入插入模式 |
| c{command} | 删除command命令跨过的字符,进入插入模式 |
(4) 文本的删除
| 操作 | 功能 |
| x | 删除光标所在的一个字符 |
| #x | 删除光标所在和光标后的#个字符 |
| dw | 删除光标所在单词 |
| #dw | 删除光标所在和光标后的#个单词 |
| dd | 删除光标所在行 |
| #dd | 删除光标所在和光标下的#行 |
| d{command} | 删除command命令跨过的字符 |
(5) 撤消
| 操作 | 功能 |
| u | 撤消操作 |
| ctrl+r | 重做撤消操作 |
(6) 复制&&粘贴
| 操作 | 功能 |
| y | 复制 |
| yy | 复制光标所在行 |
| p | 粘帖在光标之后 |
| shift+p | 粘帖在光标之前 |
(7) 查找&&替换
| 操作 | 功能 |
| /SEARCH | 正向查找SEARCH,n移动光标到下一个符合条件的地方 |
| ?SEARCH | 反向查找SEARCH,shift+n移动光标到下一个符合条件的地方 |
| n | 继续查找(正方向) |
| shift+n | 继续查找(反方向) |
| :%s /SEARCH/REPLACE/g | 文档中所有SEARCH替换成REPLACE |
| :s /SEARCH/REPLACE/g | 当前光标所在行中的SEARCH替换成REPLACE,高亮显示所有SEARCH |
| :#,# s /SEARCH/REPLACE/g | #行到#行中所有SEARCH替换成REPLACE |
| :nohl | 取消高亮显示 |
(8) vi中运行shell命令(bash、cmd等)
| 操作 | 功能 |
| :!shell_command | 运行shell_command |
| :e file/forder_path | Vim直接访问文件 |
Vim常见配置与命令的更多相关文章
- 远程拷贝、查看端口、vim常见快捷键、查找替换命令、grep命令、查看存储空间的命令、chkconfig命令、系统自动启动级别、主机名配置、IP地址配置、域名映射、防火墙设置
2.1.远程拷贝 (将/export/servers/hadoop上的文件拷贝到bigdate@192.168.1.1:/export/servers/ ) scp –r /export/server ...
- 为了让vi命令也可以使用vim的配置,需要修改 vi /etc/bashrc 增加一行 alias vi='vim'此时,经过上面配置已经可以显示语法高亮了
为了让vi命令也可以使用vim的配置,需要修改 vi /etc/bashrc 增加一行 aliasvi='vim'此时,经过上面配置已经可以显示语法高亮了
- Vim 基本配置和经常使用的命令
vim 优势和应用场景 vim 的优点纯文字编辑和 Linux 完美的融合提供了命令行.只能假设 ssh 至server进行操作,那么这样的情况就仅仅能使用 vim 了.vim 也是最为强大的通用文本 ...
- (转)CentOS 7常见的基础命令和配置
CentOS 7常见的基础命令和配置 原文:http://blog.51cto.com/hujiangtao/1973566 管理服务 命令格式:systemctl COMMAND name.serv ...
- Httpd2.2常见配置及功能
Httpd 2.2常见配置 要配置http服务的配置文件,先备份一下,养成良好习惯,如果误操作导致http服务起不来,就可以将备份的主配置文件重新覆盖一下 httpd配置文件的组成:有三大部分组成,其 ...
- macOS中Vim基本配置,颜色主题/语法/indent设置
macOS中Vim基本配置 Vim的初始化配置 .vimrc 存放位置 macOS 环境下 vim 的初始化配置文件为 .vimrc , 通常有两个(系统版本和用户版本),一个位于 /usr/shar ...
- 【vim环境配置】详细实录
[写在前面] 以下的所有内容主要参照: https://github.com/yangyangwithgnu/use_vim_as_ide . 原blog作者写的非常用心,建议大家都去看看.(个人觉得 ...
- 4.Vim编辑器与Shell命令脚本
第4章 Vim编辑器与Shell命令脚本 章节简述: 本章首先讲解如何使用Vim编辑器来编写.修改文档,然后通过逐个配置主机名称.系统网卡以及Yum软件仓库参数文件等实验,帮助读者加深Vim编辑器中诸 ...
- Httpd服务入门知识-Httpd服务常见配置案例之基于用户账号实现访问控制
Httpd服务入门知识-Httpd服务常见配置案例之基于用户账号实现访问控制 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.基于用户的访问控制概述 认证质询: WWW-Auth ...
随机推荐
- SQL SERVER 查询语句学习:CHARINDEX
场景介绍 项目A需要一个批量删除的功能,之前我一直用SqlTransaction去处理,今天同事告诉我可以用CHARINDEX函数去解决问题,因此我今天就研究了一下. SQL语句 ---定义要删除的数 ...
- Java的同步容器和并发容器
前言: 之前在介绍Java集合的时候说到,java提供的实现类很少是线程安全的.只有几个比较古老的类,比如Vector.Hashtable等是线程安全的,尤其是Hashtable,古老到连命名规范都没 ...
- Javascript Array和String的互转换
Array类可以如下定义: var aValues = new Array(); 如果预先知道数组的长度,可以用参数传递长度 var aValues = new Array(20); -------- ...
- 算法(13)Contiguous Array
题目:找出数组的一个子数组,要求这个子数组中0和1的数量相等,找出最大长度的这样的数组! 思路:也是受网上算法的启发吧,用一个 语言:如何初始化一个unordered_map<int,int&g ...
- arc068 E: Snuke Line
首先要知道 (m/1 + m/2 + ... + m/m) 约为 mlogm 还有一个比较明显的结论,如果一个纪念品区间长度大于d,那么如果列车的停车间隔小于等于d,则这个纪念品一定能被买到 然后把区 ...
- 关于label标签的作用
label标签的定义和用法: <label> 标签为 input 元素定义标注(标记). label 元素不会向用户呈现任何特殊效果.不过,它为鼠标用户改进了可用性.如果您在 label ...
- 【NOIP模拟赛】与非 乱搞
biubiu~~~ 正解是线段树维护真值表,但是我觉得对于这道题来说乱搞就够了....... 我们发现如果我们把每一个数都一开始取反就会发现对于最后结果来说 x=x^1,x nand x=x|x ,x ...
- springboot之mybatis别名的设置
mybatis别名设置 在具体的mapper.xml文件中,定义很多的statement,statement需要parameterType指定输入参数的类型.需要resultType指定输出结果的映射 ...
- 两个数组的交集 II [ LeetCode - 350 ]
原题地址:https://leetcode-cn.com/problems/intersection-of-two-arrays-ii/description/ 给定两个数组,写一个方法来计算 ...
- 利用WebStorm来管理你的Github
什么是Github Github是一个共享虚拟主机服务,用于存放使用Git版本控制的软件代码和内容项目,以最简单的方式来说,其实就是一个代码库,上面有全世界无数优秀的码农上传自己的作品和大家共享(当然 ...