GA
(大写G大写A)在一般模式(刚进入的模式,esc模式)
GA 或 Shift +ga
先 G
或 shift+g
到最后一行
然后 A
或 shift+a
到本行末尾 并且进入文本录入模式
Go
(大写G小写o)在一般模式(刚进入的模式,esc模式)
Go 或 Shift+g 然后 o
先 G
或 shift+g
到最后一行
然后 小写o
在该行下方新增一行
a
, A
, i
, I
, o
, O
, s
, S
,C
进入插入模式 R
进入覆盖模式):
开头,/
开头,?
开头)v
)ctrl+v
)在一般模式(刚进入的模式,esc模式)
GA 或 Shift +ga
先 G
或 shift+g
到最后一行
然后 A
或 shift+a
到本行末尾 并且进入文本录入模式
在一般模式(刚进入的模式,esc模式)
Go 或 Shift+g 然后 o
先 G
或 shift+g
到最后一行
然后 小写o
在该行下方新增一行
到最后行是在 esc模式下 键盘大写时按G
键 或 小写时按shift+g
键
到第一行是按两次小写g gg
或者 输入:0
或:1
gg
或 :0
或:1
--------首行G
----------------------尾行888G
或888gg
或:888
到第888行或尾行H
屏首 M
屏中 L
屏尾
A
或 shift+a
移动到行尾,并进入文本录入模式$
移动到行末尾0
移动到行首 (零)^
移动到本行第一个字符o
小写O
大写3yh
或y3h
光标前三字符 3yl
或y3l
光标及后两字符
yy
本行 y0
行首到光标 y^
本行第一个字符到光标 y$
光标到行尾
3yy
或y3y
本行和下两行
yw
光标 至 空格后出现字符
剪切的d语法
如同复制的y语法
3dh
或d3h
光标前三字符 3dl
或d3l
光标及后两字符
dd
本行 d0
行首到光标 d^
本行第一个字符到光标 d$
光标到行尾
3dd
或d3d
本行和下两行
x
剪切光标字符
X
剪切光标前一个字符
C
光标到行末
3ch
或c3h
光标前三字符 3cl
或c3l
光标及后两字符
cc
本行 c0
行首到光标 c^
本行第一个字符到光标 c$
光标到行尾
3cc
或c3c
本行和下两行
先将鼠标移到想要的开始位置,然后按v
然后就可以通过 上下左右 像鼠标按住左键那样选择
选好区域后按y
复制,按d
剪切
p
粘贴到光标后
P
粘贴到光标前
u
撤销
ctrl+r
重做
支持正则表达式
/
pattern 向下查找pattern的匹配
?
pattern 向上
n
下一个
N
上一个
:s/
a/
b 本行第一个a变b
:s/
a/
b/g
本行所有a变b
:%s/
a/
b 所有行第一个a变b
:%s/
a/
b/g
所有行所有a变b , 整个文档的a变b
用光标确定起始点, 然后v
进入连续字符串选择, 或ctrl+v
进入块选择
按冒号:
, 底部出现 :'<,'>
在:'<,'>
后追加s/pattern/content/g
变成 :'<,'>s/pattern/conten/g
回车就能将pattern匹配到的内容替换
:w
----------------保存
:q
----------------退出
:q!
--------------强制退出
:wq
或 ZZ
— 保存退出
:wq!
------------ 强制保存退出
:set nu
显示行号 :set nonu
关闭行号
.
重复上一个动作 (点)
n空格键
光标移到n个字符后
n回车键
光标下移n行
i
光标前插入
a
光标后插入
I
光标移到本行第一个字符后开始插入
O
光标上方插入一行
o
光标下方插入一行
S
删除本行
s
删除光标字符
C
删除光标到行尾
c
小c操作语法类似d
和y
, 作用是删除, 如同d
, 只是执行后会进入文字输入插入模式
3ch
或c3h
光标前三字符 3cl
或c3l
光标及后两字符
cc
本行 c0
行首到光标 c^
本行第一个字符到光标 c$
光标到行尾
3cc
或c3c
本行和下两行
先R
进入覆盖模式,然后按键盘insert
按键
在插入模式下按insert
按键
R
直接进入覆盖模式 (小写r接字符
只替换光标处一个字符,替换后依旧在一般模式)
Ubuntu22.04Desktop桌面版的vim的编辑模式下的上下左右变成ABCD , 退格键也失效
sudo apt remove vim
sudo apt install -y vim
/etc/vim/vimrc.tiny
set compatible
改为 set nocompatible
, 或加到后面set backspace=2
暂时没法用vi,vim , 可以用 nano 或 gedit 修改
远程用
sudo nano /etc/vim/vimrc.tiny
本机用
sudo gedit /etc/vim/vimrc.tiny
原先的 /etc/vim/vimrc.tiny
" Vim configuration file, in effect when invoked as "vi". The aim of this
" configuration file is to provide a Vim environment as compatible with the
" original vi as possible. Note that ~/.vimrc configuration files as other
" configuration files in the runtimepath are still sourced.
" When Vim is invoked differently ("vim", "view", "evim", ...) this file is
" _not_ sourced; /etc/vim/vimrc and/or /etc/vim/gvimrc are.
" Debian system-wide default configuration Vim
set runtimepath=~/.vim,/var/lib/vim/addons,/usr/share/vim/vimfiles,/usr/share/vim/vim82,/usr/share/vim>
set compatible
" vim: set ft=vim:
修改后的 /etc/vim/vimrc.tiny
" Vim configuration file, in effect when invoked as "vi". The aim of this
" configuration file is to provide a Vim environment as compatible with the
" original vi as possible. Note that ~/.vimrc configuration files as other
" configuration files in the runtimepath are still sourced.
" When Vim is invoked differently ("vim", "view", "evim", ...) this file is
" _not_ sourced; /etc/vim/vimrc and/or /etc/vim/gvimrc are.
" Debian system-wide default configuration Vim
set runtimepath=~/.vim,/var/lib/vim/addons,/usr/share/vim/vimfiles,/usr/share/vim/vim82,/usr/share/vim>
set nocompatible
set backspace=2
" vim: set ft=vim:
用脚本修改
echo '" Vim configuration file, in effect when invoked as "vi". The aim of this
" configuration file is to provide a Vim environment as compatible with the
" original vi as possible. Note that ~/.vimrc configuration files as other
" configuration files in the runtimepath are still sourced.
" When Vim is invoked differently ("vim", "view", "evim", ...) this file is
" _not_ sourced; /etc/vim/vimrc and/or /etc/vim/gvimrc are.
" Debian system-wide default configuration Vim
set runtimepath=~/.vim,/var/lib/vim/addons,/usr/share/vim/vimfiles,/usr/share/vim/vim82,/usr/share/vim>
set nocompatible
set backspace=2
" vim: set ft=vim:' | sudo tee /etc/vim/vimrc.tiny
或者
sudo sed -ie 's/compatible/nocompatible\nset backspace=2/' /etc/vim/vimrc.tiny
查看并试验vim的上下左右
sudo vi /etc/vim/vimrc.tiny
还原
echo '" Vim configuration file, in effect when invoked as "vi". The aim of this
" configuration file is to provide a Vim environment as compatible with the
" original vi as possible. Note that ~/.vimrc configuration files as other
" configuration files in the runtimepath are still sourced.
" When Vim is invoked differently ("vim", "view", "evim", ...) this file is
" _not_ sourced; /etc/vim/vimrc and/or /etc/vim/gvimrc are.
" Debian system-wide default configuration Vim
set runtimepath=~/.vim,/var/lib/vim/addons,/usr/share/vim/vimfiles,/usr/share/vim/vim82,/usr/share/vim>
set compatible
" vim: set ft=vim:' | sudo tee /etc/vim/vimrc.tiny