[Linux笔记]vim基础

news/2023/11/29 6:41:12

vim本身不是像vs那样什么都能做的ide,只是单纯的编辑器。
命令行输入vim 文件名,会以vim打开文件。
若当前路径下尚无该名称的文件,则会在保存退出时创建该文件。

在vim中操作,尽量不要用鼠标及其滚轮操作,而只用键盘控制。比如滚轮上翻可能只会翻出之前的命令行记录,而不是windows记事本那样翻到前文部分。

vim的几个模式

在这里插入图片描述

vim是多模式编辑器,常用模式有:
1.命令模式(启动后的默认模式)
在任意模式按esc均可回到命令模式。
要在各模式间切换,需要先切换到命令模式再切换到目标模式。

2.插入模式(输入i切换)
左下角出现INSERT字样,此时可以进行文本编辑。

3.底行模式(命令模式下按 shift+: 切换)
若要退出,先回退到命令模式再转底行模式。
此时底行可输入指令,q是退出,w是保存,wq是保存后退出。一般都是用wq。
q或w或wq接! 为强制执行,若用户没有相应权限则无法强制执行。

4.替换模式(shift+r)
左下角出现REPLACE字样,此时输入内容会从光标位置开始逐个替换,按backspace逐个取消替换。

5.视图模式(输入v切换)
又称可视化模式,用于选择一片区域后进行编辑 。
参考:Vim技巧之四大模式_可视模式

vim指令集

底行模式下(shift+:后):
q是退出,w是保存,wq是保存后退出
q或w或wq接! 为强制执行,若用户没有相应权限则无法强制执行

set nu 与 set nonu:调出与消除行号

/关键词:搜索关键词
文档中匹配的部分会被高亮
搜索出结果后按n将光标移动到下一个匹配的关键词
%s/要替换的文本/想替换成的文本/g:批量匹配替换
!+指令 :在不退出vim的情况下执行命令行指令
例:在不退出vim的情况下编译:
!gcc test.c
vs 文件名:创建新文档并与当前文档一起打开,会自动分屏
分屏模式下:
光标在哪个文件的界面中,当前操作的就是哪个文件
使用退出指令会退出光标所在文件,然后关闭相应界面
ctrl+ww:将光标切换到另一文件的界面
按住ctrl后连按两下w

大部分指令是在命令模式下使用的(不是底行也不是插入):

yy 与 nyy(n为行数):复制光标所在行或从光标所在行算起的n行
dd 与 ndd(n为行数):剪切光标所在行或从光标所在行算起的n行
若剪切后不粘贴,则剪切操作等同于删除
p 与 np(n为行数):将所复制或剪切的内容粘贴一行或n行到光标所在行下方

u:撤销上一个操作
ctrl+r:撤销上一个撤销操作,即返回上次撤销前
保存后依然可以进行撤销操作,但保存退出后再打开会无法撤销上一个操作

批量注释:ctrl+v,左下出现v-block,用j下移光标选择范围,开启大写,按i,输入双斜杠//注释一行,再按esc,选中的区域即被批量注释。
批量取消注释:ctrl+v,左下出现v-block,按l选择范围,输入d,选中的区域即被批量取消注释。

shift+g:将光标移动到文档尾部
n shift+g (n为行号):光标移动到第n行
输入行号(没有回显,但缓冲区已记录)后按shift+g
gg:将光标移动到文档头部
shift+$ (4):将光标移动到当前行的尾部
shift+^ (6):将光标移动到当前行的头部
nb 与 nw(n为单词数):以单词为距离单位,在当前行内左右移动光标
w向右b向左,省略n则n取1
单词指的是由非字母符号隔开的字母
h j k l:上下左右微调光标位置
h左 l右 j下 k上
不用小键盘与方向键

