Skip to main content

pegon

Fast Java language server

Features

  • Zero-hassle configuration.
  • High editor performance.
  • Adherence to the Language Server Protocol standard.
  • CLI diagnostics for linting in CI/precommit.
  • Small standalone binary with no external dependencies.

Install

Github Releases

Binaries are available on the Releases Page.

PyPI

Binaries are available on PyPI.

Use uvx to run a one-off lint check on your Java code:

uvx pegon check

Or install with uv or pip:

# with uv
uv tool install pegon@latest
# with pip
pip install pegon

Install from Source

cargo install pegon

Editor Setup

Neovim

~/.config/nvim/lsp/pegon.lua:

--- @type vim.lsp.Config
return {
  cmd = { 'pegon', 'server' },
  filetypes = { 'java' },
  root_markers = { '.git' },
}

~/.config/nvim/init.lua:

vim.lsp.enable({ 'pegon' })

VSCode

Install rmuir.pegon-vscode from the marketplace.

VSCodium, Cursor, etc

Install rmuir.pegon-vscode from Open VSX.

Docs

FAQ

Q. This code looks like AI slop!

A. No LLM was used: if the code looks bad, it is because I wrote this application to learn Rust.

Q. What's with the Google Style?

A. Google Style supports high-performance Java development, and most developers roughly follow it:

  • Single top-level class with matching .java name supports search, fuzzy-finder
  • Variable naming conventions support easier code review and understanding
  • Import restrictions (e.g. no wildcards) support efficient analysis

Q. Where's completion / go-to-definition? I can't live without it!

A. These features are coming, continue to use ctags for now.

Q. What about running tests from my editor? This is essential for TDD!

A. I strongly recommend vim-test for this.

If your java build uses gradle, the daemon allows for very fast iteration with no config hassle. Black magic.

Q. Where's XYZ fancy refactoring? I can't live without it!

A. Currently the code actions are minimal. Check out some alternatives for now:

Q. What's with the name?

A. This program is named after the Javanese writing system. (ڤَيڮَون)

Thanks

Special thanks to the open-source maintainers of the dependencies used.

Download files

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

Source Distribution

