This file is indexed.

/usr/lib/ocaml/lambda-term/lTerm_text.mli is in liblambda-term-ocaml-dev 1.10.1-2build1.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
(*
 * lTerm_text.mli
 * --------------
 * Copyright : (c) 2011, Jeremie Dimino <jeremie@dimino.org>
 * Licence   : BSD3
 *
 * This file is a part of Lambda-Term.
 *)

(** Styled text. *)

open CamomileLibrary

type t = (UChar.t * LTerm_style.t) array
    (** Type of a string with styles for each characters. *)

(** {6 Conversions} *)

val of_string : Zed_utf8.t -> t
  (** Creates a styled string from a string. All characters of the
      string have no style. *)

val to_string : t -> Zed_utf8.t
  (** Returns the string part of a styled string. *)

val of_string_maybe_invalid : string -> t
  (** Creates a styled string from a string. All characters of the
      string have no style. The string may contain invalid UTF-8
      sequences, in which case invalid bytes are escaped with the
      syntax [\yXX]. *)

val of_rope : Zed_rope.t -> t
  (** Creates a styled string from a rope. *)

val to_rope : t -> Zed_rope.t
  (** Returns the string part of a styled string as a rope. *)

val stylise : string -> LTerm_style.t -> t
  (** [stylise string style] creates a styled string with all styles
      set to [style]. *)

(** {6 Parenthesis matching} *)

val stylise_parenthesis : t -> ?paren : (UChar.t * UChar.t) list -> int -> LTerm_style.t -> unit
  (** [stylise_parenthesis text ?paren pos style] searchs for
      parenthesis group starting or ending at [pos] and apply them the
      style [style]. [paren] is the list of parenthesis recognized. *)

(** {6 Markup strings} *)

(** Markup strings are used to conveniently define styled strings. *)

(** Type of an item in a markup string. *)
type item =
  | S of Zed_utf8.t
      (** A UTF-8 encoded string. *)
  | R of Zed_rope.t
      (** A rope. *)
  | B_bold of bool
      (** Begins bold mode. *)
  | E_bold
      (** Ends bold mode. *)
  | B_underline of bool
      (** Begins underlined mode. *)
  | E_underline
      (** Ends underlined mode. *)
  | B_blink of bool
      (** Begins blinking mode. *)
  | E_blink
      (** Ends blinking mode. *)
  | B_reverse of bool
      (** Begins reverse video mode. *)
  | E_reverse
      (** Ends reverse video mode. *)
  | B_fg of LTerm_style.color
      (** Begins foreground color. *)
  | E_fg
      (** Ends foreground color. *)
  | B_bg of LTerm_style.color
      (** Begins background color. *)
  | E_bg
      (** Ends background color. *)

type markup = item list
    (** Type of a markup string. *)

val eval : markup -> t
  (** [eval makrup] evaluates a markup strings as a styled string. *)


(** {6 Styled formatters} *)

val make_formatter :
  ?read_color:(Format.tag -> LTerm_style.t) -> unit -> (unit -> t) * Format.formatter
(** Create a formatter on a styled string. Returns a tuple [get_content, fmt]. Calling [get_content ()] will flush the formatter and output the resulting styled string.

    If a [read_color] function is provided, Format's tag are enabled and [read_color] is used to transform tags into styles.
 *)

val pp_with_style :
  (LTerm_style.t -> Format.tag) ->
  (LTerm_style.t -> ('b, Format.formatter, unit, unit) format4 -> Format.formatter -> 'b)
(** [pp_with_style f] will create a pretty printer analogous to {!stylise}, using f to encode style into tags. Will only work on a formatter with tag enabled. *)

val styprintf :
  ?read_color:(Format.tag -> LTerm_style.t) ->
  ('a, Format.formatter, unit, t) format4 -> 'a
(** Equivalent of {!Format.sprintf} for styled strings. *)


val kstyprintf :
  ?read_color:(Format.tag -> LTerm_style.t) ->
  (t -> 'a) -> ('b, Format.formatter, unit, 'a) format4 -> 'b
(** Equivalent of {!Format.ksprintf} for styled strings. *)