Vim高手,从来不用鼠标
Vim脱离鼠标第一步
平时不可缺少的会用到vim,但是避免不了鼠标,事实上,省略鼠标是完全可以的,没有想像中那么难,看我短短几行带大家一起省略鼠标。
对了,vim有三种模式,基本模式就是用来输入命令的,比如删除跳转等操作就是在基本模式下面;插入模式不用说;命令模式就是按Esc+:进入的模式,之间的切换很容易我就废话了。下面几乎都在基本模式操作。
基本操作
移动
h,l,j,k 左右下上
w,b 移动到下/上一个单词

快速退出
普通模式下输入Shift+zz即可保存退出vim
进入插入模式
i 在当前光标处进行编辑
I,A 在行首/末插入

a 在光标后插入编辑
o,O 在当前行后/前插入一个新行
cw 删除一个单词,同时进入插入模式

文档编辑
文档编辑的所有命令全部符合一个规律,[操作]+[行号]+定位,三个部分完成一个动作,比如:删除操作代码为d,重复操作代码代表操作当前行,则删除2行就是d2d,操作和行号也互换位置 2dd,可以省略行号dd代表删除一行,多数时候可以不要操作则代表定位 5G 代表移动到第五行。
删除
x 反退格键(delete键) X 退格键

dw 删除一个单词(不适用中文)类似于上一节说的cw,只是删除后还在普通模式
d$ 删除至行尾,d^ 删除至行首

dG 删除到文档结尾处 d1G 删至文档首部
小结:
前缀(操作) :d代表删除
中缀:行号
后缀(定位):d代表行,G代表尽头, $代表行尾,^代表行首,w代表单词
重复命令
普通模式下输入dd,删除一行,输入.(小数点)会再次删除一行,除此之外也可以重复其他任意操作

使用dw删除一个单词,然后用.命令重复删除单词操作

游标
游标跳转位置,不过是没有去掉操作后输入的命令。
nG(n Shift+g) 游标移动到第 n 行(如果默认没有显示行号,请先进入命令模式,输入:set nu以显示行号)
gg 游标移动到到第一行
G(Shift+g) 到最后一行

G代表尽头, $代表行尾,^代表行首,w代表下一个单词,b上一个单词,e当前单词末尾

f+字母 向后搜索 字母并跳转到第一个匹配的位置
F+字母 向前搜索字母并跳转到第一个匹配的位置

复制与粘贴
复制为y,后可以接定位符,
yy复制游标所在的整行(3yy表示复制3行)
y^复制至行首,或y0。不含光标所在处字符。 y$ 复制至行尾。含光标所在处字符。

yw 复制一个单词。
y2w 复制两个单词。
yG 复制至文本末。
y1G 复制至文本开头

使用 p 粘贴
p(小写)代表粘贴至光标后(下)
P(大写)代表粘贴至光标前(上)
剪切
我们上面在删除那学到的d操作,其实就是剪切,我们使用ddp就可以交换上下行。

