linux常用工具vim

主要是总结一些常用的vim快捷键和方式

先来看一张图


vim快捷键

选定鼠标所在的字符串,然后搜索

只要设置了hlsearch,就能使用’*’符合进行搜索,选定之后,然后再使用’*’切换到下一个,作用类似n键;

 

vim 查看函数原型可以分为系统函数和自定义函数

系统函数:用shift+K

 

如何进行批处理:

比如:将10行代码全部注释掉;

V之后,选择10行,如何在你每一行前加入#符号?


批处理替换:

:%s/A/B/g----将本文档中的A全部替换成B

:%s/^/$(VCOM)$(VHDDIR)/g

:x,ys/^/$(VCOM) $(VHDDIR)/g

x,y代表行数,说明从x行到y行都执行操作,最前面加入$(VCOM) $(VHDDIR)字符;


% 括号匹配,匹配大括号

[[ 跳往上一个函式
]] 跳往下一个函式

gd:选中光标当前的词,并搜索;

shift+{ 段首

shift+} 段尾

0 将光标指向行首;

* 向下匹配光标处的词

gf 进入光标指定的文件(注意:头文件的是相对路径还是绝对路径)

ctrl+o 跳向之前的文件

ctrl+l 跳向之后的文件

shift+v > 向右移动一个tab

shift+v <向左移动一个tab(要移动多个tab,就使用多个"<"或">")

:f 查看文件名

Ctrl+G: 查看文件名

!pwd 查看详细路径

:set fileencoding 查看文件编码方式

o O 在光标的下方/上方插入新行

 

在vim里进行编译

:make

 

使用vim打开多个文件:

vim a b c

使用:n跳转到下一个文件

使用:N返回到该文件之前的一个文件

 

删除选定的字符或词

x或X删除光标所在的字符;

dw删除光标所在的字符串;

 

vimdiff比较2个文件的差异

$ vimdiff  fileA fileB


Ctags

索引、跟踪源码的定义

变量的声明和函数方法的实现

安装ctags:apt-get install ctags

产生tag文件:在源码src目录下运行ctags -R

然后从src目录,用vim打开文件

在文件里用ctrl + ] 可以定位

用ctrl + t 返回

如果有多个选择,用:ts来选择

 

如何返回上次定位处?

'0 (ok,该功能测试通过)

 

CSCOPE

强大的源码阅读和书写工具

使用cscope跟踪函数被调用的情况;

apt-get install cscope

使用cscope

#!/bin/sh

find . -name "*.h" -o -name"*.c" -o -name "*.cc" > cscope.files

cscope -bkq -i cscope.files

ctags -R

在源代码目录下打开vim。

要使用cscope查找就必须加载cscope.out文件.

在vim命令行下执行:

:cs add cscope.out(若你退出了再次进入,需要重新执行)

帮助命令:

:cs help

查找符号、变量出现的位置

:cs find s xx

 

查找调用本函数的地方

:cs find c sync_config_file

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
tar -xf vim.tar -C ~ vim /etc/vimrc vim /root/.vimrc set ts=4 设置tab有多少空格 set ai 自动对齐 set nu set mouse=a set shiftwidth=4 shift + . 向左向右缩进 shift + , jklh ,cs 性感的注释 ,cu 取消注释 ,cc 注释一行 ,ca 切换单行注释符 选中代码块 按=  自动对齐 ctags -Rn . ctrl + ] ctrl + t 二、VIM编辑器的使用 vi vim (增强版vi,现在各版本的linux都带有vim) 三种模式: 普通模式:控制光标移动,删除字符,段落复制(按ESC) 编辑模式:包含插入模式和替换模式,新增文字和修改文字 命令行模式/末行模式:保存文字,离开vim,以及其它设置 vim newfile 新建一vim空白文件进行编辑 普通模式 编辑模式下按ESC切换为普通模式 命令 说明 移动: h 将光标向左移动一格 l 将光标向右移动一格 j 将光标向下移动一格 k 将光标向上移动一格 ^ 光标移动到行首,即第一有效字符位置 0 将光标移动到该行的行首,行的第一格位置 $ 将光标移动到行尾 H 将光标移动到该屏幕的顶端 M 将光标移动到该屏幕的中间 L 将光标移动到该屏幕的底端 gg 将光标移动到文章的首行 G 将光标移动到文章的尾行 w 将光标移动到下一单词 b 将光标移动到上一单词 e 将光标移动到下一单词,光标到下一单词词尾 W 和w功能一样,只不过以.或-或)字符为分界 B 和b功能一样,只不过以.或-或)字符为分界 E 和e功能一样,只不过以.或-或)字符为分界 f f后跟一字符可直接跳到本行光标之后有此字符位置 F F后跟一字符可直接跳到本行光标之前有此字符位置 t 和f一样功能,只不过光标停在要搜索字符前一字符位置 T 和T一样功能,只不过光标停在要搜索字符后一字符位置 zt 将当前位置置于屏幕顶端 zb 将当前位置置于屏幕底端 zz 将当前位置置于屏幕中间 zf 创建折行 zc 折叠 zo 打开折叠 % 跳到匹配的括号 Ctrl+u 将窗口向上移动半屏 Ctrl+d 将窗口向下移动半屏 Ctrl+f 向前滚动一整屏 ctrl+b 向后滚动一整屏 ctrl+g 在窗口下方显示信息,告诉当前文件中的位置和文件名等 Ctrl+o 跳到上次光标位置 ‘’ 跳到上次光标位置,和ctrl+o不同,它只能和上一次光标位置和当前位置来回跳转 ctrl+i 和ctrl+o功能相反 m 有名标记,在想要做标记位置按ma, 再到移动其它地方,当想回到做标记位置时,按'a就跳回做标记位置 简单搜索:
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值