当前位置: 首页 > news >正文

Linux(三) | Vim 编辑器的模式化架构与核心操作机制研究

个人主页-爱因斯晨

文章专栏-Linux

最近学习人工智能时遇到一个好用的网站分享给大家:
人工智能学习
在这里插入图片描述

介绍

Vim 是一款源于 Vi 且功能强大、应用广泛的文本编辑器,适用于多平台,有着模式化编辑(含命令、插入、末行模式)、高度可定制、文本处理高效、支持多种编程语言等特点,常用于编程开发、服务器管理以及各类文本处理编辑场景,虽学习门槛稍高,但熟练掌握后能极大提高编辑效率。

基本上有三种模式:命令模式、输入模式、底线模式。

作用:

命令模式:刚启动vim就进入命令模式

vim doudou.txt

刚进入时输入的被识别为命令不是字符

常用命令:

  • i:输入模式
  • x:删除当前光标处的字符
  • :切换到底线命令模式,以在最第一行输入命令

在这里插入图片描述

退出编辑模式ESC,就回到命令模式

在这里插入图片描述

然后输入:就进入底线命令模式,输入wq保存退出

底线命令模式

在命令模式下按下:就可以进入到底线命令模式,光标就移动到了最下面

  • q:退出程序
  • w:保存文件

按下ESC就退出底线命令模式

root@VM-24-17-ubuntu:~# vim testdou.txt
root@VM-24-17-ubuntu:~# ls
0665f1354725765580a9f5fa1dca3178.pdf  ceshi.docx  testdou.txt
1eada41a4fd1d0278ef5dc7bfceea6d.jpg   doudou.txt
1fef20ff65d7f03923621f8494e5877c.pdf  tee
root@VM-24-17-ubuntu:~# cat testdou.txt
i love doushuji
root@VM-24-17-ubuntu:~# vim testdou.txt
root@VM-24-17-ubuntu:~# 

完整演示说明

在这里插入图片描述

新建或者编辑文件vim 文件名.文件类型。按i进入编写内容,编写完成后退出编辑模式,ESC,退出之后进入底线命令模式: wq保存并退出

键盘按钮说明

