首页 > 系统相关 >centos下将vim配置为强大的源码阅读器

centos下将vim配置为强大的源码阅读器

时间:2022-11-04 11:34:09浏览次数:64  
标签:centos tags vim 源码 let 跳转 Tlist


每日杂事缠身,让自己在不断得烦扰之后终于有了自己的清静时光来熟悉一下我的工具,每次熟悉源码都需要先在windows端改好,拖到linux端,再编译。出现问题,还得重新回到windows端,这个过程太耗费时间。

vim作为唯一能够和windos 下的source insight一争高低的linux端的源码阅读器,只要将它短时间内合理利用起来还是能够为今后代码调试节省很多时间:

先展示一下最终效果图

centos下将vim配置为强大的源码阅读器_vim


改配置能够支持80%的我们在source insight中的功能呢,因为这里我还有部分插件未完全安装(代码自动补全,书签添加,编译调试配置)

这里主要安装插件如下

  • ctags 为整个源码目录增加tag,这样我们可以在代码内跳转至变量以及函数的定义和声明
    安装 centos下通过​​yum install ctags​​,ubuntu下通过​​sudo apt-get install ctags​​,或者通过源码编译安装,下载​​https://sourceforge.net/projects/ctags/​​源码包,解压后进入目录执行​​make && make install​​ 进入源码目录,执行​​ctags -R *​​会对当前源码目录中的文件递归生成tag
    快捷键使用
    ​ctrl + ]​​跳转至函数,变量定义或者声明
    ​ctrl + w + ]​​新开一个窗口,并跳转至函数、变量定义或声明
    ​ctrl + o或者ctrl + t​​返回上次浏览的标签位置
    ​]]​​调到下一个标签
    ​[[​​调到上一个标签
  • taglist 管理文件的变量符号,同时可以直接跳转过去
    安装 直接下载​​taglist​​ 放置到​​~/.vim​​目录下,直接执行​​unzip filename​​就可以
    然后在​​~/.vimrc​​文件中加入配置如下(这里~/.vimrc是每个用户目录下会拥有一个这样的配置文件)
19 set tags=tags
20 set tags+=./tags "add current directory's generated tags file
21 let Tlist_Show_One_File=1
22 let Tlist_Use_Right_Window=0
23 let Tlist_Exit_OnlyWindow=1
24 let Tlist_Process_File_Always=1

最后的配置效果如下,在一般模式下输入​​:Tlist​​​即可显示,通过​​ctrl+w​​进行窗口跳转。选择到了变量按回车之后,右侧代码栏可以直接跳转到指定变量处

centos下将vim配置为强大的源码阅读器_vim_02

  • winManager管理器配置
    主要用来管理文件目录树
    安装直接下载​​winManager​​,放到​​~/.vim​​目录下,直接执行​​unzip winmanager.xxx.zip​​ 然后在​​~/.vimrc​​中加入配置如下
let g:AutoOpenWinManager = 0 "默认打开winmanager
let g:winManagerWindowLayout = "TagList|FileExplorer" "管理器可以与哪些插件共同显示
let g:winManagerWidth = 70 "管理器的窗口样式宽度

再更加详细的配置可以进入vim一般模式,输入​​:help winmanager​​查看其他配置的设置

进入​​vim​​​一般模式,输入​​:VMToggle​​即可进入

最后配置如下:

centos下将vim配置为强大的源码阅读器_linux_03


标签:centos,tags,vim,源码,let,跳转,Tlist
From: https://blog.51cto.com/u_13456560/5823172

相关文章

  • vim 键盘宏操作 -- 大道至简
    最近利用vim做一些文本处理时发现vim支持的键盘宏是一个好东西啊,高效优雅得处理大量需要重复性操作的文本,让人爱不释手!!!希望接下来对键盘宏的分享能够实际帮助到大家。后文......
  • 如何正确学习vue3.0源码
    为什么要学源码技术是第一生产力学习API的设计目的、思路、取舍学习优秀的代码风格学习组织代码的方式学习实现方法的技巧学习ES67新API、TS高级用法不给自......
  • 上帝视角看Vue源码整体架构+相关源码问答
    前言这段时间利用课余时间夹杂了很多很多事把Vue2源码学习了一遍,但很多都是跟着视频大概过了一遍,也都画了自己的思维导图。但还是对详情的感念模糊不清,故这段时间对源码......
  • SpringCloud (五) - 云服务器Centos7.6,安装JDK,Maven,Mysql,Redis
    1、购买云服务器购买地址:https://cloud.tencent.com/act/pro/2022double11_warmup后面的环境都是基于此环境Centos7.6;2、安装SecureCRT和SecureFX2.1SecureCRT教......
  • VirtualBox 下 CentOS7 静态 IP 的配置 → 多次踩坑总结,蚌埠住了!
    开心一刻一个消化不良的病人向医生抱怨:我近来很不正常,吃什么拉什么,吃黄瓜拉黄瓜,吃西瓜拉西瓜,怎样才能恢复正常呢?医生沉默片刻:那你只能吃屎了环境准备Virt......
  • qt输出自定义的pdf文件源码详解
    qt中有两种方式可以输出pdf:方式1:使用QPrinter即打印机的方式打印pdf这种方式,在qt4成为唯一的方式。QPrinterprinter(QPrinter::HighResolution);//高清晰度printer.set......
  • 设计模式:责任链模式的应用场景及源码应用
    一、概述责任链模式(ChainofResponsibilityPattern)是将链中每一个节点看作是一个对象,每个节点处理的请求均不同,且内部自动维护一个下一节点对象。当一个请求从链式的首......
  • SpringMVC源码-创建RequestMappingHandlerAdapter
    一、RequestMappingHandlerAdapterRequestMappingHandlerAdapter所属BeanDifinition的属性。RequestMappingHandlerAdapter是将当前请求适配到@RequestMapping类型的Ha......
  • CentOS7命令行创建LVM逻辑卷
    概述当初在安装CentOS7系统时没有使用LVM,后期安装应用后磁盘空间不够使用,在不跨服务器迁移数据的情况下解决磁盘空间问题。1.安装lvm命令yuminstall-ysystem-storage-man......
  • Centos8.0上生产环境搭建
    一、基础环境搭建2.1配置yum1、添加yum源#一定注意版本#curl下载阿里镜像源curl-o/etc/yum.repos.d/CentOS-Base.repohttp://mirrors.aliyun.com/repo/Centos-7......