帮助您熟悉 Vim 编辑器中的文本对象
这段文本提供了一份详细的练习指南,帮助您熟悉 Vim 编辑器中的文本对象。以下是根据您的说明整理的具体步骤和说明,以帮助您顺利完成练习。
Vim 文本对象练习指南
目标
熟悉 Vim 的文本对象操作。
操作步骤
-
打开文件
- 启动命令行并导航到文件所在的目录。
- 假设文件在
Downloads/vimclass
目录中,使用以下命令:cd Downloads cd vimclass vim textobjectspractice.txt
-
单词对象
- 将光标移动到单词 "Time" 上,您可以使用
fi
命令搜索字母 "i"。 - 输入
daw
删除这个单词。注意,这会删除整个单词,包括前面的空格。 - 将 "Traveller" 变更为 "tourist":使用
ciw
,然后输入 "tourist",最后按<Esc>
返回正常模式。
- 将光标移动到单词 "Time" 上,您可以使用
-
块对象 ()
- 将光标移动到开括号位置,输入
w
移动光标。 - 输入
ci(
或ci)
将括号内的内容更改为 "as we will call him.",然后输入该文本并按<Esc>
。
- 将光标移动到开括号位置,输入
-
删除括号内的内容
- 直接移动到以下行,包含文本:
print("The weatherman said, 'This weekend will be warm,' but that was a lie.")
- 使用
/(
搜索开括号,然后使用da(
删除整个文本。
- 直接移动到以下行,包含文本:
-
引号中的字符串
- 将光标移动到行
print("The weatherman said, 'This weekend will be warm,' but that was a lie.")
中的双引号内。 - 改为:
print("It was cold!")
,输入ci"
,然后输入 "It was cold!" 并按<Esc>
。
- 将光标移动到行
-
更改单引号中的文本
- 移动到下行,用
/'
搜索单引号内部,将其更改为 'It is hot outside,',使用ci'
进行更改。
- 移动到下行,用
-
块对象 [ ]
- 删除以下内容括号内的所有内容:
scripts=[ 'bin/backup', 'bin/backup-all', 'bin/backup-db-only', 'bin/backup-files-only' ]
- 移动光标到括号中,使用
di[
或di]
删除内容,结果将是:scripts=[]
- 删除以下内容括号内的所有内容:
-
块对象 < >
- 移动到以下行:
<yank_me>
- 使用
iyi>
或iyi<
将内容放入 "i" 寄存器,确认内容在寄存器中的操作为:reg i<ENTER>
。 - 使用
aya<
或aya>
将<yank_me>
及其尖括号放入 "a" 寄存器,确认操作为:reg a<ENTER>
。
- 移动到以下行:
-
标签对象
- 更改以下内容:
为:<p><a href="https://linuxtrainingacademy.com">Linux Training Academy</a></p>
<p><a href="https://linuxtrainingacademy.com">LTA</a></p>
- 将光标移动到
<a>
标签内,输入cit
,并输入 "LTA"。
- 更改以下内容:
-
XML 示例
- 删除第一个 CD 条目:
<CD> <TITLE>Jazz At Massey Hall</TITLE> <ARTIST>The Quintet</ARTIST> </CD>
- 将光标移动到
<CD>
或</CD>
,输入dat
删除该条目。
- 删除第一个 CD 条目:
-
块对象 { }
- 更改如下内容:
为:musicians = { 'Charlie Parker': 'alto sax', 'John Coltrane': 'tenor sax', 'Sonny Rollins': 'tenor sax' }
musicians = { }
- 使用
di{
或di}
删除内容,然后将两行合并:k
回到上面一行,使用J
合并行。
- 更改如下内容:
-
句子对象
- 将句子内容复制到 "s" 寄存器:
Praesent rutrum purus ultricies, dignissim massa id, elementum felis.
- 输入
"syas
,确认使用:reg s<ENTER>
。
- 将句子内容复制到 "s" 寄存器:
-
段落对象
- 删除整个段落,输入
dap
。
- 删除整个段落,输入
-
退出 Vim
- 如果您想放弃更改以重新尝试练习,输入
:q!<ENTER>
退出 Vim。
- 如果您想放弃更改以重新尝试练习,输入
注意事项
- 每个命令后确保返回正常模式(按
<Esc>
)。 - 文本对象的正确使用可以大大提高编辑效率。
如果在完成练习时遇到任何问题,请随时询问!
迷茫的人生,需要不断努力,才能看清远方模糊的志向!