Question

I would like to write a Java terminal application that does screen manipulation. Are there any good libraries out there that allow you to manipulate the screen like curses in the *nix/C world?

Minimal features I'm looking for are windowing and user input support.

In feature-speak, I'd like to have a region of the terminal where some data is regularly updated while (at the same time) the user can enter commands/text in some other part of the screen.

Was it helpful?

Solution

There is Charva, which links to native code but has an api based on Swing. The screenshots show lots of text windows, so that looks useful.

OTHER TIPS

I found the lanterna library recently. Haven't had the opportunity to use it yet but it looks like a more up-to-date alternative to the others.

Haven't used it myself, but Java Curses Library sounds like what you want.

Here is a way to call the ncurses lib using JNI. I tested this and it works.

As of 2013, the closest I can find is Blacken.

Blacken is not a curses library per-se. It moves away from the terminal, and instead, renders it's own "console window." This has the disadvantage of not looking "console-like." Instead, you get full (arbitrary) colour support, and a curses-like API (in addition to their main API).

You can also set the font to Mono for fixed-width characters.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top