pegon-1.0.11.tar.gz (108.9 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

pegon-1.0.11-py3-none-win_arm64.whl (1.7 MB view details)

Uploaded Python 3Windows ARM64

pegon-1.0.11-py3-none-win_amd64.whl (1.9 MB view details)

Uploaded Python 3Windows x86-64

pegon-1.0.11-py3-none-win32.whl (1.8 MB view details)

Uploaded Python 3Windows x86

pegon-1.0.11-py3-none-musllinux_1_2_x86_64.whl (2.1 MB view details)

Uploaded Python 3musllinux: musl 1.2+ x86-64

pegon-1.0.11-py3-none-musllinux_1_2_i686.whl (2.1 MB view details)

Uploaded Python 3musllinux: musl 1.2+ i686

pegon-1.0.11-py3-none-musllinux_1_2_armv7l.whl (2.0 MB view details)

Uploaded Python 3musllinux: musl 1.2+ ARMv7l

pegon-1.0.11-py3-none-musllinux_1_2_aarch64.whl (2.0 MB view details)

Uploaded Python 3musllinux: musl 1.2+ ARM64

pegon-1.0.11-py3-none-manylinux_2_28_x86_64.whl (2.0 MB view details)

Uploaded Python 3manylinux: glibc 2.28+ x86-64

pegon-1.0.11-py3-none-manylinux_2_28_s390x.whl (2.0 MB view details)

Uploaded Python 3manylinux: glibc 2.28+ s390x

pegon-1.0.11-py3-none-manylinux_2_28_ppc64le.whl (2.0 MB view details)

Uploaded Python 3manylinux: glibc 2.28+ ppc64le

pegon-1.0.11-py3-none-manylinux_2_28_i686.whl (2.0 MB view details)

Uploaded Python 3manylinux: glibc 2.28+ i686

pegon-1.0.11-py3-none-manylinux_2_28_armv7l.whl (1.9 MB view details)

Uploaded Python 3manylinux: glibc 2.28+ ARMv7l

pegon-1.0.11-py3-none-manylinux_2_28_aarch64.whl (1.9 MB view details)

Uploaded Python 3manylinux: glibc 2.28+ ARM64

pegon-1.0.11-py3-none-macosx_11_0_arm64.whl (1.7 MB view details)

Uploaded Python 3macOS 11.0+ ARM64

pegon-1.0.11-py3-none-macosx_10_12_x86_64.whl (1.9 MB view details)

Uploaded Python 3macOS 10.12+ x86-64

File details

Details for the file pegon-1.0.11.tar.gz.

File metadata

  • Download URL: pegon-1.0.11.tar.gz
  • Upload date:
  • Size: 108.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for pegon-1.0.11.tar.gz
Algorithm Hash digest
SHA256 a9cc12cc548cbfa94ba378cc3d34541fb77f53e8a1ab1e93ac3c11da419cee05
MD5 460ce2aee69c0e9a024a9dcc2c443c38
BLAKE2b-256 3d7bb24226f82c819c998dc7a2f66a07358062db9a671677ec6e21657befe25c

See more details on using hashes here.

File details

Details for the file pegon-1.0.11-py3-none-win_arm64.whl.

File metadata

  • Download URL: pegon-1.0.11-py3-none-win_arm64.whl
  • Upload date:
  • Size: 1.7 MB
  • Tags: Python 3, Windows ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for pegon-1.0.11-py3-none-win_arm64.whl
Algorithm Hash digest
SHA256 a87f1ca3534ba3fd6b24aa9a8ba5195777d1e6257adb595a44ad89ea0989cbd4
MD5 81b024f5e3538fd236b60d35ee556397
BLAKE2b-256 4320a74ee242c1cfa184b64688f7be180fc301929cc4cbbbb3fe6395f57b821d

See more details on using hashes here.

File details

Details for the file pegon-1.0.11-py3-none-win_amd64.whl.

File metadata

  • Download URL: pegon-1.0.11-py3-none-win_amd64.whl
  • Upload date:
  • Size: 1.9 MB
  • Tags: Python 3, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for pegon-1.0.11-py3-none-win_amd64.whl
Algorithm Hash digest
SHA256 cc9d253b6f9edd528201d7702f019ac158e8c6784a26e6f0d8b79d387826d72e
MD5 466706102df5550a0838c87f9e7a65aa
BLAKE2b-256 5188af70ff826479e9db8f40aa47abbf3d655233051b128e45b12c06c2806082

See more details on using hashes here.

File details

Details for the file pegon-1.0.11-py3-none-win32.whl.

File metadata

  • Download URL: pegon-1.0.11-py3-none-win32.whl
  • Upload date:
  • Size: 1.8 MB
  • Tags: Python 3, Windows x86
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for pegon-1.0.11-py3-none-win32.whl
Algorithm Hash digest
SHA256 6e9c14476b7b1fef596f59b20601b8ce38a3373387cf51d8384c7b97d619fb94
MD5 f3894c0c8fcae1b6cdbebc72b1a5e89e
BLAKE2b-256 58f5a15b349fccb4d17848d478145fe4b00f50343b52548df0f9ed226aea6fc1

See more details on using hashes here.

File details

Details for the file pegon-1.0.11-py3-none-musllinux_1_2_x86_64.whl.

File metadata

  • Download URL: pegon-1.0.11-py3-none-musllinux_1_2_x86_64.whl
  • Upload date:
  • Size: 2.1 MB
  • Tags: Python 3, musllinux: musl 1.2+ x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for pegon-1.0.11-py3-none-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 013a170df25934a4d4a71123a07bdf95826add1e9fe177a05af8d85c020658e0
MD5 eddbdd33f3378887279c7de4b513c4ad
BLAKE2b-256 71a83125cff640abb893d851c074508bb01075942d669ff4e1e9c931f80351aa

See more details on using hashes here.

File details

Details for the file pegon-1.0.11-py3-none-musllinux_1_2_i686.whl.

File metadata

  • Download URL: pegon-1.0.11-py3-none-musllinux_1_2_i686.whl
  • Upload date:
  • Size: 2.1 MB
  • Tags: Python 3, musllinux: musl 1.2+ i686
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for pegon-1.0.11-py3-none-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 6230e1de17dc37a9eda57cd0bf978763725b7b5b68f3394079197217f5a2f306
MD5 3883a489b731c714c12a99010bbb0929
BLAKE2b-256 6ce526b829ffc65d244d1a64c4c5b4d35ed765d42141e19ac556700e9817238b

See more details on using hashes here.

File details

Details for the file pegon-1.0.11-py3-none-musllinux_1_2_armv7l.whl.

File metadata

  • Download URL: pegon-1.0.11-py3-none-musllinux_1_2_armv7l.whl
  • Upload date:
  • Size: 2.0 MB
  • Tags: Python 3, musllinux: musl 1.2+ ARMv7l
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for pegon-1.0.11-py3-none-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 001b91e10af4af7e80d8bc99345cbf98db7af3dd41af4c12a472a66e8ba72775
MD5 50d731bc9a0fa27540b768d51fb4b5c8
BLAKE2b-256 832577779e44b6656bcd50b3ae5009466cdd7fb2290099c4ed89b060359fdf95

See more details on using hashes here.

File details

Details for the file pegon-1.0.11-py3-none-musllinux_1_2_aarch64.whl.

File metadata

  • Download URL: pegon-1.0.11-py3-none-musllinux_1_2_aarch64.whl
  • Upload date:
  • Size: 2.0 MB
  • Tags: Python 3, musllinux: musl 1.2+ ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for pegon-1.0.11-py3-none-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 15ffa95a1be955028054aa2e4e0e036ace6afab1e7f890aa4862d3df17c7fcbb
MD5 ba3ad189755e482e19eaba707ac48810
BLAKE2b-256 ba65653e23e0a76d3c7fc1c8409673053a5733acce17f7ea986e9a63bf59c304

See more details on using hashes here.

File details

Details for the file pegon-1.0.11-py3-none-manylinux_2_28_x86_64.whl.

File metadata

  • Download URL: pegon-1.0.11-py3-none-manylinux_2_28_x86_64.whl
  • Upload date:
  • Size: 2.0 MB
  • Tags: Python 3, manylinux: glibc 2.28+ x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for pegon-1.0.11-py3-none-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 3806edae176e88f43f3973fd40396877493c0082cce9157b44ee569c71a7c2f3
MD5 d600dbeb7a6acb12051cbd666cd67003
BLAKE2b-256 31834e8deb8234f16af459ecacb44785b2a43832fd85291c381635beef07c032

See more details on using hashes here.

File details

Details for the file pegon-1.0.11-py3-none-manylinux_2_28_s390x.whl.

File metadata

  • Download URL: pegon-1.0.11-py3-none-manylinux_2_28_s390x.whl
  • Upload date:
  • Size: 2.0 MB
  • Tags: Python 3, manylinux: glibc 2.28+ s390x
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for pegon-1.0.11-py3-none-manylinux_2_28_s390x.whl
Algorithm Hash digest
SHA256 217f12b8db4714e52ab8b1269ae3ec66e1fee8d5ae97bee59ca0b7a5370213fc
MD5 7e177b8470645820441e045d2cb18128
BLAKE2b-256 0b746fa646a31d283b452f0bad20f49bdfc58af01ff57d6c28cceca559d25f01

See more details on using hashes here.

File details

Details for the file pegon-1.0.11-py3-none-manylinux_2_28_ppc64le.whl.

File metadata

  • Download URL: pegon-1.0.11-py3-none-manylinux_2_28_ppc64le.whl
  • Upload date:
  • Size: 2.0 MB
  • Tags: Python 3, manylinux: glibc 2.28+ ppc64le
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for pegon-1.0.11-py3-none-manylinux_2_28_ppc64le.whl
Algorithm Hash digest
SHA256 0a146a902a4285311b817e8c3d9f100ac7420f898e74ed5e099253ce3643548f
MD5 ee3048459f1e83ad23f029fa5d87e2e6
BLAKE2b-256 38b6cb6172333d922dc5c76be720907ed74ed0d30a2937d86569aa5761951db0

See more details on using hashes here.

File details

Details for the file pegon-1.0.11-py3-none-manylinux_2_28_i686.whl.

File metadata

  • Download URL: pegon-1.0.11-py3-none-manylinux_2_28_i686.whl
  • Upload date:
  • Size: 2.0 MB
  • Tags: Python 3, manylinux: glibc 2.28+ i686
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for pegon-1.0.11-py3-none-manylinux_2_28_i686.whl
Algorithm Hash digest
SHA256 cd8b2c41907784b1b9a31d968071401e6e16f51e1b6e10b45ff5df4eb42bc40e
MD5 c9fc8ff1ee8611ff3e2e7c40102293ed
BLAKE2b-256 341509587c298cec7156b2577d028bee2ba09c01c08d5939aaeb569e9569c684

See more details on using hashes here.

File details

Details for the file pegon-1.0.11-py3-none-manylinux_2_28_armv7l.whl.

File metadata

  • Download URL: pegon-1.0.11-py3-none-manylinux_2_28_armv7l.whl
  • Upload date:
  • Size: 1.9 MB
  • Tags: Python 3, manylinux: glibc 2.28+ ARMv7l
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for pegon-1.0.11-py3-none-manylinux_2_28_armv7l.whl
Algorithm Hash digest
SHA256 d26281f8811b83095f2fe7e507af34d7c97936203c998631cff09bd2e89922a8
MD5 1f2fcce3f1c3dae1df051fab75b443f9
BLAKE2b-256 361f55e8e889184f9886467e92bd726e1b529f68fc504f6a4466ded048d23351

See more details on using hashes here.

File details

Details for the file pegon-1.0.11-py3-none-manylinux_2_28_aarch64.whl.

File metadata

  • Download URL: pegon-1.0.11-py3-none-manylinux_2_28_aarch64.whl
  • Upload date:
  • Size: 1.9 MB
  • Tags: Python 3, manylinux: glibc 2.28+ ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for pegon-1.0.11-py3-none-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 f2fc448e9af0fa79032885666c0e3600033fea0ab1373c8d5ce6da52481c0daa
MD5 fae59397882446ebf17f780d786d8c07
BLAKE2b-256 756eb6fea4639a22b5f765fa60cf7029a247346fd4846bc38774c332713db60d

See more details on using hashes here.

File details

Details for the file pegon-1.0.11-py3-none-macosx_11_0_arm64.whl.

File metadata

  • Download URL: pegon-1.0.11-py3-none-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 1.7 MB
  • Tags: Python 3, macOS 11.0+ ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for pegon-1.0.11-py3-none-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 8aa7735084d209762fbcf6a021704f3f66940c390af3066bcdea136ac6be2c50
MD5 038796b06ff27d97bbe727331f88b055
BLAKE2b-256 2ad841ac6a127d837898b8851af77effd41d740ec356fd931046f775c0ad03a3

See more details on using hashes here.

File details

Details for the file pegon-1.0.11-py3-none-macosx_10_12_x86_64.whl.

File metadata

  • Download URL: pegon-1.0.11-py3-none-macosx_10_12_x86_64.whl
  • Upload date:
  • Size: 1.9 MB
  • Tags: Python 3, macOS 10.12+ x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for pegon-1.0.11-py3-none-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 280ed057662f905f4b951739f49a3fde44702ac84fbc4adb7cb381c024557da0
MD5 eebe1cc29e447db634a4476a2a5ecd6f
BLAKE2b-256 ef56e40b72fe1be5d63df813508440808e2d42bd5bfab1f54512e990a2a4328d

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

1.0.11 This release

16 files

1.0.10

16 files

1.0.9

16 files

1.0.8

16 files

1.0.7

16 files

1.0.6

16 files

1.0.5

16 files

1.0.4

16 files

1.0.3

16 files

1.0.2

16 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page