Module Ecaml__.Current_buffer

There are, in general, many buffers in an Emacs session. At any time, one of them is designated as the "current buffer". This is the buffer in which most editing takes place, because most of the primitives for examining or changing text in a buffer operate implicitly on the current buffer. Normally the buffer that is displayed on the screen in the selected window is the current buffer, but this is not always so: a program can temporarily designate any buffer as current in order to operate on its contents, without changing what is displayed on the screen.

(Info-goto-node "(elisp)Current Buffer").

val get : unit ‑> Ecaml.Buffer.t

(describe-function 'current-buffer)

val set : Ecaml.Buffer.t ‑> unit

(describe-function 'set-buffer)

val directory : Ecaml.Filename.t Ecaml.Var.t

(describe-variable 'default-directory)(Info-goto-node "(elisp)File Name Expansion")

val undo_list : unit ‑> Ecaml.Value.t

(describe-variable 'buffer-undo-list)(Info-goto-node "(elisp)Undo")(Info-goto-node "(elisp)Maintaining Undo")

val is_undo_enabled : unit ‑> bool
val set_undo_enabled : bool ‑> unit
val file_name : unit ‑> string option

(describe-function 'buffer-file-name)(Info-goto-node "(elisp)Buffer File Name")

val file_name_exn : unit ‑> string
val file_name_var : Ecaml.Filename.t Ecaml.Var.t

(describe-variable 'buffer-file-name)(Info-goto-node "(elisp)Buffer File Name")

val add_undo_boundary : unit ‑> unit

(describe-function 'undo-boundary)(Info-goto-node "(elisp)Undo")

val undo : int ‑> unit

(describe-function 'undo)

val set_temporarily : Ecaml.Buffer.t ‑> f:(unit ‑> 'a) ‑> 'a

set_temporarily t ~f runs f with the current buffer set to t. (describe-function 'with-current-buffer).

val set_temporarily_to_temp_buffer : (unit ‑> 'a) ‑> 'a

set_temporarily_to_temp_buffer f creates a temporary buffer and runs f with the current buffer set to the temporary buffer. (describe-function 'with-temp-buffer).

val bury : unit ‑> unit

(describe-function 'bury-buffer)(Info-goto-node "(elisp)Buffer List")

val is_modified : unit ‑> bool

(describe-function 'buffer-modified-p)

val set_modified : bool ‑> unit

(describe-function 'set-buffer-modified-p)

val fill_column : int Ecaml.Var.t

(describe-variable 'fill-column)(Info-goto-node "(elisp)Margins")

val paragraph_start : Ecaml.Regexp.t Ecaml.Var.t

(describe-variable 'paragraph-start)(Info-goto-node "(elisp)Standard Regexps ")

val paragraph_separate : Ecaml.Regexp.t Ecaml.Var.t

(describe-variable 'paragraph-separate)(Info-goto-node "(elisp)Standard Regexps ")

val read_only : bool Ecaml.Var.t

(describe-variable 'buffer-read-only)(Info-goto-node "(elisp)Read-Only Buffers")

val transient_mark_mode : bool Ecaml.Var.t

(describe-variable 'transient-mark-mode)(describe-function 'transient-mark-mode)(Info-goto-node "(elisp)The Mark")

val major_mode : unit ‑> Ecaml.Major_mode.t

(describe-variable 'major-mode)(Info-goto-node "(elisp)Auto Major Mode")

val change_major_mode : Ecaml.Major_mode.t ‑> unit
val value : 'a Ecaml.Var.t ‑> 'a option

(describe-function 'symbol-value)

val value_exn : 'a Ecaml.Var.t ‑> 'a

(describe-function 'symbol-value)

(describe-function 'symbol-value)

val set_value : 'a Ecaml.Var.t ‑> 'a ‑> unit

(describe-function 'set).

val clear_value : 'a Ecaml.Var.t ‑> unit

(describe-function 'makunbound)

val set_value_temporarily : 'a Ecaml.Var.t ‑> 'a ‑> f:(unit ‑> 'b) ‑> 'b
val set_values_temporarily : Ecaml.Var.And_value.t list ‑> f:(unit ‑> 'a) ‑> 'a
val has_non_null_value : _ Ecaml.Var.t ‑> bool

(describe-function 'bound-and-true-p.

val make_buffer_local : _ Ecaml.Var.t ‑> unit

(describe-function 'make-local-variable)(Info-goto-node "(elisp)Creating Buffer-Local")

val is_buffer_local : _ Ecaml.Var.t ‑> bool

(describe-function 'local-variable-p)(Info-goto-node "(elisp)Creating Buffer-Local")

val is_buffer_local_if_set : _ Ecaml.Var.t ‑> bool

(describe-function 'local-variable-if-set-p)(Info-goto-node "(elisp)Creating Buffer-Local")

val buffer_local_variables : unit ‑> (Ecaml.Symbol.t * Ecaml.Value.t option) list

(describe-function 'buffer-local-variables)(Info-goto-node "(elisp)Creating Buffer-Local")

val kill_buffer_local : _ Ecaml.Var.t ‑> unit

(describe-function 'kill-local-variable)(Info-goto-node "(elisp)Creating Buffer-Local")

val local_keymap : unit ‑> Ecaml.Keymap.t option

(describe-function 'current-local-map)(Info-goto-node "(elisp)Controlling Active Maps")

val set_local_keymap : Ecaml.Keymap.t ‑> unit

(describe-function 'use-local-map)(Info-goto-node "(elisp)Controlling Active Maps")

val minor_mode_keymaps : unit ‑> Ecaml.Keymap.t list

(describe-function 'current-minor-mode-maps)(Info-goto-node "(elisp)Controlling Active Maps")

val contents : ?⁠start:Ecaml.Position.t ‑> ?⁠end_:Ecaml.Position.t ‑> ?⁠text_properties:bool ‑> unit ‑> Ecaml.Text.t

(describe-function 'buffer-substring)(describe-function 'buffer-substring-no-properties)

val kill : unit ‑> unit

(Info-goto-node "(elisp)Killing Buffers")(describe-function 'kill-buffer)

val save : unit ‑> unit

(Info-goto-node "(elisp)Saving Buffers")(describe-function 'save-buffer)

val erase : unit ‑> unit

(describe-function 'erase-buffer)

val delete_region : start:Ecaml.Position.t ‑> end_:Ecaml.Position.t ‑> unit

(describe-function 'delete-region)(Info-goto-node "(elisp)Deletion")

val kill_region : start:Ecaml.Position.t ‑> end_:Ecaml.Position.t ‑> unit

(describe-function 'kill-region)

val save_excursion : (unit ‑> 'a) ‑> 'a

(describe-function 'save-excursion)

val set_multibyte : bool ‑> unit

(describe-function 'set-buffer-multibyte). (Info-goto-node "(elisp)Selecting a Representation").

val is_multibyte : unit ‑> bool

(describe-variable 'enable-multibyte-characters).

val rename_exn : ?⁠unique:bool ‑> unit ‑> name:string ‑> unit

rename_exn renames the current buffer, raising if name is already taken and unique = false; with unique = true it generates a new name. (describe-function 'rename-buffer).

val set_text_property : ?⁠start:Ecaml.Position.t ‑> ?⁠end_:Ecaml.Position.t ‑> 'a Ecaml.Text.Property_name.t ‑> 'a ‑> unit

(describe-function 'put-text-property)(Info-goto-node "(elisp)Changing Properties").

val set_text_property_staged : 'a Ecaml.Text.Property_name.t ‑> 'a ‑> (start:int ‑> end_:int ‑> unit) Core_kernel.Staged.t

set_text_property_staged is an optimization of set_text_property for the same text property on a number of regions, where the positions are ints. It precomputes the Elisp property value once, and reuses it for each region.

val set_text_properties : ?⁠start:Ecaml.Position.t ‑> ?⁠end_:Ecaml.Position.t ‑> Ecaml.Text.Property.t list ‑> unit

(describe-function 'set-text-properties)(Info-goto-node "(elisp)Changing Properties").

val set_text_properties_staged : Ecaml.Text.Property.t list ‑> (start:int ‑> end_:int ‑> unit) Core_kernel.Staged.t

set_text_properties_staged is an optimization of set_text_properties for the same text property on a number of regions, where the positions are ints. It precomputes the Elisp property value once, and reuses it for each region.

val add_text_properties : ?⁠start:Ecaml.Position.t ‑> ?⁠end_:Ecaml.Position.t ‑> Ecaml.Text.Property.t list ‑> unit

(describe-function 'add-text-properties)(Info-goto-node "(elisp)Changing Properties").

val add_text_properties_staged : Ecaml.Text.Property.t list ‑> (start:int ‑> end_:int ‑> unit) Core_kernel.Staged.t

add_text_properties_staged is an optimization of add_text_properties for the same text property on a number of regions, where the positions are ints. It precomputes the Elisp property value once, and reuses it for each region.

val text_property_is_present : ?⁠start:Ecaml.Position.t ‑> ?⁠end_:Ecaml.Position.t ‑> _ Ecaml.Text.Property_name.t ‑> bool

text_property_is_present property_name returns true if any text in the region from start to end_ uses property_name. (describe-function 'text-property-not-all)

val set_marker_position : Ecaml.Marker.t ‑> Ecaml.Position.t ‑> unit

(describe-function 'set-marker)(Info-goto-node "(elisp)Moving Markers")

val mark : unit ‑> Ecaml.Marker.t

(describe-function 'mark-marker)(Info-goto-node "(elisp)The Mark")

val set_mark : Ecaml.Position.t ‑> unit

(describe-function 'set-mark)(Info-goto-node "(elisp)The Mark")

val mark_is_active : unit ‑> bool

(describe-variable 'mark-active)(Info-goto-node "(elisp)The Mark")

val deactivate_mark : unit ‑> unit

(describe-function 'deactivate-mark)(Info-goto-node "(elisp)The Mark")

val syntax_class : Ecaml.Char_code.t ‑> Ecaml.Syntax_table.Class.t

(describe-function 'char-syntax)(Info-goto-node "(elisp)Syntax Table Functions")

val syntax_table : unit ‑> Ecaml.Syntax_table.t

(describe-function 'syntax-table)(Info-goto-node "(elisp)Syntax Table Functions")

val set_syntax_table : Ecaml.Syntax_table.t ‑> unit

(describe-function 'set-syntax-table)(Info-goto-node "(elisp)Syntax Table Functions")

val delete_lines_matching : ?⁠start:Ecaml.Position.t ‑> ?⁠end_:Ecaml.Position.t ‑> Ecaml.Regexp.t ‑> unit

(describe-function 'flush-lines)

val sort_lines : ?⁠start:Ecaml.Position.t ‑> ?⁠end_:Ecaml.Position.t ‑> unit ‑> unit

(describe-function 'sort-lines)(Info-goto-node "(elisp)Sorting")

val delete_duplicate_lines : ?⁠start:Ecaml.Position.t ‑> ?⁠end_:Ecaml.Position.t ‑> unit ‑> unit

(describe-function 'delete-duplicate-lines)

val indent_region : ?⁠start:Ecaml.Position.t ‑> ?⁠end_:Ecaml.Position.t ‑> unit ‑> unit

(describe-function 'indent-region)(Info-goto-node "(elisp)Region Indent")

val revert : ?⁠confirm:bool ‑> unit ‑> unit

(describe-function 'revert-buffer)(Info-goto-node "(elisp)Reverting")

val set_revert_buffer_function : (confirm:bool ‑> unit) ‑> unit

(describe-variable 'revert-buffer-function)