Linux -- 了解 vim

ops/2024/10/18 19:23:36/

目录

vim-toc" style="margin-left:40px;">vim

Linux 怎么编写代码?

vim%20%E7%9A%84%E6%A8%A1%E5%BC%8F%C2%A0-toc" style="margin-left:0px;">了解 vim 的模式 

什么是命令模式?

vim%20%E7%9A%84%E5%BF%AB%E6%8D%B7%E9%94%AE%EF%BC%9A-toc" style="margin-left:80px;">命令模式下 vim 的快捷键:

光标定位:

复制粘贴:

 删除及撤销:

注释代码:

 什么是底行模式?

​编辑

​编辑

什么是插入模式?

 如何进行模式切换?

TIP:


vim">vim

在Windows下,我们常用 vs 来编辑、编译、调试代码,而在Linux下,编辑、编译、调试代码的工具是独立的。

vim的本质是一个多模式的编辑器,只能编辑代码,但不能编译代码。

Linux 怎么编写代码?

当我们创建一个 .c 文件,想要在文件中写代码时,vim  [ 文件名 ] 就可以进行编辑代码:

 一开始进入 vim 时,为命令模式,在该模式下,按键盘无法进行写入!

 

我们需要进入编辑模式才可以输入代码,但一个没有经过配置的 vim 在输入代码时,没有语法高亮,没有括号和函数的补齐。

如果想退出 vim,按 Esc 从编辑模式回退到命令模式,再输入 :wq 就可以保存代码并退出!

 

如果我们想运行刚刚写的代码,可以 gcc [ 文件名 ] 编译代码,此时会生成一个可执行程序,./ [ 可执行程序 ] 就可以运行代码! 

 

vim%20%E7%9A%84%E6%A8%A1%E5%BC%8F%C2%A0" style="background-color:transparent;">了解 vim 的模式 

什么是命令模式?

命令模式是 vim 打开时的默认模式,在该模式下,所有的输入,都会被当做命令来看待

vim%20%E7%9A%84%E5%BF%AB%E6%8D%B7%E9%94%AE%EF%BC%9A">命令模式下 vim 的快捷键:

光标定位:

shift + $ (4) :把光标定位到当前行的最右侧结尾处

shift + ^ (6) :  把光标定位到当前行的最左侧结尾处

shift + g :把光标定位到文本的最结尾

gg :把光标定位给到文本的最开始

h:把光标左移

j:把光标下移

k:把光标上移

l:把光标右移

w:把光标移动到下一个单词的开头

b:把光标移动到前一个单词的开头

复制粘贴:

yy :复制当前行

n + yy :复制包括行在内的 n 行

p :在光标位置对复制的内容进行粘贴

n + pp :对复制的内容进行粘贴,并且粘贴 n 次! 

 删除及撤销:

u:撤销上一次的编辑

CTRL + r:对撤销进行撤销(即恢复到撤销前)

dd:删除当前行

n + dd:删除 n 行

注释代码:

批量化注释代码: 

步骤一:CTRL+v

步骤二:hjkl 进行区域选择

步骤三: shift + i

步骤四:输入 // 

步骤五:按键盘上的 Esc  

批量式取消注释:

步骤一:CTRL+v

步骤二:hjkl 进行区域选择

步骤三:输入 d

 什么是底行模式?

底行模式可以让用户在 vim 的底行输入命令

:w   : 表示保存

:q  : 表示退出

:wq  :表示保存并退出

:w!  :q!  :wq! 分别表示强制保存,强制退出,强制保存并退出。

:vs  [ 文件名 ]  :表示在同一界面下打开另一个文件,光标在哪个文件,我们就可以编辑哪个文件

CTRL+ww 就可以来回切换文件!

 : !man  [ 函数名 ] 就可以在底行模式下查看函数的功能和头文件。

查看结束后,输入 q 就可以退出手册,按照提示,按任意键就可以回到 vim 界面!

 

什么是插入模式?

插入模式下,我们可以对代码进行编辑

 如何进行模式切换?

