Skip to content

sakuraiyuta/hyuga

Repository files navigation

Hyuga - Yet Another Hy Language Server

PyPI version

Forked from hy-language-server.

This software is still in the experimental stage!

Please be aware that specifications may change without prior notice.

Status

Verified-working Hy version: 1.0.0

Hy version Hyuga Support
0.24 0.2.1
0.25 ?
0.26 ?
0.27 ?
0.28 ?
1.0.0 1.0.0

We need your help to check the support status for each hy version.

Please report the results in issues!

Feature

  • textDocument/did{Open,Change}
  • textDocument/completion
    • Display a list of all modules installed in your system, including classes/functions in the currently opening source. (Plain Python symbols are also included.)
  • textDocument/definition
    • Jump to the definition. (Currently, this refers to hy-source only.)
  • textDocument/hover

Screenshots

Completion

Hyuga sample movie: completion on neovim Hyuga sample movie: completion on vscode

Jump to definition

Hyuga sample movie: jump-to-definition on neovim Hyuga sample movie: jump-to-definition on vscode

Install

plain install

pip3 install hyuga

Install vim-lsp and vim-lsp-settings, open a *.hy file with filetype=hy, then run :LspInstallServer

  • Install hyuga to your python environment. (Refer to the Plain install section for details.)
  • In VSCode, open Extensions view, search for hyuga, and install Hyuga VSCode Client.

Development

Setup

  • Install poetry.
  • Clone this project: git clone https://github.com/sakuraiyuta/hyuga.git
  • In project directory, execute poetry install.

Test

poetry run pytest tests

License

MIT