gendocsets | ||
zeal | ||
.gitignore | ||
COPYING | ||
docsets.txt | ||
README.md |
Zeal
zeal
noun
- a feeling of strong eagerness (usually in favor of a person or cause)
- excessive fervor to do something or accomplish some end
- prompt willingness
(from WordNet 3.0)
Zeal is a simple documentation browser inspired by Dash.
How to use
After installing/compiling it you need to download docsets. It can be done automatically by clicking 'Edit', 'Options', 'Docsets', 'Download...'.
Currently there are docsets available from Django, jQuery, Ruby 1 and 2 [1], Appcelerator Titanium, ExtJS 4.1, Python 2.7.3, Sencha Touch 2.1, Qt 5 [2].
[1] thanks to Dash's docset exchange programme
[2] generated using scripts from gendoctests
directory
You can also use Dash's docsets by putting .docset
directories in $HOME/.local/share/zeal/docsets/
(Linux) or C:\Users\[your username]\AppData\Local\zeal\docsets\
(Windows).
Binary packages
An Ubuntu PPA is available with Ubuntu Precise and Quantal packages.
Also a 32-bit Windows binary with all dependencies is available to download from Dropbox - zeal.zip (29M).
How to compile
Currently Zeal requires Qt 5.0. To compile it, run qmake
and make
in the zeal
directory.
TODO
- Support for global hotkeys under platforms other than Linux/X11 and Windows (OSX)
- Search enhancements - some ideas:
- Allow selecting subset of docsets to search in.
- Grouping of similar results (like overloaded functions)
- Better docsets formatting (without headers, sidebars etc.)
- More docsets
- Code cleanup
MainWindow::MainWindow
probably should be shorter than 200+ lines.- Refactoring to reuse common code between
ZealDocsetsRegistry
andZealListModel
Creating your own docsets
For creating new docsets, you have three choices of index format supported by Zeal.
ZEAL
format, as generated by scripts ingendocsets/{python273,qt5}
directories. It's essentially a single sqlite table withtype
,name
,path
andparent
columns.DASH
format, which is also similar single table, without theparent
column.- So-called
ZDASH
, which is a more complex Xcode docset format, implemented in Zeal to allow reusing Dash's docsets.
Author of Dash has suggested a "docset exchange programme", allowing Zeal to use one Dash docset in return for each new generated-for-Zeal docset, so it's recommended to use the DASH
format.
Contributions
Any feedback, feature requests, or pull requests are welcome. Before starting to implement anything larger, especially items from the TODO list above, it would be good to contact me at jerzy dot kozera at gmail, to avoid duplicating work.
Please keep in mind I'm not an experienced C++ programmer, so the code quality might be not great.
Also you can send bitcoins to 1Zea1QhPV5CGp8SNMpb2RHUvRrfNhKqGV to encourage development.