Linux下C语言编程基础
k 上移 j 下移 h 左移 l 右移
q!退出并丢弃一切改动
x 删除错误字符
i 插入字符(esc返回正常模式)
A 在最后一行添加文本
vim+文件名 编辑文件
wq 保存并退出
删除类:
dw 从光标处删除一个单词
d$ 从光标处删至行尾
de 从当前光标位置删除至单词末尾
动作:
在动作前输入数字可使其重复
dd 删除整行
u 撤销最后执行的命令
U 恢复该行原始状态
ctrl+R 撤销撤销命令。。。
p 粘贴
0 将光标移到行首
r 替换光标所在位置字符
ce 改变至一个单词末尾
执行命令:
搜索 /或?
过滤 !
打开文件
vim+文件名
或 e+文件路径
i 进入插入模式
w 保存文档
w+文件名 另存为
行间跳转
行内跳转
复制粘贴
普通模式
y复制 p粘贴
剪切粘贴
dd剪切 p粘贴
ddp交换上下行
~转换大小写
字符的替换与撤销(Undo)
快速缩进
普通模式下输入15G
,跳转到15行
普通模式下输入>>
整行将向右缩进(使用,用于格式化代码超爽)
普通模式下输入<<
整行向左回退
普通模式下输入:
进入命令行模式下对shiftwidth
值进行设置可以控制缩进和回退的字符数
shiftwiden命令
可以控制缩进或回退的字符数
调整文本命令
ce 居中
ri 靠右
le 靠左
查找
快速查找
/+要查找的字符串
?向上查找,/向下查找
n 继续查找 N 反向查找
高级查找
*
寻找游标所在处的单词
#
同上,但 *
是向前(上)找,#则是向后(下)找
g*
同*
,但部分符合该单词即可
g#
同#
,但部分符合该单词即可
多文件编辑
n/N!强制切换:之前文件的输入没有保存,仅仅是切换到另一个文件
打开新文件
e+文件名 打开文件
e#回到前一个文件
ls 列出以前编辑过的文档
b+文件名 直接进入编辑
bd+文件名 删除以前编辑过的文件项目
e!+文件名 打开新文件,放弃正在编辑的文件
f 显示正在编辑的文件名
f+文件名 改变正在编辑的文件名
恢复文件
vim -r+文件名 进入文档
ewcover+文件名 恢复
可视模式
v 选取,再按v,取消选取
shift+v 选取整行
ctrl+v 矩形区域选取
d 删除选取区域
y 复制选取区域
视窗操作
在命令行模式下输入new,打开一个新的视窗
命令行模式下输入:sp 1.txt
打开新的横向视窗来编辑1.txt
命令行模式下输入:vsp 2.txt
打开新的纵向视窗来编辑1.txt
普通模式下Ctrl-w s
将当前窗口分割成两个水平的窗口
普通模式下Ctrl-w v
将当前窗口分割成两个垂直的窗口
普通模式下Ctrl-w q
即 :q 结束分割出来的视窗。如果在新视窗中有输入需要使用强制符!即:q!
普通模式下Ctrl-w o
打开一个视窗并且隐藏之前的所有视窗
普通模式下Ctrl-w j
移至下面视窗
普通模式下Ctrl-w k
移至上面视窗
普通模式下Ctrl-w h
移至左边视窗
普通模式下Ctrl-w l
移至右边视窗
普通模式下Ctrl-w J
将当前视窗移至下面
普通模式下Ctrl-w K
将当前视窗移至上面
普通模式下Ctrl-w H
将当前视窗移至左边
普通模式下Ctrl-w L
将当前视窗移至右边
普通模式下Ctrl-w -
减小视窗的高度
普通模式下Ctrl-w +
增加视窗的高度
文档加密
创建加密文档
vim -x+文档名
输入密码,确认密码
在命令行模式中输入!可执行外部的shell命令
!ls
用于显示当前目录的内容
!rm+文件名
用于删除该文件
w+文件名
可将当前 VIM 中正在编辑的文件另存为该文件
帮助系统
F1 打开帮助界面
h+文件名 打开该帮助文件
ver 显示版本及参数
功能设定
可以在编辑文件时进行功能设定,退出后不会保存
要永久保存需修改vim配置文件
获取目前的设定
set 显示所修改过的配置
set all显示所有设定值
set option?显示option设定值
set nooption取消当期设定值
set功能说明
命令行模式下
set autoindent(ai)
设置自动缩进
set autowrite(aw)
设置自动存档,默认未打开
set background=dark
或light
,设置背景风格
set backup(bk)
设置自动备份,默认未打开
set cindent(cin)
设置C语言风格缩进
遇到的问题:
1.刚开始分不清w和e的区别
后来经过研究,已经解决这个问题
2.在试验楼里会出现输入i编辑文档,然后输入esc退出,但是退出后依旧无法输入新的命令
并未解决
心得体会:
这一次的任务也比较有趣,较上一次的吸收的多一些,希望以后保持在这个任务量不要太多,还是会有一些指令光看实验楼讲却无法正确的操作,而且指令太多很难分清,看书和ptf的话可以更系统的理解vim,但是只是理论