可能是迄今为止最好的GitHub代码浏览插件--赞
https://chrome.google.com/webstore/category/extensions?hl=zh-CN
搜索"insight.io"
chrome://extensions/
GitHub是很多开发者远(tong)程(xing)协(jiao)作(you)的重要工具,其社交化编码的理念伴随着开源运动改变着整个开发社区的生态,无数优质项目依托GitHub在全球开源开发者的参与下蓬勃发展。
不过,讲真,你有在GitHub上好好读过代码吗?
对于大部分人来说恐怕是没有,GitHub作为一款基于Git的代码管理工具和协同工具是很优秀的,然而作为代码浏览和搜索工具,就和IDE差的很远了。不然为什么到今天GitHub连个侧栏的文件树没有,很多开发者要专门去下载浏览器插件才能有文件树?为什么你还是需要git clone到本地在把代码装到你的IDE里才能愉快的阅读代码?是不是有想过如果能像IDE那样在GitHub上浏览代码多好?
今天我们就来介绍一款Chrome浏览器插件Insight.io,让你能像在GitHub上像你的IDE里一样浏览和搜索代码,让你的Github就像穿上了钢铁侠的战衣。
功能总览
下载安装后,打开一个GitHub上的项目,会看到左边有个侧边栏,是不是已经有了自己在IDE里面的感觉了?插件提供以下功能
- 跳转到定义
- 查找引用
- 目录树功能
- 基于符号的代码搜索
交叉引用
用Apache Spark做例子,悬浮在某个节点(类,方法,变量等)上就可以看到相应的类型和文档说明。点击左边的结构(Structure)按钮就可以看到改文件的类结构,包括成员变量,成员函数等,点击也可以跳到相应的行。
查找引用
点击任何节点的用例就能跳到这个类,方法或者变量定义的地方(类似于IDE中的Ctrl + click)。
点击类,方法和变量的定义节点,则可以找出所有该节点的使用例子。其中使用例子又会以被引用(Referenced At), 继承 (Inherit), 被继承(Inherited By), 重写(Override)等类型进一步分类方便查找。如果结果太多,用例的右上方也会有支持regular expression的文本框可以用来过滤出感兴趣的文件。
目录树
点击文件(File)按钮你会看到树状的目录结构,忘记GitHub上切换文件的痛苦吧,文件树让你轻松的在项目之内的文件中自如切换。
对于私有项目需要点击下方的Sign In按钮并到insight.io上导入私有项目文件树才会生效。
代码搜索
GitHub只支持纯文本搜索,这时常让搜索代码变得很困难,特别是当你想搜的关键词是常用词的时候,大量的无用结果会让搜索功能完全不可用。而是用Insight.io插件,点击搜索(Search)按钮可以按类名,方法名,变量名,文件名等等搜索代码,并且有自动补全功能。试试在Insight.io和GitHub原生搜索上搜一下RDD.map对比下搜索结果吧?
跳转到Insight.io
你也可以一键点击跳转到Insight.io上获得更好的浏览体验。
提交项目给Insight.io
Insight.io目前收录了2000多个最活跃的开源项目,包括Apache Kafka, Linux-kernel这样的大型项目,也有像AndroidSwipeLayout这样优质的个人项目。如果你需要的项目并未被我们收录,点击Information栏下的Request Analyze就可以提交你目前正在浏览的项目了。
快捷键
用快捷键可以快速打开关闭插件功能:
- 文件树:
⌘+⇧+f
- 类结构:
⌘+⇧+o
- 信息:
⌘+⇧+i
- 搜索:
⌘+⇧+s
目前插件支持的语言有Java, C/C++, Scala, Python和Ruby。想跟开发团队吐个槽或者点个赞?想知道最好的编程语言PHP什么时候支持?想知道怎么让公司代码库也能用上Insight.io?欢迎邮件到support@insight.io或者在这里留言。
快来下载体验一下吧!
下载插件
http://www.geeksense.cn/plugin/
可能是迄今为止最好的GitHub代码浏览插件--赞的更多相关文章
- Python 爬虫的工具列表 附Github代码下载链接
Python爬虫视频教程零基础小白到scrapy爬虫高手-轻松入门 https://item.taobao.com/item.htm?spm=a1z38n.10677092.0.0.482434a6E ...
- 我的github代码库
我的github代码库地址:https://github.com/gooree.Enjoy coding,enjoy sharing.
- msysGit管理GitHub代码
msysGit管理GitHub代码 代码的管理,在日常开发中是很重要的环节,程序员的修炼三部曲——版本控制,单元测试,项目自动化. 本篇就简单的说说通过msysGit来管理GitHub中的代码,实 ...
- Git+Github代码管理控制
关于Git的发展历程这里就不多介绍了,有兴趣的话可以查阅一下Git的相关历程. 如果你在做的项目或者自己写的一些项目由于需要用的分布式.或者团队开发.再或者你不善于对代码进行定期备份,但又希望自己的代 ...
- 使用命令创建github代码仓库,push本地仓库到github远程代码仓库
1.利用命令创建github远程代码仓库 在将本地代码push到github远程代码仓库之前,总是需要新建github代码仓库,在将本地仓库关联到github远程仓库.其中最为繁琐的操作是建立gith ...
- 本地代码上传到GitHub---拷贝github代码
来这里: 转载请标明出处: http://blog.csdn.net/hanhailong726188/article/details/46738929 步骤: git init git add na ...
- 2018-10-19 Chrome插件实现GitHub代码离线翻译v0.0.4
续前文Chrome插件实现GitHub代码翻译v0.0.3. 添加了对驼峰命名的支持. 由于调用浏览器插件-离线英汉词典进行词汇翻译, 因此也不依赖于任何在线翻译服务. Chrome插件: 官网链接 ...
- 2018-10-17 Chrome插件实现GitHub代码翻译v0.0.3
续前文浏览器插件实现GitHub代码翻译原型演示, 通过调用浏览器插件-离线英汉词典的批量查词接口, 实现了源码的初步命名直译. 源码库仍在: program-in-chinese/webextens ...
- 2018-08-29 浏览器插件实现GitHub代码翻译原型演示
此原型源自此想法: 中文化源码. 考虑到IDE插件工作量较大, 且与IDE绑定. 在代码转换工具的各种实现中, 综合考虑实用+易用+长远改进潜力, 浏览器插件似乎较有优势. 于是用最快捷的方式实现这一 ...
随机推荐
- Android Studio 使用SlidingMenu侧滑菜单
SlidingMenu是十分常用的开源框架,提供了一个滑动侧边栏的功能. 看了许多教程,都是往eclipse导入SlidingMenu库的,随后百度了几篇Android Studio导入的教程,鼓捣了 ...
- Mahout Bayes分类
Mahout Bayes分类器是按照<Tackling the Poor Assumptions of Naive Bayes Text Classiers>论文写出来了,具体查看论文 实 ...
- 如何使用VS2013本地C++单元测试框架
在VS2013中,可以使用VS自带的C++单元测试框架. 在使用该框架前,需要先安装Unit Test Generator(可以通过菜单“工具->扩展和更新”搜索安装). 下边,就阐述一下利用该 ...
- Android下Json数据解析
如从网络获取JSON 则需要创建一个工具类,该类返回一个字符串为JSON文本 package com.example.jsonapp; import java.io.InputStreamReader ...
- Oracle 中Return 和exit的区别
在Oracle存储过程中,使用Return 时,如果执行到Return语句,会跳出整个语句(如果是循环,会跳出整个循环),将不再执行,也就是结束了整个存储过程. 下面就用一个例子来说明一下 ,这个存储 ...
- C# 设置Word文档保护(加密、解密、权限设置)
对于一些重要的word文档,出于防止资料被他人查看,或者防止文档被修改的目的,我们在选择文档保护时可以选择文档打开添加密码或者设置文档操作权限等,在下面的文章中将介绍如何使用类库Free Spire. ...
- kubernetes-dashboard(1.8.3)部署与踩坑
Kubernetes Dashboard 是一个管理Kubernetes集群的全功能Web界面,旨在以UI的方式完全替代命令行工具(kubectl 等). 目录 部署 创建用户 集成Heapster ...
- Spring AOP四种实现方式Demo详解与相关知识探究
一.前言 在网络上看到一篇博客Spring实现AOP的4种方式,博主写的很通俗易懂,但排版实在抓狂,对于我这么一个对排版.代码格式有强迫症的人来说,实在是不能忍受~~~~(>_<)~~~~ ...
- Java编程语言下Selenium 对于下拉框,单选,多选等选择器的操作
WebElement selector = driver.findElement(By.id("Selector")); Select select = new Select(se ...
- apache压力测试工具的apache bench和JMeter的安装
Apache压力测试工具的安装 1,apache bench的安装 apache bench工具集成在http的软件包内,可以直接安装apache就可以. 当有些时候,我们不需要用到所有的软件包,我 ...