目录
零、首先上按键图?
一、Linux编辑器-vim使用
vim的三种模式?
二、命令模式 :
赋值粘贴操作?
光标的操作?
删除操作:?
大小写切换:
替换操作:
删除
三、底行模式?
分屏操作?
四、Vim是需要配置的?
零、首先上按键图?
一、Linux编辑器-vim使用
vim仅仅是一个编辑器,就是只能编写代码。
vim的三种模式?
正常/普通/命令模式(Normal mode) 控制屏幕光标的移动,字符、字或行的删除,移动复制某区段及进入Insert mode下,或者到 last line mode
插入模式(Insert mode) 只有在Insert mode下,才可以做文字输入,按「ESC」键可回到命令行模式。该模式是我们后面用的最频繁的编辑模式。
底行模式(last line mode) 文件保存或退出,也可以进行文件替换,找字符串,列出行号等操作。 在命令模式下,shift+: 即可进入该模式。要查看你的所有模式:打开vim,底行模式直接输入?
vim是一款多模式的编辑器
vim刚打开时的模式为命令模式,
输入i的时候,就变成了插入模式,就可以愉快编写代码了。
?这时我们再按一个esc就能重新回到我们的命令模式。
退出vim的话需要在命令模式的情况下按下"shift"+":",进入到我们的底行模式。
如果想要插入模式进入底行模式,需要先esc进入命令模式,再i,进入插入模式
: w (保存当前文件)
: wq (输入「wq」,存盘并退出vim) : q! (输入q!,不存盘强制退出vim)(感叹号就是强制退出的意思)
这里我们创建一个mycode.c的文件,然后使用vim mycode.c打开我们的文件。
?
输入i转换为insert模式之后,输入我们的代码,然后按下esc,转换为命令模式,再按下shift+:,进入底行模式,输入wq,存盘并且退出
?
使用cat mycode.c就可以查看我们刚刚编写的代码了。
?
?
二、命令模式 :
赋值粘贴操作?
yy:将当前光标所在的行赋值
p:将我们对应的复制行进行粘贴
u:撤销
ctrl+r:撤销u操作
同时yy和p也支持nyy或者np,这里的n表示具体的数字。yy100p就是复制,然后粘贴100次。10yyp就是以下十行复制,然后粘贴一次
光标的操作?
shift+g:直接将光标定位文件的结尾
gg:按两下g光标直接移动到文件的最开始
n+shift+g:n为具体的数组,能够让光标定义到文件的第n行
shift+4($):直接将光标移动到当前行的末尾
shift+6(^):直接将光标移动到当前行的首位置。
w:以单词为单位向后移动(nw向后移动n个单词)
b:以单词为单位向前移动(nb向前移动n个单词)
最早的老式键盘没有上下左右键,所以使用hjkl进行移动
h:光标向左移动一个字符
j:光标向下移动一行
k:光标向上移动一行
l:光标向右移动一个字符
删除操作:?
dd:将当前光标所在的行进行剪切或者删除,支持ndd,删除n行,如果这时候再p以下,就会粘贴刚刚删除掉的内容
大小写切换:
shift+~:大小写切换?
替换操作:
shift+r:进入替换模式?
?r:替换光标所在的字符,支持nr,4rw就是将当前位置的后四个字符全部变成w
?
删除
x:从左向右删除
shift+x:从右向左删?
三、底行模式?
set nu:开启索引行
set nonu:关闭索引行
?
分屏操作?
ctrl+ww或者control+ww(mac):切换到另一个屏幕
vs 文件名:分屏操作
vs mycode2.c左边是我们的mycode2.c,右边是mycode.c
?
不退出vim执行对应的命令
?:!cmd:之后加上对应的命令就可以执行对应的命令
四、Vim是需要配置的?
1.我们不关心,因为它比较麻烦
2.需要有一个不错的配置,需要了解一下vim配置的原理
推荐直接使用下面的vim配置?,在终端输入下面的代码
curl -sLf https://gitee.com/HGtz2222/VimForCpp/raw/master/install.sh -o ./install.sh && bash ./install.sh
?参考的是VimForCpp: 快速将vim打造成c++ IDE
操作完之后输入下面的代码 让配置生效
sourse ~/.bashrc
接着我们打开的vim就是下面的样子了。
程序翻译的过程
文本的c-计算机二进制
1.预处理(a.去注释 b.宏替换 c.头文件展开 d.条件编译……)
2.编译(c-->汇编)
3.汇编(汇编-->可重定向二进制目标文件)
4.链接(链接->将多个.o,.obj->合并形成一个可执行).exe?
gcc/g++需要遵守机器翻译的顺序。
|