在Mac上使用vundle自动安装vim插件,并用vim代替sourceinsight
一直以来在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的更多相关文章
- 如何在 Mac 上通过 Boot Camp 安装 Windows?
如何在 Mac 上通过 Boot Camp 安装 Windows? The following contents are chosen from the apple website, thanks f ...
- Mac上go的下载安装教程
mac上go的下载安装教程 官网https://golang.google.cn/dl/下载,安装 环境变量配置 参考https://www.jianshu.com/p/5c1873eaf3ca Ba ...
- Mac 上 Apache Apollo 的安装与运行,和官方下载文件中 Python 实例的演示
前不久我在 Mac 上成功安装了 mosquitto,这次我又试了试安装另一个热门的 broker —— Apache Apollo.对在 Mac 上安装 mosquitto 感兴趣的可以点击查看我的 ...
- 【转】如何在Mac上卸载Java及安装Java
如何在 Mac 上卸载 Java? 本文适用于: 平台: Macintosh OS X Java 版本: 7.0, 8.0 使用终端卸载 Oracle Java 注:要卸载 Java,必须具有管理员权 ...
- mac上一键配置和安装adb驱动或者环境
最近才使用的mac,老实说mac上要配置adb的环境不那么复杂,但是还是会让一些心不细或者动手能力不强的同学望而却步.那么到底有没有一个一键完成mac上adb和fastboot环境搭配的软件或者脚本呢 ...
- 在任何mac上用u盘安装OSX和Windows10双系统的方法(支持老电脑、不用Bootcamp)
Win10是微软主推的,兼容性做的还不错,安装工具做的适应性好. 而且很多Mac机上的Bootcamp不支持u盘安装. 1.先安装OSX,一般电脑自带(建议升级到最新版).如果装了新的ssd,重新安装 ...
- Mac上使用Docker Desktop安装Kubernetes
下载镜像需要特殊手段,你懂的,如果没有特殊手段,建议放弃这种方式. 1 启用Kubernetes 启用过程,会联网下载kubenetes相关的核心组件镜像,如下是我下载好的: 下载好了,kubenet ...
- Mac上使用selenium自动运行chrome
一.用我们的老朋友pip把selenium装好 pip install selenium 二.用webdriver.Chrome启动Chrome浏览器 from selenium import web ...
- 在mac上使用tar.gz安装mysql
官方: download: https://dev.mysql.com/downloads/mysql/ mysql参考文档:https://dev.mysql.com/doc/ 环境: macOS ...
随机推荐
- 如何在项目中使用gtest1.6
问题 gtest1.6版本的README里说该版本不支持make install,其意思就是说你没法通过make命令把gtest安装到/usr/local/lib之类的目录,所以你也没办法通过下面的命 ...
- HTTP缓存机制梳理
一般只对GET类型请求做缓存,对POST不做缓存 缓存协商 指浏览器和Web服务器之间对于是否使用浏览器端缓存的协商.对于较小的文件内容,由于缓存协商仍需要发送请求,所以吞吐率提高不大:但没有正文传输 ...
- 关于DDMS查看Data文件夹
真机是无法查看的,只有通过模拟器查看
- C# .Net 多进程同步 通信 共享内存 内存映射文件 Memory Mapped 转
原文:C# .Net 多进程同步 通信 共享内存 内存映射文件 Memory Mapped 转 节点通信存在两种模型:共享内存(Shared memory)和消息传递(Messages passing ...
- 【转】深入理解Android的startservice和bindservice--不错
原文网址:http://www.cnblogs.com/yejiurui/p/3429451.html 一.首先,让我们确认下什么是service? service就是android系 ...
- 【转】Service Intent must be explicit的解决方法
原文网址:http://blog.csdn.net/shenzhonglaoxu/article/details/42675287 今天在学习android的Service组件的时候,在Android ...
- centerOS安装rkhunter
rkhunter是专业检测系统是否感染rootkit的一个工具: rkhunter-1.4.2.tar.gz 解压后直接安装: #./installer.sh --layout defualt --i ...
- pyqt记录内容(音乐播放器)
#这是UI文件 # -*- coding: utf-8 -*- # Form implementation generated from reading ui file 'AudioPlayerDia ...
- python ctypes小例子
import time import ctypes import ctypes.wintypes SEE_MASK_NOCLOSEPROCESS = 0x00000040 SEE_MASK_INVOK ...
- Laravel-路由-控制器
(慕课网_轻松学会Laravel-基础篇_天秤vs永恒老师) 一.基础路由 二.多请求路由 三.参数路由 四.路由别名 生成url可以使用别名 五.路由群组 六.路由输出视图 七.控制器参数绑定