狠狠撸

狠狠撸Share a Scribd company logo
可视化模式的种类
在 vim 中有一种可视模式,可以让你对一个文本块的整体进行命令操作。例如你可以用高亮
显示出一个文本块,然后用 d 命令删除这个文本块。这种可视模式与其他的编辑相比的一个
好处就是你可以在做改动以前看到你的操作对于所编辑的文本产生的影响。这种可视化模式
对编写代码有很大的好处,我们可以用一种可视化模式来高亮显示文本,然后用>命令来进
行文本的缩进。一般可以分为三种可视化模式:
用 v 命令进入的字符式可视模式(Characterwise visual mode)。文本选择是以字符为单位的。
用 V 命令进入的行可视化模式(Linewise visual mode)。文本选择是在以行为单位的。
用 ctrl-V 进入到块可视化模式(Blockwise visual mode),它可以选择一个矩形内的文本。
(注意:在 Windows 中,ctrl-V 可能已经被影射为粘贴操作,可以使用 ctrl-Q 进入块可视化
模式。)
切换可视化模式
命令 gv 可以重复前一次可视化模式时选中的文本。如果我们已经在可视化模式下,执行这
个命令会选中前一次选择的文本。如果重复执 gv 命令,就会在当前选中的文本和前一次选
中的文本之间进行切换。
我们可以在不同的可视化模式间进行切换。而切换的做法只是简单的输入那种可视化的命令
操作。例如现在字符模式的可视化模式下,而我们想切换到块模式的可视化模式,这时只要
简单的输入 ctrl-V 就可以了。当然我们也可以先用 ESC 关闭当前的可视化模式,然后再选择
所希望的可视化模式。
在可视化模式下编辑
使用命令 v 进入字符可视化模式。在此模式下用命令移动光标,光标起始位置和光标当前位
置之间的文本都会以高亮显示的。这时就可以对这些高亮显示的文本整体进行命令操作。例
如这时我们输入 d 命令,那么这些高亮显示的文本就会被删除掉。
在可视化模式下选中的文本,我们可以用命令~来实现大小写的转换。而 U 命令是使得选中
的文本变成大写的形式,而 u 命令是将选中的文本变为小写的形式。
在可视化模式下我们可以进行各种各样的编辑操作。如 d 命令可以删除那些高亮显示的文本
内容,而 D 命令只是来删除一行,哪怕这一行中只有部分文本是高亮显示的。与 d 和 D 命令
类似的是复制 y 和 Y 命令。y 命令是将高亮显示的文本复制下来,而 Y 只是将一行文本复制
下来。c 命令可以将高亮显示的文本删除并进入编辑模式,而 C 命令的作用与其相类似,所
不同的只是 C 命令只是删除一行文本。
我们还可以利用可视化模式将几行文本合并为一行。J 命令可以将高亮显示的文本内容合并
为一行,同时以空格来区分各行,如果我们不希望看到这些空格,可以使用 gJ 命令。
我们还可以用 g?命令来加密高亮显示的文本,这个命令采用的是 Vim 中所采用的 rot 13 加密
算法。如果我们对同一个文本进行两次加密操作,就相当于进行了解密操作。
在可视化模式下我们还可以用命令:来对指定的范围进行命令行操作。例如我们要将文本块
写入一个文件:先在可视化模式下选中要写入文件的文本,然后执行:write block.txt 命令。
如果想得到一些相与可视化相关的帮助信息,可以在所希望帮助的名称前加 v_前缀。例如
我们想得到一些对于在可视模式下进行删除操作的命令,可以使用:help v_d 命令。
当我们要退出可视化模式时,可以按 ESC 键,也可以按 ctrl+c 键。
在可视化模式下移动
如果你已经在可视化模式下选择了若干文本,并且希望移动到已选择文本的另一结尾处,那
么可以使用 o 命令。
如果你使用的是块可视化模式,那么已选择的区域将有四个角落。o 命令只能移动到对面的
一个角落,这时你可以使用 O 命令移动到同一行的另一个角落。
命令小结
v 进入字符可视化模式
V 进入行可视化模式
ctrl-Qv 进入块符可视化模式
gv 选中前一次可视化模式时选择的文本
o 光标移动到选中文本的另一结尾
O 光标移动到选中文本的另一角落

More Related Content

Viewers also liked (12)

