VIM命令模式与输入模式切换

VIM命令模式与输入模式切换

 
vi编辑器

vi是UNIX和类UNIX环境下的可用于创建文件的屏幕编辑器。vi有两种工作模式:命令模式和文本输入模式。启动vi需要输入vi,按[Spacebar]键并输入文件名后回车。

切换模式键

vi从命令模式切换到文本输入模式。每个键以不同方式使vi进入文本输入模式。按[ESC]键使vi从文本输入模式回到命令模式。

表1列出了vi从命令模式切换到文本输入模式的命令键及其功能。

表1 切换到文本输入模式的命令键

功能

i

在光标左侧输入正文

I

在光标所在行的行首输入正文

a

在光标右侧输入正文

A

在光标所在行的行尾输入正文

o

在光标所在行的下一行增添新行,光标位于新行的行首

O

在光标所在行的上一行增添新行,光标位于新行的行首

 

说明:1. 光标的位置由双下划线(═)标明。

2. 当前行指光标所在的那一行。

退出命令

只有一种方式进入vi,但是有几种方式退出vi,退出方式的选择取决于如何处理编辑后的文件。

除了ZZ命令外,这些命令都以:开始,用[Return]结束命令行。表2列出了vi编辑器的退出命令及其功能。

表2 vi编辑器的退出命令

功能

:wq

保存文件,退出vi编辑器

:w

保存文件,但不退出vi编辑器

:q

退出vi编辑器

:q!

不保存文件,退出vi编辑器               

ZZ

保存文件,退出vi编辑器

 

文本修改键

这些键只适用于命令模式。表3列出了vi编辑器的退出命令及其功能。

表3 命令模式下vi编辑器的文本修改键

功能

x

删除光标位置指定的字符

dd

删除光标所在的行

u

撤销最近的修改

U

撤销对当前行上做的所有修改

r

替换光标位置上的一个字符

R

替换从光标位置开始的字符,同时改变vi到文本输入模式

.(点)

重复上一次的修改

 

光标移动指令

在命令模式下,这些键可以在文档中移动光标。表4列出了vi编辑器的退出命令及其功能。

表4 vi的光标移动键

功能

h或[   ]

将光标向左移动一格

j或[   ]

将光标向下移动一格

k或[   ]

将光标向上移动一格

l或[   ]

将光标向右移动一格

$

将光标移到当前行的行尾

w

将光标向右移一个字

b

将光标向左移一个字

e

将光标移到字尾

0(零)

将光标移到当前行的行首

[Return]键

将光标移到下一行的行首

[Spacebar]键

将光标向右移动一位

[Backspace]键

将光标向左移动一位

 

注意:在文本输入模式下避免使用光标键(箭头键)。因为在某些系统中,光标键被解释为普通的ASCII 字符。如果在文本输入模式下使用光标键,那么对应的ASCII字符将被插入文件中。

剪切和粘贴键

这些键用来重新安排用户文件中的文本,在vi的命令模式下可用。表5列出了vi编辑器的剪切和粘贴键及其功能。

表5 vi编辑器的剪切和粘贴键

功能

d

删除指定位置的文本,并存到临时的缓冲区中。可以使用put操作符(p或P键)访问这个缓冲区

y

将指定位置的文本复制到临时缓冲区。可以使用put操作符访问这个缓冲区

P

将指定缓冲区的内容放到当前光标的位置之上

p

将指定缓冲区的内容放到当前光标的位置之下

翻页键

翻页键用来大块滚动用户的文件,在vi的命令模式下可用。表6列出了vi编辑器的翻页键及其功能。

表 6  vi编辑器的翻页键

功能

[Ctrl-d]

将光标向下移到文件尾,通常每次移动12行

[Ctrl-u]

将光标向上移到文件头,通常每次移动12行

[Ctrl-f]

将光标向下移到文件尾,通常每次移动24行

[Ctrl-b]

将光标向上移到文件头,通常每次移动24行

 

三种常见的模式:Normail Mode(命令模式),Insert Mode(输入模式)和Visual Mode(视图模式)。
命令模式和输入模式的切换有Append,Insert,Replace,Subsitute 记作AIRS,这种记忆方法特别方便,英文单词的意思是空气,vim在命令模式和输入模式的切换就像空气一样,无影无形。
VIM命令模式与输入模式切换
编辑文本无非就是基本的字符输入和切换光标的位置,平时光标切换就是通过键盘上的上下左右的键盘来实现的,这个上下左右的键盘切换光标虽然也是很方便,但是是不是要从我们键盘手势上移动,而vim可以完全不用移动,通过hjkl。
h:左移一个位置
j:往下一行
k:往上一行
l:右移一个位置

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/113812.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 苹果关闭自动更新_iOS屏蔽更新不用描述文件,苹果官方:安排![通俗易懂]

    他来了!他来了!我们可以看到iOS13.6系统测试版在设置里添加了一个关闭自动下载和自动安装的按钮。左:iOS13.5.1右:iOS13.6苹果手机的iOS系统小版本更新不断,老是自动下载更新包,让人感到被强迫升级,即使苹果公司的出发点是好的,“这是为你们好,最新系统更安全”。然而大多数用户都认为没必要经常升级系统,不升级就不会遇到系统Bug,经常升级难免会遇到。有一种…

    2022年4月15日
    214
  • VS2008安装失败_vs2015无法安装

    VS2008安装失败_vs2015无法安装虽然我搞了很多年的java,现在由于工作需要又要转到.net上做研究工作,以前用vb那会对ms没有什么好感,之后用过vs.net的第一个版本做开发,本以为安装一下vs2008的开发环境应该是小菜一碟,没想到经历这么曲折,赶紧写下来为同行参考。 虽然做程序开发的时间有些年头了,但是对最新的技术和工具等还总是保持着关心,vs2008中文90天试用版刚从ms网站上放出来时我就下载安装过,当时很顺

    2025年9月27日
    5
  • GOF23-创建型:简单工厂模式

    GOF23-创建型:简单工厂模式

    2021年7月12日
    78
  • BN层论文总结[通俗易懂]

    BN层论文总结[通俗易懂]论文:BatchNormalization:AcceleratingDeepNetworkTrainingbyReducingInternalCovariateShiftMotivation题目中的InternalCovariateShift指的是在训练过程中各层输入数据的分布随前一层网络参数的变化而变化的现象,这种现象会使训练深度神经网络变得更加复杂,需要耗费更多的时…

    2022年10月14日
    4
  • 水果篮一般装几种水果_one step closer水果篮子

    水果篮一般装几种水果_one step closer水果篮子904.水果成篮题目描述题目链接:904水果成蓝你正在探访一家农场,农场从左到右种植了一排果树。这些树用一个整数数组fruits表示,其中fruits[i]是第i棵树上的水果种类。你想要尽可能多地收集水果。然而,农场的主人设定了一些严格的规矩,你必须按照要求采摘水果:你只有两个篮子,并且每个篮子只能装单一类型的水果。每个篮子能够装的水果总量没有限制。你可以选择任意一棵树开始采摘,你必须从每棵树(包括开始采摘的树)上恰好摘一个水果。采摘的水果应当符合篮子中的水果类型。

    2025年11月28日
    8
  • python标识符号_python标识符的组成元素

    python标识符号_python标识符的组成元素在Python里,标识符由字母、数字、下划线组成,但不能以数字开头。#Python中标识符区分大小写。#以下划线开头的标识符有特殊意义,以单下划线开头_foo的代表不能直接访问的类属性,需通过类提供的接口进行访问,不能用fromxxximport*而导入。##以双下划线开头的__foo代表类的私有成员,以双下划线开头和结尾的__foo__代表Python里特殊方法专用的标识,如__init__()代表类的构造函数。##Python可以同一行显示多.

    2025年10月14日
    5

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号