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")
.
include Ecaml__.Current_buffer0_intf.Current_buffer0_public
val get : unit -> Ecaml__.Buffer0.t
(describe-function 'current-buffer)
val set : Ecaml__.Buffer0.t -> unit
(describe-function 'set-buffer)
val set_temporarily : Ecaml__.Buffer0.t -> f:(unit -> 'a) -> 'a
set_temporarily t ~f
runsf
with the current buffer set tot
.(describe-function 'with-current-buffer)
.
val symbol_value : Symbol.t -> Ecaml__.Import0.Value.t
(describe-function 'symbol-value)
val value : 'a Var.t -> 'a option
(describe-function 'symbol-value)
val value_exn : 'a Var.t -> 'a
(describe-function 'symbol-value)
val value_opt_exn : 'a option Var.t -> 'a
value_opt_exn
is likevalue_exn
, except that it raises if the variable is defined butNone
. This is useful for buffer-local variables of type'a option
, with a default value of nil.
val set_value : 'a Var.t -> 'a -> unit
(describe-function 'set)
.
val set_values : Var.And_value.t list -> unit
val clear_value : 'a Var.t -> unit
(describe-function 'makunbound)
val set_value_temporarily : 'a Var.t -> 'a -> f:(unit -> 'b) -> 'b
val set_values_temporarily : Var.And_value.t list -> f:(unit -> 'a) -> 'a
val has_non_null_value : _ Var.t -> bool
(describe-function 'bound-and-true-p
.
val get_buffer_local : 'a Buffer_local.t -> 'a
val get_buffer_local_exn : 'a option Buffer_local.t -> 'a
val set_buffer_local : 'a Buffer_local.t -> 'a -> unit
val directory : Ecaml__.Ecaml_filename.Filename.t Buffer_local.t
(describe-variable 'default-directory)
(Info-goto-node "(elisp)File Name Expansion")
val undo_list : unit -> Ecaml__.Import.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_var : Ecaml__.Ecaml_filename.Filename.t option Buffer_local.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 describe_mode : unit -> unit
(describe-function 'describe-mode)
(Info-goto-node "(elisp)Mode Help")
val set_temporarily_to_temp_buffer : (unit -> 'a) -> 'a
set_temporarily_to_temp_buffer f
creates a temporary buffer and runsf
with the current buffer set to the temporary buffer.(describe-function 'with-temp-buffer)
.
val fill_column : int Buffer_local.t
(describe-variable 'fill-column)
(Info-goto-node "(elisp)Margins")
val paragraph_start : Regexp.t Var.t
(describe-variable 'paragraph-start)
(Info-goto-node "(elisp)Standard Regexps ")
val paragraph_separate : Regexp.t Var.t
(describe-variable 'paragraph-separate)
(Info-goto-node "(elisp)Standard Regexps ")
val read_only : bool Buffer_local.t
(describe-variable 'buffer-read-only)
(Info-goto-node "(elisp)Read-Only Buffers")
val transient_mark_mode : bool Var.t
(describe-variable 'transient-mark-mode)
(describe-function 'transient-mark-mode)
(Info-goto-node "(elisp)The Mark")
val major_mode : unit -> Major_mode.t
(describe-variable 'major-mode)
(Info-goto-node "(elisp)Auto Major Mode")
val change_major_mode : Major_mode.t -> unit
val set_auto_mode : ?keep_mode_if_same:bool -> unit -> unit
(describe-function 'set-auto-mode)
val make_buffer_local : _ Var.t -> unit
(describe-function 'make-local-variable)
(Info-goto-node "(elisp)Creating Buffer-Local")
val is_buffer_local : _ Var.t -> bool
(describe-function 'local-variable-p)
(Info-goto-node "(elisp)Creating Buffer-Local")
val is_buffer_local_if_set : _ Var.t -> bool
(describe-function 'local-variable-if-set-p)
(Info-goto-node "(elisp)Creating Buffer-Local")
val buffer_local_variables : unit -> (Symbol.t * Ecaml__.Import.Value.t option) list
(describe-function 'buffer-local-variables)
(Info-goto-node "(elisp)Creating Buffer-Local")
val kill_buffer_local : _ Var.t -> unit
(describe-function 'kill-local-variable)
(Info-goto-node "(elisp)Creating Buffer-Local")
val local_keymap : unit -> Keymap.t option
(describe-function 'current-local-map)
(Info-goto-node "(elisp)Controlling Active Maps")
val set_local_keymap : Keymap.t -> unit
(describe-function 'use-local-map)
(Info-goto-node "(elisp)Controlling Active Maps")
val minor_mode_keymaps : unit -> Keymap.t list
(describe-function 'current-minor-mode-maps)
(Info-goto-node "(elisp)Controlling Active Maps")
val contents : ?start:Position.t -> ?end_:Position.t -> ?text_properties:bool -> unit -> Text.t
(describe-function 'buffer-substring)
(describe-function 'buffer-substring-no-properties)
val delete_region : start:Position.t -> end_:Position.t -> unit
(describe-function 'delete-region)
(Info-goto-node "(elisp)Deletion")
val kill_region : start:Position.t -> end_:Position.t -> unit
(describe-function 'kill-region)
val save_window_display_state : (unit -> 'a) -> 'a
Preserve the buffer's point and first displayed visual line.
val set_multibyte : bool -> unit
(describe-function 'set-buffer-multibyte)
.(Info-goto-node "(elisp)Selecting a Representation")
.
val rename_exn : ?unique:bool -> unit -> name:string -> unit
rename_exn
renames the current buffer, raising ifname
is already taken andunique = false
; withunique = true
it generates a new name.(describe-function 'rename-buffer)
.
val set_text_property : ?start:Position.t -> ?end_:Position.t -> 'a Text.Property_name.t -> 'a -> unit
(describe-function 'put-text-property)
(Info-goto-node "(elisp)Changing Properties")
.
val set_text_property_staged : 'a Text.Property_name.t -> 'a -> (start:int -> end_:int -> unit) Core_kernel.Staged.t
set_text_property_staged
is an optimization ofset_text_property
for the same text property on a number of regions, where the positions areint
s. It precomputes the Elisp property value once, and reuses it for each region.
val set_text_properties : ?start:Position.t -> ?end_:Position.t -> Text.Property.t list -> unit
(describe-function 'set-text-properties)
(Info-goto-node "(elisp)Changing Properties")
.
val set_text_properties_staged : Text.Property.t list -> (start:int -> end_:int -> unit) Core_kernel.Staged.t
set_text_properties_staged
is an optimization ofset_text_properties
for the same text property on a number of regions, where the positions areint
s. It precomputes the Elisp property value once, and reuses it for each region.
val get_text_property : Position.t -> 'a Text.Property_name.t -> 'a option
(describe-function 'get-text-property)
val add_text_properties : ?start:Position.t -> ?end_:Position.t -> Text.Property.t list -> unit
(describe-function 'add-text-properties)
(Info-goto-node "(elisp)Changing Properties")
.
val add_text_properties_staged : Text.Property.t list -> (start:int -> end_:int -> unit) Core_kernel.Staged.t
add_text_properties_staged
is an optimization ofadd_text_properties
for the same text property on a number of regions, where the positions areint
s. It precomputes the Elisp property value once, and reuses it for each region.
val text_property_is_present : ?start:Position.t -> ?end_:Position.t -> _ Text.Property_name.t -> bool
text_property_is_present property_name
returnstrue
if any text in the region fromstart
toend_
usesproperty_name
.(describe-function 'text-property-not-all)
val set_marker_position : Marker.t -> Position.t -> unit
(describe-function 'set-marker)
(Info-goto-node "(elisp)Moving Markers")
val mark : unit -> Marker.t
(describe-function 'mark-marker)
(Info-goto-node "(elisp)The Mark")
val set_mark : 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 active_region : unit -> (Position.t * Position.t) option
(describe-function 'region-beginning)
(describe-function 'region-end)
Returns
(region-beginning), (region-end)
if the mark is active.
val deactivate_mark : unit -> unit
(describe-function 'deactivate-mark)
(Info-goto-node "(elisp)The Mark")
val syntax_class : Char_code.t -> Syntax_table.Class.t
(describe-function 'char-syntax)
(Info-goto-node "(elisp)Syntax Table Functions")
val syntax_table : unit -> Syntax_table.t
(describe-function 'syntax-table)
(Info-goto-node "(elisp)Syntax Table Functions")
val set_syntax_table : Syntax_table.t -> unit
(describe-function 'set-syntax-table)
(Info-goto-node "(elisp)Syntax Table Functions")
val delete_lines_matching : ?start:Position.t -> ?end_:Position.t -> Regexp.t -> unit
(describe-function 'flush-lines)
val sort_lines : ?start:Position.t -> ?end_:Position.t -> unit -> unit
(describe-function 'sort-lines)
(Info-goto-node "(elisp)Sorting")
val delete_duplicate_lines : ?start:Position.t -> ?end_:Position.t -> unit -> unit
(describe-function 'delete-duplicate-lines)
val indent_region : ?start:Position.t -> ?end_: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)
val replace_buffer_contents : (Ecaml__.Import.Buffer.t -> unit) Core_kernel.Or_error.t
(describe-function 'replace-buffer-contents)
This function was introduced in Emacs 26 and the value is an error if an earlier version of emacs is used.
val truncate_lines : bool Buffer_local.t
(describe-variable 'truncate-lines)
val chars_modified_tick : unit -> Modified_tick.t
(describe-function 'buffer-chars-modified-tick)