OpamConsoleConsole output, ANSI color, logging and user querying
Global configuration parameters (read from OpamGlobalConfig, and the environment when necessary)
General text formatting
Settable attributes for ANSI terminal output. Nesting is generally not handled.
val colorise : text_style -> string -> stringHelper coloring functions. Returns the string unchanged if color is disabled
val colorise' : text_style list -> string -> stringval acolor : text_style -> unit -> string -> stringval acolor_w : int -> text_style -> Format.formatter -> string -> unitmodule Symbols : sig ... endval utf8_symbol :
OpamCompat.Uchar.t ->
?alternates:OpamCompat.Uchar.t list ->
string ->
stringLogging
Timers, only active when debug is on. Returns the time between the application to each argument, in seconds
val log : string -> ?level:int -> ('a, Format.formatter, unit) format -> 'alog section ~level fmt args. Used for debug messages, default level is 1
val slog : ('a -> string) -> Format.formatter -> 'a -> unitHelper to pass stringifiers to log (use log "%a" (slog to_string) x rather than log "%s" (to_string x) to avoid costly unneeded stringifications
val error : ('a, unit, string, unit) format4 -> 'aval warning : ('a, unit, string, unit) format4 -> 'aval note : ('a, unit, string, unit) format4 -> 'aval errmsg : ('a, unit, string, unit) format4 -> 'aMessage without prefix, reformat or newline, to stderr (useful to continue error messages without repeating "ERROR")
val error_and_exit :
OpamStd.Sys.exit_reason ->
('a, unit, string, 'b) format4 ->
'aval msg : ('a, unit, string, unit) format4 -> 'aval formatted_msg : ?indent:int -> ('a, unit, string, unit) format4 -> 'aval header_msg : ('a, unit, string, unit) format4 -> 'aval status_line : ('a, unit, string, unit) format4 -> 'aDisplay a dynamic status line to stdout, that will be erased on next call. The message should not be wider than screen nor contain newlines. Use clear_status when the status line should be erased.
Erase the status line and restore the cursor to the start of the line
val confirm : ?default:bool -> ('a, unit, string, bool) format4 -> 'aAsk the user to press Y/y/N/n to continue (returns a boolean). Defaults to true (yes) if unspecified
val read : ('a, unit, string, string option) format4 -> 'aRead some input from the user (returns a string option)
val print_table :
?cut:[ `Wrap of string | `Truncate | `None ] ->
out_channel ->
sep:string ->
string list list ->
unitPrints a table; generally called on tables passed through align_table. The default cut is to wrap on stdout, stderr, keep as-is otherwise. `Wrap sep prepends sep on wrapped lines