428 |
/* Operations on markers. */ |
/* Operations on markers. */ |
429 |
|
|
430 |
DEFUN ("marker-buffer", Fmarker_buffer, Smarker_buffer, 1, 1, 0, |
DEFUN ("marker-buffer", Fmarker_buffer, Smarker_buffer, 1, 1, 0, |
431 |
"Return the buffer that MARKER points into, or nil if none.\n\ |
doc: /* Return the buffer that MARKER points into, or nil if none. |
432 |
Returns nil if MARKER points into a dead buffer.") |
Returns nil if MARKER points into a dead buffer. */) |
433 |
(marker) |
(marker) |
434 |
register Lisp_Object marker; |
register Lisp_Object marker; |
435 |
{ |
{ |
436 |
register Lisp_Object buf; |
register Lisp_Object buf; |
446 |
} |
} |
447 |
|
|
448 |
DEFUN ("marker-position", Fmarker_position, Smarker_position, 1, 1, 0, |
DEFUN ("marker-position", Fmarker_position, Smarker_position, 1, 1, 0, |
449 |
"Return the position MARKER points at, as a character number.") |
doc: /* Return the position MARKER points at, as a character number. */) |
450 |
(marker) |
(marker) |
451 |
Lisp_Object marker; |
Lisp_Object marker; |
452 |
{ |
{ |
453 |
CHECK_MARKER (marker, 0); |
CHECK_MARKER (marker, 0); |
458 |
} |
} |
459 |
|
|
460 |
DEFUN ("set-marker", Fset_marker, Sset_marker, 2, 3, 0, |
DEFUN ("set-marker", Fset_marker, Sset_marker, 2, 3, 0, |
461 |
"Position MARKER before character number POSITION in BUFFER.\n\ |
doc: /* Position MARKER before character number POSITION in BUFFER. |
462 |
BUFFER defaults to the current buffer.\n\ |
BUFFER defaults to the current buffer. |
463 |
If POSITION is nil, makes marker point nowhere.\n\ |
If POSITION is nil, makes marker point nowhere. |
464 |
Then it no longer slows down editing in any buffer.\n\ |
Then it no longer slows down editing in any buffer. |
465 |
Returns MARKER.") |
Returns MARKER. */) |
466 |
(marker, position, buffer) |
(marker, position, buffer) |
467 |
Lisp_Object marker, position, buffer; |
Lisp_Object marker, position, buffer; |
468 |
{ |
{ |
469 |
register int charno, bytepos; |
register int charno, bytepos; |
816 |
} |
} |
817 |
|
|
818 |
DEFUN ("copy-marker", Fcopy_marker, Scopy_marker, 1, 2, 0, |
DEFUN ("copy-marker", Fcopy_marker, Scopy_marker, 1, 2, 0, |
819 |
"Return a new marker pointing at the same place as MARKER.\n\ |
doc: /* Return a new marker pointing at the same place as MARKER. |
820 |
If argument is a number, makes a new marker pointing\n\ |
If argument is a number, makes a new marker pointing |
821 |
at that position in the current buffer.\n\ |
at that position in the current buffer. |
822 |
The optional argument TYPE specifies the insertion type of the new marker;\n\ |
The optional argument TYPE specifies the insertion type of the new marker; |
823 |
see `marker-insertion-type'.") |
see `marker-insertion-type'. */) |
824 |
(marker, type) |
(marker, type) |
825 |
register Lisp_Object marker, type; |
register Lisp_Object marker, type; |
826 |
{ |
{ |
827 |
register Lisp_Object new; |
register Lisp_Object new; |
838 |
|
|
839 |
DEFUN ("marker-insertion-type", Fmarker_insertion_type, |
DEFUN ("marker-insertion-type", Fmarker_insertion_type, |
840 |
Smarker_insertion_type, 1, 1, 0, |
Smarker_insertion_type, 1, 1, 0, |
841 |
"Return insertion type of MARKER: t if it stays after inserted text.\n\ |
doc: /* Return insertion type of MARKER: t if it stays after inserted text. |
842 |
nil means the marker stays before text inserted there.") |
nil means the marker stays before text inserted there. */) |
843 |
(marker) |
(marker) |
844 |
register Lisp_Object marker; |
register Lisp_Object marker; |
845 |
{ |
{ |
846 |
CHECK_MARKER (marker, 0); |
CHECK_MARKER (marker, 0); |
849 |
|
|
850 |
DEFUN ("set-marker-insertion-type", Fset_marker_insertion_type, |
DEFUN ("set-marker-insertion-type", Fset_marker_insertion_type, |
851 |
Sset_marker_insertion_type, 2, 2, 0, |
Sset_marker_insertion_type, 2, 2, 0, |
852 |
"Set the insertion-type of MARKER to TYPE.\n\ |
doc: /* Set the insertion-type of MARKER to TYPE. |
853 |
If TYPE is t, it means the marker advances when you insert text at it.\n\ |
If TYPE is t, it means the marker advances when you insert text at it. |
854 |
If TYPE is nil, it means the marker stays behind when you insert text at it.") |
If TYPE is nil, it means the marker stays behind when you insert text at it. */) |
855 |
(marker, type) |
(marker, type) |
856 |
Lisp_Object marker, type; |
Lisp_Object marker, type; |
857 |
{ |
{ |
858 |
CHECK_MARKER (marker, 0); |
CHECK_MARKER (marker, 0); |
862 |
} |
} |
863 |
|
|
864 |
DEFUN ("buffer-has-markers-at", Fbuffer_has_markers_at, Sbuffer_has_markers_at, |
DEFUN ("buffer-has-markers-at", Fbuffer_has_markers_at, Sbuffer_has_markers_at, |
865 |
1, 1, 0, |
1, 1, 0, |
866 |
"Return t if there are markers pointing at POSITION in the current buffer.") |
doc: /* Return t if there are markers pointing at POSITION in the current buffer. */) |
867 |
(position) |
(position) |
868 |
Lisp_Object position; |
Lisp_Object position; |
869 |
{ |
{ |
870 |
register Lisp_Object tail; |
register Lisp_Object tail; |
871 |
register int charno; |
register int charno; |
898 |
defsubr (&Sbuffer_has_markers_at); |
defsubr (&Sbuffer_has_markers_at); |
899 |
|
|
900 |
DEFVAR_BOOL ("byte-debug-flag", &byte_debug_flag, |
DEFVAR_BOOL ("byte-debug-flag", &byte_debug_flag, |
901 |
"Non-nil enables debugging checks in byte/char position conversions."); |
doc: /* Non-nil enables debugging checks in byte/char position conversions. */); |
902 |
byte_debug_flag = 0; |
byte_debug_flag = 0; |
|
|
|
903 |
} |
} |