Opinion Article in Development Today
Opinion Article in Development TodayOpinion Article in Development Today
Opinion Article in Development Today
David Hansen
?
Seattle Library Cb
Seattle Library CbSeattle Library Cb
Seattle Library Cb
School of Visual Concepts
?
Nielsen mobile-youth-around-the-world-dec-2010
Nielsen mobile-youth-around-the-world-dec-2010Nielsen mobile-youth-around-the-world-dec-2010
Nielsen mobile-youth-around-the-world-dec-2010
Juan Varela
?
R363
R363R363
R363
performanceweb
?
Case Study: ATMOS OIM
Case Study: ATMOS OIMCase Study: ATMOS OIM
Case Study: ATMOS OIM
jayallen77
?
Academic Blogging Idt518 Com418 Jankow
Academic Blogging  Idt518 Com418  JankowAcademic Blogging  Idt518 Com418  Jankow
Academic Blogging Idt518 Com418 Jankow
Nick Jankowski
?
A  Papel BolhaA  Papel Bolha
A Papel Bolha
carmensilviapontaldi
?
AMM.813-814.1170
AMM.813-814.1170AMM.813-814.1170
AMM.813-814.1170
Mohammad Ashif
?
Tuto Flash Starsat And CondorTuto Flash Starsat And Condor
Tuto Flash Starsat And Condor
Sais Abdelkrim
?
S4 tarea4 bamahS4 tarea4 bamah
S4 tarea4 bamah
HBM15
?
Bachillerato internacional1Bachillerato internacional1
Bachillerato internacional1
MEILYNFER
?
Opinion Article in Development Today
Opinion Article in Development TodayOpinion Article in Development Today
Opinion Article in Development Today
David Hansen
?
Nielsen mobile-youth-around-the-world-dec-2010
Nielsen mobile-youth-around-the-world-dec-2010Nielsen mobile-youth-around-the-world-dec-2010
Nielsen mobile-youth-around-the-world-dec-2010
Juan Varela
?
Case Study: ATMOS OIM
Case Study: ATMOS OIMCase Study: ATMOS OIM
Case Study: ATMOS OIM
jayallen77
?
Academic Blogging Idt518 Com418 Jankow
Academic Blogging  Idt518 Com418  JankowAcademic Blogging  Idt518 Com418  Jankow
Academic Blogging Idt518 Com418 Jankow
Nick Jankowski
?
A  Papel BolhaA  Papel Bolha
A Papel Bolha
carmensilviapontaldi
?
Tuto Flash Starsat And CondorTuto Flash Starsat And Condor
Tuto Flash Starsat And Condor
Sais Abdelkrim
?
S4 tarea4 bamahS4 tarea4 bamah
S4 tarea4 bamah
HBM15
?
Bachillerato internacional1Bachillerato internacional1
Bachillerato internacional1
MEILYNFER
?

More from King Hom (20)

