This repository has been archived on 2024-10-22. You can view files and clone it, but cannot push or open issues or pull requests.
spacemacs/layers/+readers/dash/README.org

89 lines
3.3 KiB
Org Mode
Raw Normal View History

#+TITLE: Dash layer
2019-05-02 21:49:30 +00:00
#+TAGS: layer|reader
2015-06-10 16:44:30 +00:00
[[file:img/dash.png]]
[[file:img/zeal.png]]
2019-05-07 20:05:06 +00:00
* Table of Contents :TOC_5_gh:noexport:
2017-05-22 14:16:12 +00:00
- [[#description][Description]]
- [[#features][Features:]]
2017-05-22 14:16:12 +00:00
- [[#install][Install]]
- [[#dash-macos][Dash (macOS)]]
- [[#sqlite3][Sqlite3]]
2017-05-22 14:16:12 +00:00
- [[#zeal-linux--windows][Zeal (Linux & Windows)]]
- [[#configuration][Configuration]]
- [[#word-at-point][Word at point]]
2017-05-22 14:16:12 +00:00
- [[#key-bindings][Key bindings]]
2015-06-10 16:44:30 +00:00
* Description
This layer integrates offline API browsers into Emacs. It provides one for macOS, Linux and Windows.
** Features:
- Searching for word at point in offline API browser's UI.
- Integration of offline API browser search results in Helm and Ivy.
- Support for [[https://kapeli.com/dash][dash]] offline API browser for macOS.
- Support for [[https://zealdocs.org/][zeal]] offline API browser for Linux.
2015-06-10 16:44:30 +00:00
* Install
To use this configuration layer, add it to your =~/.spacemacs=. You will need to
add =dash= to the existing =dotspacemacs-configuration-layers= list in this
file.
2015-06-10 16:44:30 +00:00
** Dash (macOS)
2017-04-25 15:42:58 +00:00
You have to install [[https://kapeli.com/dash][dash]] on your machine.
2015-06-10 16:44:30 +00:00
It is recommended to set the =HUD mode= in your Dash application preferences
when using this layer.
2015-06-10 16:44:30 +00:00
*** Sqlite3
2017-04-25 15:42:58 +00:00
Helm Dash [[https://github.com/areina/helm-dash#user-content-requirements][requires]] sqlite3 to be installed to function properly.
2016-10-20 16:36:39 +00:00
** Zeal (Linux & Windows)
2017-04-25 15:42:58 +00:00
You have to install [[https://zealdocs.org/][zeal]] on your machine.
Then install the docsets you use more frequently
* Configuration
By default, the dash layer will initialize all installed docsets to be active in
all buffers. To disable this and opt-in to specific docsets for specific buffers, set:
#+BEGIN_SRC emacs-lisp
(dash :variables
dash-autoload-common-docsets nil)
#+END_SRC
To change the location of the installed docsets, set:
#+BEGIN_SRC elisp
(dash :variables
helm-dash-docset-newpath "~/.docsets")
#+END_SRC
* Word at point
=dash-at-point= and =zeal-at-point= will search for the word at point in the respective offline API browser.
The result will be displayed in the offline browser's UI.
However having to leave emacs to have a look at the search results may be a bit awkward.
To help with this it is also possible to integrate the search results directly in =helm= or =ivy=
and show the details in a browser. To do so [[https://github.com/dash-docs-el/helm-dash][helm-dash]] can be used for =helm= and [[https://github.com/dash-docs-el/counsel-dash][counsel-dash]] for =ivy=.
To get them working it is necessary to set =dash-docs-docset-newpath= to the location of your docsets.
#+BEGIN_SRC elisp
(dash :variables
dash-docs-docset-newpath "~/.local/share/Zeal/Zeal/docsets")
#+END_SRC
For more details please check [[https://github.com/stanaka/dash-at-point#Usage][dash-at-point-usage]] or [[https://github.com/jinzhu/zeal-at-point][zeal-at-point]].
2015-06-10 16:44:30 +00:00
* Key bindings
| Key binding | Description |
|-------------+-----------------------------------------------------------------|
2020-04-17 21:43:42 +00:00
| ~SPC a z d~ | Lookup thing at point in Dash or Zeal |
| ~SPC a z D~ | Lookup thing at point in Dash or Zeal within a specified Docset |
| ~SPC a z h~ | Lookup thing at point in helm-dash or counsel-dash |
| ~SPC a z H~ | Lookup in helm-dash or counsel-dash within a specified Docset |