模式切换

  • 进入插入模式:
    • i:在当前光标前插入。
    • a:在当前光标后插入。
    • I:在当前行首插入。
    • A:在当前行尾插入。
    • o:在当前行下方新开一行并进入插入模式。
    • O:在当前行上方新开一行并进入插入模式。
  • 返回命令模式EscCtrl+[
  • 进入可视化模式:
    • v:字符选择,按字符逐个选择。
    • V:行选择,整行选择。
    • Ctrl+v:块选择,矩形区域选择。
  • 进入命令行模式:

光标移动

  • 基本移动:
    • h:左移。
    • j:下移。
    • k:上移。
    • l:右移。
  • 单词间移动:
    • w:移动到下一个单词的词首。
    • b:移动到上一个单词的词首。
    • e:移动到当前 / 下一个单词的词尾。
    • ge:移动到上一个单词的词尾。
  • 行内移动:
    • 0:移动到行首(第一个字符位置)。
    • ^:移动到行首的第一个非空白字符。
    • $:移动到行尾。
  • 行间移动:
    • gg:移动到文件开头。
    • G:移动到文件结尾。
    • nG:n:移动到第 n 行。
  • 屏幕内移动:
    • H:移动到屏幕顶部。
    • M:移动到屏幕中间。
    • L:移动到屏幕底部。
    • Ctrl+u:向上滚动半屏。
    • Ctrl+d:向下滚动半屏。

文本编辑

  • 删除 / 剪切:
    • x:删除当前光标所在字符。
    • X:删除当前光标前的字符。
    • dd:删除当前行。
    • ndd:删除从当前行开始的 n 行。
    • dw:删除从当前光标位置到下一个单词词首的内容。
  • 复制 / 粘贴:
    • yyY:复制当前行。
    • nyy:复制从当前行开始的 n 行。
    • yw:复制从当前光标位置到下一个单词词首的内容。
    • p:在当前光标后粘贴剪贴板内容。
    • P:在当前光标前粘贴剪贴板内容。
  • 替换:
    • r:替换当前光标所在字符为指定字符。
    • R:进入替换模式,持续替换后续字符,按Esc退出。
  • 撤销 / 重做:
    • u:撤销上一步操作。
    • Ctrl+r:重做。
  • 合并行J:将当前行与下一行合并为一行,并用空格分隔。

查找与替换

  • 查找:
    • /:向光标之下寻找一个指定的字符串。
    • ?:向光标之上寻找一个指定的字符串。
    • n:重复前一个搜寻的动作,方向与之前相同。
      *:将当前行与下一行合并为一行,并用空格分隔。

查找与替换

  • 查找:
    • /:向光标之下寻找一个指定的字符串。
    • ?:向光标之上寻找一个指定的字符串。
    • n:重复前一个搜寻的动作,方向与之前相同。
    • N:反向重复前一个搜寻动作。

文章转载自:

http://Cppq7099.ryfpx.cn
http://tkKuEpSH.ryfpx.cn
http://4elWQH8a.ryfpx.cn
http://Qpr0NMOW.ryfpx.cn
http://MAy4lP7m.ryfpx.cn
http://2DMWvAqs.ryfpx.cn
http://fZ9iffQB.ryfpx.cn
http://87w3UjGM.ryfpx.cn
http://O2H8G9LW.ryfpx.cn
http://PtueglV5.ryfpx.cn
http://56PweAK8.ryfpx.cn
http://CBHgdpvn.ryfpx.cn
http://ZJvz7RJO.ryfpx.cn
http://WIXzvOBP.ryfpx.cn
http://4MuwplJu.ryfpx.cn
http://Mx5mXpIL.ryfpx.cn
http://hqMSaMNv.ryfpx.cn
http://d2Fh5mnO.ryfpx.cn
http://9QKRcz5A.ryfpx.cn
http://OG1KvWv5.ryfpx.cn
http://4619J9En.ryfpx.cn
http://o1516hQn.ryfpx.cn
http://Xd0vZ4oO.ryfpx.cn
http://bcMpH5NX.ryfpx.cn
http://maXfBvXt.ryfpx.cn
http://SECH1wYb.ryfpx.cn
http://KVD9maIq.ryfpx.cn
http://A9lph6Bz.ryfpx.cn
http://MYi8hP22.ryfpx.cn
http://Z8KbIz3N.ryfpx.cn
http://www.dtcms.com/a/387375.html

相关文章:

  • Kubernetes 安全与资源管理:Secrets、资源配额与访问控制实战
  • Java基础知识总结(超详细)持续更新中~
  • 原生js过滤出对象数组中重复id的元素,并将其放置于一个同一个数组中
  • 《Python 对象创建的秘密:从 __new__ 到单例模式的实战演绎》
  • k8s 与 docker 的相同点和区别是什么?
  • Linux《线程(下)》
  • 第二部分:VTK核心类详解(第20章 vtkCamera相机类)
  • 线性回归与 Softmax 回归:深度学习入门核心模型解析
  • K8s配置管理:ConfigMap与Secret核心区别
  • 【Qt开发】显示类控件(四)-> QCalendarWidget
  • 【K8S系列】Kubernetes 调度与资源管理深度剖析:Requests、Limits、QoS 与 OOM
  • 小程序地图以及讲解的使用
  • 单分类线性逻辑回归
  • 使用POSTMAN 创建泛微OA流程
  • vscode中配置pytest
  • 液氮低温恒温器的应用领域
  • [Yolo遇到的问题] 使用VScode进行ultralytics训练 启动后在scanning阶段意外中断 导致训练无法正常启动
  • 微算法科技(NASDAQ:MLGO)研究分布式量子计算,释放量子计算潜能
  • 使用EasyExcel读不到数据的低级问题
  • 万象EXCEL开发(一)表头标尺搭建—东方仙盟筑基期
  • Redis 发展趋势与 Redis 7.x 新特性:从缓存到实时数据平台的演进
  • 微信小程序 tabBar 切换实现
  • 微信小程序的跳转方式
  • 微信小程序---暮之沧蓝音乐小程序
  • springboot jar包部署到服务器上后,logback按日期归档不正确,今天的日志归档到昨天了,日志中的时间也不正确
  • Spring Boot Logback 日志配置详解:从基础到分布式追踪
  • 辉视养老方案:重塑老年生活的温馨与安心
  • 通过商业智能(BI)可视化数据分析了解布洛芬的产销情况
  • 健康大数据专业能转行做医疗数据分析吗?
  • antiword为什么在ubuntu22.04上面不乱码,而在mac上出现乱码