package ecaml

  1. Overview
  2. Docs
Module type
Class type
type 'a t
val sexp_of_t : ('a -> Sexplib0.Sexp.t) -> 'a t -> Sexplib0.Sexp.t

A property of an Emacs symbol.

(Info-goto-node "(elisp)Symbol Properties")

val create : symbol -> 'a Ecaml_value.Value.Type.t -> 'a t

Create a property named by the given symbol.

val get : 'a t -> symbol -> 'a option

(describe-function 'get)

val get_exn : 'a t -> symbol -> 'a

(describe-function 'get)

val put : 'a t -> symbol -> 'a -> unit

(describe-function 'put)

val function_documentation : Ecaml_value.Value.t t

According to (Info-goto-node "(elisp)Documentation Basics"), there are two places where one can put a documentation string:

1. in the lambda after the arg list, or 2. in the function symbol's function-documentation property

Most functions use (1), but some use (2), e.g. a defalias like abbrev-get or an advised function like next-error.

val variable_documentation : Ecaml_value.Value.t t
val function_disabled : Disabled.t t

If the disabled property is true for a symbol x, and the user has not disabled the feature, and the user tries to do the command x, they will get a warning asking if they really want to do the command (e.g. narrow-to-region).

A disabled command may optionally have a string message, which is displayed when the user attempts to run the command.

See (Info-goto-node "(emacs)Disabling")

val advertised_binding : Ecaml_value__.Value0.t t

If a command has multiple bindings, (describe-function 'substitute-command-keys) normally uses the first one it finds. You can specify one particular key binding by a value for this property to the command, like this.

This property also affects the binding shown in menu items. The property is ignored if it specifies a key binding that the command does not actually have.

See (Info-goto-node "(elisp) Keys in Documentation")


Innovation. Community. Security.