show: step
version: 1.0
enable_checker: true
剪切進(jìn)入
回憶上節(jié)課內(nèi)容????
- 上次我們了解到了各種寄存器
:reg
- 無名寄存器
""
- 數(shù)字寄存器
"0-"9
- 行內(nèi)刪除專用寄存器
"-
- 指定寄存器
"a-"z
、"A-"Z
- 3個只讀寄存器
":
、".
、"%
".
里面存儲著上次插入的內(nèi)容"%
里面存儲著當(dāng)前文件的名字":
里面存儲著剛剛執(zhí)行的命令
- 輪換文件寄存器
"#
- 表達(dá)式寄存器
"=
- 選擇和拖拽寄存器
"*
、"+
、"~
- 黑洞寄存器
"-
- 搜索模式寄存器
"/
- 無名寄存器
- 插入模式下<kbd>ctrl</kbd>+<kbd>r</kbd> 再加寄存器名稱
- 可以粘貼指定寄存器中的內(nèi)容
- <kbd>d</kbd>、<kbd>x</kbd>、<kbd>y</kbd>、<kbd>p</kbd>都在在正常模式
- 刪除之后能否自動切換進(jìn)入插入模式呢?????
- 翻幫助查到這個命令好像叫做 <kbd>s</kbd>
找到手冊????
- 想要知道 <kbd>s</kbd> 的作用,就要查一查
- 也可以用
:h s
- 這個<kbd>s</kbd>和<kbd>x</kbd>有點像
- 都是刪除當(dāng)前字符
- 都是默認(rèn)放入無名寄存器
""
- 如果設(shè)定某個命名寄存器,就放入命名寄存器
- 都可以通過
[count]
翻倍
- 不同在于刪除之后的的模式
- <kbd>x</kbd> 保持在
普通模式
- <kbd>s</kbd>進(jìn)入到了
插入模式
- <kbd>x</kbd> 保持在
- 這其實很爽
-
因為很多時候刪除了之后就是希望進(jìn)入插入模式的?。?!
- <kbd>S</kbd>是刪除當(dāng)前這一行,然后進(jìn)入
插入模式
- 相當(dāng)于<kbd>d</kbd><kbd>$</kbd><kbd>i</kbd>
有用的c
c
的意思是change
- 這個<kbd>c</kbd>和<kbd>d</kbd>有點像
- 都是刪除當(dāng)前內(nèi)容
- 都是默認(rèn)放入無名寄存器
""
- 如果設(shè)定某個命名寄存器,就放入命名寄存器
- 都可以通過
[count]
翻倍 - 而且都支持
motion
- 不同之處就是就是完成工作后
- <kbd>d</kbd> 保持在
普通模式
- <kbd>c</kbd>進(jìn)入到了
插入模式
- <kbd>d</kbd> 保持在
- 比如我想把
hello world!
變成hello oeasy
- 那么我需要
- <kbd>d</kbd><kbd>w</kbd>刪除到當(dāng)前單詞word詞尾
- <kbd>i</kbd>然后再進(jìn)入插入模式
- 輸入oeasy
- 然后<kbd>esc</kbd>完成
- 現(xiàn)在我只需要
- <kbd>c</kbd><kbd>w</kbd>刪除到當(dāng)前單詞word詞尾
- 直接進(jìn)入插入模式
- 輸入oeasy
- 然后<kbd>esc</kbd>完成,一氣呵成
- 如果要刪除的位置很遠(yuǎn)
- 可以考慮<kbd>c</kbd><kbd>f</kbd><kbd>t</kbd>
- 配合<kbd>.</kbd>來操作
配合重復(fù)
- n是下一個
-
.是cwfive<kbd>esc</kbd>
in操作
- 這次我們的光標(biāo)位置在這個單詞中間
- 我如果想要刪除world怎么辦?
- 我需要先<kbd>b</kbd>回詞頭
- <kbd>c</kbd><kbd>w</kbd>刪除到詞尾
- 這還是有點麻煩
- 現(xiàn)在只需要一句話
- <kbd>c</kbd><kbd>i</kbd><kbd>w</kbd>就可以一氣呵成
in
- 不論光標(biāo)在單詞里面什么位置
- 只要是這個
word
范圍內(nèi)的都可以刪除 - 這個時候如果是
ciW
意味著不是word
而是WORD
- 類似的還有·
- <kbd>c</kbd><kbd>i</kbd><kbd>(</kbd>、<kbd>c</kbd><kbd>i</kbd><kbd>(</kbd>刪除小括號里面的
- <kbd>c</kbd><kbd>i</kbd><kbd>[</kbd>、<kbd>c</kbd><kbd>i</kbd><kbd>]</kbd>刪除中括號里面的
- <kbd>c</kbd><kbd>i</kbd><kbd>"</kbd>刪除雙引號里面的
- <kbd>c</kbd><kbd>i</kbd><kbd>'</kbd>刪除單引號里面的
- 這在編程時是非常實用的?。。????
文字對象
- <kbd>c</kbd><kbd>i</kbd><kbd>s</kbd>刪除當(dāng)前這句
- <kbd>c</kbd><kbd>i</kbd><kbd>p</kbd>刪除當(dāng)前這段
tag塊標(biāo)簽
git clone http://github.com/overmind1980/vimtutorial.git
cd vimtutorial
vi oeasy.html
- <kbd>c</kbd><kbd>i</kbd><kbd>t</kbd>
- 刪除tag里面的內(nèi)容
- <kbd>c</kbd><kbd>a</kbd><kbd>t</kbd>
- 刪除包括標(biāo)簽本身
- <kbd>c</kbd><kbd>2</kbd><kbd>i</kbd><kbd>t</kbd>刪除兩層標(biāo)簽里面的
- 這個功能在
html
、xml
很有效率
- 這個功能在
block塊
- <kbd>c</kbd><kbd>i</kbd><kbd>{</kbd>、<kbd>c</kbd><kbd>i</kbd><kbd>}</kbd>
- 刪除大括號里面的
- <kbd>c</kbd><kbd>i</kbd><kbd>B</kbd>
- 也有同樣的效果
- <kbd>c</kbd><kbd>2</kbd><kbd>i</kbd><kbd>{</kbd>、<kbd>c</kbd><kbd>2</kbd><kbd>i</kbd><kbd>}</kbd>刪除兩層大括號里面的
- 這個功能也可以和 <kbd>d</kbd>、<kbd>y</kbd>配合,非常爽??!
- 大規(guī)模程序塊控制
關(guān)于i
和a
的整理
h aw
可以看到相關(guān)資料w
word 小詞W
Word 大詞s
sentence 句子p
paragraph 段落(
、)
小括號[
、]
中括號{
、}
大括號t
tag 標(biāo)簽it
標(biāo)簽內(nèi)部 不包含標(biāo)簽at
標(biāo)簽外部 包含標(biāo)簽
"
、'
引號
細(xì)節(jié)
-
<kbd>s</kbd>
- 相當(dāng)于<kbd>c</kbd><kbd>l</kbd>
- 也相當(dāng)于<kbd>d</kbd><kbd>l</kbd>,再進(jìn)入插入模式
-
<kbd>S</kbd>
- 刪除當(dāng)前行<kbd>d</kbd><kbd>$</kbd>
- 再進(jìn)入插入模式
-
<kbd>C</kbd>
- 相當(dāng)于<kbd>c</kbd><kbd>$</kbd>
- 也相當(dāng)于<kbd>d</kbd><kbd>$</kbd>,再進(jìn)入插入模式
- 也就是<kbd>D</kbd>,再進(jìn)入插入模式
-
<kbd>c</kbd><kbd>c</kbd>就是
- 刪除當(dāng)前行并進(jìn)入插入模式
- 等同于<kbd>S</kbd>
- <kbd>2</kbd><kbd>C</kbd>
- 相當(dāng)于刪除兩行,再進(jìn)入插入模式
- 也就是<kbd>2</kbd><kbd>D</kbd>,再進(jìn)入插入模式
總結(jié)
- 這次我們學(xué)到的最有用的就是<kbd>c</kbd>
- 他和<kbd>d</kbd>的區(qū)別就是刪除之后進(jìn)入到插入模式
- <kbd>c</kbd>可以配合
motion
- 可以用<kbd>c</kbd><kbd>i</kbd><kbd>w</kbd>來快速刪除當(dāng)前光標(biāo)所在的單詞
- 可<kbd>i</kbd>和<kbd>a</kbd>的文字塊
w
word 小詞W
Word 大詞s
sentence 句子p
paragraph 段落(
、)
小括號[
、]
中括號{
、}
大括號t
tag 標(biāo)簽it
標(biāo)簽內(nèi)部 不包含標(biāo)簽at
標(biāo)簽外部 包含標(biāo)簽
"
、'
引號
- 還有沒有更快速的辦法進(jìn)行編輯嗎?????
- 下次再說 ????
[Github地址] (https://github.com/overmind1980/vimtutorial)
[Gitee地址] (https://gitee.com/overmind1980/vimtutorial)
[藍(lán)橋?qū)嶒灅?邀請碼FJWYIMGB] (https://www.lanqiao.cn/courses/2840)
本文摘自 :https://blog.51cto.com/u