插入新行

回忆上节课内容

  • i、I 在前面插入文本
  • a、A 在后面插入文本
  • o、O 换行插入文本
  • o 其实是 A 回车
  • O 其实是 k o
  • O 也是 k A 回车

模式切换小技巧

  • 比如你在一句话的中间,并处于插入模式,此时你想要写下一行

    • 从插入模式到正常模式要用 esc
    • 但是 esc 距离基本起手势太遥远了
    • 可以用 ctrl + c 来替代
    • 左手小拇指 ctrl + c
    • 然后 A 回车
  • 有没有更有效率的方法呢?

插入-普通模式

  • 可以 ctrl + o 进入插入普通模式
  • 然后执行 o 继续进行插入
  • 插入普通模式 就是让你执行一次 普通模式 的命令
  • 然后继续保持在 插入模式
  • 插入普通模式 相关帮助在 :h Normalintro.txt 中查到

下素材

#首先找个素材,找个一个网页下载下来
wget github.com/overmind1980
#然后看看下载了个啥
ls
#最后用vim打开这个网页
vim overmind1980

  • 下好了之后打开
  • 把手放到键盘上

命令分布

我们首先看看正常模式下的命令键盘图

  • 基本上个按键都有对应的命令
  • 命令可以分为大写和小写两种
  • iao 进入插入模式(已经解锁)
  • hjkl 进行移动(已经解锁)

起手势

  • 记不住命令怎么办?
  • 淘宝可以搜索 vim 的键盘膜或者贴纸
  • 但我感觉没用

    • 字太小
    • 伤屏幕
    • 依赖性
  • 还得靠自己熟练之后自然记忆

    • 左手食指放在f
    • 右手食指放在j
  • 不管是游泳、弹琴、跑步还是打乒乓球

    • 正确的基本姿势会减少运动伤害
    • 让你的上限更高
    • 肌肉记忆沉淀下来,逐渐变为某些标准
  • 这些标准是每个新手都要遵循的

    • 这可不是简单的循规蹈矩
    • 而是体会着前人的智慧和经验
  • 这会让你后期更厉害

移动命令

  • 起手势是盲打的基本姿势
  • 手轻轻放在中间那行上方一点点
  • 我们知道由于历史的原因 hjkl 对应着移动的命令
  • 正常模式下

    • 有必要把右手四指基本位从 jkl; 移动到 hjkl 吗?

保持起手势

  • 我认为没有必要改变盲打姿势

    • 右手食指是可以控制两个方向位的
    • 继续保持起手势
  • hjkl 右手默认位使用概率非常大
  • 保持指尖的敏感性

    • 手指会比眼睛更早知道打错字了
    • 还有更多神奇的移动命令等待你来解锁

强制起手式

  • 打开当前用户的vim配置文件
vi ~/.vimrc
  • 在前面添加上四句

    • map <Left> <Nop>
    • map <Right> <Nop>
    • map <Up> <Nop>
    • map <Down> <Nop>
  • map是按键映射

    • 我们把上下左右方向键映射为<Nop>
    • 就是什么也不做
    • 保存并关闭vim
    • 然后我们发现上下左右方向键都不好用了

总结

  • 我们这次强化了起手势
  • 回忆了基本的移动方式 hjkl
  • hjkl 外,还有什么移动命令效率更高吗?
  • 我们下次再说!

