Ecaml.Major_modeSourceinclude Core.Equal.S with type t := tinclude sig ... endAccessors
wrap_existing mode_name wraps the existing Emacs major mode named mode_name, and stores it in the table of all major modes indexed by symbol. wrap_existing raises if a major mode associated with this symbol was already wrapped.
val wrap_existing_with_lazy_keymap :
string ->
Core.Source_code_position.t ->
(module S_with_lazy_keymap)wrap_existing_with_lazy_keymap is like wrap_existing, except the resulting module's keymap value has type Keymap.t Lazy.t rather than Keymap.t. This is needed if the keymap value isn't defined at the point that the major mode is wrapped.
find_or_wrap_existing looks up the major mode associated with this symbol by a previous call to wrap_existing or creates one with the Undistinguished name.
(describe-function 'fundamental-mode) (Info-goto-node "(elisp)Major Modes")
(describe-function 'special-mode) (Info-goto-node "(elisp)Basic Major Modes")
(describe-function 'dired-mode)
(describe-function 'tuareg-mode)
(describe-function 'makefile-mode)
(describe-function 'scheme-mode)
(describe-function 'emacs-lisp-mode)
(describe-function 'asm-mode)
(describe-function 'python-mode)
val define_derived_mode :
?auto_mode:Auto_mode.t ->
Symbol.t ->
Core.Source_code_position.t ->
docstring:string ->
?define_keys:(string * Symbol.t) list ->
mode_line:string ->
?parent:t ->
?initialize:((unit, 'a) Defun.Returns.t * (unit -> 'a)) ->
unit ->
(module S)(describe-function 'define-derived-mode) (Info-goto-node "(elisp)Derived Modes")
Additionally, each key_sequence, symbol in define_keys is added to the new major mode's keymap.
(describe-variable 'major-mode)