Skip to content

Commit

Permalink
Add a few comments to the AbstractWindowsTerminal class
Browse files Browse the repository at this point in the history
  • Loading branch information
gnodet committed Sep 19, 2017
1 parent 0fa03a9 commit ef6b7c2
Showing 1 changed file with 12 additions and 0 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,18 @@
import java.util.HashMap;
import java.util.Map;

/**
* The AbstractWindowsTerminal is used as the base class for windows terminal.
* Due to windows limitations, mostly the missing support for ansi sequences,
* the only way to create a correct terminal is to use the windows api to set
* character attributes, move the cursor, erasing, etc...
*
* UTF-8 support is also lacking in windows and the code page supposed to
* emulate UTF-8 is a bit broken. In order to work around this broken
* code page, windows api WriteConsoleW is used directly. This means that
* the writer() becomes the primary output, while the output() is bridged
* to the writer() using a WriterOutputStream wrapper.
*/
public abstract class AbstractWindowsTerminal extends AbstractTerminal {

public static final String TYPE_WINDOWS = "windows";
Expand Down

0 comments on commit ef6b7c2

Please sign in to comment.