package pfff

  1. Overview
  2. Docs
Legend:
Library
Module
Module type
Parameter
Class
Class type

This module offers basic control of ANSI compliant terminals.

  • author Christophe Troestler
  • version 0.3

Color

type color =
  1. | Black
  2. | Red
  3. | Green
  4. | Yellow
  5. | Blue
  6. | Magenta
  7. | Cyan
  8. | White
  9. | Default
    (*

    Default color of the terminal

    *)
type style =
  1. | Reset
  2. | Bold
  3. | Underlined
  4. | Inverse
  5. | Hidden
  6. | Foreground of color
  7. | 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 Black

Shortcut for Foreground Red

val green : style

Shortcut for Foreground Red

Shortcut for Foreground Green

val yellow : style

Shortcut for Foreground Green

Shortcut for Foreground Yellow

val blue : style

Shortcut for Foreground Yellow

Shortcut for Foreground Blue

val magenta : style

Shortcut for Foreground Blue

Shortcut for Foreground Magenta

val cyan : style

Shortcut for Foreground Magenta

Shortcut for Foreground Cyan

val white : style

Shortcut for Foreground Cyan

Shortcut for Foreground White

val default : style

Shortcut for Foreground White

Shortcut for Foreground Default

val on_black : style

Shortcut for Background Black

val on_red : style

Shortcut for Background Black

Shortcut for Background Red

val on_green : style

Shortcut for Background Red

Shortcut for Background Green

val on_yellow : style

Shortcut for Background Green

Shortcut for Background Yellow

val on_blue : style

Shortcut for Background Yellow

Shortcut for Background Blue

val on_magenta : style

Shortcut for Background Blue

Shortcut for Background Magenta

val on_cyan : style

Shortcut for Background Magenta

Shortcut for Background Cyan

val on_white : style

Shortcut for Background Cyan

Shortcut for Background White

val on_default : style

Shortcut for Background White

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 =
  1. | Above
  2. | Below
  3. | Screen
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

save_cursor() saves the current position of the cursor.

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.