An Emacs major mode for Hy, a lisp embedded in python.
Provides autocompletion, documentation lookup, and all features required to make developing in Hy enjoyable and productive.
Installation
hy-mode
is available in MELPA.
IDE components like autocompletion via company-mode rely on jedhy
, which can
be installed as standard with pip install jedhy
in your virtual environment of
choice, see https://github.com/ekaschalk/jedhy.
Jedhy should auto-start whenever it finds it.
Currently, completing imported packages requires sending the
imports/requires/sys.path.extend manually in the current buffer with M-x
hy-jedhy-update-imports
.
The precise features enabled are: company-mode
, eldoc-mode
, and
hy-describe-thing-at-point
for looking up docs of the symbol at point.
Spacemacs users - Hy has its own layer in its dev branch.
Configuring
Company/Eldoc support is enabled by default with hy-jedhy--enable?
.
Indentation can be customized with hy-indent--exactly
and hy-indent--fuzzily
.
See hy-shell.el
for configuring the shell.
Raising Issues
Please provide the version of Hy you are using. The last confirmed version of Hy
jedhy is compatible with is: 0.16.0
.
The IDE features and management is feature-full but nascent. If you encounter issues please provide as much details as you can.
Contributing
hy-mode
is well-tested. It uses buttercup rather than ert
.
Execute tests after running cask install
with the command: cask exec buttercup -L .
Process-based tests currently rely on setting hy-test--pyvenv-name
to the name
of a virtual environment containing Hy, see hy-test.el
. If not set, then
a warning will be given and process-based tests will be skipped.