shift+~:从光标所在位置起,依次切换单词的字母大小写
按住shift,然后按几下切换几个,按住则是连续切换
nr+字符(n为字符数):用输入r之后输入的字符替换光标所在位置起的n个字符
省略n则n取1
shift+r:切换到替换模式,见前文
nx(n为字符数):光标位置开始,向后删除n个字符
包括光标所在位置的字符
省略n则n取1
n shift+x(n为字符数):光标位置的前一个字符开始,向前删除n个字符
输入n后按shift+x
不包括光标所在位置的字符

vim的配置

a.自己配置(复杂配置会很繁琐,不推荐)
vim启动时会在当前用户的目录(/home/当前用户名)中寻找配置文件,若未找到配置文件则使用默认配置。在用户之间,vim的配置是互相独立的。
touch .vimrc :创建vim配置文件
vim .vimrc :打开vim配置文件
在第一行输入set nu,则vim每次启动后会带行号
配置文件中的注释符为双引号 " ,注释当前行
更多配置选项自行搜索,关键词:vim配置选项
复杂配置可能会需要下插件,需使用mkdir .vim创建插件文件夹然后将配置文件放入其中

b.自动化配置
例:在gitee搜 vimforcpp(暂时只支持centos 7.X),按说明安装


http://www.ppmy.cn/news/928587.html

相关文章

qtcreator导入配色方案

当换了电脑或者重新安装了qtcreator时,因为已经习惯了之前的配色方案。 所以需要将之前的配色方案给导过来(首先得做好备份,以免丢失)。。。。 此位置下就是当前使用的配色方案。 将此文件直接拷贝到新安装qt的电脑的同一位置,&#xff0c…

启程去北京(19年面试经历)

突然想写点什么,记录下自己这几天在北京面试的过程,记录下这些失落,错过的机会以及人生的选择。 刚过完年,年货都还没吃完我就踏上去往北京的k4218。 在邢台站,爸妈过来送我,不知道是下雪的缘故还是什么&a…

非西站出发,非和谐号的,北京到天津的火车

车次 全程始发全程终点列车类型出发站发车时间目的站到达时间耗时距离 2604/2601次 临汾秦皇岛普快北京04:22天津06:102小时10分钟137 公里 4405次 北京天津空调普快北京08:50天津10:542小时04分钟137 公里 1301次 北京满洲里空调普快北京10:03天津11:481小时45分…

北京市居民公共交通出行特征分析

北京市居民公共交通 出行特征分析 导语 为研究北京市居民公共交通出行现状,本文从出行概况、时间特征、空间特征3个方面分析了北京市公共交通(含地面公交、轨道交通)出行特征。文中指标计算以2018年8月共31天的IC卡刷卡数据为样本,并以全市平均刷卡率进行…

BUAA北京地铁乘坐线路查询

【问题描述】 编写一个程序实现北京地铁最短乘坐(站)线路查询,输入为起始站名和目的站名,输出为从起始站到目的站的最短乘坐站换乘线路。注:1. 要求采用Dijkstra算法实现;2)如果两站间存在多条…

北京地铁线路查询