oeasy教您玩转vim - 10 - # 插入新行的更多相关文章

  1. oeasy教您玩转vim - 56 - # 字符可视化模式

    ​ 可视化编辑 回忆上节课内容 我们学习了关于模式匹配中使用参数 单个参数 :%s/<h2>\(.*\)</h2>/ - \1/g 多个参数 :%s/<img src=\ ...

  2. oeasy教您玩转vim - 57 - # 行可视化

    ​ 可视化编辑 回忆上节课内容 上次我们了解到可视模式 其实可视化对应三种子模式 字符可视模式 v 行可视模式 大写V 块可视模式ctrl+v 我们先来了解字符可视化模式 快捷键 v 可配合各种mot ...

  3. oeasy教您玩转vim - 53 - # 批量替换

    查找细节 回忆上节课内容 我们温习了关于搜索的相关内容 /正向,?反向 n保持方向,N改变方向 可以设置 是否忽略大写小写 是否从头开始查找 是否高亮显示 还有一些正则表达式的使用方法 行头行尾 ^$ ...

  4. 在vim中插入命令行的输出结果

    vim是linux中常见的编辑器,这里讲讲如何在vim中插入命令行的输出结果. 基本用法: 在指令模式下运行 :!command ,如!date将日期显示在vim底部,!ls列出当前目录 将命令结果插 ...

  5. SQL-表的操作(创建表,删除表,更改列,插入新行,更改行的值,删除表中数据)

    一,操作表及列 1.创建表: CREATE TABLE test (ID int  PRIMARY KEY IDENTITY,Name varchar(20) ) 2.删除表 DROP TABLE t ...

  6. insert into 的另一种添加插入新行方式

    语法 1 插入一行 insert into table (field1,field2.....) select value1,value2........; 2 插入多行 insert into ta ...

  7. oeasy教您玩转linux010203显示logo

    我们来回顾一下 上一部分我们都讲了什么?

  8. oeasy 教您玩转linux010101查看内核uname

    linux([?l?n?ks]) 是什么????? 咱们这次讲点什么呢?这次咱们讲讲这个 linux([?l?n?ks]),什么是 linux([?l?n?ks])呢?这linux([?l?n?ks] ...

  9. oeasy教您玩转linux010202软件包管理apt

    顾一下 上一部分我们都讲了什么?

  10. oeasy教您玩转linux010201持续输出yes

    我们来回顾一下 上一部分我们都讲了什么?

随机推荐

  1. Kubernetes Pod调度:从基础到高级实战技巧

    本文深入探讨了Kubernetes中的Pod调度机制,包括基础概念.高级调度技术和实际案例分析.文章详细介绍了Pod调度策略.Taints和Tolerations.节点亲和性,以及如何在高流量情况下优 ...

  2. pytorch(GPU版)安装

    确认有无英伟达显卡,有才能安装GPU版的pytorch,否则只能装CPU版 1.任务管理器->性能: 设备管理器->显示适配器,也可以: nvidia驱动安装地址(大部分电脑自带,不需要额 ...

  3. TS码流解析(一)TS Header

    有一些音视频初学者想要了解TS码流结构,但网上资料不全或者讲得不够清楚,使得学习过程变得异常艰难.这一篇内容将对TS码流结构做详尽解析,争取做到通俗易懂,成为最好的TS码流解析文章. 本篇TS码流解析 ...

  4. mysql忘记密码找回的方法

    mysql忘记密码找回的方法: 在找回之前需要对 --skip-networking 参数进行了解 --skip-grant-tables: 关闭mysql验证模块 同时还需要关闭远程连接(避免他人连 ...

  5. mysql笔记第一天: 介绍和MySQL编译安装

    一.DBA的工作内容: ![](371eaced-e10b-46d9-89e2-f63f15503bb6_files/9edcd22a-ef2d-4c3e-8474-3049255610db.jpg) ...

  6. win11启动虚拟机出现蓝屏

    win11虚拟机启动出现蓝屏 问题 我的电脑是win11系统,最近在安装vmware后装了centos7.6,发现一启动centos,电脑就出现蓝屏,如图 解决 这个问题搞了好久,最终发现是win11 ...

  7. 【论文笔记】AlexNet

    [深度学习]总目录 由于受到计算机性能的影响,虽然LeNet在图像分类中取得了较好的成绩,但是并没有引起很多的关注. 直到2012年,Alex等人提出的AlexNet网络在ImageNet大赛上以远超 ...

  8. 网页唤起qq加群

    今天在网上大浪淘沙了一番,90%的教程都是使用的鹅厂官方的加群组件,但是有个致命bug就是这个加群组件只能唤起自己创建的群,这就很尴尬了,后来偶然发现在qq群资料那边就可以直接获取到加群的链接,害得我 ...

  9. .NET C# 程序自动更新组件

    引言 本来博主想偷懒使用AutoUpdater.NET组件,但由于博主项目有些特殊性和它的功能过于多,于是博主自己实现一个轻量级独立自动更新组件,可稍作修改集成到大家自己项目中,比如:WPF/Winf ...

  10. react移动端组件antd-mobile

    使用react移动端组件antd-mobile完成底部导航功能实现. 官网:https://mobile.ant.design/docs/react/introduce-cn antd-mobile ...