Module Face.Attribute

(Info-goto-node "(elisp)Face Attributes")

type _ t =
| Background : Background.t t
| Box : Box.t t
| Font : Font.t t
| Font_family : Font_family.t t
| Font_foundry : Font_foundry.t t
| Foreground : Foreground.t t
| Height : Height.t t
| Inherit : Inherit.t t
| Inverse_video : Inverse_video.t t
| Overline : Overline.t t
| Slant : Slant.t t
| Stipple : Stipple.t t
| Strike_through : Strike_through.t t
| Underline : Underline.t t
| Weight : Weight.t t
| Width : Width.t t
val sexp_of_t : ('v_x__001_ -> Ppx_sexp_conv_lib.Sexp.t) -> 'v_x__001_ t -> Ppx_sexp_conv_lib.Sexp.t
val to_symbol : _ t -> Ecaml.Symbol.t
val of_value_exn : 'a t -> Ecaml__.Import0.Value.t -> 'a
val to_value : 'a t -> 'a -> Ecaml__.Import0.Value.t
val unspecified_value : 'a t -> 'a
module Packed : sig ... end with type 'a attribute := 'a t
val is_relative : 'a t -> 'a -> bool

A relative value is one that doesn’t entirely override whatever is inherited from another face. For most attributes, the only relative value is Unspecified. Height.Scale_underlying_face values are also relative. (describe-function 'face-attribute-relative-p).

val merge : 'a t -> 'a -> 'a -> 'a

(describe-function 'merge-face-attribute)