当前位置: 首页 > news >正文

C++ 在项目中使用vim

一:概述

        除了掌握 Vim 的基本操作,利用 Vim 阅读项目源码的方法同样重要,这对实际项目开发大有裨益。虽然现在有许多人选择使用 VSCode,但在某些环境中,可能无法安装 VSCode 或联网下载插件,这时使用 Vim 就显得尤为合适。此外,熟练掌握 Vim 可以显著提升阅读代码的效率,特别是在处理大型代码库时。本文将介绍一些实用的方法,帮助您更有效地使用 Vim 来阅读和理解项目源码。

二:在vim中如何进行函数跳转

       1. 首先安装标签生成工具:

sudo apt update
sudo apt install exuberant-ctags

        2. 在项目源码根目录下,运行命令:ctags -R . 在项目根目录生成tags 文件。

 ctags -R . 

         3. 在vim 中,使用 Ctrl - ] 跳转到标识符定义,使用 Ctrl - t 返回。

三:如何在vim中同时查看多个文件:

         1. 分割窗口:使用 :split:vsplit 将窗口分割,可以同时查看多个文件。

         2. 在窗口间切换: 使用 Ctrl-w 加上方向键在分屏之间切换。

         3. 关闭当前窗口:使用 :q 然后回车,强制关闭使用 :q!, 或使用 Ctrl + w + c 关闭

         4. 关闭所有其他窗口:使用 :only  

四:如何浏览项目文件

        1. 安装插件管理器 Vim-Plug 

sudo apt install curl git clone https://github.com/junegunn/vim-plug.git ~/.vim/autoload/plug.vim

        2. 添加插件到配置文件:打开你的 .vimrc 文件(在终端中运行 vim ~/.vimrc),并添加以下内容:

call plug#begin('~/.vim/plugged')" 安装 NERDTree
Plug 'preservim/nerdtree'" 安装 vim-vinegar
Plug 'tpope/vim-vinegar'call plug#end()" 显示隐藏文件
let NERDTreeShowHidden=1" 自动打开 NERDTree
autocmd VimEnter * NERDTree

         3. 安装插件

启动 Vim。
输入 :PlugInstall 并按回车。

         4. 使用NERDTree插件

1. 在 Vim 中运行 :PlugInstall。2. 打开和关闭 NERDTree
打开 NERDTree:在 Vim 中输入 :NERDTreeToggle,或使用快捷键 Ctrl-n(如果设置了)。
关闭 NERDTree:再次运行 :NERDTreeToggle 或使用 :q 关闭 NERDTree 窗口。3. 窗口操作
切换焦点:使用 Ctrl-w 加方向键在 Vim 窗口之间切换。
关闭当前窗口:在 NERDTree 窗口中,可以使用 :q 关闭该窗口。4. 文件和目录操作
打开文件:在 NERDTree 中选择文件并按 Enter 打开。
切换目录:选择目录并按 Enter 进入。
返回上级目录:在目录中按 h 返回上级目录。
创建新文件:在 NERDTree 窗口中,选择目录并按 m 打开菜单,然后选择 New file,输入文件名并按 Enter。
创建新目录:同样,选择父目录并按 m,选择 New folder,输入目录名并按 Enter。
删除文件或目录:选择文件或目录,按 m,然后选择 Delete,确认删除。
重命名文件或目录:选择文件或目录,按 m,然后选择 Rename,输入新名称并按 Enter。5. 高级操作
查看文件内容:在 NERDTree 中选择文件,按 t 在新标签页中打开文件,或按 i 在新窗口中打开。
搜索文件:按 f,然后输入文件名的部分匹配,NERDTree 会过滤显示匹配的文件。
打开最近文件:按 r 打开最近访问的文件列表。

         5. 也可以使用 vim-vinegar 查看文件

