乐趣区

关于vim:oeasy教您玩转vim-56-字符可视化模式

可视化编辑

回顾上节课内容🤔

  • 咱们学习了对于模式匹配中应用参数
  • 单个参数

    • :%s/<h2>\(.*\)</h2>/ - \1/g
  • 多个参数

    • :%s/<img src=\"\(.*\)\" title=\"\(.*\)\" \/>/[!\2]\1
  • 非贪心匹配

    • :%s/<a href=\"\(.\{-\})\">\(.\{-\}\)<\/a>/[\2]\1/g
  • 咱们这回会遇到一种新的模式
  • 什么模式呢?
  • 咱们先回顾一下曾经理解的模式

三种模式

  • 咱们先回顾一下以前学过的模式

    • 失常模式
    • 插入模式
    • 替换模式
    • 命令行模式
  • 明天的新模式是 可视化模式
  • 其实可视化对应三种可视化

    • 字符可视化 v
    • 行可视化 V
    • 块可视化ctrl+v

字符可视模式

  • v进入

    • 还是能够用 {motion} 挪动光标
    • 从开始地位到目前光标地位文本高亮显示
    • 相当于把抉择范畴高亮显示
  • 在左下角显示 可视

    • 意味着进入了 可视 - 字符模式
  • 能够用 o 切换首尾

    • 管制抉择范畴

  • 为什么要有可视化模式?

具体抉择

  • 为什么要有可视化模式?

    • 因为很多时候挪动工具不直观

  • 可视化

    • 明确点儿能够叫做抉择范畴可视化
  • 像这样很容易就晓得本人所抉择的范畴

    • 而后就能够进行相干操作了
  • 做什么操作呢?

相干操作

  • 在可视化模式也能够进行编辑操作

    • 相当于对于选好的内容进行操作
  • 选好了之后,

    • d

      • 删除所选文本
    • c

      • 批改所选文本
      • 删除选中的文本
      • 而后输出想要的内容
    • r

      • 替换所选文本
      • 将选中的文本替换成单个字符
    • I

      • 在所选文本前插入
    • A

      • 在所选文本后插入
    • gu

      • 所选区域转为小写
    • gU

      • 所选区域转为大写
    • g~

      • 所选区域大小写互调
    • >

      • 所选区域对应的行向右缩进一个 shiftwidth
    • <

      • 所选区域对应的行向左缩进一个 shiftwidth
    • 这个和咱们罕用的类似

操作细节

  • 大小写不同

    • d 只删除选中的字符
    • 而 D 删除选中字符所在行的所有字符,蕴含结尾的换行符号
    • c 和 C、y 和 Y 同理
  • 能够在后面增加 "a 指定 寄存器 a

疾速抉择文字块

  • vaw 能够进入字符可视模式,并选中单词
  • vaW

    • a WORD (with white space)
    • 蕴含空格的一个 WORD
  • iW

    • inner WORD
    • 不蕴含空格的 WORD
  • as

    • a sentence (with white space)
    • 蕴含空格一个句子
  • is

    • inner sentence
    • 不蕴含空格一个句子
  • ap

    • a paragraph (with white space)
    • 蕴含空格一个段落
  • ip

    • inner paragraph
    • 一个段落

各种括号引起的文字块

  • ab

    -    a () block (with parenthesis)    
    -    一个小括号突围的块,含括号
  • ib

    -    inner () block    
    -    不蕴含括号的一个块
  • aB

    -    a {} block (with braces)
    -    一个大括号突围的块,含括号
  • iB

    -    inner {} block
    -    一个大括号突围的块
  • at

    -    a <tag> </tag> block (with tags)
    -    一个标签突围的块,含标签
  • it

    -    inner <tag> </tag> block
    -    一个标签突围的块,不含标签
  • a<

    -    a <> block (with <>)    
    -    一个尖括号突围的标签,含标签
    -    相当于 at    
  • i<

    -    inner <> block    
    -    一个尖括号突围的标签,不含标签
    -    相当于 it
  • a[

    -    a [] block (with [])                
    -    中括号蕴含的块,含中括号
  • i[

    -    inner [] block                    
    -    中括号蕴含的块,不含中括号
    

还有各种援用文字块

  • a”

    -    a double quoted string (with quotes)
    -    双引号括号蕴含的块,含双引号
  • i”

    -    inner double quoted string    
    -    双引号括号蕴含的块,不含双引号
  • a’

    -    a single quoted string (with quotes)
    -    单引号括号蕴含的块,含单引号
  • i’

    -    inner simple quoted string        
    -    单引号括号蕴含的块,不含单引号
  • a`

    -    a string in backticks (with backticks)
    -    反引号括号蕴含的块,不含反引号
  • i`

    -    inner string in backticks    
    -    反引号括号蕴含的块,不含反引号
    

用行命令操作选区

  • 选好选区后

    • :
  • 左下角会呈现:'<,’>

    • 就是从选区结尾,到选区结尾
    • ‘< 选区结尾
    • ‘> 选区结尾
  • 而后咱们摁下 d 回车

    • 就把选区范畴内都删除了
  • 咱们能够:h '< 查看相应手册

总结

  • 明天咱们理解到可视模式,其实可视化对应三种子模式

    • 字符可视模式 v
    • 行可视模式 V
    • 块可视模式ctrl+v
  • 咱们先来理解字符可视化模式

    • 快捷键 v
    • 可配合各种 motion
    • o切换首尾
    • 字符可视化就是把抉择范畴可视化
  • 疾速操作

    • 选中了之后能够进行

      • d
      • c
      • y
    • 能够用 "a 应用指定寄存器
  • 能够用 ia疾速抉择范畴

    • w 小词 W 大词
    • ()[] {} 各种括号
    • t 标签,编写网页的时候很有用
    • s 句子 p 段落
    • b 小括号,这个编写程序的时候很有用
    • B 大括号,编写程序的时候也很有用
    • ” ‘ ` 引号内
  • 还能够在命令行下对选区范畴内字符进行操作

    • :'<,'>
  • 这次是字符可视化模式,那么行可视化模式是什么意思呢?🤔
  • 下次再说 👋

[Github 地址] (https://github.com/overmind19…)
[Gitee 地址] (https://gitee.com/overmind198…)
[蓝桥实验楼 邀请码 FJWYIMGB] (https://www.lanqiao.cn/course…)

退出移动版