+Put these into a file, compile it with jexer.jar in the classpath, run
+it and you'll see an application like this:
+
+![The Example Code Above](/screenshots/readme_application.png?raw=true "The application in the text of README.md")
+
+See the files in jexer.demos for many more detailed examples showing
+all of the existing UI controls. The demo can be run in three
+different ways:
+
+ * 'java -jar jexer.jar' . This will use System.in/out with
+ xterm-like sequences on non-Windows platforms. On Windows it will
+ use a Swing JFrame.
+
+ * 'java -Djexer.Swing=true -jar jexer.jar' . This will always use
+ Swing on any platform.
+
+ * 'java -cp jexer.jar jexer.demos.Demo2 PORT' (where PORT is a
+ number to run the TCP daemon on). This will use the telnet
+ protocol to establish an 8-bit clean channel and be aware of
+ screen size changes.
+
+
+
+More Screenshots
+----------------
+
+![Several Windows Open Including A Terminal](/screenshots/screenshot1.png?raw=true "Several Windows Open Including A Terminal")
+
+![Yo Dawg...](/screenshots/yodawg.png?raw=true "Yo Dawg, I heard you like text windowing systems, so I ran a text windowing system inside your text windowing system so you can have a terminal in your terminal.")
+
+
+
+System Properties
+-----------------
+
+The following properties control features of Jexer:
+
+ jexer.Swing
+ -----------
+
+ Used only by jexer.demos.Demo1. If true, use the Swing interface
+ for the demo application. Default: true on Windows platforms
+ (os.name starts with "Windows"), false on non-Windows platforms.
+
+ jexer.Swing.cursorStyle
+ -----------------------
+
+ Used by jexer.io.SwingScreen. Selects the cursor style to draw.
+ Valid values are: underline, block, outline. Default: underline.
+
+ jexer.Swing.tripleBuffer
+ ------------------------
+
+ Used by jexer.io.SwingScreen. If false, use naive Swing thread
+ drawing. This may be faster on slower systems, but will also be
+ more likely to have screen tearing. Default: true.