vim使用
编写本文档的目的是为了查找命令方便,也希望可以给同样喜爱vim的同学一些参考。
本人使用的系统是Fedora32。
至于vim最基础的知识,可以在shell下输入vimtutor
命令查看,网上也有很多翻译的文档,请自行搜索。
联系方式
各位同学如果发现写错的地方或有一些想法想交流的,欢迎评论或发送邮件到lioneie@163.com。
vim配置
编辑配置文件 vim ~/.vimrc
,以下是我所使用的配置 :
set number "显示行号 Syntax on "语法高亮 set paste "粘贴不自动缩进 set ruler "右下角显示位置 set hlsearch "搜索高亮 set fdm=indent "indent缩进折叠,Syntax语法折叠 set pastetoggle=<F9> "F9粘贴设置切换 set ts=4 "一个tab键等于4个空格宽度 set sw=4 "按<键和>键缩进时,移动4个空格 set expandtab "tab转化为空格 set mouse-=a "鼠标选择文字不会进入visual模式 set colorscheme=desert "支持的color查看/usr/share/vim/vim82/colors/(vim82是vim版本)
@H_502_48@加载其他的.vimrc,在~/.vimrc中加入以下内容:
auto bufread vim打开时所在的路径 so .vimrc的路径/.vimrc
vim快捷键
多文件查找:
:help vimgrep (查看帮助文档) :vimgrep /pattern/* (当前目录下查找模式pattern) :vimgrep /pattern/** (当前目录和子目录下查找模式pattern) :vimgrep /pattern/**/* (子目录下查找模式pattern,不含当前目录) :cn (查找下一个) :cp (查找上一个) :cw (打开quickfix窗口)
@H_502_48@多文件替换:
:args **/** (打开当前目录和子目录下的所有文件) :args **/*.c (打开当前目录和子目录下的.c文件) :args * (打开当前目录下的所有文件) :args *.c (打开当前目录下的.c文件) :args */*.c (打开下一级目录下的.c文件,不含当前目录) :argdo %s/old/new/gc | update (old替换成new,需要确认,update表示自动保存)
@H_502_48@查找:
* 向后查找单词 # 向前查找单词 /word 向后查找word ?word 向前查找word /\c 不区分大小写向后查找(向前查找用?) /\<word\> 匹配头尾向后查找(向前查找用?)
@H_502_48@替换:
:%s/old/new/gc 加g表示替换一行中的所有,不加g表示只替换一行中的第一个 加c表示需要确认,不加c表示不需要确认 加%表示替换所有行,不加%表示替换当前行 :n,ms/old/new/gc (替换第n行到第m行) 省略n表示从当前行开始替换 m为$时表示最后一行
@H_502_48@ctrl加] ctags提供的跳转定义 :ts 显示定义列表 ctrl加t ctags提供的跳回 gd 局部变量跳转 gf 跳到头文件 ctrl加o 后退跳转 ctrl加i 前进跳转
@H_502_48@文件回车符设置:
:set ff? (查看文件的回车符类型) :set ff=unix (设置为unix回车符) :set ff=dos (设置为dos回车符)
@H_502_48@折叠:
zc zC zr zR 折叠 zo zO zm zM 展开
@H_502_48@可视:
v 小写v按字符选择可视范围 V 大写V按行选择可视范围 ctrl+v 块选择可视范围 多行插入 ctrl+v按块选择多行然后按下大写i
@H_502_48@其他操作:
撤销行 大写U 撤销10次 10u 不断重做 .(点号) 删除到行首 d^ 删除到行尾 d$ 选中可视范围后,按<键向前缩进,按>键向后缩进 不选中可视范围时,按两次<键向前缩进,按两次>键向后缩进 取消查找高亮 :nohlsearch (简写成noh) 大写J 将当前行和下一行合并
@H_502_48@ctags
安装ctags:
sudo dnf install ctags -y
。使用
ctags -R
编译代码生成tags
文件,在tags
文件所在目录打开vim
即可加载tags
文件。cscope
安装cscope:
sudo dnf install cscope -y
。将脚本文件cscope_maps.vim放到
~/.vim/plugin/
路径下,即可使用快捷键(快捷键种类查看:cs help
),如:cs find s word
查找word引用可使用快捷键ctrl加\加s
(按顺序依次按3个键)。使用
cscope -Rqbk
(当需要包含/usr/include
头文件时,不使用-k
选择)编译代码生成cscope.out
文件,在cscope.out
文件所在目录打开vim
即可加载cscope.out
文件leaderf
Todo
spacevim
Todo
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。