#65 stretch images to fit into text cells
[fanfix.git] / docs / 032_announcement.txt
CommitLineData
5c431342
KL
1Jexer 0.3.2 Release
2===================
3
4I am pleased to announce the release of Jexer 0.3.2. This release
5completes nearly every feature I set out to make, and is the last
6major milestone before 1.0.0.
7
8Jexer is not an application itself, but rather an advanced text
9windowing system framework to help new applications take full
10advantage of the terminal. Its major features are:
11
12 * MIT licensed.
13
14 * Direct support for xterm-like terminals: mouse, keyboard, 24-bit
15 RGB color, UTF-8, fullwidth characters (CJK and emoji), and sixel
16 images.
17
18 * A Swing-based GUI window that ships with a good-looking Terminus
19 font.
20
21 * Sixel image support, for both input in its terminal window and
22 output to the host terminal. Jexer is (to my knowledge) the first
23 and only system capable of managing multiple terminal windows
24 displaying properly overlapping images.
25
26 * Draggable / resizable windows, menu bar, and system-modal dialogs
27 (message/input boxes and filename picker).
28
29 * A full complement of widgets: button, text field, checkbox,
30 combobox, list, radio button, scrollbars, data table, calendar
31 picker, progress bar, text display, and simple text editor. Plus
32 layout manager support for resizable widgets and windows.
33
34 * A terminal window capable of passing "vttest" (including VT100
35 double-width / double-height), and supporting all of Jexer's
36 features. Jexer can run inside itself, with full keyboard, mouse,
37 and image support.
38
39 * Extensively documented in the code (Javadoc), a wiki, and ships
40 with a demonstration application showing off all of its available
41 widgets.
42
43
44Find out more at the Jexer Sourceforge or GitLab project pages:
45
46 * https://jexer.sourceforge.io/
47
48 * https://gitlab.com/klamonte/jexer
49
50
51Download
52--------
53
54GitLab: git clone https://gitlab.com/klamonte/jexer.git
55
56Binary downloads: http://sourceforge.net/project/showfiles.php?group_id=2829121
57
58On Maven:
59
60 group: com.gitlab.klamonte
61 artifact: jexer
62 version: 0.3.2
63
64
65Ugh, Java Sucks!
66----------------
67
68(Thor squint) But does it though?
69
70More seriously, I initially picked D because it was sexy. But D circa
712013 brought too many headaches for me, so I switched to Java because
72I wanted a cross-platform standard library that would be stable over
73many years. And Java is OK, it is a solid workhorse that gets the job
74done.
75
76Yet in porting my initial work to Java I stumbled upon an unexpected
77benefit: I found ways to accomplish all of what Jexer does _without
78calling C directly_. No termios, no ncurses, no forkpty(), and thus
79no serious hurdles porting it to anything that can spawn programs and
80read their output. On Linux, BSD, or OSX, all you need is 'stty' and
81'script' to make things work. (And if you want resizable terminal
82windows, add 'ptypipe'.)
83
84So for those who want something like Jexer but in your own favorite
85language, I encourage you to check out the [Porting
86Jexer](https://gitlab.com/klamonte/jexer/wikis/porting) page on the
87wiki: it has pointers to where the key features are, and a potential
88roadmap if you wanted to take part or all of it into your own hands.
89I licensed Jexer as MIT, stuck with simple Java 1.6, and thoroughly
90documented it in the hope that fans of other languages could more
91easily create or enhance their own text user interfaces.