sig
  val verbatim : string -> Latex.t
  val regexps :
    (Str.regexp * (string -> Latex.t)) list ->
    (string -> Latex.t) -> string -> Latex.t
  val keywords :
    ?apply:(Latex.t -> Latex.t) -> string list -> string -> Latex.t
  val pseudocode :
    ?trim:(string -> string) ->
    ?id_regexp:Str.regexp ->
    ?kw_apply:(Latex.t -> Latex.t) ->
    ?id_apply:(Latex.t -> Latex.t) ->
    ?rem_apply:(string -> Latex.t) ->
    ?keywords:string list ->
    ?symbols:(string * Latex.t) list ->
    ?keyword_symbols:(string * Latex.t) list ->
    ?underscore:Str.regexp -> string -> Latex.t
  val trim : char list -> string -> string
  val trim_begin : char list -> string -> string
  val trim_end : char list -> string -> string
  val split_lines : string -> string list
end