Mercurial > emacs
comparison lispref/text.texi @ 57222:f0af4b0029b5
(Special Properties): Cleanups in `cursor'.
Rewrites in `line-height' and `line-spacing'; exchange them.
author | Richard M. Stallman <rms@gnu.org> |
---|---|
date | Sat, 25 Sep 2004 07:19:34 +0000 |
parents | ba03d6f29083 |
children | 1aa63962c3cf 0b158db81c28 |
comparison
equal
deleted
inserted
replaced
57221:18bdf278f148 | 57222:f0af4b0029b5 |
---|---|
2975 @xref{Fields}. | 2975 @xref{Fields}. |
2976 | 2976 |
2977 @item cursor | 2977 @item cursor |
2978 @kindex cursor @r{(text property)} | 2978 @kindex cursor @r{(text property)} |
2979 Normally, the cursor is displayed at the end of any overlay and text | 2979 Normally, the cursor is displayed at the end of any overlay and text |
2980 property string that may be present at the current window position. | 2980 property strings present at the current window position. You can |
2981 The cursor may be placed on any character of such strings by giving | 2981 place the cursor on any desired character of these strings by giving |
2982 that character a non-@code{nil} @var{cursor} text property. | 2982 that character a non-@code{nil} @var{cursor} text property. |
2983 | 2983 |
2984 @item pointer | 2984 @item pointer |
2985 @kindex pointer @r{(text property)} | 2985 @kindex pointer @r{(text property)} |
2986 This specifies a specific pointer shape when the mouse pointer is over | 2986 This specifies a specific pointer shape when the mouse pointer is over |
2987 this text or image. See the variable @var{void-area-text-pointer} | 2987 this text or image. See the variable @var{void-area-text-pointer} |
2988 for possible pointer shapes. | 2988 for possible pointer shapes. |
2989 | 2989 |
2990 @item line-spacing | |
2991 @kindex line-spacing @r{(text property)} | |
2992 A newline can have a @code{line-spacing} text or overlay property | |
2993 that controls the height of the corresponding display line. | |
2994 @c ??? Which display line is "corresponding"? | |
2995 The @code{line-spacing} property overrides the default frame line | |
2996 spacing and the buffer local @code{line-spacing} variable. We will | |
2997 call the property value @var{line-spacing}. | |
2998 | |
2999 If @var{line-spacing} is a positive integer, the value specifies | |
3000 additional vertical space, below the display line, in pixels. | |
3001 | |
3002 If @var{line-spacing} is a floating point number or cons, the | |
3003 additional vertical space is the product of @var{line-spacing} and the | |
3004 default frame line height. | |
3005 | |
3006 If the @var{line-spacing} value is a cons @code{(total . | |
3007 @var{spacing})} where @var{spacing} is any of the forms described | |
3008 above, the value of @var{spacing} specifies the total displayed height | |
3009 of the line, regardless of the height of the characters in it. This | |
3010 is equivalent to using the @code{line-height} property. | |
3011 | |
2990 @item line-height | 3012 @item line-height |
2991 @kindex line-height @r{(text property)} | 3013 @kindex line-height @r{(text property)} |
2992 A newline may have @code{line-height} text or overlay properties that | 3014 A newline can have a @code{line-height} text or overlay property that |
2993 controls the height of the corresponding display row. | 3015 controls the total height of the corresponding display line. |
2994 | 3016 @c ??? Which display line is "corresponding"? |
2995 If the @code{line-height} property value is @samp{0}, the newline does | 3017 We will call the property value @var{line-height}. |
2996 not contribute to the height of the display row; instead the height of | 3018 |
2997 the newline glyph is reduced. Also, a @code{line-spacing} property on | 3019 If @var{line-height} is 0, the newline does not contribute to the |
3020 height of the display row; instead the height of the newline glyph is | |
3021 reduced. | |
3022 @c ??? That is not clear. Reduced how much? | |
3023 In that case, any @code{line-spacing} property on | |
2998 this newline is ignored. This can be used to tile small images or | 3024 this newline is ignored. This can be used to tile small images or |
2999 image slices without adding blank areas between the images. | 3025 image slices without adding blank areas between the images. |
3000 | 3026 @c ??? Precisely which of these features does ``this'' mean? |
3001 If the @code{line-height} property value is a positive integer, the | 3027 |
3002 value specifies the minimum line height in pixels. If necessary, the | 3028 If @var{line-height} is a positive integer, the value specifies the |
3003 line height it increased by increasing the line's ascent. | 3029 minimum line height in pixels. The line's ascent height is |
3004 | 3030 increased as necessary to achieve the specified height. |
3005 If the @code{line-height} property value is a floating point number, | 3031 |
3006 the minimum line height is calculated by multiplying the default frame | 3032 If @var{line-height} is a floating point number, the minimum line |
3007 line height by the given value. | 3033 height is the product of @var{line-height} and the default frame line |
3008 | 3034 height. |
3009 If the @code{line-height} property value is a cons @code{(@var{ratio} | 3035 |
3010 . @var{face})}, the minimum line height is calculated as @var{ratio} * | 3036 If @var{line-height} is a cons @code{(@var{ratio} . @var{face})}, the |
3011 height of named face @var{face}. The @var{ ratio} is an integer or a | 3037 minimum line height is calculated as @var{ratio} times the height of |
3012 floating point number. If @var{face} is @code{t}, it specifies the | 3038 face @var{face}. The @var{ratio} is an integer or a floating point |
3013 current face. | 3039 number. If @var{face} is @code{t}, it refers to the current face. |
3014 | |
3015 @item line-spacing | |
3016 @kindex line-spacing @r{(text property)} | |
3017 A newline may also have a @code{line-spacing} text or overlay | |
3018 properties that controls the height of the corresponding display row. | |
3019 | |
3020 If the @code{line-spacing} property value is an positive integer, the | |
3021 value is used as additional pixels to insert after the display line; | |
3022 this overrides the default frame line-spacing and any buffer local | |
3023 value of the @var{line-spacing} variable. | |
3024 | |
3025 If the @code{line-spacing} property is a floating point number or | |
3026 cons, the line spacing is calculated as specified above for the | |
3027 @code{line-height} property. | |
3028 | |
3029 If the @code{line-spacing} value is a cons @code{(total . @var{spacing})} | |
3030 where @var{spacing} is any of the forms described above, the value of | |
3031 @var{spacing} is used as the total height of the line, i.e. a varying | |
3032 number of pixels are inserted after each line to make each line | |
3033 exactly that many pixels high. | |
3034 | |
3035 Using the @code{line-spacing} property overrides the buffer local | |
3036 @var{line-spacing} variable. That value of that variable may be an | |
3037 integer that specifies a number of pixels, or a floating point | |
3038 number which gives the spacing relative to the default frame line height. | |
3039 | 3040 |
3040 @item modification-hooks | 3041 @item modification-hooks |
3041 @cindex change hooks for a character | 3042 @cindex change hooks for a character |
3042 @cindex hooks for changing a character | 3043 @cindex hooks for changing a character |
3043 @kindex modification-hooks @r{(text property)} | 3044 @kindex modification-hooks @r{(text property)} |