命令模式 切换到 插入模式 :按键盘 i / a / o (常用 i)

插入模式 切换到 命令模式:按 Esc

命令模式 切换到 底行模式:shift + ;

底行模式 切换到 命令模式:按 Esc

如果忘记自己在哪个模式下,无脑按 Esc 就可以回到命令模式!

注意底行模式和插入模式无法相互切换,需要回到命令模式后,再进行切换! 

TIP:

如果在 vim 模式下不小心关掉了Xshell,或者网络突然断开(总之 vim 没有正常退出),vim 会自动保存上次编辑的文件,形成了临时文件,出现以下提示,我们只需要 输入D ,系统就会删除临时文件,下次 vim 就会正常打开,不会再次输出下面的提示了。

我们也可以在文件列表下查看临时文件,当然也可以在列表下直接删除临时文件,下次打开 vim模式也会正常打开,但是不建议这种操作!

 


http://www.ppmy.cn/ops/48445.html

相关文章

电脑桌面上用来记事的便签软件

便签软件已成为我们日常生活中不可或缺的记录工具。想象一下,在繁忙的工作中,你突然需要记下一个重要事项或临时想法,这时,一个便捷、高效的便签软件就显得尤为重要。它能帮助我们迅速捕捉信息,轻松管理琐碎事务&#…

Vite和Webpack的区别是什么,你站队谁?

Vite和Webpack有很多相同之处,也有区别,很多老铁分不清,贝格前端工场借助此文为大家详细介绍一下。 一、关于Vite和Webpack Vite和Webpack都是前端开发中常用的构建工具,用于将源代码转换为可在浏览器中运行的静态资源。它们在一…

【研发日记】Matlab/Simulink软件优化(三)——利用NaNFlag为数据处理算法降阶

文章目录 前言 背景介绍 初始算法 优化算法 分析和应用 总结 前言 见《【研发日记】Matlab/Simulink软件优化(一)——动态内存负荷压缩》 见《【研发日记】Matlab/Simulink软件优化(二)——通信负载柔性均衡算法》 背景介绍 在一个嵌入式软件开发项目中,需要开…

opencv-python(八)

import cv2 import numpy as npheight 160 width 280 image np.zeros((height, width),np.uint8) cv2.imshow(image,image) cv2.waitKeyEx(0) cv2.destroyAllWindows() 二维数组代表一幅灰度图像。 import cv2 import numpy as npheight 160 width 280 image np.zeros((he…

综合数据分析及可视化实战

【实验目的】 1、掌握数据分析常用的几种扩展库: numpy、pandas、matplotlib。 2、理解数据分析的几种方法,即描述性数据分析,探索性数据分析 和验证性数据分析。 3、理解数据分析的基本步骤:数据准备、数据导入、数据预处理、数 据分析和数据可视化…

【Go】爬虫数据解密_使用Go语言实现TripleDES加密和解密

是你多么温馨的目光 教我坚毅望着前路 叮嘱我跌倒不应放弃 没法解释怎可报尽亲恩 爱意宽大是无限 请准我说声真的爱你 🎵 Beyond《真的爱你》 引言 Triple Data Encryption Standard (TripleDES 或 3DES) 是一种对称加密算法,它通过三次应用Data Encr…

7. 第七章 迭代

7. 迭代 本章讲关于迭代的话题, 得带即重复运行一段代码语句块的能力. 我们在5.8节中见过一种递归来进行迭代, 在4.2节中见过另一种使用for循环进行的迭代. 在本章中我们会将看到使用while循环进行的第三种迭代. 首先我们先进一步讲讲变量赋值的话题.7.1 重新赋值 对一个变量…

【乐吾乐2D可视化组态编辑器】导出HTML,下载离线部署包

乐吾乐2D可视化组态编辑器地址:https://2d.le5le.com/ 使用步骤 1. 从“文件”菜单导出HTML 导出为 HTML 需要一定的开发能力,后续不再维护,即将下线,推荐使用 下载离线部署包(html) 2. 解压 3. 下载后端…