Perl.predefined.variables
Perl.predefined.variablesPerl.predefined.variables
Perl.predefined.variables
King Hom
?
Gnu coreutils-cheat-sheet
Gnu coreutils-cheat-sheetGnu coreutils-cheat-sheet
Gnu coreutils-cheat-sheet
King Hom
?
Git cheat sheet_dark
Git cheat sheet_darkGit cheat sheet_dark
Git cheat sheet_dark
King Hom
?
Git cheat sheet__white
Git cheat sheet__whiteGit cheat sheet__white
Git cheat sheet__white
King Hom
?
Git cheat sheet__grey
Git cheat sheet__greyGit cheat sheet__grey
Git cheat sheet__grey
King Hom
?
Firefox cheat sheet
Firefox cheat sheetFirefox cheat sheet
Firefox cheat sheet
King Hom
?
Chrome sheet
Chrome sheetChrome sheet
Chrome sheet
King Hom
?
Vim 实用技术,第 1 部分: 实用技巧
Vim 实用技术,第 1 部分: 实用技巧Vim 实用技术,第 1 部分: 实用技巧
Vim 实用技术,第 1 部分: 实用技巧
King Hom
?
人体24小时器官工作表
人体24小时器官工作表人体24小时器官工作表
人体24小时器官工作表
King Hom
?
VIM学习笔记8 选择模式
VIM学习笔记8 选择模式VIM学习笔记8 选择模式
VIM学习笔记8 选择模式
King Hom
?
手把手教你把痴颈尘改装成一个滨顿贰编程环境(图文)
手把手教你把痴颈尘改装成一个滨顿贰编程环境(图文)手把手教你把痴颈尘改装成一个滨顿贰编程环境(图文)
手把手教你把痴颈尘改装成一个滨顿贰编程环境(图文)
King Hom
?
VIM学习笔记2 移动和修改命令
VIM学习笔记2 移动和修改命令VIM学习笔记2 移动和修改命令
VIM学习笔记2 移动和修改命令
King Hom
?
VIM学习笔记3 复制和粘贴命令
VIM学习笔记3 复制和粘贴命令VIM学习笔记3 复制和粘贴命令
VIM学习笔记3 复制和粘贴命令
King Hom
?
VIM学习笔记6 使用多标签页
VIM学习笔记6 使用多标签页VIM学习笔记6 使用多标签页
VIM学习笔记6 使用多标签页
King Hom
?
Linux 新手入门
Linux 新手入门Linux 新手入门
Linux 新手入门
King Hom
?
安装 Subversion
安装 Subversion安装 Subversion
安装 Subversion
King Hom
?
Effective_Vim
Effective_VimEffective_Vim
Effective_Vim
King Hom
?
VIM学习笔记1 基本编辑命令
VIM学习笔记1 基本编辑命令VIM学习笔记1 基本编辑命令
VIM学习笔记1 基本编辑命令
King Hom
?
VIM学习笔记4 查找文本
VIM学习笔记4 查找文本VIM学习笔记4 查找文本
VIM学习笔记4 查找文本
King Hom
?
惫颈尘用户手册中文版
惫颈尘用户手册中文版惫颈尘用户手册中文版
惫颈尘用户手册中文版
King Hom
?
Perl.predefined.variables
Perl.predefined.variablesPerl.predefined.variables
Perl.predefined.variables
King Hom
?
Gnu coreutils-cheat-sheet
Gnu coreutils-cheat-sheetGnu coreutils-cheat-sheet
Gnu coreutils-cheat-sheet
King Hom
?
Git cheat sheet_dark
Git cheat sheet_darkGit cheat sheet_dark
Git cheat sheet_dark
King Hom
?
Git cheat sheet__white
Git cheat sheet__whiteGit cheat sheet__white
Git cheat sheet__white
King Hom
?
Git cheat sheet__grey
Git cheat sheet__greyGit cheat sheet__grey
Git cheat sheet__grey
King Hom
?
Firefox cheat sheet
Firefox cheat sheetFirefox cheat sheet
Firefox cheat sheet
King Hom
?
Vim 实用技术,第 1 部分: 实用技巧
Vim 实用技术,第 1 部分: 实用技巧Vim 实用技术,第 1 部分: 实用技巧
Vim 实用技术,第 1 部分: 实用技巧
King Hom
?
人体24小时器官工作表
人体24小时器官工作表人体24小时器官工作表
人体24小时器官工作表
King Hom
?
VIM学习笔记8 选择模式
VIM学习笔记8 选择模式VIM学习笔记8 选择模式
VIM学习笔记8 选择模式
King Hom
?
手把手教你把痴颈尘改装成一个滨顿贰编程环境(图文)
手把手教你把痴颈尘改装成一个滨顿贰编程环境(图文)手把手教你把痴颈尘改装成一个滨顿贰编程环境(图文)
手把手教你把痴颈尘改装成一个滨顿贰编程环境(图文)
King Hom
?
VIM学习笔记2 移动和修改命令
VIM学习笔记2 移动和修改命令VIM学习笔记2 移动和修改命令
VIM学习笔记2 移动和修改命令
King Hom
?
VIM学习笔记3 复制和粘贴命令
VIM学习笔记3 复制和粘贴命令VIM学习笔记3 复制和粘贴命令
VIM学习笔记3 复制和粘贴命令
King Hom
?
VIM学习笔记6 使用多标签页
VIM学习笔记6 使用多标签页VIM学习笔记6 使用多标签页
VIM学习笔记6 使用多标签页
King Hom
?
Linux 新手入门
Linux 新手入门Linux 新手入门
Linux 新手入门
King Hom
?
安装 Subversion
安装 Subversion安装 Subversion
安装 Subversion
King Hom
?
Effective_Vim
Effective_VimEffective_Vim
Effective_Vim
King Hom
?
VIM学习笔记1 基本编辑命令
VIM学习笔记1 基本编辑命令VIM学习笔记1 基本编辑命令
VIM学习笔记1 基本编辑命令
King Hom
?
VIM学习笔记4 查找文本
VIM学习笔记4 查找文本VIM学习笔记4 查找文本
VIM学习笔记4 查找文本
King Hom
?
惫颈尘用户手册中文版
惫颈尘用户手册中文版惫颈尘用户手册中文版
惫颈尘用户手册中文版
King Hom
?

