网站设计原理wordpress tag 输出
vim 快速跳到文件末尾 在最后一行下方新增一行
移到末尾,并且进入文本录入模式 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 在该行下方新增一行
目录
- vim 快速跳到文件末尾 在最后一行下方新增一行
- 移到末尾,并且进入文本录入模式 `GA` (大写G大写A)
- 在最后一行下方新增一行 (光标换行,文字不换行) `Go` (大写G小写o)
- vi的多种工作模式
- 移到末尾,并且进入文本录入模式
- 在最后一行下方新增一行 (光标换行,文字不换行)
- 扩展知识
- 光标快速移动
- 首行尾行
- 行首行尾
- 新增行, 并进入文字录入模式
- 复制剪切粘贴
- 复制
- 剪切(删除)
- 删除,并进入文字插入模式
- 可视化选择复制或剪切
- 粘贴
- 撤销重做
- 查找替换
- 查找
- 替换
- 限制在可视的选定区域进行替换
- 保存退出
- 行号
- 其它
- 动作后会进入文字输入模式
- 进入文字输入插入模式 INSERT模式
- 进入文字输入覆盖模式 REPLACE模式
- 附
- 解决Ubuntu22.04Desktop桌面版的vim的编辑模式下的上下左右变成ABCD
- 解决办法1, 卸载重装vim
- 解决办法2 , 修改 `/etc/vim/vimrc.tiny`
vi的多种工作模式
- 一般模式,刚进入vi的模式, esc模式,我觉得可叫快捷键模式(按键模式), 按esc的模式
- 文本输入模式(
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行
动作后会进入文字输入模式
进入文字输入插入模式 INSERT模式
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按键
进入文字输入覆盖模式 REPLACE模式
在插入模式下按insert按键
R 直接进入覆盖模式 (小写r接字符只替换光标处一个字符,替换后依旧在一般模式)
附
解决Ubuntu22.04Desktop桌面版的vim的编辑模式下的上下左右变成ABCD
Ubuntu22.04Desktop桌面版的vim的编辑模式下的上下左右变成ABCD , 退格键也失效
解决办法1, 卸载重装vim
sudo apt remove vim
sudo apt install -y vim
解决办法2 , 修改 /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
