一直以来在Mac上找不到好的代码阅读工具,最近根据网上的教程,自己总结一下,做了个在Mac的类sourceinsight的vim,感觉很好用。我不喜欢那种把vim搞的很复杂的配置,所以做了个仅仅能满足浏览代码的vim。

首先我们需要安装homebrew,在终端输入下面命令安装。

ruby -e "$(curl -fsSL https://raw.github.com/Homebrew/homebrew/go/install)"

安装完成后,运行下面代码安装vim和mac vim

brew install vim
brew install macvim
brew install ctags
brew install cscope

现在已经安装了必备的软件了,但是Mac下Xcode也有一个程序叫ctags,而且mac也自带vim,所以我们需要修改系统变量。

sudo vim /etc/paths

系统默认将/usr/bin放在第一行,只需要将/usr/local/bin放在第一行就可以了。

/usr/local/bin
/usr/bin
/bin
/usr/sbin
/sbin

经过这样的配置,就可以使用最新版的vim了。

接下来在代码的根目录运行

ctags -R
cscope -Rbq

在vim下,我们可以使用自动安装插件的工具vundle,执行下面的代码安装vundle

sudo git clone https://github.com/gmarik/vundle.git ~/.vim/bundle/vundle

之后编辑vimrc文件。

sudo vim ~/.vimrc

粘贴这段内容到vim中

"设置vundle
set nocompatible " be iMproved
filetype off " required! set rtp+=~/.vim/bundle/vundle/
call vundle#rc() Bundle 'scrooloose/nerdtree' "文件浏览
Bundle 'majutsushi/tagbar' "代码符号
Bundle 'wesleyche/SrcExpl' "类似sourceInsight的代码预览窗口
filetype plugin indent on " required!
"vundle设置完毕 syntax on
let g:tagbar_ctags_bin='/usr/local/bin/ctags'
let g:tagbar_left =
nnoremap <F3> :TagbarToggle<CR>
let NERDTreeWinPos='right'
nnoremap <F2> :NERDTreeToggle<CR>
nmap <F4> :SrcExplToggle<CR>
let g:Srcexpl_winHeight =
" // Set 100 ms for refreshing the Source Explorer
let g:SrcExpl_refreshTime = " // Set "Enter" key to jump into the exact definition context
let g:SrcExpl_jumpKey = "<ENTER>" " // Set "Space" key for back from the definition context
let g:SrcExpl_gobackKey = "<SPACE>" let g:SrcExpl_pluginList = [
\ "__Tag_List__",
\ "_NERD_tree_"
\ ] set tags=tags;/ "搜索上一级建立的tag nmap <C-H> <C-W>h "control+h进入左边的窗口
nmap <C-J> <C-W>j "control+j进入下边的窗口
nmap <C-K> <C-W>k "control+k进入上边的窗口
nmap <C-L> <C-W>l "control+l进入右边的窗口

保存后,重新启动vim(注意使用sudo),按ESC后输入:BundleInstall后回车,系统会自动安装这些插件。安装完成后重新启动vim,这时按下F2,F3,F4,就看到sourceinsight的那些功能和界面了。强烈建议使用MacVim看代码。

