module ANSITerminal: sig .. end
This module offers basic control of ANSI compliant terminals.
Author(s): Christophe Troestler
Version: 0.3
Color
type color =
| |
Black |
| |
Red |
| |
Green |
| |
Yellow |
| |
Blue |
| |
Magenta |
| |
Cyan |
| |
White |
| |
Default |
type style =
| |
Reset |
| |
Bold |
| |
Underlined |
| |
Blink |
| |
Inverse |
| |
Hidden |
| |
Foreground of color |
| |
Background of color |
Various styles for the text. Blink and Hidden may not work on
every terminal.
val black : style
Shortcut for Foreground Black
val red : style
Shortcut for Foreground Red
val green : style
Shortcut for Foreground Green
val yellow : style
Shortcut for Foreground Yellow
val blue : style
Shortcut for Foreground Blue
val magenta : style
Shortcut for Foreground Magenta
val cyan : style
Shortcut for Foreground Cyan
val white : style
Shortcut for Foreground White
val default : style
Shortcut for Foreground Default
val on_black : style
Shortcut for Background Black
val on_red : style
Shortcut for Background Red
val on_green : style
Shortcut for Background Green
val on_yellow : style
Shortcut for Background Yellow
val on_blue : style
Shortcut for Background Blue
val on_magenta : style
Shortcut for Background Magenta
val on_cyan : style
Shortcut for Background Cyan
val on_white : style
Shortcut for Background White
val on_default : style
Shortcut for Background Default
val set_autoreset : bool -> unit
Turns the autoreset feature on and off. It defaults to on.
val print_string : style list -> string -> unit
print_string attr txt prints the string txt with the
attibutes attr. After printing, the attributes are
automatically reseted to the defaults, unless autoreset is turned
off.
val printf : style list -> ('a, unit, string, unit) format4 -> 'a
printf attr format arg1 ... argN prints the arguments
arg1,...,argN according to format with the attibutes attr.
After printing, the attributes are automatically reseted to the
defaults, unless autoreset is turned off.
Erasing
type loc =
val erase : loc -> unit
erase Above erases everything before the position of the cursor.
erase Below erases everything after the position of the cursor.
erase Screen erases the whole screen.
Cursor
val set_cursor : int -> int -> unit
set_cursor x y puts the cursor at position (x,y), x
indicating the column (the leftmost one being 1) and y being the
line (the topmost one being 1). If x <= 0, the x coordinate
is unchanged; if y <= 0, the y coordinate is unchanged.
val move_cursor : int -> int -> unit
move_cursor x y moves the cursor by x columns (to the right
if x > 0, to the left if x < 0) and by y lines (downwards if
y > 0 and upwards if y < 0).
val save_cursor : unit -> unit
save_cursor() saves the current position of the cursor.
val restore_cursor : unit -> unit
restore_cursor() replaces the cursor to the position saved
with save_cursor().
Scrolling
val scroll : int -> unit
scroll n scrolls the terminal by n lines, up (creating new
lines at the bottom) if n > 0 and down if n < 0.