Show
Ignore:
Timestamp:
08/18/06 08:35:31 (2 years ago)
Author:
miyoshi
Message:

Sync up with Emacs CVS HEAD.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/lispref/text.texi

    r4140 r4148  
    104104point is at the end of the buffer, then @code{following-char} returns 0. 
    105105 
    106 Remember that point is always between characters, and the terminal 
    107 cursor normally appears over the character following point.  Therefore, 
    108 the character returned by @code{following-char} is the character the 
     106Remember that point is always between characters, and the cursor 
     107normally appears over the character following point.  Therefore, the 
     108character returned by @code{following-char} is the character the 
    109109cursor is over. 
    110110 
     
    527527@end deffn 
    528528 
    529 @deffn Command split-line 
    530 This command splits the current line, moving the portion of the line 
    531 after point down vertically so that it is on the next line directly 
    532 below where it was before.  Whitespace is inserted as needed at the 
    533 beginning of the lower line, using the @code{indent-to} function. 
    534 @code{split-line} returns the position of point. 
    535  
    536 Programs hardly ever use this function. 
    537 @end deffn 
    538  
    539529@defvar overwrite-mode 
    540530This variable controls whether overwrite mode is in effect.  The value 
     
    979969@subsection Functions for Yanking 
    980970 
    981   @dfn{Yanking} means reinserting an entry of previously killed text 
    982 from the kill ring.  The text properties are copied too. 
     971  This section describes higher-level commands for yanking, which are 
     972intended primarily for the user but useful also in Lisp programs. 
     973Both @code{yank} and @code{yank-pop} honor the 
     974@code{yank-excluded-properties} variable and @code{yank-handler} text 
     975property (@pxref{Yanking}). 
    983976 
    984977@deffn Command yank &optional arg 
     
    12141207don't have one are usually special-purpose buffers for which Emacs 
    12151208assumes that undoing is not useful.  In particular, any buffer whose 
    1216 name begins with a space has its undo recording off by default, 
     1209name begins with a space has its undo recording off by default; 
    12171210see @ref{Buffer Names}.)  All the primitives that modify the 
    12181211text in the buffer automatically add elements to the front of the undo 
     
    13191312This is the basic function for undoing elements of an undo list. 
    13201313It undoes the first @var{count} elements of @var{list}, returning 
    1321 the rest of @var{list}.  You could write this function in Lisp, 
    1322 but it is convenient to have it in C. 
     1314the rest of @var{list}. 
    13231315 
    13241316@code{primitive-undo} adds elements to the buffer's undo list when it 
     
    13731365strings of deleted text.)  Three variables control the range of acceptable 
    13741366sizes: @code{undo-limit}, @code{undo-strong-limit} and 
    1375 @code{undo-outer-limit}. 
     1367@code{undo-outer-limit}.  In these variables, size is counted as the 
     1368number of bytes occupied, which includes both saved text and other 
     1369data. 
    13761370 
    13771371@defopt undo-limit 
     
    13911385exceeds this limit, Emacs discards the info and displays a warning. 
    13921386This is a last ditch limit to prevent memory overflow. 
     1387@end defopt 
     1388 
     1389@defopt undo-ask-before-discard 
     1390If this variable is non-@code{nil}, when the undo info exceeds 
     1391@code{undo-outer-limit}, Emacs asks in the echo area whether to 
     1392discard the info.  The default value is @code{nil}, which means to 
     1393discard it automatically. 
     1394 
     1395This option is mainly intended for debugging.  Garbage collection is 
     1396inhibited while the question is asked, which means that Emacs might 
     1397leak memory if the user waits too long before answering the question. 
    13931398@end defopt 
    13941399 
     
    14821487filling when @var{justify} is non-@code{nil}. 
    14831488 
    1484 In an interactive call, any prefix argument requests justification. 
    1485  
    14861489If @var{nosqueeze} is non-@code{nil}, that means to leave whitespace 
    14871490other than line breaks untouched.  If @var{squeeze-after} is 
     
    15231526This function returns the proper justification style to use for filling 
    15241527the text around point. 
     1528 
     1529This returns the value of the @code{justification} text property at 
     1530point, or the variable @var{default-justification} if there is no such 
     1531text property.  However, it returns @code{nil} rather than @code{none} 
     1532to mean ``don't justify''. 
    15251533@end defun 
    15261534 
     
    15701578 
    15711579@defopt fill-prefix 
    1572 This buffer-local variable specifies a string of text that appears at 
    1573 the beginning 
    1574 of normal text lines and should be disregarded when filling them.  Any 
    1575 line that fails to start with the fill prefix is considered the start of 
    1576 a paragraph; so is any line that starts with the fill prefix followed by 
    1577 additional whitespace.  Lines that start with the fill prefix but no 
    1578 additional whitespace are ordinary text lines that can be filled 
    1579 together.  The resulting filled lines also start with the fill prefix. 
     1580This buffer-local variable, if non-@code{nil}, specifies a string of 
     1581text that appears at the beginning of normal text lines and should be 
     1582disregarded when filling them.  Any line that fails to start with the 
     1583fill prefix is considered the start of a paragraph; so is any line 
     1584that starts with the fill prefix followed by additional whitespace. 
     1585Lines that start with the fill prefix but no additional whitespace are 
     1586ordinary text lines that can be filled together.  The resulting filled 
     1587lines also start with the fill prefix. 
    15801588 
    15811589The fill prefix follows the left margin whitespace, if any. 
     
    16621670@defvar fill-nobreak-predicate 
    16631671This variable gives major modes a way to specify not to break a line 
    1664 at certain places.  Its value should be a list of functions, but a 
    1665 single function is also supported for compatibility.  Whenever filling 
    1666 considers breaking the line at a certain place in the buffer, it calls 
    1667 each of these functions with no arguments and with point located at 
    1668 that place.  If any of the functions returns non-@code{nil}, then the 
    1669 line won't be broken there. 
     1672at certain places.  Its value should be a list of functions.  Whenever 
     1673filling considers breaking the line at a certain place in the buffer, 
     1674it calls each of these functions with no arguments and with point 
     1675located at that place.  If any of the functions returns 
     1676non-@code{nil}, then the line won't be broken there. 
    16701677@end defvar 
    16711678 
     
    17341741characters it matches are that line's candidate for the fill prefix. 
    17351742 
    1736 @w{@code{"[ \t]*\\([-|#;>*]+[ \t]*\\|(?[0-9]+[.)][ \t]*\\)*"}} is the 
     1743@w{@code{"[ \t]*\\([-!|#%;>*·•‣⁃◊]+[ \t]*\\|(?[0-9]+[.)][ \t]*\\)*"}} is the 
    17371744default value.  This matches a number enclosed in parentheses or 
    17381745followed by a period, or certain punctuation characters, or any 
     
    18991906      (narrow-to-region beg end) 
    19001907      (goto-char (point-min)) 
    1901       (sort-subr reverse 'forward-line 'end-of-line)))) 
     1908      (let ((inhibit-field-text-motion t)) 
     1909        (sort-subr reverse 'forward-line 'end-of-line))))) 
    19021910@end group 
    19031911@end example 
     
    20552063@var{end}, are included in the region sorted. 
    20562064 
    2057 Note that @code{sort-columns} uses the @code{sort} utility program, 
    2058 and so cannot work properly on text containing tab characters.  Use 
    2059 @kbd{M-x untabify} to convert tabs to spaces before sorting. 
     2065Note that @code{sort-columns} rejects text that contains tabs, because 
     2066tabs could be split across the specified columns.  Use @kbd{M-x 
     2067untabify} to convert tabs to spaces before sorting. 
     2068 
     2069When possible, this command actually works by calling the @code{sort} 
     2070utility program. 
    20602071@end deffn 
    20612072 
     
    23922403Display}).  Note that the @key{TAB} character as input uses this tab 
    23932404stop feature only in a few major modes, such as Text mode. 
     2405@xref{Tab Stops,,, emacs, The GNU Emacs Manual}. 
    23942406 
    23952407@deffn Command tab-to-tab-stop 
     
    30803092@kindex keymap @r{(text property)} 
    30813093The @code{keymap} property specifies an additional keymap for 
    3082 commands.  The property's value for the character before point applies 
    3083 if it is non-@code{nil} and rear-sticky, and the property's value for 
    3084 the character after point applies if it is non-@code{nil} and 
     3094commands.  When this keymap applies, it is used for key lookup before 
     3095the minor mode keymaps and before the buffer's local map. 
     3096@xref{Active Keymaps}.  If the property value is a symbol, the 
     3097symbol's function definition is used as the keymap. 
     3098 
     3099The property's value for the character before point applies if it is 
     3100non-@code{nil} and rear-sticky, and the property's value for the 
     3101character after point applies if it is non-@code{nil} and 
    30853102front-sticky.  (For mouse clicks, the position of the click is used 
    3086 instead of the position of point.)  If the property value is a symbol, 
    3087 the symbol's function definition is used as the keymap. 
    3088  
    3089 When this keymap applies, it is used for key lookup before the minor 
    3090 mode keymaps and before the buffer's local map.  @xref{Active 
    3091 Keymaps}. 
     3103instead of the position of point.) 
    30923104 
    30933105@item local-map 
     
    30953107This property works like @code{keymap} except that it specifies a 
    30963108keymap to use @emph{instead of} the buffer's local map.  For most 
    3097 purposes (perhaps all purposes), the @code{keymap} is superior. 
     3109purposes (perhaps all purposes), it is better to use the @code{keymap} 
     3110property. 
    30983111 
    30993112@item syntax-table 
     
    34803493@cindex clickable text 
    34813494 
    3482   There are two parts of setting up @dfn{clickable text} in a buffer: 
    3483 (1) to indicate clickability when the mouse moves over the text, and (2) 
    3484 to make a mouse button do something when you click on that text. 
     3495  @dfn{Clickable text} is text that can be clicked, with either the 
     3496the mouse or via keyboard commands, to produce some result.  Many 
     3497major modes use clickable text to implement features such as 
     3498hyper-links.  The @code{button} package provides an easy way to insert 
     3499and manipulate clickable text.  @xref{Buttons}. 
     3500 
     3501  In this section, we will explain how to manually set up clickable 
     3502text in a buffer using text properties.  This involves two things: (1) 
     3503indicating clickability when the mouse moves over the text, and (2) 
     3504making @kbd{RET} or a mouse click on that text do something. 
    34853505 
    34863506  Indicating clickability usually involves highlighting the text, and