linux vim函数跳转,涨姿势丨linux开发:vim命令

本文详细介绍了 Vim 编辑器的各种实用命令,包括插入模式、文件保存与退出、复制粘贴等功能,以及如何进行查找替换和窗口操作等高级技巧。此外还提供了 Vim 的配置建议和一些编程快捷命令。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

原标题:涨姿势丨linux开发:vim命令

vim使用篇

插入:

i

从光标当前位置开始插入

a

从光标当前位置的下一个字符开始插入

o

在光标位置的下行插入一个空行,再进行插入

O

在光标位置的上一行插入一个空行,再进行插入

I

从光标所在行的开头开始插入正文

A

从光标所在行的末尾开始插入正文

文件保存与退出:

:w

保存文件

:w : 另存为

:w!

强制保存文件

:q

退出

:q!

强制退出

:x

= :wq

文件写入与打开:

:w filename

保存文件为给出的文件名

:w! filename

强制保存文件为给出的文件名

:f filename

将当前文件重命名为filename

:r filename

插入文件内容到光标指定的位置

:e filename

编辑新文件(打开另一个文件进行编辑)

:e! 放弃对文件的修改,并加裁原始的文件内容

复制粘贴:

[n]x

删除从光标开始的连续n个字符

[n]dd

删除从光标开发的n行

[n]yy

复制从光标开始的n行

y$

从光标位置复制在行尾

p

粘贴

gp 粘贴

u 撤消

U 撤消对一行的全部操作

ctrl+r 重做(反撤消)

. 重复上次操作

yw 复制一个word

dw 剪贴一个word

cw 修改一个word

D 剪贴光标到行尾

C 修改光标到行尾

选择:

v 按字符选择

V 按行选择

ctrl+v 按块选择

光标跳转:

h、j、k、l

左、下、上、右

H、M、L

屏幕最上边、屏幕中间位置、屏幕最下边

gg 跳到文件第一行

G 跳到文件最后一行

$

跳到行末

0(数字0)跳到行首

[num]gg(或[n]G) 跳到文件第n行

[n]H

跳到屏幕第n行

fx 光标移动到本行之后第一此出现“x”的位置;如:fa ,移动到下一次a出现的位置

Fx 光标移动到本行之前一此出现“x”的位置;如:fa ,移动到上一次a出现的位置

% 在前后括号({}() )位置之间移动

:n

跳到第n行(同[n]G)

w

光标向右移动一个字

W 光标移动到下的个空格之后

b

光标向左移动一个字

B 光标移动到上一个空格之后

num% 跳到文件num%处 , 如50%

编辑模式下按v

进入可视状态进行内容选择

[n]shift + >

所选内容向右移动一个tab

[n]shift + <

所选内容向左移动一个tab

查找替换:

/string

查找字符串 ,配合n(next)使用

* 向后搜索光标所在位置的一个word

# 向前搜索光标所在位置的一个word

/\

/xxx\> 查找以xxx结尾的字符串

/\ 完全匹配查找

d/int main 从光标所在位置开始删除,直到遇到int main

:s/str1/str2

用str2替换行中首次出现的字符串str1

:s/str1/str2/g

用str2替换行中所有的字符串str1

:%s/str1/str2/g 用str2替换全文中所有的字符串str1,不询问,强制替换

:%s/str1/str2/gc 用str2替换全文中所有的字符串str1,询问

vi:

打开或新建:

vi #命令行

:ed #最后一行模式

:fin[d] #在路径path中查找文件,然后编辑它

new # 在新窗口中编辑文件

窗口操作:

:sp(或ctrl+w+s): 打开一个新窗口,编辑相同的内容。

:new(或ctrl+W+n): 打开一个空的北新窗口。

ctrl+w+w: 在多个窗口间切换

滚屏:

ctrl+u[p] 向下滚半屏

ctrl+d[own] 向上滚半屏

ctrl+f[ront] 向下滚一屏

ctrl+b[ack] 向上滚一屏

ctrl+e 向下滚一行

ctrl+y 向上滚一行

zz 将光标所在的行放在屏幕中间

zt 将光标所在的行放在屏幕第一行 top

zb 将光标所在的行放在屏幕最后一行 botton

Go 跳到文件尾部去插入

标签:

:tabe [file] 打开新标签并在新标签中编辑file所指的文件

:[num] gt 在不同的标签之间切换 num指的是第几个标签

:tabo 关闭所有其它的标签页

:tabs 列出标签页和它们包含的窗口

:tabfir[st] 跳转到第一个标签

:tabl[ast] 跳转到最后一个标签

vim比较文件内容:

vimdiff main.c main2.c

vim设置:

set number

set nonumber

set ignorecase #忽略大小写 (查找字符串时)

set noignorecase

set ruler #显示当前光标所在位置

set nuruler

set hlsearch #高亮显示 (查找字符串是,找到后高亮显示)

set nohlsearch

set incsearch #在输入字符串时就开发查找

set noincsearch

syn on #高亮显示

set backspace=2 #backspace可用

编程编:

1. 打开include 的文件:

(1) 光标放在文件名上,按 ctrl+w f ,在一个水平分割的窗口中打开。

(2)光标放在文件名上,按gf, 在同一个窗口中打开。

2. 通过find命令打开文件:

(1)先通过set path设置查找的目录:

set path=.,./**,/usr/include 表示在当前目录,当前目录下的所有子目录,和/usr/include目录下进行查找

(2)设置好目录后在vi下用:find filename即可查找并打开文件。

3. ctags

(1).在项目目录下用“ctags -R .”产生tags文件。 可将ctags命令写入makefile文件中

(2).在vim中设置tags文件“set tags=tags”

(3).在vim中通过tag命令中转到函数:tag main

:tag {ident}

“中转到指定的标签

:tags

"显示标签

:Ctrl+]

“跳转到当前光标下的标签(函数声明处)

:Ctrl+T

“跳转到标签栈中较早的标签(函数调用处)

在taglist串口中将光标移动到某个tag上,按空格键会在状态栏上显示原型

4. taglist

:TlistOpen 打开taglisg

:p "预览taglist窗口中光标所在位置的tag。

:o "在新窗口中打开光标所在位置的tag

:l "展开tag

:+ "展开tag

:= "展开所有tag

:- "折叠tag(不用shift)

:* "折叠所有tag

5. MiniBufExplorer

此插件会使窗口上显示一个buff清单,可以在该窗口上来选择打开某个buf文件

:跳到下一个buffer名上

:跳到上一个buffer名上

:打开光标所在buffer

d:

删除光标所在bufferbuffer

6. C编程常用命令:

查找光标所在处的单词

%

括号之间跳() {}

#if...#enfif 之间

gd

中转到局部变量的定义处

gf

跳到光标所在的头文件处,ctrl+o 跳回来

cw

删除一个单词并进入插入模式

dw

删除一个单词并

[I

查看函数的声明:显示include文件中匹配这个函数名的一个清单

7. 习惯:

1.留意一下你经常要重复进行的操作是什么。或者你花大部分时间都在干些什么。想一想有没有一个编辑命令可以替你做最让你头痛的事。

2.不要重复做相同的事。

点击学习更多嵌入式知识返回搜狐,查看更多

责任编辑:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值