spacemacs/layers/+lang/hy
syl20bnr 584392bd92 [core] Fix layer dependencies based on layer variables
There was a edge case with the declaration of the `lsp` layer in `layers.el`
files.
The `hy` layer depends on the `python` layer which in turn depends on the `lsp`
layer if and only if the `python-backend` layer variable is set to `lsp`.
When the `hy` layer was declared first then it declares the `python` layer
without its layer variables, thus the `lsp` layer was not declared because the
`python-backend` variable was not set.

The fix is to gather all the layer dependencies and resolve them only after all
the used layers have been declared.

* new function `configuration-layer/declare-layer-dependencies`
* replace all calls to `configuration-layer/declare-layer` by the new function
  except for distribution layers (we declare layer dependencies right away in
  distribution layers)
2019-09-30 02:00:48 -04:00
..
img New layer Hy extracted from Python layer 2018-05-20 03:06:25 -04:00
funcs.el Fix various typos 2018-05-23 22:12:30 -04:00
layers.el [core] Fix layer dependencies based on layer variables 2019-09-30 02:00:48 -04:00
packages.el Update Hy key maps and use-package settings 2019-05-06 17:06:48 +02:00
README.org Switch to the new layers generator 2019-05-15 21:08:21 +03:00

Hy layer

/TakeV/spacemacs/media/commit/d536b36d154708d195d903fe8538fb501c3c43b8/layers/+lang/hy/img/hy.png

Description

This layer adds support for the Hy language based on Python.

Features:

  • syntax-highlighting
  • Auto-completion
  • Code Navigation
  • Python test runners (see python layer)
  • Virtual Environment using pyvenv and pyenv
  • Org Babel support

Install

Layer

To use this configuration layer, add it to your ~/.spacemacs. You will need to add hy to the existing dotspacemacs-configuration-layers list in this file.

To install hy globally:

  pip install hy

Key bindings

Debug

Key binding Description
SPC m d d insert pdb
SPC m d t insert pdb threaded

REPL

Start a Hy inferior REPL process with SPC m s i. If hy is available in system executable search paths, hy will be used to launch the shell. You may change your system executable search path by activating a virtual environment.

Send code to hy REPL commands:

Key binding Description
SPC m s b send buffer to the REPL
SPC m s B send buffer to the REPL and switch to it
SPC m s c send form containing current point to the REPL
SPC m s C send form containing current point to the REPL and switch to it
SPC m s i start and/or switch to REPL
SPC m s r send current region to the REPL
SPC m s R send current region to the REPL and switch to it
SPC m s s start and/or swithc to REPL

Tests

Key binding Description
SPC m t a launch all tests of the project
SPC m t A launch all tests of the project in debug mode
SPC m t m launch all tests of the current module
SPC m t M launch all tests of the current module in debug mode