vi/vim编辑器的使用

文章目录

  • 1. vim编辑器的作用
  • 2. vim的五种模式
    • 2.1 命令模式中的基本操作
      • 2.1.1 删除
      • 2.1.2 复制
      • 2.1.3 粘贴
      • 2.1.4 退出
      • 2.1.5 光标跳转
    • 2.2 输入模式
    • 2.3 末行模式常用
    • 2.4 可视模式(相当于windows的按住鼠标左键拖动)
    • 2.5 替换模式
  • 3. vim 窗口切割
    • 3.1 水平窗口分割
    • 3.2 垂直窗口分割
    • 3.3 同时打开多个文件
    • 3.4 在窗口之间进行切换:
    • 3.5 在窗口移动
    • 3.6 改变窗口大小
    • 3.7 关闭当前文件
    • 3.8 在多窗口下新建文件
    • 3.9 不同文件比较

1. vim编辑器的作用

vim 具有程序编辑的能力,可以主动的以字体颜色辨别语法的正确性,方便程序设计。
等同于windows系统中的记事本。

PS:如果最小化安装Linux的话,只会安装vi,不会安装vim。

2. vim的五种模式

①可视模式
②替换模式
③命令模式
④插入模式
⑤末行模式
模式间的转换:

当我们刚启动vi/vim时,就默认进入了命令模式。
在命令模式按a、i、o等键,就进入了输入模式;
在命令模式按V键,就进入了可视模式;
在命令模式按R键,就进入了替换模式;
在命令模式按英文冒号键,就进入了末行模式。
注意:五种模式间的切换,只能通过命令模式作为中转!

2.1 命令模式中的基本操作

2.1.1 删除

x或Del 删除光标所在处的单个字符
dd 删除当前光标所在行
ndd 删除从光标开始处的n行内容
d^ 删除当前光标之前到行首的所有字符
d$ 删除当前光标处到行尾的所有字符

2.1.2 复制

yy 复制当前行整行的内容到剪贴板
nyy 复制从光标处开始的n行内容

2.1.3 粘贴

p 将缓冲区中的内容粘贴到光标位置处之后
P 粘贴到光标位置处之前

2.1.4 退出

ZZ(大写) 在命令模式下使用,退出并且保存。

2.1.5 光标跳转

行内快速跳转:
home或0 跳到行首
end或$ 跳到行末

翻页:
page up或ctrl+B 往前翻页
page down或ctrl+F 往后翻页

行间快速跳转:
nG 跳到文件中的第n行
G 跳到文件的末尾行
1G或者gg 跳转到文件的首行
ctrl+r 恢复
u 撤销(undo)

2.2 输入模式

i:当前位置插入内容;
a:光标后退一格进入插入模式;
o:在光标所在行下,新起一行并进入插入模式。

2.3 末行模式常用

:help tutor 或者 :help [email protected] 命令 Vim官方帮助文档
:q 如果未对文件做改动则退出
:q! 强制放弃保存并退出
:wq 保存当前文件并退出
😡 保存当前文件并退出
:wq! 强制保存当前文件并退出
:x! 强制保存当前文件并退出
:w 保存
:w 路径 —(另存为)
:X(大写) 加密码
:set number 显示行号
:set nonu 取消行号
:50 跳到第50行
:syntax enable 开启语法颜色显示效果
:syntax off 关闭语法颜色显示效果
:set hlsearch 开启查找文字的高亮效果 (high light)
:set nohlsearch 关闭查找文字的高亮效果
:set cursorline 显示下划线的效果(光标所在行)
:set cursorcolumn 显示光标所在的列

2.4 可视模式(相当于windows的按住鼠标左键拖动)

命令模式下如何进入可视模式
按v----可视模式
按V----可视行模式
ctrl+v 可视块模式

选中后,按y是复制,按p粘贴,x是删除。
另起一行,按o(进入插入模式并将光标移到下一行),再按esc(回到命令模式),在p(粘贴)。

2.5 替换模式

在命令模式下,按R(大写)键,进入替换模式。
此时输入的字符就会直接替换光标所在的字符。

3. vim 窗口切割

3.1 水平窗口分割

:split(开启另一个窗口察看同一文件)
:split 文件名(开启另一个窗口察看指定文件)
:30split 打开一个高度为30的窗口

3.2 垂直窗口分割

