Skip to content

dimitry-ishenko-cpp/devdocs

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

devdocs – offline DevDocs in your terminal ⚡️

Combine DevDocs API documentation, the fzf fuzzy finder, and the elinks text-based browser—all within your terminal. ☯

LOADING...

🚀 Why Use It?

  • 🔎 Lightning-fast search: Use fzf to filter docs instantly.
  • 🛠 Offline-friendly: Access 100+ documentation sets including HTML, CSS, JS, Python, C++, and more.
  • 🖥 Terminal-native: Works without a GUI using elinks.

⚙️ Usage

devdocs consists of three command-line tools:

  • 🔭 devopen — Open a documentation entry or topic index.
Usage: devopen [-p|--preview] [topic] [entry]
   or: devopen  -h|--help
   or: devopen  -v|--version

If topic is omitted or set to ?, the entry will be searched
in all available topics.

If entry is omitted, index page for the given topic will be shown.
  • 🔍 devgrep — Fuzzy search for entries across one or all documentation topics.
Usage: devgrep [-p|--preview] [topic] [pattern]
   or: devgrep  -h|--help
   or: devgrep  -v|--version

If topic is omitted or set to ?, the pattern will be searched in
all available topics.

If pattern is omitted, all entries for the given topic will be searched.
  • 🧰 devmanage — Install, remove, and update documentation topics.
Usage: devmanage -a|--all
   or: devmanage -l|--local
   or: devmanage -u|--update
   or: devmanage -i|--install topic [topic] ...
   or: devmanage -r|--remove  topic [topic] ...
   or: devmanage -h|--help
   or: devmanage -v|--version

Where:
    -a|--all        Show all topics available online.
    -l|--local      Show locally cached topics.
    -u|--update     Update all local topics.

    -i|--install    Cache one or more topics locally.
    -r|--remove     Remove local topic(s).

You can use the --preview option with both devgrep and devopen:

LOADING...

📦 Installation

Binary

Debian/Ubuntu/etc:

sudo add-apt-repository ppa:ppa-verse/devdocs
sudo apt install devdocs
# find doc packages you are interested in and install them as well, eg:
apt list devdocs-data-*
sudo apt install devdocs-data-css devdocs-data-html

RaspberryPi:

$ sudo add-apt-repository -S deb https://ppa.launchpadcontent.net/ppa-verse/devdocs/ubuntu jammy main
$ sudo apt install devdocs
# install doc packages as above

From source

Stable version (requires CMake >= 3.16, elinks >= 0.17.1, fzf, python3 with Pygments and lxml).

$ p=devdocs v=1.1.4
$ wget https://github.com/dimitry-ishenko-cpp/${p}/archive/v${v}.tar.gz
$ tar xzf v${v}.tar.gz
$ mkdir ${p}-${v}/build
$ cd ${p}-${v}/build
$ cmake ..
$ make
$ make install

To install system-wide, change the last 3 commands above to:

$ cmake -DSYSTEM_INSTALL=ON ..
$ make
$ sudo make install

Authors

  • Dimitry Ishenko - dimitry (dot) ishenko (at) (gee) mail (dot) com

License

This project is distributed under the GNU GPL license. See the LICENSE.md file for details.

Acknowledgments

Share and enjoy.