Files
jprototerm/README.md
Gregor Lohaus 332f4d7b3b init
2026-05-27 15:42:31 +02:00

1.3 KiB

jprototerm

JavaFX canvas terminal prototype using jlibghostty for terminal emulation, Nix for the build environment, and GluonFX/GraalVM Native Image for the Linux binary.

Build

nix build

For development:

nix develop
gradle -PjlibghosttyMavenRepo="$JLIBGHOSTTY_MAVEN_REPO" run
gradle -PjlibghosttyMavenRepo="$JLIBGHOSTTY_MAVEN_REPO" nativeCompile

The current flake follows the normal Gradle dependency-resolution shape. For a fully pure Nix build, vendor the Gradle dependency graph with gradle2nix or a checked-in Maven repository.

Config

Configuration is read from:

$XDG_CONFIG_HOME/jprototerm/config.toml

If XDG_CONFIG_HOME is unset, the fallback is:

$HOME/.config/jprototerm/config.toml

Example, also available in config.example.toml:

[terminal]
columns = 100
rows = 30
shell = "/bin/bash"
font_family = "JetBrainsMono Nerd Font"
font_size = 15

[window]
width = 1200
height = 760

[kitty_graphics]
enabled = true

[keybindings]
navigate_left = "ALT+H"
navigate_down = "ALT+J"
navigate_up = "ALT+K"
navigate_right = "ALT+L"
toggle_floating = "ALT+F"

Defaults

  • Alt+h/j/k/l: navigate panes
  • Alt+f: open or close a floating pane
  • Font default: Symbols Nerd Font Mono
  • Kitty graphics protocol parsing is enabled by default