.
个人主页: 晓风飞
专栏: 数据结构|Linux|C语言
路漫漫其修远兮,吾将上下而求索
文章目录
- vim的基本概念
-
- [正常/普通/命令模式(Normal mode)](#正常/普通/命令模式(Normal mode))
- [插入模式(Insert mode)](#插入模式(Insert mode))
- [末行模式(last line mode)](#末行模式(last line mode))
- vim操作
- 程序暂停
-
- [误输入ctrl + z 导致程序暂停](#误输入ctrl + z 导致程序暂停)
- 解决方式
- 挑战问题
- [6. 简单vim配置](#6. 简单vim配置)
vim的基本概念
正常/普通/命令模式(Normal mode)
控制屏幕光标的移动,字符、字或行的删除,移动复制某区段及进入Insert mode下,或者到 last line mode
插入模式(Insert mode)
只有在Insert mode下,才可以做文字输入,按「ESC」键可回到命令行模式。该模式是我们后面用的最频繁的编辑模式。
末行模式(last line mode)
文件保存或退出,也可以进行文件替换,找字符串,列出行号等操作。 在命令模式下,shift+: 即可进入该模式。要查看你的所有模式:打开vim,底行模式直接输入
vim是一个编辑器,定位上和记事本没有本质区别主要用来写c,c++;vim是一款文本编辑器,多模式
vim操作
我们可以通过
vim + 文件名
进入vim,在系统提示符号输入vim及文件名称后,就进入vim全屏幕编辑画面:默认命令模式无法输入,当我们输入字符i进入插入模式,就可以继续输入了
按
esc
从插入模式进入命令模式,shift+:
命令模式进入底行模式
底行模式
w表示写入,q表示退出,输入wq后就退出了vim
示例
用vim写一个hello word程序
1.输入vim Test.c
2.进入后按i
,进入插入模式
3.输入语言
4.按ESC
进入命令模式-->按shift+;
进入底行模式-->输入qm
退出
5.这时候cat下可以发现我们已经写入了内容
6.这时候我们gcc并且运行下,可以发现运行成功了
插入模式:编辑模式。
命令模式:运行使用者,通过命令继续文本编辑的控制
底行模式:用来让vim继续包括但是不限于shell继续交互的。
命令模式下输入set nu,添加行号
把光标放在第5行
按两次y,然后按p可以复制整行
以下是命令模式的基本操作
shift + zz变成并退出
vs code.h实现分屏
ctrl + ww
程序暂停
输入kill -9 (对应数字)
这里我们可以看到被暂停的文件
那么这些文件是怎么来的呢,在Linux中 ,ctrl + z`使程序暂停,而我们熟悉了Windows的撤销操作后,就特别容易误操作。
误输入ctrl + z 导致程序暂停
fg + 数字编号
重新进入暂停中的程序,然后退出
刚刚ctrl+z,二次打开会告诉你有临时文件
解决方式
输入ps ajx | grep vim
vim为了防止用户误删除,vim在异常崩溃的时候或者被删除的时候,会默认在当前目录下创建一个临时文件,这个临时文件是可以被恢复的
输入ls -al
可以看到一个.Test.c.swp
的临时文件
把它删除后,我们在vim Test.c
的时候就不会有之前的询问了
挑战问题
批量化注释和批量化去注释
在命令模式下先ctrl+v,然后hjkl继续区域化选择,选择要注释的行后数入大写i(shift+i),进行
//
注释,然后按esc
,就可以发现选中的段落注释好了在命令模式下先ctrl+v,然后hjkl继续区域化选择
//
,选择好后按d,进行删除退出时没有保存vim 会形成临时文件,保证数据安全,未来再次打开时,大D删除
提权问题
解决普通用户无法提权限问题
只有被信任的用户才可以进行提权
root 下用vim 进入etc/sudoers,大约100行处添加
把用户的基本信息添加到这个文件里,才可以被信任。
6. 简单vim配置
配置文件的位置
在目录 /etc/ 下面,有个名为vimrc的文件,这是系统中公共的vim配置文件,对所有用户都有效。
而在每个用户的主目录下,都可以自己建立私有的配置文件,命名为:".vimrc"。例如,/root目录下,通常已经存在一个.vimrc文件,如果不存在,则创建之。切换用户成为自己执行 su ,进入自己的主工作目录,执行 cd ~打开自己目录下的.vimrc文件,执行 vim .vimrc常用配置选项,用来测试
设置语法高亮: syntax on
显示行号: set nu
设置缩进的空格数为4: set shiftwidth=4