首页 > 其他分享 >vim基本使用

vim基本使用

时间:2022-12-08 10:56:23浏览次数:39  
标签:基本 字符 游标 模式 vim 插入 输入 使用 光标

vim基本使用

使用方法在终端输入vim + (文件),如果文件已经存在,则使用vim打开文件,否则创建一个文件。或者,是输入vim直接进入,再输入:e + 文件名,来打开文件。

进入vim后默认为普通模式,此外还有插入模式,命令行模式,可视模式。

进入其他模式,或者切换模式都需要通过点击esc回到普通模式,再进行切换。

普通模式

普通模式下能够移动光标,删除文本

光标移动

熟练的掌握光标的移动可以大大提高编辑的效率

(1)光标的字符级移动
按键 方向
h,←
l,→
j,↓
k,↑
(2)行内移动
按键 说明
w 右移到下一个单词的开头
e 右移到下一个单词的末尾或本单词的末尾
b 左移到前一个单词的开头或本单词的开头
0 右移到本行的开始
$ 右移到本行的末尾
^ 左移到本行的第一个非空字符

0一般行开头有关,$一般和行末有关,后面与行开头与末尾相关的操作一般会用到他们。

(3)页级移动
按键 说明
crtl+f,pigup 前移一页
crtl+b,pgdn 后移一页
(4)页内移动
按键 说明
H 将光标移到该页的起始行
M 将光标移到该页的中间行
L 将光标移到该页的末尾行
(5)大范围移动
按键 说明
* 将光标移到该单词的下一个位置
# 将光标移到该单词的上一个位置
gg 将光标移到文件的第一行
G 将光标移到文件的末尾行
nG 将光标移到文件的第n行
文档编辑
(1)搜索
指令 说明
/+str 向下搜索字符串str
n 继续搜索该字符
N 反向搜索该字符串
?+str 反向搜索字符串str

当反向搜索时,输入n为向文本上方搜索,N为向下搜索。

(2)替换

替换输入命令时会自动进入插入模式。

指令 说明
s 用输入的正文替换游标所在的字符
ns 用输入的正文替换游标右侧n个字符
c$ 用输入的正文替换从游标开始到行尾的所有字符
c0 用输入的正文替换从本行开始到游标的所有字符

输入替换指令时会自动删除指令所替换的内容。

(3)删除
指令 说明
x或delete 删除游标所在的字符
X 删除游标所在前一个字符
dw 删除游标右的单词
dd 删除游标所在行
d0 删除光标到行的开始
d$ 删除光标到行的末尾

单个字符用x,X,多个字符用d。

(4)复制,粘贴,剪切
指令 说明
yy 复制游标所在行到缓冲区
nyy 复制n行到缓冲区
v + 光标移动 + y 复制选中的字符
p(小写) 在光标位置之后粘贴
P(大写) 在光标位置之前粘贴
v + 光标移动 + d 剪切选中的字符
(5)撤销
指令 说明
u 撤销上次操作

输入u可以撤销上次操作,相当与许多编辑器下的ctrl+z。

插入模式

也就是编辑模式,进入的方法有很多:

指令 说明
i 在游标处插入
I 在行首插入
a 在游标右侧插入
A 在行末插入
o 在当前行后添加一行插入
O 在当前行前添加一行插入

而插入模式中几乎除了esc和方向键都可以输入,所以插入模式的光标移动较不方便,一般使用普通模式移动光标。

输入esc或ctrl+[退出插入模式。

命令行模式

(1)进入及打开文件

输入:进入命令行模式,在未打开文件时,可以输入在命令行模式中输入e +文件名来打开文件。

(2)保存及退出
指令 作用
w 保存文件
q 退出
q! 强制退出,不保存修改内容
wq 保存并退出

可视模式

输入v,V或ctrl+v即可进入。

标签:基本,字符,游标,模式,vim,插入,输入,使用,光标
From: https://www.cnblogs.com/102204216zxf/p/16965470.html

相关文章

  • Python中glob类的使用
    OverridetheentrypointofanimageIntroducedinGitLabandGitLabRunner9.4.Readmoreaboutthe extendedconfigurationoptions.Beforeexplainingtheav......
  • 10、拦截器Interceptor的使用
    1          什么是拦截器拦截器可以在请求执行流程中的某个位置拦截请求并执行代码,也可以终止请求流程的执行 2          拦截器可以做什么拦截器通常......
  • 如何使用 qt network 库模拟表单文件上传?
    #include<QCoreApplication>#include<QImage>intmain(intargc,char*argv[]){QCoreApplicationa(argc,argv);//[1]准备图像二进制数据QImage......
  • Oracle安装临时客户端使用总结
    由于把oracle11g全部装在机器上,导致机器太卡,于是卸载oracle装上客户端,果然效果明显。首先要去官网上下载oracle11客户端,(我用的是64位系统)地址:​​http://www.oracle.com/t......
  • goland使用技巧
    1、如何显示文件是否发生了修改?   2、添加自定义模板代码如想要生成这段代码的模板:func(this*UserClass)Build(){ this.Handle("GET","/User",this.Ge......
  • 1. 流程控制语句if基本概述
    1.流程控制语句if基本概述01.单分支结构if[如果你有房];then我就嫁给你fi#示例[root@qiudao~/shell]#catif-1.sh#!/usr/bin/bashifwhichls;thenecho"......
  • 在idea中使用maven
         maven配置完成创建一个普通的maven项目    项目结构配置  在idea中配置tomcat       ......
  • slam14(1) v4_1 卡尔曼滤波3 使用例子和代码 ardunio mpu6050
     代码https://github.com/TKJElectronics/KalmanFilter   原理剖析原理2卡尔曼融合滤波https://zhuanlan.zhihu.com/p/36374943 关键点1他的偏置和噪声......
  • R语言使用Rasch模型分析学生答题能力|附代码数据
    全文链接:http://tecdat.cn/?p=10175最近我们被客户要求撰写关于Rasch的研究报告,包括一些图形和统计输出。几个月以来,我一直对序数回归与项目响应理论(IRT)之间的关系感兴趣......
  • 戴尔n4110在win7下无法使用virtualbox的解决方法(应该对win7都有用)
    正文因为已经学了一段时间的汇编了嘛,想着就拿单独一台机器出来学汇编好了,刚好趁着天气降温回学校拿被子的机会把笔记本也拿出来了,然后我装上了virtualbox,把编译好的文件......