VIM常用快捷键(转载)
移动光标
- h,j,k,l 上,下,左,右
- ctrl-e 移动页面
- ctrl-f 上翻一页
- ctrl-b 下翻一页
- ctrl-u 上翻半页
- ctrl-d 下翻半页
- w 跳到下一个字首,按标点或单词分割
- W 跳到下一个字首,长跳,如end-of-line被认为是一个字
- e 跳到下一个字尾
- E 跳到下一个字尾,长跳
- b 跳到上一个字
- B 跳到上一个字,长跳
- 0 跳至行首,不管有无缩进,就是跳到第0个字符
- ^ 跳至行首的第一个字符
- $ 跳至行尾
- gg 跳至文首
- G 调至文尾
- 5gg/5G 调至第5行
- gd 跳至当前光标所在的变量的声明处
- fx 在当前行中找x字符,找到了就跳转至
- ; 重复上一个f命令,而不用重复的输入fx
- * 查找光标所在处的单词,向下查找
- # 查找光标所在处的单词,向上查找
删除复制
- dd 删除光标所在行
- dw 删除一个字(word)
- d/D删除到行末x删除当前字符X删除前一个字符yy复制一行yw复制一个字y/Y 复制到行末
- p 粘贴粘贴板的内容到当前行的下面
- P 粘贴粘贴板的内容到当前行的上面
插入模式
- i 从当前光标处进入插入模式
- I 进入插入模式,并置光标于行首
- a 追加模式,置光标于当前光标之后
- A 追加模式,置光标于行末
- o 在当前行之下新加一行,并进入插入模式
- O 在当前行之上新加一行,并进入插入模式
- Esc 退出插入模式
编辑
- J 将下一行和当前行连接为一行
- cc 删除当前行并进入编辑模式
- cw 删除当前字,并进入编辑模式
- c$ 擦除从当前位置至行末的内容,并进入编辑模式
- s 删除当前字符并进入编辑模式
- S 删除光标所在行并进入编辑模式
- xp 交换当前字符和下一个字符
- u 撤销
- ctrl+r 重做
- ~ 切换大小写,当前字符
- >> 将当前行右移一个单位
- << 将当前行左移一个单位(一个tab符)
- == 自动缩进当前行
查找替换
- /pattern 向后搜索字符串pattern
- ?pattern 向前搜索字符串pattern
- "\c" 忽略大小写
- "\C" 大小写敏感
- n 下一个匹配(如果是/搜索,则是向下的下一个,?搜索则是向上的下一个)
- N 上一个匹配(同上)
- :%s/old/new/g 搜索整个文件,将所有的old替换为new
- :%s/old/new/gc 搜索整个文件,将所有的old替换为new,每次都要你确认是否替换
退出编辑器
- :w 将缓冲区写入文件,即保存修改
- :wq 保存修改并退出
- :x 保存修改并退出
- :q 退出,如果对缓冲区进行过修改,则会提示
- :q! 强制退出,放弃修改
多文件编辑
- vim file1.. 同时打开多个文件
- :args 显示当前编辑文件
- :next 切换到下个文件
- :prev 切换到前个文件
- :next! 不保存当前编辑文件并切换到下个文件
- :prev! 不保存当前编辑文件并切换到上个文件
- :wnext 保存当前编辑文件并切换到下个文件
- :wprev 保存当前编辑文件并切换到上个文件
- :first 定位首文件
- :last 定位尾文件
- ctrl+^ 快速在最近打开的两个文件间切换
- :split[sp] 把当前文件水平分割
- :split file 把当前窗口水平分割, file
- :vsplit[vsp] file 把当前窗口垂直分割, file
- :new file 同split file
- :close 关闭当前窗口
- :only 只显示当前窗口, 关闭所有其他的窗口
- :all 打开所有的窗口
- :vertical all 打开所有的窗口, 垂直打开
- :qall 对所有窗口执行:q操作
- :qall! 对所有窗口执行:q!操作
- :wall 对所有窗口执行:w操作
- :wqall 对所有窗口执行:wq操作
- ctrl-w h 跳转到左边的窗口
- ctrl-w j 跳转到下面的窗口
- ctrl-w k 跳转到上面的窗口
- ctrl-w l 跳转到右边的窗口
- ctrl-w t 跳转到最顶上的窗口
- ctrl-w b 跳转到最底下的窗口
多标签编辑
- :tabedit file 在新标签中打开文件file
- :tab split file 在新标签中打开文件file
- :tabp 切换到前一个标签
- :tabn 切换到后一个标签
- :tabc 关闭当前标签
- :tabo 关闭其他标签
- gt 到下一个tab
- gT 到上一个tab
- 0gt 跳到第一个tab
- 5gt 跳到第五个tab
执行shell命令
- 在命令模式下输入":sh",可以运行相当于在字符模式下,到输入结束想回到VIM编辑器中用exit,ctrl+D返回VIM编辑器
- 可以"!command",运行结束后自动回到VIM编辑器中
- 用“Ctrl+Z“回到shell,用fg返回编辑
- :!make -> 直接在当前目录下运行make指令
VIM启动项
- -o[n] 以水平分屏的方式打开多个文件
- -O[n] 以垂直分屏的方式打开多个文件
自动排版
在粘贴了一些代码之后,vim变得比较乱,只要执行gg=G就能搞定
如何在vim中编译程序
- 在vim中可以完成make,而且可以将编译的结果也显示在vim里,先执行 :copen 命令,将结果输出的窗口打开,然后执行 :make
- 编译后的结果就显示在了copen打开的小窗口里了,而且用鼠标双击错误信息,就会跳转到发生错误的行。
buffer操作
- buffer状态
- (非活动的缓冲区)
- a (当前被激活缓冲区)
- h (隐藏的缓冲区)
- % (当前的缓冲区)
- # (交换缓冲区)
- = (只读缓冲区)
- + (已经更改的缓冲区)
VIM 操作目录
- 打开目录
- vim .
- vim a-path/
以下操作在操作目录时生效
p,P,t,u,U,x,v,o,r,s- c 使当前打开的目录成为当前目录
- d 创建目录
- % 创建文件
- D 删除文件/目录
- - 转到上层目录
- gb 转到上一个 bookmarked directory
- i 改变目录文件列表方式
- ^l 刷新当前打开的目录
- mf - 标记文件
- mu - unmark all marked files
- mz - Compress/decompress marked files
- gh 显示/不显示隐藏文件( dot-files)
- ^h 编辑隐藏文件列表
- a 转换显示模式, all - hide - unhide
- qf diplay infomation about file
- qb list the bookmarked directories and directory traversal history
- gi Display information on file
- md - 将标记的文件(mf标记文件)使用 diff 模式
- me - 编辑标记的文件,只显示一个,其余放入 buffer 中
- mm - move marked files to marked-file target directory
mc - copy
vim 中复制/移动文件
- mt - 移动到的目录
- mf - 标记要移动的文件
- mc - 移动/复制
- R 移动文件
打开当前编辑文件的目录
- :Explore
- :Hexplore
- :Nexplore
- :Pexplore
- :Sexplore
- :Texplore
- :Vexplore
本文转自:VIM常用快捷键
如需转载,请注明出处:https://www.cnblogs.com/zhuchenglin/p/10058811.html
VIM常用快捷键(转载)的更多相关文章
- [转贴] VIM 常用快捷键 --一直记不住
vim 常用快捷键 原帖地址: https://www.cnblogs.com/tianyajuanke/archive/2012/04/25/2470002.html 1.vim ~/.vimrc ...
- [转帖]VIM常用快捷键
VIM常用快捷键 https://www.cnblogs.com/markleaf/p/7808817.html 快捷键能够显著的提高工作效率 一.移动光标 h,j,k,l 上,下,左,右ctrl-e ...
- Linux系统下vim常用快捷键及功能
1. 什么是vim Vim是一个类似于Vi的著名的功能强大.高度可定制的文本编辑器,在vi的基础上改进和增加了很多特性. vim编辑器是Linux系统下标准的编辑器,作用相当于windows系统中的记 ...
- SQLyog常用快捷键 - 转载
SQLyog常用快捷键 1. SQL格式化 F12 格式化当前行所在的SQL Ctrl+F12 格式化选中的SQL 2. 窗口操作 Ctrl+T 打开一个新的查询窗口 Alt+L ...
- vim常用快捷键总结一(光标移动命令)
vim编辑器的工作模式分为3种即(命令模式,编辑模式和尾行模式),具体定义这里就不在赘述了,这里只简单介绍各工作模式下对应的操作和快捷方式. 通常来说三三种模式功能划分大致如下 命令模式:定位.翻页. ...
- Vim常用快捷键--正常的学习曲线
vim可能对于初学者不太友好,学习曲线有点陡,特此整理了较为平滑的学习曲线的学习快捷键的方式,包含最常用的快捷键,让初学者领悟vim的优点,想要进阶学习请查找其它更好的教程 正常模式:可以使用快捷键命 ...
- VIM 常用快捷键
一,光标移动 大家不要觉得光标移动不重要,其实它是基础,更好的光标移动,复制,粘贴,删除等才能更加的得心应手,进入了编辑器里面后,鼠标就不能用了. 光标移动 h 或 向左箭头键(←) 20h或者20( ...
- [Linux] VIM 常用快捷键2
如何使用MacVim 1.在插入模式之外 基本上来说,你应该尽可能少的呆在插入模式里面,因为在插入模式里面 VIM 就像一个“哑巴”编辑器一样.很多新手都会一直呆在插入模式里面,因为这样易于使用.但 ...
- VIM常用快捷键~网页上查找
转自~木枫林 转自~鸟哥的私房菜 第十章.vim 程序编辑器 第十章.vim 程序编辑器 最近更新日期:2009/08/20 2. vi 的使用 2.1 简易执行范例 2.2 按键说明 2.3 一个案 ...
随机推荐
- Mock.js简易教程,脱离后端独立开发,实现增删改查功能(转)
在我们的生产实际中,后端的接口往往是较晚才会出来,并且还要写接口文档,于是我们的前端的许多开发都要等到接口给我们才能进行,这样对于我们前端来说显得十分的被动,于是有没有可以制造假数据来模拟后端接口呢, ...
- sed 修改文本
修改文本是指将所匹配的文本行利用新文本替代,sed编辑命令的修改文本符号为 c\, [ sed]$ more input [ sed]$ more aa.sed #!/bin/sed -f //c\ ...
- Python简单爬虫获取岗位招聘人数
#encoding=utf-8 import selenium import selenium.webdriver import re import time # pip install seleni ...
- 前端开发,走浏览器缓存真的很烦,拒绝浏览器走缓存从meta标签做起!
<meta http-equiv="Cache-Control" content="no-cache" /> <meta http-equiv ...
- Lesson 2-1 (数据结构,序列通用的操作)
2.0 数据结构 --- 数据结构是以某种方式组合起来的数据元素集合. --- python的常见的数据结构 2.1 序列(sequence) --- 序列中的每个元素都有编号,即索引(也称为下标). ...
- git在项目中的实际运用
项目中只运用git版本管理的情况下: 1.创建分支命令: git branch (branchname) 切换分支命令: git checkout (branchname) 当你切换分支的时候,Git ...
- 洛谷 P1045 & [NOIP2003普及组] 麦森数
题目链接 https://www.luogu.org/problemnew/show/P1045 题目大意 本题目的主要意思就是给定一个p,求2p-1的位数和后500位数. 解题思路 首先看一下数据范 ...
- Java序列化随记
序列化简介: 程序中的对象并不只是存在内存中,还需要传输网络,或者保存起来下次再加载出来用,因此需要Java序列化技术. Java序列化技术正是将对象转变成一串由二进制字节组成的数组,可以通过将二进制 ...
- Linux基础-命令(续)
touch 命令: 如果文件不存在,创建文件, 如果文件存在,则修改文件最后修改时间. mkdir 命令: -p 递归创建目录,如,mkdir -p a/b/c/d Linux 中同一目录 ...
- cocos creator中粒子效果的使用
就如同上图的星星特效一样,在触碰时产生特效,但是并不销毁节点,因为要使用很多次,因此使用节点池NodePool保存起来的. 以下是使用粒子效果使要使用到的一些基本控制函数: 我的使用: