当前位置:网站首页>VIM command mode and input mode switching
VIM command mode and input mode switching
2022-07-07 11:32:00 【Full stack programmer webmaster】
vi Editor
vi yes UNIX And the class UNIX Environment can be used to create a file screen editor .vi There are two working modes : Command mode and text input mode . start-up vi Need to enter vi, Press [Spacebar] Key and enter the file name and press enter .
Switch mode key
vi Switch from command mode to text input mode . Each key makes vi Enter text input mode . Press [ESC] Keying vi Return from text input mode to command mode .
surface 1 Lists vi Command keys and their functions for switching from command mode to text input mode .
surface 1 Command key to switch to text input mode
key | function |
---|---|
i | Enter the text... To the left of the cursor |
I | Enter the text at the beginning of the line where the cursor is located |
a | Enter the text... To the right of the cursor |
A | Enter the text at the end of the line where the cursor is located |
o | Add a new line to the line next to the cursor , The cursor is at the beginning of the new line |
O | Add a new line to the line where the cursor is , The cursor is at the beginning of the new line |
explain :1. The position of the cursor is underlined (═) mark .
2. The current line refers to the line where the cursor is located .
Exit command
There is only one way to enter vi, But there are several ways to quit vi, The choice of exit method depends on how to deal with the edited file .
except ZZ Outside command , These orders are all based on : Start , use [Return] End command line . surface 2 Lists vi The exit command of the editor and its functions .
surface 2 vi Exit command of editor
key | function |
---|---|
:wq | Save the file , sign out vi Editor |
:w | Save the file , But don't quit vi Editor |
:q | sign out vi Editor |
:q! | Don't save files , sign out vi Editor |
ZZ | Save the file , sign out vi Editor |
Text modification key
These keys are only available in command mode . surface 3 Lists vi The exit command of the editor and its functions .
surface 3 In command mode vi Editor text modification key
key | function |
---|---|
x | Delete the character specified by the cursor position |
dd | Delete line with cursor |
u | Undo the most recent change |
U | Undo all changes made to the current line |
r | Replace a character at the cursor position |
R | Replace the character starting from the cursor position , Change at the same time vi To text input mode |
.( spot ) | Repeat the last modification |
Cursor movement command
In command mode , These keys move the cursor in the document . surface 4 Lists vi The exit command of the editor and its functions .
surface 4 vi Cursor movement key
key | function |
---|---|
h or [ ] | Move the cursor one space to the left |
j or [ ] | Move the cursor down one space |
k or [ ] | Move the cursor up one space |
l or [ ] | Move the cursor one space to the right |
$ | Move the cursor to the end of the current line |
w | Move the cursor one word to the right |
b | Move the cursor one word to the left |
e | Move the cursor to the end |
0( zero ) | Move the cursor to the beginning of the current line |
[Return] key | Move the cursor to the beginning of the next line |
[Spacebar] key | Move the cursor one digit to the right |
[Backspace] key | Move the cursor one bit to the left |
Be careful : Avoid using cursor keys in text input mode ( Arrow keys ). Because in some systems , Cursor keys are interpreted as normal ASCII character . If you use cursor keys in text input mode , So the corresponding ASCII Characters will be inserted into the file .
Cut and paste keys
These keys are used to rearrange the text in the user file , stay vi Available in command mode . surface 5 Lists vi Editor's cut and paste keys and their functions .
surface 5 vi Editor's cut and paste keys
key | function |
---|---|
d | Delete the text in the specified position , Coexist in the temporary buffer . have access to put The operator (p or P key ) Access this buffer |
y | Copy the text at the specified location to the temporary buffer . have access to put The operator accesses this buffer |
P | Place the contents of the specified buffer above the current cursor position |
p | Place the contents of the specified buffer under the current cursor |
Page turning key
The page key is used to scroll through the user's files in large blocks , stay vi Available in command mode . surface 6 Lists vi Page turning key of editor and its functions .
surface 6 vi Page turning key of editor
key | function |
---|---|
[Ctrl-d] | Move the cursor down to the end of the file , Usually every time you move 12 That's ok |
[Ctrl-u] | Move the cursor up to the file header , Usually every time you move 12 That's ok |
[Ctrl-f] | Move the cursor down to the end of the file , Usually every time you move 24 That's ok |
[Ctrl-b] | Move the cursor up to the file header , Usually every time you move 24 That's ok |
Three common patterns :Normail Mode( Command mode ),Insert Mode( The input mode ) and Visual Mode( View mode ). Switching between command mode and input mode Append,Insert,Replace,Subsitute Write it down as AIRS, This memory method is particularly convenient , The English word means air ,vim Switching between command mode and input mode is like air , Immaterial .
Editing text is nothing more than basic character input and switching cursor position , At ordinary times, cursor switching is realized through the up, down, left and right keyboards on the keyboard , Although it is very convenient for the keyboard to switch the cursor up, down, left and right , But is it necessary to move from our keyboard gestures , and vim You don't have to move at all , adopt hjkl. h: Move one position to the left j: The next line k: One line up l: Move one position to the right
Publisher : Full stack programmer stack length , Reprint please indicate the source :https://javaforall.cn/113812.html Link to the original text :https://javaforall.cn
边栏推荐
- LeetCode - 面试题17.24 最大子矩阵
- R语言使用magick包的image_mosaic函数和image_flatten函数把多张图片堆叠在一起形成堆叠组合图像(Stack layers on top of each other)
- OneDNS助力高校行业网络安全
- Electron adding SQLite database
- Audit migration
- 如何在博客中添加Aplayer音乐播放器
- .NET MAUI 性能提升
- [Yugong series] go teaching course 005 variables in July 2022
- 大佬们有没有人遇到过 flink oracle cdc,读取一个没有更新操作的表,隔十几秒就重复读取
- R语言使用quantile函数计算评分值的分位数(20%、40%、60%、80%)、使用逻辑操作符将对应的分位区间(quantile)编码为分类值生成新的字段、strsplit函数将学生的名和姓拆分
猜你喜欢
随机推荐
STM32 entry development uses IIC hardware timing to read and write AT24C08 (EEPROM)
通过 Play Integrity API 的 nonce 字段提高应用安全性
聊聊SOC启动(七) uboot启动流程三
自动化测试框架
博客搬家到知乎
一度辍学的数学差生,获得今年菲尔兹奖
【系统设计】指标监控和告警系统
聊聊SOC启动(九) 为uboot 添加新的board
MIF file format record
简单介绍一下闭包及它的一些应用场景
Vuthink proper installation process
Talk about SOC startup (IX) adding a new board to uboot
Leetcode - interview question 17.24 maximum submatrix
分布式数据库主从配置(MySQL)
How to write test cases for test coupons?
Debezium同步之Debezium架构详解
技术分享 | 抓包分析 TCP 协议
Table replication in PostgreSQL
请查收.NET MAUI 的最新学习资源
sql里,我想设置外键,为什么出现这个问题