在Mac上使用vundle自动安装vim插件,并用vim代替sourceinsight的更多相关文章

  1. 如何在 Mac 上通过 Boot Camp 安装 Windows?

    如何在 Mac 上通过 Boot Camp 安装 Windows? The following contents are chosen from the apple website, thanks f ...

  2. Mac上go的下载安装教程

    mac上go的下载安装教程 官网https://golang.google.cn/dl/下载,安装 环境变量配置 参考https://www.jianshu.com/p/5c1873eaf3ca Ba ...

  3. Mac 上 Apache Apollo 的安装与运行,和官方下载文件中 Python 实例的演示

    前不久我在 Mac 上成功安装了 mosquitto,这次我又试了试安装另一个热门的 broker —— Apache Apollo.对在 Mac 上安装 mosquitto 感兴趣的可以点击查看我的 ...

  4. 【转】如何在Mac上卸载Java及安装Java

    如何在 Mac 上卸载 Java? 本文适用于: 平台: Macintosh OS X Java 版本: 7.0, 8.0 使用终端卸载 Oracle Java 注:要卸载 Java,必须具有管理员权 ...

  5. mac上一键配置和安装adb驱动或者环境

    最近才使用的mac,老实说mac上要配置adb的环境不那么复杂,但是还是会让一些心不细或者动手能力不强的同学望而却步.那么到底有没有一个一键完成mac上adb和fastboot环境搭配的软件或者脚本呢 ...

  6. 在任何mac上用u盘安装OSX和Windows10双系统的方法(支持老电脑、不用Bootcamp)

    Win10是微软主推的,兼容性做的还不错,安装工具做的适应性好. 而且很多Mac机上的Bootcamp不支持u盘安装. 1.先安装OSX,一般电脑自带(建议升级到最新版).如果装了新的ssd,重新安装 ...

  7. Mac上使用Docker Desktop安装Kubernetes

    下载镜像需要特殊手段,你懂的,如果没有特殊手段,建议放弃这种方式. 1 启用Kubernetes 启用过程,会联网下载kubenetes相关的核心组件镜像,如下是我下载好的: 下载好了,kubenet ...

  8. Mac上使用selenium自动运行chrome

    一.用我们的老朋友pip把selenium装好 pip install selenium 二.用webdriver.Chrome启动Chrome浏览器 from selenium import web ...

  9. 在mac上使用tar.gz安装mysql

    官方: download: https://dev.mysql.com/downloads/mysql/ mysql参考文档:https://dev.mysql.com/doc/ 环境: macOS ...

随机推荐

  1. 游览器对js加载的次序

    直接看例子 <body> <script> console.log("first"); var script = document.createElemen ...

  2. 回收带Lob字段表占用的空间

    SQL> select object_name from user_objects; no rows selected SQL> select segment_name from user ...

  3. 3D打印论坛

    3D打印论坛:http://www.3done.cn http://www.03dp.com www.qjxxw.net/ http://www.3ddayin.net http://oa.zol.c ...

  4. 【转】Android Service完全解析,关于服务你所需知道的一切(下) ---- 不错

    原文网址:http://blog.csdn.net/guolin_blog/article/details/9797169 转载请注册出处:http://blog.csdn.net/guolin_bl ...

  5. SQL Server 通过一个表和另一个表联合 批量更新这个表的字段

    UPDATE OutPzPersonSet SET cPerson = a.AAA --SELECT * FROM OutPzPersonSet d INNER JOIN AAAA a ON d.cz ...

  6. 流风ASP.NET框架商业版-工作流1.0简介

    流风ASP.NET框架商业版-工作流1.0简介 工作流简介 在流风ASP.NET框架商业版1.0推出后,就有集成工作流的想法,但是由于工作繁忙和其他事情的耽搁,时隔半年之久工作流1.0的版本才姗姗来迟 ...

  7. C#中单问号,双问号的用法(转)

    原文:http://hi.baidu.com/guodong828/blog/item/c78fc23f847314cb7d1e7193.html 单问号---用于给变量设初值的时候,给变量(int类 ...

  8. SRM 598 DIV1

    A 只有3种情况:200以上的单独装,3个100的装一起,某两个u,v装一起且u+v<=300, 所以做法是从大到小判断每个大小的最大能与它装一起的是谁,最后剩下100的特判. B 第一轮如果未 ...

  9. Hadoop 2、配置HDFS HA (高可用)

    前提条件 先搭建 http://www.cnblogs.com/raphael5200/p/5152004.html 的环境,然后在其基础上进行修改 一.安装Zookeeper 由于环境有限,所以在仅 ...

  10. yaml 1.6 操作

    /** * Copyright (c) 2008, http://www.snakeyaml.org * * Licensed under the Apache License, Version 2. ...