小结
到这里是不是文档操作可以直接脱离鼠标了!
移动: h,l,j,k,w,b
跳转:G nG f/F+字母
定位:G代表尽头, $代表行尾,^代表行首,w代表下一个单词,b上一个单词,e当前单词末尾
操作:y d p
如果有帮助别忘了分享给朋友哦~
Vim高手,从来不用鼠标的更多相关文章
- Vim高手,从来不用鼠标2——替换、撤销、缩进、查找
本文章原创首发于公众号:编程三分钟 vim 替换.撤销.缩进.查找 上一次我们掌握了移动.跳转.定位.操作(删除.复制.粘贴),基本使用vim脱离鼠标完全是可以做到的了.速记如下: 移动: h,l,j ...
- 为什么黑客都不用鼠标?你听说过Linux吗?
为什么黑客都不用鼠标?你听说过Linux吗? 微软和它的朋友们的如意算盘. 下面来看看微软的收入是怎么来的.首先,Windows系列操作系统,一个就是 800+RMB,每次升级又是几乎同样的价钱.Wi ...
- vim不用鼠标复制粘贴
第一种方法(只能复制行): 在当前行3yy(表示复制3行,多行同理),然后鼠标移到需要粘贴的位置,按p,即可粘贴 第二种方法(无限制): 按v进入visual模式,移动光标(推荐使用hjkl,用熟后比 ...
- 寓教于乐!一款游戏让你成为 Vim 高手!
我们都知道,Vim 是 Linux 下一种非常重要的文本编辑器,我们可以用它来看代码.改代码,很多高手直接将 Vim 打造成一款强大的 IDE 用来写代码. 但是,对于新手而言,Vim 相对于其它编辑 ...
- 设置Chart.js默认显示Point点的值不用鼠标经过才显示
Chart.js默认的显示方式是鼠标经过Point点的时候才会显示这个点的值,代码如下: var testdata: { periodNum: ["2018121","2 ...
- OS X 使用技巧——不用鼠标就能打开应用程序
如果要打开的应用程序没有保留在Dock栏里,一种快速启动它的办法是按住Control+Space键后再输入应用程序的名称.按Control+Space键会开启聚光灯(Spotlight)搜索工具,它会 ...
- 我花了2个月时间,整理了100篇Linux技术精华,技术人必看
一个以技术为立身根基的教育机构做出来的微信号,干货程度会有多高? 马哥Linux运维公众号运营五年,从一开始的定位就是给技术人分享加薪干货的地方.这五年里,公众号运营最重的任务就是做内容.内容并不好做 ...
- shortcut&website
作者:Vincent链接:https://www.zhihu.com/question/28993252/answer/61618961来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转 ...
- Debian 9 VIM 使用鼠标右键复制
起因 装了 debian 9 以后,vim没有办法使用鼠标直接选择并复制,后来发现是默认的配置问题.于是需要按照以下方式解决: 解决方法 1. 编辑 vim 的默认配置文件 vim /usr/shar ...
随机推荐
- 记一次java.lang.NoClassDefFoundError异常
前阵子做了个评论过滤敏感词的功能,本地测试没有任何问题,然后就部署到线上服务器,通知相关人员线上测试.大约过了十来天,那货和我说接口出问题了,当时一脸懵逼,用了十来天突然出问题了???好吧,出问题了咱 ...
- ThinkPHP5.0 模板
ThinkPHP5.0 模板 模板渲染 默认的视图目录是默认的模块下的view目录 渲染规则:调用 \think\View 类fetch方法 // [模板文件目录]/当前控制器名(小写+下划线)/当前 ...
- linux初学者-虚拟机管理篇
linux初学者-虚拟机管理篇 之前已经介绍过,在linux系统的学习中,一般需要在虚拟机中进行操作,但是虚拟机是如何安装的呢?又是如何管理的呢?下文将对虚拟机的安装和管理进行一个简要的介绍. 1.虚 ...
- @GetMapping、@PostMapping和@RequestMapping的区别
@GetMapping 用于将Http Get 请求映射到特定处理程序方法的注释.具体来说就是:@GetMapping是一个作为快捷方式的组合注释 @RequestMapping(method = R ...
- 动态规划_Apple Catching_POJ-2385
It and ) in his field, each full of apples. Bessie cannot reach the apples when they are on the tree ...
- 计数排序and基数排序
1 计数排序,稳定 复杂度o(k + n) public static int[] countingSort(int[] nums) { int n = nums.length; ; ; i & ...
- 前后端分离 之vue-cli 搭建项目mac 系统讲解
前端项目搭建必备技术 webpack nodejs 搭建 vue-cli 的安装 以上技术自行了解安装 一:创建前端项目 采用vue-cli 脚手架 1:终端执行如下命令 vue init webpa ...
- Maven中央仓库发布历程
一.前言 最近自己在学习Spring boot的过程中开发了一个组件 multithreadpool-spring-boot-starter,通过这个组件,我们可以动态根据配置文件进行多个线程池的初始 ...
- 常用服务部署脚本(nodejs,pyenv,go,redis,)
根据工作总结的常用安装脚本,要求linux-64系统 #!/bin/bash path=/usr/local/src node () { cd $path #wget https://nodejs.o ...
- 在ABP中灵活使用AutoMapper
demo地址:ABP.WindowsService 该文章是系列文章 基于.NetCore和ABP框架如何让Windows服务执行Quartz定时作业 的其中一篇. AutoMapper简介 Auto ...