Skip to main content

A minimal Hy utility library, using mostly the standard libraries.

Project description

🦑 Hyjinx

Functions and macros useful for modern living in the Hy REPL.

Compatible with Hy 0.28.0.

Hylights

  • REPL syntax highlighting (put (import hyjinx.source [hylight]) (setv repl-output-fn hylight) in your .hyrc)
  • pretty tracebacks with correct syntax highlighting for hy or python
  • print/get/edit source code of a function, module etc.
  • in-repl code analysis and discussion using LLMs
  • defmethod (if multimethod is installed)
  • numpy array pretty printing
  • a zmq lazy pirate protocol
  • a minimal ncurses class

Modules

  • hyjinx.lib: a smorgasbord of convenience functions.

  • hyjinx.source: code inspection.

  • hyjinx.doc: peruse hy documentation.

  • hyjinx.screen: a convenient ncurses wrapper.

  • hyjinx.mat: numpy pretty-printing for humans. (requires numpy, jax optional)

  • hyjinx.[zmq_client, zmq_server, crypto, wire]: lazy-pirate zmq RPC architecture. (requires zmq, ecdsa, zstandard)

  • hyjinx.llm: discuss code with a Large Language Model (AI). TabbyAPI, OpenAI-compatible and Claude are supported. (requires openai and anthropic packages.)

Install

$ pip install -U hyjinx

or, with optional dependencies,

$ pip install -U hyjinx[zmq]
$ pip install -U hyjinx[llm]

To install offline hy/hyrule documentation,

$ hy -m hyjinx.docs

See hyjinx.hyrc for example usage.

Optional dependencies

You can install with the [zmq] option which also installs ecdsa, pyzmq and zstandard for the zmq server/client

You can install with the [llm] option which also installs openai and lets you discuss code objects with ChatGPT or a locally-served LLM (via TabbyAPI or similar).

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

hyjinx-0.28.24.tar.gz (24.2 kB view details)

Uploaded Source

Built Distribution

hyjinx-0.28.24-py3-none-any.whl (26.9 kB view details)

Uploaded Python 3

File details

Details for the file hyjinx-0.28.24.tar.gz.

File metadata

  • Download URL: hyjinx-0.28.24.tar.gz
  • Upload date:
  • Size: 24.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.11.2

File hashes

Hashes for hyjinx-0.28.24.tar.gz
Algorithm Hash digest
SHA256 235690547993eea6e744018c07e4915556559d6a77c0573a2f1a0afedc2eb406
MD5 a381866f9312ed8ef253b7b95a183c13
BLAKE2b-256 9413498828e0fda4000aae682549093911e617649b419addc10c7d067baa34a9

See more details on using hashes here.

File details

Details for the file hyjinx-0.28.24-py3-none-any.whl.

File metadata

  • Download URL: hyjinx-0.28.24-py3-none-any.whl
  • Upload date:
  • Size: 26.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.11.2

File hashes

Hashes for hyjinx-0.28.24-py3-none-any.whl
Algorithm Hash digest
SHA256 e64b628a9e724ef32b86dd40b1b866f79d70b48ada7467c7f6945c408c3e5f44
MD5 8d7e3b0d7b92e1adcd5ce25e9d621bae
BLAKE2b-256 cd40411a71513d3d4a6b06109a0571d3626995ab2e1d6006b6044a5a184d4c4f

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page