【Linux环境基础开发工具】编辑器-vim(一)

简介: 【Linux环境基础开发工具】编辑器-vim(一)

写在前面

vim是一个编辑器,是在Linux下编程的常用工具,如果要学习在Linux下的编程,


那学会使用vim是一个必修课,今天我就来讲解如何使用vim编辑器。


目录


写在前面


什么是vim


vim的常用命令


(1)gg:定位光标到第一行第一个位置


(2)shift + g:定位光标到最后一行


(3)n + shift + g:定位光标到第n行


(4)shift + $:定位光标到当前行的最后一个位置


(5)shift + ^:定位光标到当前行的第一个位置


(6)使用 w,b:光标能进行跨单词的行动


(7)使用 h,j,k,l:进行上下左右的光标移动操作


(8)按住 shift + ~:进行大小写转换


(9)使用 yy 复制光标所在行


(10)使用 p 进行粘贴操作


(11)使用 dd:进行剪切操作


(12)使用 u 可以进行撤销操作


(13)使用 Ctrl + r 可以撤销刚刚的撤销操作


(14)使用 r 可以对光标字符进行替换


(15)使用 shift + r 可以进入替换模式


(16)使用 x 可以删除光标所在字符


(17)底行模式 vs:进行多文件编写


如何批量化注释


vim的配置问题


写在最后:


什么是vim

vim是一个多模式的编辑器,所以我会从多个模式开始讲解vim的使用。


但是在这之前,我想说,我们的vim一开始是一个裸vim,没有经过任何配置的,


界面不好看,用起来没有语法提示和补全,很难受,而我用过的vim是配置过的,


如果你是一边看博客一边实操的,我建议学会基本的操作之后,


从目录跳转到vim配置那一部分,先把vim配置好。


vim最常用的三种模式分别是:


1. 命令模式


2. 底行模式


3. 插入模式


比如说我们创建一个文件,使用vim打开它:



进去之后的界面就是命令模式。



输入 i 就能进入插入模式,


进入插入模式就可以正常编写程序了。



我们可以看到他左下角变成绿色了,INSERT就是插入的意思。


我们随便编写一些代码:



然后,只要按ESC按键,就能直接退回到命令模式。


只要我们输入' : ' 这个符号就能进入底行模式:



我们就能操作了,输入w就是保存,输入q就是退出,也可以直接wq保存并退出。


然后我们就能看到自己写的代码了:



补充一点,无论什么模式,按ESC按键一般都能切换会命令模式。


vim的常用命令

让我们重新用vim打开这个文件,来学习一下vim的常用的命令:


(1)gg:定位光标到第一行第一个位置


(2)shift + g:定位光标到最后一行


(3)n + shift + g:定位光标到第n行

这个我就不演示了,跟前两个差不多。


(4)shift + $:定位光标到当前行的最后一个位置


(5)shift + ^:定位光标到当前行的第一个位置


(6)使用 w,b:光标能进行跨单词的行动

w是往后跳,b是往前跳,效果就是跨单词跳转。


(7)使用 h,j,k,l:进行上下左右的光标移动操作

他们分别表示的操作以及记忆方法:


h表示左,h在最左边,所以表示左也不奇怪。


l表示右,l在最右边,所以表示右也不奇怪。


j表示下,j可以理解成jump,往下跳。


k表示上,只剩下k了,他也只能表示上了。


这个是我的记忆方法啦。


(8)按住 shift + ~:进行大小写转换


当然也可以转换回来:



也可以只转一半:



(9)使用 yy 复制光标所在行

复制这个操作当然是需要配合粘贴啦。


(10)使用 p 进行粘贴操作

下图就是 yy 之后 p



我们还能 n + p,表示粘贴 n 次:


比如说 100 p:



可以看到粘贴了100行。


当然,y也可以使用 n + yy 复制 n 行的内容


比如我们 2 yy 一下:



再 p 一下:



可以看到确实是复制了两行。

