Module Ecaml__.Point

val get : unit -> Ecaml.Position.t

(describe-function 'point).

val get_line_and_column : unit -> Ecaml.Line_and_column.t
val min : unit -> Ecaml.Position.t

(describe-function 'point-min).

val max : unit -> Ecaml.Position.t

(describe-function 'point-max).

val goto_char : Ecaml.Position.t -> unit

(describe-function 'goto-char).

val goto_line_and_column : Ecaml.Line_and_column.t -> unit
val goto_max : unit -> unit

goto_max () = goto_char (max ())

val goto_min : unit -> unit

goto_min () = goto_char (min ())

val beginning_of_line : unit -> unit

(describe-function 'beginning-of-line).

val end_of_line : unit -> unit

(describe-function 'end-of-line).

val count_lines : start:Ecaml.Position.t -> end_:Ecaml.Position.t -> int

(describe-function 'count-lines).

val goto_first_non_blank : unit -> unit

(describe-function 'back-to-indentation).

val forward_char_exn : int -> unit

forward_char_exn n moves point n characters forward (backward if n is negative). forward_char_exn raises on reaching end or beginning of buffer. (describe-function 'forward-char).

val backward_char_exn : int -> unit

backward_char_exn n = forward_char_exn (- n).

val delete_forward_char_exn : int -> unit

(describe-function 'delete-char).

val delete_backward_char_exn : int -> unit

delete_backward_char_exn n = delete_forward_char_exn (- n).

val forward_line : int -> unit

forward_line n moves n lines forward (backward if n is negative). Precisely, if point is on line i, move to the start of line i + n ("start of line" in the logical order). If there isn’t room, go as far as possible (no error). (describe-function 'forward-line). (Info-goto-node "(elisp)Text Lines")

val forward_line_exn : int -> unit

forward_line_exn n is like forward_line n, but it raises if it could not move the full n lines.

val backward_line : int -> unit

backward_line n = forward_line (- n).

val forward_sexp_exn : int -> unit

(describe-function 'forward-sexp) (Info-goto-node "(elisp)List Motion")

val backward_sexp_exn : int -> unit

(describe-function 'backward-sexp) (Info-goto-node "(elisp)List Motion")

val forward_word : int -> unit

(describe-function 'forward-word) (Info-goto-node "(elisp)Word Motion")

val backward_word : int -> unit

(describe-function 'backward-word) (Info-goto-node "(elisp)Word Motion")

val following_char : unit -> Ecaml.Char_code.t

(describe-function 'following-char)

val line_number : unit -> int

line_number returns the line number of the character after point, where the first line of the buffer is line 1. (describe-function 'line-number-at-pos). (Info-goto-node "(elisp)Text Lines")

val is_beginning_of_buffer : unit -> bool

(describe-function 'bobp)

val is_end_of_buffer : unit -> bool

(describe-function 'eobp)

val column_number : unit -> int

column_number returns the colum of point, where the beginning of line is column 0. (describe-function 'current-column). (Info-goto-node "(elisp)Columns")

val goto_column : int -> unit

goto_column c moves point to column c on the current line. (describe-function 'move-to-column). (Info-goto-node "(elisp)Columns")

val goto_line : int -> unit

goto_line l = goto_min (); forward_line (l - 1)

val indent_line_to : column:int -> unit

(describe-function 'indent-line-to)

val insert : string -> unit

(describe-function 'insert)

val insert_text : Ecaml.Text.t -> unit
val insert_file_contents_exn : ?⁠replace:bool -> string -> unit

(describe-function 'insert-file-contents)

val insert_file_contents_literally : ?⁠replace:bool -> string -> unit

(describe-function 'insert-file-contents-literally)

val kill_word : int -> unit

(describe-function 'kill-word).

val marker_at : unit -> Ecaml.Marker.t

(describe-function 'point-marker).

val marker_at_min : unit -> Ecaml.Marker.t

(describe-function 'point-min-marker).

val marker_at_max : unit -> Ecaml.Marker.t

(describe-function 'point-max-marker).

val next_line : unit -> unit

(describe-function 'next-line).

val previous_line : unit -> unit

(describe-function 'previous-line).

val scroll_up : int -> unit
type 'a with_search_options = ?⁠bound:Ecaml.Position.t -> ?⁠update_last_match:bool -> 'a
val search_backward : (string -> bool) with_search_options
val search_backward_exn : (string -> unit) with_search_options
val search_forward : (string -> bool) with_search_options
val search_forward_exn : (string -> unit) with_search_options
val search_backward_regexp : (Ecaml.Regexp.t -> bool) with_search_options
val search_backward_regexp_exn : (Ecaml.Regexp.t -> unit) with_search_options
val search_forward_regexp : (Ecaml.Regexp.t -> bool) with_search_options
val search_forward_regexp_exn : (Ecaml.Regexp.t -> unit) with_search_options
val looking_at : ?⁠update_last_match:bool -> Ecaml.Regexp.t -> bool

looking_at regexp returns true if the text after point matches regexp. (describe-function 'looking-at) (describe-function 'looking-at-p) (Info-goto-node "(elisp)Regexp Search")

val recenter : ?⁠screen_line:int -> unit -> unit

(describe-function 'recenter)

val function_called_at : unit -> Ecaml.Symbol.t option

(describe-function 'function-called-at-point)

val variable_at : unit -> Ecaml.Symbol.t option

(describe-function 'variable-at-point)