Zeal一个好用的开源离线开发文档浏览器

2023-05-16

    Zeal的官网是https://zealdocs.org/,其自我介绍是Zeal is anoffline documentation browser for software developers.(Zeal是为软件开发人员准备的离线文档浏览器)。该软件是仿照苹果系统上的Dash (https://kapeli.com/dash)开发而成,并兼容Dash的文档,目前已经有接近200种程序语言的开发文档。事先将文档下载到本地,不仅检索速度快,断网时也可以使用,还能避免百度搜出一大堆广告链接和垃圾结果,效率能提高不少。Dash只能在macOS上用,而Zeal有Windows/Linux/macOS版。不过,这些文档都保存在国外的服务器上,如果用Zeal直接下载,速度极慢,而且容易中断。以前似乎还可以通过浏览器访问https://kapeli.com/docset_links直接下载文档,但现在访问该网址会自动跳转到Dash的主页。下面重点介绍如何用Fiddler获取下载地址,并使用百度网盘或迅雷的(离线)下载功能。

    在Zeal的Edit > Preferences中设置网络代理为127.0.0.1,端口8888.

    然后在Zeal的Tools > Docsets > Available中,点击Refresh,在Fiddler中可以看见一个地址http://api.zealdocs.org/v1/docsets,在这个地址上右键,Save > Response > Response body, 然后得到一个json文件(相当于txt文件,可以用记事本打开)。如果在浏览器中直接访问这个地址,就能直接看见json文件的内容。在Zeal的Available列表中双击你需要的程序语言,在Fiddler中就能看见实际的下载地址。

    实际上,这些tgz压缩包全部来自Dash的服务器(*.kapeli.com),而且分布在很多城市(frankfurt, london, newyork, sanfrancisco, singapore, sydney, tokyo),这些不同城市的服务器上的内容都是一样的。我们要找到速度比较快的服务器,然后用迅雷批量下载。可以到http://ping.chinaz.com/上进行ping检测,找找你自己所在的地区,看响应时间,时间越短,速度越快。

    如果看平均时间,那么中国境内访问tokyo的速度最快,sydney的速度最慢(毕竟比较孤立)。

    如果你需要下载的tgz包不多,手动将地址一个个复制粘贴到浏览器、百度网盘、迅雷,FDM(Free Download Manager,开源免费),IDM(Internet Download Manager,收费)中倒也无所谓。但我想把这些tgz包全部下载下来,然后传到百度网盘里面,方便大家(下载地址在最后)。那么,如何批量生成下载地址呢?之前从http://api.zealdocs.org/v1/docsets得到的json文件该闪亮登场了。以下Matlab代码可以从json文件中提取tgz包的名称,并与http://tokyo.kapeli.com/feeds/拼接成完整的下载地址。

 

Fid=fopen('D:\Zeal\1.json');
Tline=fgets(Fid);
PosiQuote=strfind(Tline,'"');
PosiName =strfind(Tline,'name');
N=size(PosiName,2);% N=196
Urls=cell(N,1);
for k=1:N
 t=find(PosiQuote==PosiName(k)+6);
 aName=Tline(PosiQuote(t)+1:PosiQuote(t+1)-1);
 Urls{k}=strcat('http://tokyo.kapeli.com/feeds/',aName,'.tgz');
end
fclose(Fid);

 

效果如下:

    从Matlab中复制后粘贴到Excel中,会发现首尾都被加了一个英文单引号,用Excel的全部替换功能即可将单引号全部删除。

    百度网盘离线下载最多只能同时下载5个,迅雷离线下载只有会员才能用,不过迅雷的批量下载功能还是很方便的,从Excel里面把下载地址复制粘贴到迅雷里面,就能自动下载全部的196个文件了。

    下载完成后,将tgz解压到Zeal的安装路径的docsets文件夹下面,再启动Zeal就能使用搜索功能了。

    一个重要的搜索技巧是,在关键词前面加程序语言名称,能缩小搜索范围,比如 c:printf 和php:printf.

        直接分享包含196个tgz包的文件夹老是被百度自动取消分享,另外,百度网盘非会员无法上传超过4GB的单个文件,于是我分成了2个差不多大的压缩包(约2.5GB),没有使用压缩分卷,所以这2个大压缩包可以各自独立地解压缩,不需要都下载下来。解压密码均为YYYYUUUU