1 文件浏览
打开文件浏览器:在命令模式下输入 -,这会打开当前目录的文件浏览器(类似于 NERDTree,但更加简单)。2 文件操作
在文件浏览器中,你可以使用以下操作:导航:使用方向键或 j 和 k 键来上下移动选择。
按 Enter 打开文件或进入目录。
按 h 返回上级目录。
创建新文件或目录:在文件浏览器中,按 N 可以创建新文件或目录。
删除文件或目录:选择文件后,按 d 删除文件,确认后文件会被删除。
重命名文件或目录:选择文件或目录后,按 r 进行重命名。3 打开文件
快速打开文件:使用 Enter 来打开选中的文件或目录。
在新标签页中打开文件:在文件名上按 t。
在新窗口中打开文件:在文件名上按 i。4 快速文件查找
快速查找文件:在命令模式下,输入 :e filename,可以快速打开指定的文件。3. 结合其他插件使用
vim-vinegar 可以与其他插件结合使用,增强文件浏览体验:fzf.vim:使用 fzf 进行模糊查找文件时,可以在 Vim 中打开文件浏览器。
NERDTree:虽然 vim-vinegar 和 NERDTree 功能相似,但可以根据需求选择使用一个或同时使用。

五:如何跳转到指定行或文件

        1. 使用命令

1. 跳转到行:输入 :line_number 直接跳转到指定行。2. 跳转到上一个/下一个文件:使用 :bprev 和 :bnext 切换缓冲区。3. 跳转到指定文件: :e  /path/to/your/file.txt   文件名使用Tab补全4. 与 find 结合: :!find . -name "filename.txt"  或者 :e `find . -name "filename.txt"`5. 与 grep 结合: :grep "search_pattern" * 6. 使用vimgrep:  :vimgrep /search_pattern/ *.txt 7. 使用copen: :copen 

     2. 使用fzf.vim 插件

六:如何设置代码补全和高亮

启用语法高亮:在 .vimrc 中添加 syntax on 来启用语法高亮。设置颜色方案:选择适合阅读的颜色方案,例如 set background=dark 和 colorscheme desert使用 YouCompleteMe 或 coc.nvim 提供代码补全和语法检查
set hlsearch              " 启用搜索高亮
nnoremap <C-l> :nohlsearch<CR>  " 取消搜索高亮的快捷键
set incsearch             " 自动高亮搜索结果
set ignorecase            " 忽略搜索时的大小写
set smartcase             " 智能大小写处理

        


http://www.mrgr.cn/news/59139.html

相关文章:

  • 推荐一些关于计算机网络和 TCP/IP 协议的书籍
  • 多款云存储平台存在安全漏洞,影响超2200万用户
  • 关系型数据库(1)----MySQL(初阶)
  • 【汇编语言】第三章----寄存器(内存访问)(十)—— 栈段以及对栈和段分别进行综述
  • FFMPEG+Qt 实时显示本机USB摄像头1080p画面以及同步录制mp4视频
  • vscode 功能、设置备忘
  • 【前端开发入门】JavaScript快速入门--js变量
  • 红黑树(Red-Black Tree)
  • 5.Linux按键驱动-fasync异步通知
  • 《人脸表情识别可解释性研究综述(计算机学报)》
  • 如何在Linux服务器后台训练模型
  • eks节点的网络策略配置机制解析
  • 对角双差速轮AGV的动力学解算
  • 【大数据技术基础 | 实验五】ZooKeeper实验:部署ZooKeeper
  • 028_Comma_Separated_List_in_Matlab中的逗号分割列表
  • 【C++初阶】一文讲通C++内存管理
  • 数据结构与算法分析:你真的理解排序算法吗——桶排序(代码详解)
  • redis高级篇之IO多路复用select方法简介 第174节答疑
  • 基于DDPG算法的股票量化交易
  • 【项目实战】HuggingFace初步实战,使用HF做一些小型任务
  • 如何快速绘制高效的业务架构图(三步完成)
  • 【动手学深度学习】8.5 循环神经网络从零开始实现
  • 跟我学C++中级篇——volatile的探究
  • 大厂项目经理推荐的10款常用的项目管理软件值得你收藏
  • Java中TreeSet的使用
  • 代码随想录算法训练营第二十七天|Day27 贪心算法