1 |
@c -*-texinfo-*- |
@c -*-texinfo-*- |
2 |
@c This is part of the GNU Emacs Lisp Reference Manual. |
@c This is part of the GNU Emacs Lisp Reference Manual. |
3 |
@c Copyright (C) 1990, 1991, 1992, 1993, 1994, 1995, 1998, 1999, 2000, 2001 |
@c Copyright (C) 1990, 1991, 1992, 1993, 1994, 1995, 1998, 1999, 2000, 2001 |
4 |
@c Free Software Foundation, Inc. |
@c Free Software Foundation, Inc. |
5 |
@c See the file elisp.texi for copying conditions. |
@c See the file elisp.texi for copying conditions. |
6 |
@setfilename ../info/text |
@setfilename ../info/text |
7 |
@node Text, Non-ASCII Characters, Markers, Top |
@node Text, Non-ASCII Characters, Markers, Top |
340 |
the insertion point, the inserted text falls inside that overlay. |
the insertion point, the inserted text falls inside that overlay. |
341 |
@end defun |
@end defun |
342 |
|
|
343 |
@defun insert-char character &optional count inherit |
@defun insert-char character count &optional inherit |
344 |
This function inserts @var{count} instances of @var{character} into the |
This function inserts @var{count} instances of @var{character} into the |
345 |
current buffer before point. The argument @var{count} should be a |
current buffer before point. The argument @var{count} should be a |
346 |
number (@code{nil} means 1), and @var{character} must be a character. |
number (@code{nil} means 1), and @var{character} must be a character. |
429 |
loop handles this function specially. |
loop handles this function specially. |
430 |
@end deffn |
@end deffn |
431 |
|
|
432 |
@deffn Command newline &optional number-of-newlines |
@deffn Command newline &optional number-of-newlines |
433 |
This command inserts newlines into the current buffer before point. |
This command inserts newlines into the current buffer before point. |
434 |
If @var{number-of-newlines} is supplied, that many newline characters |
If @var{number-of-newlines} is supplied, that many newline characters |
435 |
are inserted. |
are inserted. |
614 |
@end example |
@end example |
615 |
@end deffn |
@end deffn |
616 |
|
|
617 |
@deffn Command delete-indentation &optional join-following-p |
@deffn Command delete-indentation &optional join-following-p |
618 |
This function joins the line point is on to the previous line, deleting |
This function joins the line point is on to the previous line, deleting |
619 |
any whitespace at the join and in some cases replacing it with one |
any whitespace at the join and in some cases replacing it with one |
620 |
space. If @var{join-following-p} is non-@code{nil}, |
space. If @var{join-following-p} is non-@code{nil}, |
945 |
|
|
946 |
The variable @code{kill-ring} holds the kill ring contents, in the |
The variable @code{kill-ring} holds the kill ring contents, in the |
947 |
form of a list of strings. The most recent kill is always at the front |
form of a list of strings. The most recent kill is always at the front |
948 |
of the list. |
of the list. |
949 |
|
|
950 |
The @code{kill-ring-yank-pointer} variable points to a link in the |
The @code{kill-ring-yank-pointer} variable points to a link in the |
951 |
kill ring list, whose @sc{car} is the text to yank next. We say it |
kill ring list, whose @sc{car} is the text to yank next. We say it |
970 |
|
|
971 |
Here is a diagram that shows the variable @code{kill-ring-yank-pointer} |
Here is a diagram that shows the variable @code{kill-ring-yank-pointer} |
972 |
pointing to the second entry in the kill ring @code{("some text" "a |
pointing to the second entry in the kill ring @code{("some text" "a |
973 |
different piece of text" "yet older text")}. |
different piece of text" "yet older text")}. |
974 |
|
|
975 |
@example |
@example |
976 |
@group |
@group |
980 |
| --- --- --- --- --- --- |
| --- --- --- --- --- --- |
981 |
--> | | |------> | | |--> | | |--> nil |
--> | | |------> | | |--> | | |--> nil |
982 |
--- --- --- --- --- --- |
--- --- --- --- --- --- |
983 |
| | | |
| | | |
984 |
| | | |
| | | |
985 |
| | -->"yet older text" |
| | -->"yet older text" |
986 |
| | |
| | |
987 |
| --> "a different piece of text" |
| --> "a different piece of text" |
988 |
| |
| |
989 |
--> "some text" |
--> "some text" |
990 |
@end group |
@end group |
1040 |
|
|
1041 |
@item (@var{beg} . @var{end}) |
@item (@var{beg} . @var{end}) |
1042 |
This kind of element indicates how to delete text that was inserted. |
This kind of element indicates how to delete text that was inserted. |
1043 |
Upon insertion, the text occupied the range @var{beg}--@var{end} in the |
Upon insertion, the text occupied the range @var{beg}--@var{end} in the |
1044 |
buffer. |
buffer. |
1045 |
|
|
1046 |
@item (@var{text} . @var{position}) |
@item (@var{text} . @var{position}) |
2123 |
These commands, primarily for interactive use, act based on the |
These commands, primarily for interactive use, act based on the |
2124 |
indentation in the text. |
indentation in the text. |
2125 |
|
|
2126 |
@deffn Command back-to-indentation |
@deffn Command back-to-indentation |
2127 |
@comment !!SourceFile simple.el |
@comment !!SourceFile simple.el |
2128 |
This command moves point to the first non-whitespace character in the |
This command moves point to the first non-whitespace character in the |
2129 |
current line (which is the line in which point is located). It returns |
current line (which is the line in which point is located). It returns |
2361 |
properties specified by name. |
properties specified by name. |
2362 |
|
|
2363 |
Since text properties are considered part of the contents of the |
Since text properties are considered part of the contents of the |
2364 |
buffer (or string), and can affect how a buffer looks on the screen, any |
buffer (or string), and can affect how a buffer looks on the screen, |
2365 |
change in buffer text properties marks the buffer as modified. Buffer |
any change in buffer text properties marks the buffer as modified. |
2366 |
text property changes are undoable also (@pxref{Undo}). |
Buffer text property changes are undoable also (@pxref{Undo}). |
2367 |
|
Positions in a string start from 0, whereas positions in a buffer |
2368 |
|
start from 1. |
2369 |
|
|
2370 |
@defun put-text-property start end prop value &optional object |
@defun put-text-property start end prop value &optional object |
2371 |
This function sets the @var{prop} property to @var{value} for the text |
This function sets the @var{prop} property to @var{value} for the text |
2509 |
@var{pos}. |
@var{pos}. |
2510 |
|
|
2511 |
If @var{limit} is non-@code{nil}, then the scan ends at position |
If @var{limit} is non-@code{nil}, then the scan ends at position |
2512 |
@var{limit}. If there is no property change before that point, |
@var{limit}. If there is no property change before that point, |
2513 |
@code{next-property-change} returns @var{limit}. |
@code{next-property-change} returns @var{limit}. |
2514 |
|
|
2515 |
The value is @code{nil} if the properties remain unchanged all the way |
The value is @code{nil} if the properties remain unchanged all the way |
2540 |
@var{pos}. |
@var{pos}. |
2541 |
|
|
2542 |
If @var{limit} is non-@code{nil}, then the scan ends at position |
If @var{limit} is non-@code{nil}, then the scan ends at position |
2543 |
@var{limit}. If there is no property change before that point, |
@var{limit}. If there is no property change before that point, |
2544 |
@code{next-single-property-change} returns @var{limit}. |
@code{next-single-property-change} returns @var{limit}. |
2545 |
|
|
2546 |
The value is @code{nil} if the property remains unchanged all the way to |
The value is @code{nil} if the property remains unchanged all the way to |
2975 |
directions by default. |
directions by default. |
2976 |
|
|
2977 |
The text properties @code{front-sticky} and @code{rear-nonsticky}, when |
The text properties @code{front-sticky} and @code{rear-nonsticky}, when |
2978 |
used, take precedence over the default @var{nonstickiness} specifed in |
used, take precedence over the default @var{nonstickiness} specified in |
2979 |
@code{text-property-default-nonsticky}. |
@code{text-property-default-nonsticky}. |
2980 |
@end defvar |
@end defvar |
2981 |
|
|
3052 |
|
|
3053 |
We invite users to write Lisp programs to store and retrieve text |
We invite users to write Lisp programs to store and retrieve text |
3054 |
properties in files, using these hooks, and thus to experiment with |
properties in files, using these hooks, and thus to experiment with |
3055 |
various data formats and find good ones. Eventually we hope users |
various data formats and find good ones. Eventually we hope users |
3056 |
will produce good, general extensions we can install in Emacs. |
will produce good, general extensions we can install in Emacs. |
3057 |
|
|
3058 |
We suggest not trying to handle arbitrary Lisp objects as text property |
We suggest not trying to handle arbitrary Lisp objects as text property |