Dijkstra Algorithm 迪杰斯特拉算法 北京地铁线路查询是对最短路径算法的应用,此代码运用迪杰斯特拉算法求出两站之间的一条最短路径 如果读者想要求出所有的最短路径,可参考弗洛伊德算法 【问题描述】编写一个程序实现北京地铁最短乘坐(站…

涨姿势!北京地铁原来是16条旅游专线

学姐按:周末想带孩子玩,又没太多时间。好不容易有时间出去了,结果半天都被堵在了路上,这让很多家长每逢周末必发愁。为什么不换种方式出行呢?北京的地铁的里程越来越长,殊不知所经之处有很多的大小景点可以…

北京NIKE ADIDAS 折扣店/工厂店总结

马连道店位于宣武区马连道路家乐福对面,也就是著名的茶叶街内,很好找~坐BUS有349,414,46,609,708。马连道和青年路两家都是nike直营的,建议先去这两家。 青年路店位于朝阳区青年路,东…

每日一练c++题目日刊 | 第十一期

文章目录 Kruskal算法:最小生成树题目背景故事题目描述输入描述输出描述输入样例输出样例解题思路C代码 动态规划:最长公共子序列题目背景故事题目描述输入描述输出描述输入样例输出样例解题思路C代码 动态规划二分:最小表示法题目背景故事题…

北京长途汽车站一览表

北京长途汽车站一览表 2005-02-01 09:30:29.0 长途汽车站:  1、东直门长途汽车站:地址:朝阳区东直门外斜街45号。咨询电话:64671346、64608131  2、莲花池长途汽车站:地址:丰台区莲花池。咨询电话&…

再见!北京!再见!百度!

点击上方“码农突围”,马上关注 这里是码农充电第一站,回复“666”,获取一份专属大礼包 真爱,请设置“星标”或点个“在看” 这是【码农突围】的第 400 篇原创分享 作者 l 突围的鱼 来源 l 码农突围(ID:sma…

北京的火车站

北京的火车站 北京有4个火车站,分别是:北京站,北京西站,北京南站,北京北站。 下面是各个站的介绍: 北京站:北京站主要负责京沪线、京哈线的客运列车。 http://baike.baidu.com/view/49121.htm …

ThinkPHP使用having时,同时使用分页会报错的解决方法

当使用ThinkPHP的分页查询时,如果与having同时使用,可能会出现错误。这是因为having会影响分页查询的结果。 解决方法是,先不要使用分页查询,先查询出所有数据,再使用array_slice函数对数据进行分页。示例代码如下&am…

【输入法篇】PC微软输入法自定义短语的高级操作

【输入法篇】PC微软输入法自定义短语的高级操作 PC微软输入法自带的剪贴板,可设置常用高频词组、信息等。关键词唤起,告别重复粘贴,类似手机输入法剪贴板功能。—【蘇小沐】 文章目录 【输入法篇】PC微软输入法自定义短语的高级操作1.实验环…

中国网络红娘第一人的三个偶然

知晓金庸笔下的那个不食人间烟火的小龙女已经有很多很多年了,很多到记不清具体年份了,大抵是从初中开始的。由于不食人间烟火,那个小龙女除了武功极高之外,把很多事情处理的一团糟,比如那些叫做爱情的事儿。不仅自己处…

互 联 网 发 展 史

互 联 网 发 展 史 1、什么是Internet? Internet是计算机交互网络的简称,又称网间网。它是利用通信设备和线路将全世界上不同地理位置的功能相对独立的数以千万计的计算机系统互连起来,以功能完善的网络软件(网络通信协议、网络操作系统等&…

周奕与共享软件(转)

纪念中国共享软件走出国门赚取美元的第一人,周奕。转载并记录他的文章。 进军海外第一篇,共享软件怎样收钱 本文作者:周奕 做共享软件是有利可图的,这是真的,1999年3月以前我还不信,可是经过一年多的研究和实践下来&am…

李艳红故事

李彦宏故事一:全国青少年程序编程大赛失利 1968年11月17日,李彦宏出生在山西阳泉。父亲是兵工厂工人,母亲是皮革厂工人。家中5个孩子,他排行第四,是唯一的男孩。小时候,吃苹果,姐姐将苹果皮削的…

李彦宏成长故事

李彦宏成长故事 百度李彦宏故事一:全国青少年程序编程大赛失利 1968年11月17日,李彦宏出生在山西阳泉。父亲是兵工厂工人,母亲是皮革厂工人。家中5个孩子,他排行第四,是唯一的男孩。小时候,吃苹果&#x…

我的软件推广成功之路 [转]

我的软件推广成功之路 本人与大家一样,原来只是一个普通的程序员,靠给软件公司打工谋生。后来感觉这样长期干下去没有什么前途,虽然现在年轻还可以加班加点靠拼身体吃饭,以后年纪大了怎么办?听说很多人自己单干每年靠…
最新文章