VIM学习笔记7 可视化模式

  • 1. 可视化模式的种类 在 vim 中有一种可视模式,可以让你对一个文本块的整体进行命令操作。例如你可以用高亮 显示出一个文本块,然后用 d 命令删除这个文本块。这种可视模式与其他的编辑相比的一个 好处就是你可以在做改动以前看到你的操作对于所编辑的文本产生的影响。这种可视化模式 对编写代码有很大的好处,我们可以用一种可视化模式来高亮显示文本,然后用>命令来进 行文本的缩进。一般可以分为三种可视化模式: 用 v 命令进入的字符式可视模式(Characterwise visual mode)。文本选择是以字符为单位的。 用 V 命令进入的行可视化模式(Linewise visual mode)。文本选择是在以行为单位的。 用 ctrl-V 进入到块可视化模式(Blockwise visual mode),它可以选择一个矩形内的文本。 (注意:在 Windows 中,ctrl-V 可能已经被影射为粘贴操作,可以使用 ctrl-Q 进入块可视化 模式。) 切换可视化模式 命令 gv 可以重复前一次可视化模式时选中的文本。如果我们已经在可视化模式下,执行这 个命令会选中前一次选择的文本。如果重复执 gv 命令,就会在当前选中的文本和前一次选 中的文本之间进行切换。 我们可以在不同的可视化模式间进行切换。而切换的做法只是简单的输入那种可视化的命令 操作。例如现在字符模式的可视化模式下,而我们想切换到块模式的可视化模式,这时只要 简单的输入 ctrl-V 就可以了。当然我们也可以先用 ESC 关闭当前的可视化模式,然后再选择 所希望的可视化模式。 在可视化模式下编辑 使用命令 v 进入字符可视化模式。在此模式下用命令移动光标,光标起始位置和光标当前位 置之间的文本都会以高亮显示的。这时就可以对这些高亮显示的文本整体进行命令操作。例 如这时我们输入 d 命令,那么这些高亮显示的文本就会被删除掉。 在可视化模式下选中的文本,我们可以用命令~来实现大小写的转换。而 U 命令是使得选中 的文本变成大写的形式,而 u 命令是将选中的文本变为小写的形式。 在可视化模式下我们可以进行各种各样的编辑操作。如 d 命令可以删除那些高亮显示的文本 内容,而 D 命令只是来删除一行,哪怕这一行中只有部分文本是高亮显示的。与 d 和 D 命令 类似的是复制 y 和 Y 命令。y 命令是将高亮显示的文本复制下来,而 Y 只是将一行文本复制 下来。c 命令可以将高亮显示的文本删除并进入编辑模式,而 C 命令的作用与其相类似,所 不同的只是 C 命令只是删除一行文本。 我们还可以利用可视化模式将几行文本合并为一行。J 命令可以将高亮显示的文本内容合并 为一行,同时以空格来区分各行,如果我们不希望看到这些空格,可以使用 gJ 命令。 我们还可以用 g?命令来加密高亮显示的文本,这个命令采用的是 Vim 中所采用的 rot 13 加密 算法。如果我们对同一个文本进行两次加密操作,就相当于进行了解密操作。 在可视化模式下我们还可以用命令:来对指定的范围进行命令行操作。例如我们要将文本块 写入一个文件:先在可视化模式下选中要写入文件的文本,然后执行:write block.txt 命令。 如果想得到一些相与可视化相关的帮助信息,可以在所希望帮助的名称前加 v_前缀。例如 我们想得到一些对于在可视模式下进行删除操作的命令,可以使用:help v_d 命令。 当我们要退出可视化模式时,可以按 ESC 键,也可以按 ctrl+c 键。
  • 2. 在可视化模式下移动 如果你已经在可视化模式下选择了若干文本,并且希望移动到已选择文本的另一结尾处,那 么可以使用 o 命令。 如果你使用的是块可视化模式,那么已选择的区域将有四个角落。o 命令只能移动到对面的 一个角落,这时你可以使用 O 命令移动到同一行的另一个角落。 命令小结 v 进入字符可视化模式 V 进入行可视化模式 ctrl-Qv 进入块符可视化模式 gv 选中前一次可视化模式时选择的文本 o 光标移动到选中文本的另一结尾 O 光标移动到选中文本的另一角落