行头行尾

回忆上节课内容

  • 我们这次了解了 大词小词

    • 小词 就是我们常规意义的词

      • =" 等标点分开的词
    • 大词 里面包括了 =" 等标点

      • 只能被空格、tab、换行分割
  • W、E、B 都可以有大词移动

  • 但如果我想一步就跳到行头或行尾
  • 这不一步登天么?
  • 可能么

查阅文档

  • 还是从 :h w,开始查找起
  • 还是在 motion 里面查找
  • 应该和 W 都属于左右移动的部分
  • 找到这样两个命令

行首和行尾

  • ^,也就是 shift+6

    • 作用是移动到行首
    • 或者说移动到本行第一个非空字符
  • $,也就是shift + 4

    • 作用是移动到本行行尾
  • ^$ 也分别对应正则表达式中的 开头结尾

深入细节

  • 如果本行开头第一个字符是空格

    • 那^无法到第一个字符啊?
    • 如果我就想去第一个字符
    • 无论他是空格还是tab
    • 应该怎么办呢?
  • 这个命令应该离 ^ 不远
  • 应该也在 motion 的 左右移动部分
  • 找到了 0

行头区别

  • ^ 是到本行第一个非空字符
  • 0 是到本行第一个字符,不管是不是空格

  • 那结尾如果有空格会如何呢?

结尾细节

  • 相关命令肯定也在左右移动这部分
  • 找到 g_

  • g_ 是到本行最后一个非空字符
  • 两个按键要依次按下
  • $ 跳到本行最后一个字符,即使他是空格

总结

  • 我们这次学会了直接跳到开头和结尾
  • 最重要的就是 ^$

    • ^ 到开头
    • $ 到结尾
  • 还有什么好玩的吗?
  • 下次再说

oeasy教您玩转vim - 14 - # 行头行尾的更多相关文章

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

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

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

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

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

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

  4. oeasy教您玩转linux010203显示logo

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

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

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

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

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

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

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

  8. oeasy教您玩转linux010108到底哪个which

    到底哪个which 回忆上次内容 我们上次讲了查找命令位置whereis 我想找到whereis的位置怎么办?

  9. oeasy教您玩转python - 006 - # hello world

    ​ Hello World! 回忆上次内容 python3 的程序是一个 5.3M 的可执行文件 python3 里面全都是 cpu 指令 可以执行的那种指令 我们可以把指令对应的汇编找到 objdu ...

  10. oeasy教您玩转linux-010110内容回顾

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

随机推荐

  1. Vue History模式IIS的配置补充

    摘自 :https://blog.csdn.net/ssdnif/article/details/103856283 官方提供的配置<?xml version="1.0" e ...

  2. 从Newtonsoft.Json迁移到 System.Text.Json不简单

    一.写在前面# System.Text.Json 是 .NET Core 3 及以上版本内置的 Json 序列化组件,刚推出的时候经常看到踩各种坑的吐槽,现在经过几个版本的迭代优化,提升了易用性,修复 ...

  3. 006. Gitlab组件介绍

    Gitlab组件 [root@master tools]# gitlab-ctl status #检查服务状态 run: gitaly: (pid 26704) 2201s; run: log: (p ...

  4. Qt开发技术:Q3D图表开发笔记(四):Q3DSurface三维曲面图颜色样式详解、Demo以及代码详解

    前言   qt提供了q3d进行三维开发,虽然这个框架没有得到大量运用也不是那么成功,性能上也有很大的欠缺,但是普通的点到为止的应用展示还是可以的.  其中就包括华丽绚烂的三维图表,数据量不大的时候是可 ...

  5. C语言——函数基本知识

    什么是函数 函数的定义 函数就是程序中独立的功能.(简单来说就是把代码打包成整体,起个名字,方便以后使用) 函数的使用 定义函数的格式 格式: 返回值类型 函数名(形参1,形参2,...) { 函数体 ...

  6. php基本语法与安装

            // 什么是PHP         //     PHP 是 后端语言的一种          //         主要作用就是实现数据交互          //          ...

  7. .net core .net5 asp.net core mvc 与quartz.net 3.3.3 新版本调用方式

    参照了:https://www.cnblogs.com/LaoPaoEr/p/15129899.html 1.项目Nuget引用Quartz.AspNetCore和Quartz.Extensions. ...

  8. The bean ‘xxx‘ could not be injected as a ‘xxx‘because it is a JDK dynamic proxy that implements错误解决

    1.解决方法:使用@Autowired 2.@autowired和@resource注解的区别区别:1.@Autowired注解由Spring提供,只按照byType注入:@resource注解由J2 ...

  9. 通俗理解GAN -- 基础认知

    Smiling & Weeping ---- 你已春风摇曳,我仍一身旧雪 1.GAN的基本思想 GAN全称对抗生成网络,顾名思义是生成模型的一种,而他的训练则是一种对抗博弈状态中的.下面我们举 ...

  10. Springcloud开发之OpenFeign调用和认证

    SpringCloud开发cloud具有巨大的灵活性. 在调用其它服务的时候有多种方式,虽然本质一样,但是细节还是有所差异. 一.概述 当a服务调用b服务的时候有多种方式进行: 1.通过openFei ...