:vsplit(开启另一个窗口察看同一文件)
:vsplit 文件名(开启另一个窗口察看指定文件)
:30split 打开一个宽度为30的窗口

3.3 同时打开多个文件

vim -o file1 file2 file3 o是水平打开多个窗口,O垂直打开多个窗口
:n 跳至下一个文件,也可以直接指定要跳的文件,如:n c,可以直接跳到c文件
:e 回到刚才编辑的文件

3.4 在窗口之间进行切换:

ctrl+w,w:按住ctrl键,同时按下两次w键,从一个窗口切换到另一个窗口
ctrl+w,l(或右箭头)切换到右侧窗口
ctrl+w,h(或左箭头)切换到左侧窗口
ctrl+w,k(或上箭头)切换到上方窗口
ctrl+w,j(或下箭头)切换到下方窗口

3.5 在窗口移动

ctrl+w,L 将当前窗口移动到右侧窗口
ctrl+w,H 将当前窗口移动到左侧窗口
ctrl+w,K 将当前窗口移动到上方窗口
ctrl+w,J 将当前窗口移动到下方窗口

3.6 改变窗口大小

ctrl+w,+/-:按住ctrl键,同时按下w键,然后再按下+(增大窗口)或-(减少窗口)(这时不按下ctrl键)。
{height}CTRL-W, +/- 增加或减小窗口高度
{width}CTRL-W, 增加或减小窗口的宽度

3.7 关闭当前文件

(1)将光标切换到当前窗口下,然后按照关闭单个窗口的方法关闭窗口。例如:q命令。
(2)关闭所有窗口文件:在所有关闭单个窗口的命令中加上all,例如:qall命令。
(3)关闭除当前窗口之外的文件:only。

3.8 在多窗口下新建文件

:new

3.9 不同文件比较

:diffsplit file 上下窗口显示
:vertical diffsplit file,左右窗口显示

相关推荐:

如何在 Vim 编辑器中不退出地运行 Python 程序

本文介绍在Vim中直接执行当前编辑的Python文件(如helloworld.py)而不退出编辑器的方法,核心是使用:!命令调用外部shell,支持动态文件名、路径补全与错误反馈,兼顾效率与开发连贯性。 本文介绍在vim中直接执行当前编辑的python文件(如helloworld.py)而不退出编辑...

如何在 Vim 编辑器中不退出直接运行 Python 程序

本文介绍在vim中通过命令模式调用外部解释器执行当前python文件的方法,无需退出编辑器即可快速测试代码,支持实时反馈与调试。 本文介绍在vim中通过命令模式调用外部解释器执行当前python文件的方法,无需退出编辑器即可快速测试代码,支持实时反馈与调试。 在Vim中高效开发Python脚本的关键...

在 Vim 中直接运行 Python 程序而不退出编辑器的完整教程

本文介绍如何在不退出vim的前提下,通过内置命令行快速执行当前编辑的python脚本,并涵盖路径处理、快捷键优化及常见错误排查方法。 本文介绍如何在不退出vim的前提下,通过内置命令行快速执行当前编辑的python脚本,并涵盖路径处理、快捷键优化及常见错误排查方法。 Vim作为一款高度可定制的文本编...

Python在线编辑器怎么做_Web端接收Python代码并沙箱运行

Python沙箱必须用子进程隔离,禁用危险模块并限制资源;Web端需POSTJSON传代码,返回结构化结果;第三方库仅限白名单预装;firejail比Docker更轻量安全。 Python沙箱运行必须隔离进程,不能直接用exec 用户提交的代码可能调用os.system、__import__、读写文...

如何在 PyQt 的 QTableView 中实现跨列展开的组合框编辑器

本文介绍如何通过自定义qstyleditemdelegate,使qcombobox编辑器同时覆盖相邻两列,解决耦合数据需同步编辑的场景,并给出可直接复用的几何计算与父视图绑定关键技巧。 本文介绍如何通过自定义qstyleditemdelegate,使qcombobox编辑器同时覆盖相邻两列,解决耦合...

Python如何设置成中文_Python IDE和编辑器中文设置技巧

PyCharm中文界面需安装JetBrains官方中文语言包插件并重启,同时将控制台和终端编码设为UTF-8并选用支持中文的字体;VSCode需配置PYTHONIOENCODING环境变量、指定默认解释器及显式声明文件编码;Python脚本处理中文路径时必须用encoding='utf-8';Sub...