uazu / scramjet

Java acceleration for terminal tools and curses-style terminal apps

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Scramjet for UNIX: Java acceleration for terminal apps

This fully usable but still a work-in-progress. I am adding new features and reorganizing old ones as I need them, according to how much free time I get to work on it. --Jim

Main applications

  • UNIX command-line tools: Scramjet allows fast UNIX-style command-line tools to be written in Java by avoiding the JVM startup time.
  • UNIX terminal applications: Scramjet allows writing efficient ncurses-style fullscreen Unicode ANSI text applications (editors, mail agents, viewers) in Java.
  • Eclipse hooks: Scramjet allows monolithic Java applications such as Eclipse to be controlled from the UNIX command-line, running commands on demand within the Eclipse JVM, with input/output via the terminal.

License

Released under the Apache License, Version 2.0: http://www.apache.org/licenses/LICENSE-2.0

Website

See http://uazu.net/scramjet/ for more information, screenshots, examples, etc.

Quick-Start and Example Usage

# Build everything
cd src
./mk

# Start JVM (also creates ~/.scramjet the first time)
out/scramjet -S

# Kill JVM
out/scramjet -K

# Start JVM (automatically) and show test page.  NOTE: you might need
# to press ^L (redraw) to display line-characters correctly on some
# GNOME terminals -- this seems to be a libVTE bug.
out/scramjet net.uazu.scramjet.test.ConsoleTest0
^C

# If something was not working on the test page, adjust LANG and TERM
# environment variables as required and re-run as necessary.  We need
# -R option here to restart the JVM to get it to pick up LANG changes.
export LANG=...
export TERM=...
out/scramjet -R net.uazu.scramjet.test.ConsoleTest0
^C

# Start a game.  (NOTE: both dots and slashes are okay for package
# separators)
out/scramjet net/uazu/scramjet/test/Teeclub

# Whilst it is running, on another terminal show the stacktraces of
# all the threads running in the JVM.
out/sj-threads -l

About

Java acceleration for terminal tools and curses-style terminal apps


Languages

Language:Java 91.4%Language:C 8.0%Language:Shell 0.5%Language:Perl 0.1%