相关实践学习
CentOS 8迁移Anolis OS 8
Anolis OS 8在做出差异性开发同时,在生态上和依赖管理上保持跟CentOS 8.x兼容,本文为您介绍如何通过AOMS迁移工具实现CentOS 8.x到Anolis OS 8的迁移。
相关文章
|
5月前
|
机器学习/深度学习 人工智能 自然语言处理
构建智能化编程环境:AI 与代码编辑器的融合
在人工智能的推动下,未来的代码编辑器将转变为智能化编程环境,具备智能代码补全、自动化错误检测与修复、个性化学习支持及自动化代码审查等功能。本文探讨了其核心功能、技术实现(包括机器学习、自然语言处理、深度学习及知识图谱)及应用场景,如辅助新手开发者、提升高级开发者效率和优化团队协作。随着AI技术进步,智能化编程环境将成为软件开发的重要趋势,变革开发者工作方式,提升效率,降低编程门槛,并推动行业创新。
|
3月前
|
Dart 搜索推荐 IDE
Windows下Zed编辑器配置Dart环境
本文介绍了Dart编程语言及其主要框架Flutter的优势,并推荐使用轻量级编辑器Zed进行Dart开发。详细步骤包括Dart环境的安装与配置,Zed编辑器的安装与个性化设置,以及如何在Zed中编写并运行Dart的HelloWorld程序。通过自定义任务实现Dart文件的快速运行,提高了开发效率。
|
3月前
|
自然语言处理 运维 开发工具
深入探讨了 NeoVim 相较于传统 Vim 的优势,包括更好的扩展性、现代化的界面和用户体验、多语言编程支持、强大的异步处理能力、更好的协作支持、持续的更新和改进、活跃的社区以及与现代开发工具的集成
本文深入探讨了 NeoVim 相较于传统 Vim 的优势,包括更好的扩展性、现代化的界面和用户体验、多语言编程支持、强大的异步处理能力、更好的协作支持、持续的更新和改进、活跃的社区以及与现代开发工具的集成。通过命令对比,展示了两者在启动、配置、模式切换、移动编辑、搜索替换、插件管理、文件操作、窗口缓冲区管理和高级功能等方面的差异。总结部分强调了 NeoVim 在多个方面的显著优势,解释了为什么越来越多的运维人员选择 NeoVim。
194 3
|
7月前
|
开发工具
vi编辑器,现在vi\vim是文本文件进行编辑的最佳选择,Vim是vi的加强的版本,兼容vi的所有指令,vim编辑器有三种工作模式,一开始进入的是命令模式,命令模式i是插入的意思,两下y+p复制内容
vi编辑器,现在vi\vim是文本文件进行编辑的最佳选择,Vim是vi的加强的版本,兼容vi的所有指令,vim编辑器有三种工作模式,一开始进入的是命令模式,命令模式i是插入的意思,两下y+p复制内容
|
5月前
|
存储 Linux Shell
常用vim命令和vim基本使用及Linux用户的管理,用户和组相关文件
这篇文章介绍了Vim编辑器的基本使用、常用命令和模式,以及Linux系统中用户和组的管理方法,包括用户和组相关文件如/etc/passwd、/etc/shadow和/etc/group的说明。
常用vim命令和vim基本使用及Linux用户的管理,用户和组相关文件
|
6月前
|
开发者 图形学 开发工具
Unity编辑器神级扩展攻略:从批量操作到定制Inspector界面,手把手教你编写高效开发工具,解锁编辑器隐藏潜能
【8月更文挑战第31天】Unity是一款强大的游戏开发引擎,支持多平台发布与高度可定制的编辑器环境。通过自定义编辑器工具,开发者能显著提升工作效率。本文介绍如何使用C#脚本扩展Unity编辑器功能,包括批量调整游戏对象位置、创建自定义Inspector界面及项目统计窗口等实用工具,并提供具体示例代码。理解并应用这些技巧,可大幅优化开发流程,提高生产力。
550 1
|
7月前
|
搜索推荐 Linux 开发工具
|
7月前
|
Linux Shell 开发工具
Linux Vim批量注释和自定义注释
在Vim中,快速批量注释和取消Shell脚本的多行可以使用替换命令。例如,用`:1,10s/^/#/g`在第1到10行行首加`#`注释,`:1,10s/^#//g`则移除这些行的行首`#`。定义快捷键如`:map^P l#<Esc>`(需用Ctrl+V+P生成^P)能一键在当前行添加`#`注释。要取消注释,可以定义`:map^B 0x`来删除行首字符。通过`.vimrc`保存快捷键设置,可使它们在每次启动Vim时生效。
|
7月前
|
Ubuntu Unix Linux
Linux Vim最全面的教程
Linux Vim最全面的教程
|
7月前
|
网络协议 Linux 开发工具
配置Linux固定IP地址,为什么要固定IP,因为他是通DHCP服务获取的,DHCP服务每次重启都会重新获取一次ip,VMware编辑中有一个虚拟网络编辑器
配置Linux固定IP地址,为什么要固定IP,因为他是通DHCP服务获取的,DHCP服务每次重启都会重新获取一次ip,VMware编辑中有一个虚拟网络编辑器