首页 > 其他分享 >vim使用命令

vim使用命令

时间:2023-08-27 20:56:35浏览次数:35  
标签:文件 删除 ctrl vim 命令 使用 光标 分屏

ZZ   大写,保存退出
gg=G 代码格式化

 

光标移动

0    光标移动到行首    无
$    光标移动到行尾部    选按两个键: shift + 4
gg    光标移动到文件头    第一行的开始
G    光标移动到文件尾部    最后一行的开始
nG    行跳转    n 代表要跳转到哪一行
n+回车    相对跳转 n 行    从光标所在当前行往下跳 n 行, n 对应的是一个整数;
h, j, k, l 光标移动,分别为左上右下

删除命令

x (小写)    删除光标后边的字符    vim中的光标比较宽会盖住后边的字符
X (大写)    删除光标前边的字符    无
dw    删除单词    要先把光标移动到单词的第一个字母上再删除, 否则单词只能被删除一部分
d0    删除光标前的字符串    从字符串开头到光标当前位置的字符串被删除了
d$ (D)    删除光标后的字符串    从光标当前位置到字符串尾部的字符串被删除了, 使用 D也行
dd    删除光标所在行    无
ndd    删除n行    从光标所在行开始删除n行, n对应的是一个整数

撤销和反撤销

u    撤销    等价于 windows 中的 ctrl+z
ctrl+r    反撤销    等价于 windows 中的 ctrl+y

复制粘贴

p    粘贴到光标所在行的下边    小写的 p
P    粘贴到光标所在行的上边    大写的 P
yy    复制光标所在行    无
nyy    从光标所在行向下复制 n 行    n是要复制的行数, 代表一个整数

可视模式

v: 进入的字符可视化模式(Characterwise visual mode),文本选择是以字符为单位的。
V :进入的行可视化模式(Linewise visual mode),文本选择是以行为单位的。
ctrl-v: 进入的块可视化模式(Blockwise visual mode),可以选择一个矩形内的文本。

代码注释

1通过 ctrl+v进入块可视模式
2移动光标上移(k)或者下移(j),选中多个代码行的开头
3选择完毕后,按大写的的I键,此时下方会提示进入“insert” 模式,输入你要插入的注释符,例如: //
4最后按ESC键,会发现选中的多行代码已经被注释了

查找

/    n    从当前位置向下    直接按键盘上的 /即可
/      N    从当前位置向上    

查看man文档

#跳转到相应函数
1找到要查看的函数,然后将光标放到该函数上
2在键盘上依次输入: 章节号(可选) + K(大写的k),就会自动调整到 man 文档中了

分屏

#末行模式命令或者快捷键
sp    水平分屏 , 多个窗口垂直排列    多个窗口中显示同一个文件里的内容,通过crtl+w+w切换窗口
vsp    垂直分屏, 多个窗口水平排列    多个窗口中显示同一个文件里的内容
ctrl+w+w    光标在打开的屏幕之间切换    快捷键操作
(按住ctrl然后按两次w)
qall    同时退出多个屏幕    
wqall    同时保存退出多个屏幕    
sp 文件名    分屏的同时指定打开的文件的名字    在新窗口中显示指定的文件的内容
vsp 文件名    分屏的同时指定打开的文件的名字    在新窗口中显示指定的文件的内容

使用vim打开文件的时候直接分屏, 下边是需要用到的参数:

-o: 水平分屏

-O: 垂直分屏

vim编辑文件的过程中也可以执行shell命令

# 语法:
:!shell命令

# 举例
:!ls        # 回车即可

 

参考文档地址:https://subingwen.cn/linux/vim/

 

标签:文件,删除,ctrl,vim,命令,使用,光标,分屏
From: https://www.cnblogs.com/ddrm/p/17660810.html

相关文章

  • 在windows和Linux系统之间配置共享目录(使用samba工具)
    安装samba工具aptinstallsamba编辑vim/etc/samba/smb.conf文件底部添加配置信息:[code]path=/code #指定共享目录writeable=yes #可写browseable=yes #可预览guestok=yes #不登录可访问先关闭之前进程pkillsmbd,重新启动smbd,psaux|grepsmbd检查新启......
  • cocos creator使用用vscode调试
    1.vscode安装 JavaScriptDebugger(Nightly)2.修改launch.json里面端口的值端口号是cocoscreator运行打开网页的端口号,vscodelaunch.json修改好后,保存,按F5就要吧启动调试了,原typescript文件里面打断点,可以到达......
  • 在 Spring 6 中使用虚拟线程
    一、简介在这个简短的教程中,我们将了解如何在SpringBoot应用程序中利用虚拟线程的强大功能。虚拟线程是Java19的预览功能,这意味着它们将在未来12个月内包含在官方JDK版本中。Spring6版本最初由ProjectLoom引入,为开发人员提供了开始尝试这一出色功能的选项。首先,......
  • Windows10 环境下使用 Cmake 和 MinGW-w64 编译安装 OpenCV 4.0.1
    Windows10环境下使用Cmake和MinGW-w64编译安装OpenCV4.0.1翻译搜索复制......
  • Semaphore的使用
    基本介绍多线程中上锁的目的一般是一种对受限资源的保护,例如:保证同一时刻只有一个线程能访问的ReentrantLock,或者保证只有一个线程可以写入的ReadWriteLock还有一种受限资源,它需要保证同一时刻最多有N个线程能访问,比如同一时刻最多创建100个数据库连接,最多允许10个用户下载等这种限......
  • Tkinter 列表控件Listbox使用
    1、使用StringVar初始化数据fromtkinterimport*importgjutil#初始化窗口root=Tk()root.title('listboxdemo')root.geometry(gjutil.getGeometry(root))#初始化数据array_lang_data=['python','golang','kotlin','dart......
  • vue微信H5项目使用腾讯地图获取当前位置经纬度
    1.在index.html引入js文件<scriptsrc="https://3gimg.qq.com/lightmap/components/geolocation/geolocation.min.js"></script>2.在需要页面中你自己的key要去腾讯地图工具去申请https://lbs.qq.com/webApi/component/componentGuide/componentPickercreated(){this.getM......
  • Makefile练习1:静态库/动态库的生成和使用
    自己动手写下Makefile,并记录备忘。工程目录如下一、生成静态库libAdd.a1、头文件add.h#include<stdio.h>intadd(inta,intb);2、源文件add.c#include"add.h"intadd(inta,intb){ return(a+b);}3、Makefile(1)入门版libAdd.a:add.o ar-rlibAdd.aad......
  • 求求你不要在使用BeanUtils进行拷贝了
    哈喽,大家好,我是指北君。最近接手一个项目发现有些接口只是做了一些简单的单表查询业务,但是却耗时八百多毫秒,明显不太正常,经排查发现时间都消耗在Apache的BeanUtils中对属性的拷贝上,整个流程使用了四次拷贝方法,使得整个方法耗时急剧增加。指北君在这里求求大家不要再使用BeanUtils......
  • CMD命令如何创建计划任务,创建完成即刻运行只运行一次后删除任务
    解决方案:1.创建bat文件,任务命令如下schtasks/create/TN名称/TR运行程序路径/SC指定计划频率设为用户登入时运行schtasks/create/TNupdate/TRD:\Dir\bz2.exe/SCONLOGON12.立刻执行schtasks/run/tnupdate3.删除任务SCHTASKS/Delete/TNupdate/F4.完整关......