名为110-tgz.7z的压缩包包含如下语言:(链接:https://pan.baidu.com/s/1sb0joGjRpM28ffoTS75flQ,提取码:qda2)
ActionScript, Akka, Android, Angular.dart, AngularJS, AngularTS, Ansible, Apache_HTTP_Server, Appcelerator_Titanium, AppleScript, Arduino, AWS_JavaScript, BackboneJS, Bash, Boost, Bootstrap_2, Bootstrap_3, Bootstrap_4, Bourbon, C++, C, CakePHP, Cappuccino, Chai, Chef, Clojure, CMake, Cocos2D-X, Cocos2D, Cocos3D, CodeIgniter, CoffeeScript, ColdFusion, Common_Lisp, Compass, Cordova, Corona, CouchDB, Craft, CSS, D3JS, Dart, Django, Docker, Doctrine_ORM, Dojo, Drupal_7, ElasticSearch, Elixir, Emacs_Lisp, EmberJS, Emmet, Erlang, Express, ExpressionEngine, ExtJS, Flask, Font_Awesome, Foundation, GLib, Go, Gradle_DSL, Gradle_Groovy_API, Gradle_Java_API, Gradle_User_Guide, Grails, Groovy, Groovy_JDK, Grunt, Gulp, Haml, Handlebars, Haskell, HTML, Ionic, Jade, Jasmine, JavaFX, JavaScript, Java_EE6, Java_EE7, Java_SE6, Java_SE7, Java_SE8, Jekyll, Jinja, Joomla, jQuery, jQuery_Mobile, jQuery_UI, Julia, KnockoutJS, Kobold2D, Laravel, LaTeX, Less, Lo-Dash, Lua_5.1, Lua_5.2, Lua_5.3, MarionetteJS, Markdown, Matplotlib, Meteor, Mocha, MomentJS, MongoDB, Mongoose, Mono.

名为86-tgz.7z的压缩包包含如下语言:(链接:https://pan.baidu.com/s/12akHuFh-ywUA7pCWzXSPwQ,提取码:4s5y)
MooTools, MySQL, Neat, NET_Framework, Nginx, NodeJS, NumPy, OCaml, OpenCV_C++, OpenCV_C, OpenCV_Java, OpenCV_Python, OpenGL_2, OpenGL_3, OpenGL_4, Pandas, Perl, Phalcon, PhoneGap, PHP, PHPUnit, Play_Java, Play_Scala, Polymer.dart, PostgreSQL, Processing, PrototypeJS, Puppet, Python_2, Python_3, Qt_4, Qt_5, R, Racket, React, Redis, RequireJS, Ruby, RubyMotion, Ruby_2, Ruby_on_Rails_3, Ruby_on_Rails_4, Ruby_on_Rails_5, Rust, SailsJS, SaltStack, Sass, Scala, SciPy, Semantic_UI, Sencha_Touch, Sinon, Smarty, Sparrow, Spring_Framework, SQLAlchemy, SQLite, Statamic, Stylus, Susy, SVG, Swift, Symfony, Tcl, Tornado, Twig, Twisted, TypeScript, TYPO3, UnderscoreJS, Unity_3D, Vagrant, Vim, VMware_vSphere, VueJS, WordPress, Xamarin, Xojo, XSLT, XUL, Yii, YUI, Zend_Framework_1, Zend_Framework_2, Zend_Framework_3, ZeptoJS.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Zeal一个好用的开源离线开发文档浏览器 的相关文章

  • pytorch DataLoader处理不定长序列

    本篇博客的目的是 xff1a 将下图这样的输入 xff08 每个tensor表示一个句子 xff0c 01为句子标签 xff09 xff1a 转化为下图所示的输出 xff08 batch size 61 2 xff09 元组的第一个元素为填
  • 《统计学习方法》之最大熵模型代码实现

    原理这里就不赘述了 见参考链接4 说一些自己学习时困惑的地方 xff0c 如果有不对的地方 xff0c 还望各位评论指正 下面从w的求解开始说起 xff0c 下面是模型的对数似然函数 xff1a w
  • NLP实践项目二:基于RNN、CNN的文本多分类(pytorch实现)

    直接看代码 xff1a github传送门 数据集 xff1a Classify the sentiment of sentences from the Rotten Tomatoes dataset 1 数据预处理 本项目实现了两种数据预
  • Vue3 中setup()和<script setup><script>

    setup 方法 在组件创建之前执行 xff0c 是组合式 API 的入口 方法可以接受两个参数 props 和 context setup方法中 xff0c 要将数据暴露给页面模板 xff0c 需要结合ref 和reactive xff0
  • NLP实践项目三:基于BiLSTM-CRF的实体识别(pytorch实现)

    直接看代码 xff1a github传送门 数据集 xff1a Conll2003 1 数据预处理 将txt中的文件读出然后将句子和对应的标签序列存入csv文件中 xff0c 便于使用torchtext完成数据读取 2 模型定义 上图是Bi
  • NLP实践项目五:基于GRU的古诗生成(pytorch实现)

    直接看代码 xff1a github传送门 数据集 xff1a 古诗数据集 1 数据预处理 xff1a 将古诗存为上图的格式 xff0c 每行一首诗 xff0c 便于使用torchtext读取 2 模型定义 模型就是一个简单的GRU模型 x
  • 第17周 算法思想-二分搜索

    算法思想 二分查找 二分查找应用场景 xff1a 寻找一个数 寻找满足条件的某个区间的左侧边界 寻找满足条件的某个区间的右侧边界 建议学习 xff1a 二分查找详解 二分查找的基本框架 span class token keyword in
  • 第18周 算法思想-搜索(BFS)

    文章目录 BFS计算在网格中从原点到特定点的最短路径长度组成整数的最小平方数数量最短单词路径 BFS 计算在网格中从原点到特定点的最短路径长度 1091 Shortest Path in Binary Matrix Medium 组成整数的
  • 第19周 算法思想 搜索(BFS&DFS)

    文章目录 BFS最短单词路径 xff08 输出所有路径 xff09 到离得最近的0的距离 DFS查找最大的连通面积填充封闭区域括号生成 最短单词路径 xff08 输出所有路径 xff09 126 Word Ladder II Hard 到离
  • c++ 正则表达式-基础操作

    正则表达式是一个非常强大的工具 xff0c 主要用于字符串匹配 如何在c 43 43 中使用正则表达式 xff1f 下面就简要介绍一下c 43 43 中正则表达式相关函数的用法 本篇博客中所涉及到的函数及其功能如下表所示 xff1a 函数功
  • 机器学习,计算机视觉和模式识别分别有何联系?

    目录 1 定义1 0 模式识别 xff1a 1 1 机器学习 xff1a 1 2 计算机视觉 xff1a 2 联系2 0 模式识别 vs 机器学习 2 1 模式识别 vs 计算机视觉 3 参考链接 xff1a 1 定义 1 0 模式识别 x
  • idea maven 编译本地jar包的问题

    maven 编译的时候一直报这个错误 搞的我云里雾里的 pom xml中配置如下 span class token tag span class token tag span class token punctuation lt span
  • linux 管理gui工具

    3 Webmin Webmin是一款基于Web的一站式工具 xff0c 可用来管理Linux服务器 有了Webmin xff0c 你就能管理服务器的几乎每一个方面 xff1a 用户帐户 Apache DNS 文件共享 安全和数据库等等 而如
  • Windows10配置Hadoop

    资源下载 hadoop 3 1 3 tar gz 百度网盘链接 xff1a https pan baidu com s 1umVgYdZ8KWMikjyHtZ2rCA xff08 提取码 xff1a 0000 xff09 apache ha

随机推荐