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 and OpenAI-compatible are supported. (requires openai)

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.18.tar.gz (22.8 kB view details)

Uploaded Source

Built Distribution

hyjinx-0.28.18-py3-none-any.whl (25.4 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: hyjinx-0.28.18.tar.gz
  • Upload date:
  • Size: 22.8 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.18.tar.gz
Algorithm Hash digest
SHA256 dc2310b1d0061c8ecbf3b7e92bf7719ee236fb2a63b091fd87aa5442fdb25d6b
MD5 23af1a0a6ce234e24ffa42105f5caa3a
BLAKE2b-256 49b567736803f2af8f855e004dccb2c8d1b61f80c941cf111d6b7337a708250a

See more details on using hashes here.

File details

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

File metadata

  • Download URL: hyjinx-0.28.18-py3-none-any.whl
  • Upload date:
  • Size: 25.4 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.18-py3-none-any.whl
Algorithm Hash digest
SHA256 590694e4d96744ded59e4fd7f7eca3db3d62804f7a10b137bfcc203d8a37fbf0
MD5 c61b8d002766083913d7aacb8ac0af54
BLAKE2b-256 835d746b1a8f4a1c1e2f174e8e7dd17b34e2057ebfc87e9bf23414b6eb5547c3

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