diff options
| -rw-r--r-- | lispref/ChangeLog | 3 | ||||
| -rw-r--r-- | lispref/display.texi | 65 |
2 files changed, 35 insertions, 33 deletions
diff --git a/lispref/ChangeLog b/lispref/ChangeLog index 89f3f749696..03fc486ae5a 100644 --- a/lispref/ChangeLog +++ b/lispref/ChangeLog | |||
| @@ -1,5 +1,8 @@ | |||
| 1 | 2006-05-30 Richard Stallman <rms@gnu.org> | 1 | 2006-05-30 Richard Stallman <rms@gnu.org> |
| 2 | 2 | ||
| 3 | * display.texi (Line Height): Fix errors in description of | ||
| 4 | default line height and line-height properyty. | ||
| 5 | |||
| 3 | * nonascii.texi (Default Coding Systems): Further clarification. | 6 | * nonascii.texi (Default Coding Systems): Further clarification. |
| 4 | 7 | ||
| 5 | 2006-05-29 Luc Teirlinck <teirllm@auburn.edu> | 8 | 2006-05-29 Luc Teirlinck <teirllm@auburn.edu> |
diff --git a/lispref/display.texi b/lispref/display.texi index 3a8b8c1b7c0..1a34b0ff785 100644 --- a/lispref/display.texi +++ b/lispref/display.texi | |||
| @@ -1582,41 +1582,41 @@ equal to or less than the display width of @var{ellipsis}. If | |||
| 1582 | @cindex line height | 1582 | @cindex line height |
| 1583 | 1583 | ||
| 1584 | The total height of each display line consists of the height of the | 1584 | The total height of each display line consists of the height of the |
| 1585 | contents of the line, and additional vertical line spacing below the | 1585 | contents of the line, plus optional additional vertical line spacing |
| 1586 | display row. | 1586 | above or below the display line. |
| 1587 | 1587 | ||
| 1588 | The height of the line contents is normally determined from the | 1588 | The height of the line contents is the maximum height of any |
| 1589 | maximum height of any character or image on that display line, | 1589 | character or image on that display line, including the final newline |
| 1590 | including the final newline if there is one. (A line that is | 1590 | if there is one. (A display line that is continued doesn't include a |
| 1591 | continued doesn't include a final newline.) In the most common case, | 1591 | final newline.) That is the default line height, if you do nothing to |
| 1592 | the line height equals the height of the default frame font. | 1592 | specify a greater height. (In the most common case, this equals the |
| 1593 | height of the default frame font.) | ||
| 1593 | 1594 | ||
| 1594 | There are several ways to explicitly control or change the line | 1595 | There are several ways to explicitly specify a larger line height, |
| 1595 | height, either by specifying an absolute height for the display line, | 1596 | either by specifying an absolute height for the display line, or by |
| 1596 | or by adding additional vertical space below one or all lines. | 1597 | specifying vertical space. However, no matter what you specify, the |
| 1598 | actual line height can never be less than the default. | ||
| 1597 | 1599 | ||
| 1598 | @kindex line-height @r{(text property)} | 1600 | @kindex line-height @r{(text property)} |
| 1599 | A newline can have a @code{line-height} text or overlay property | 1601 | A newline can have a @code{line-height} text or overlay property |
| 1600 | that controls the total height of the display line ending in that | 1602 | that controls the total height of the display line ending in that |
| 1601 | newline. | 1603 | newline. |
| 1602 | 1604 | ||
| 1603 | If the property value is a list @code{(@var{height} @var{total})}, | 1605 | If the property value is @code{t}, the newline character has no |
| 1604 | then @var{height} is used as the actual property value for the | 1606 | effect on the displayed height of the line---the visible contents |
| 1605 | @code{line-height}, and @var{total} specifies the total displayed | 1607 | alone determine the height. This is useful for tiling small images |
| 1606 | height of the line, so the line spacing added below the line equals | 1608 | (or image slices) without adding blank areas between the images. |
| 1607 | the @var{total} height minus the actual line height. In this case, | ||
| 1608 | the other ways to specify the line spacing are ignored. | ||
| 1609 | 1609 | ||
| 1610 | If the property value is @code{t}, the displayed height of the | 1610 | If the property value is a list of the form @code{(@var{height} |
| 1611 | line is exactly what its contents demand; no line-spacing is added. | 1611 | @var{total})}, that adds extra space @emph{below} the display line. |
| 1612 | This case is useful for tiling small images or image slices without | 1612 | First Emacs uses @var{height} as a height spec to control extra space |
| 1613 | adding blank areas between the images. | 1613 | @emph{above} the line; then it adds enough space @emph{below} the line |
| 1614 | to bring the total line height up to @var{total}. In this case, the | ||
| 1615 | other ways to specify the line spacing are ignored. | ||
| 1614 | 1616 | ||
| 1615 | If the property value is not @code{t}, it is a height spec. A height | 1617 | Any other kind of property value is a height spec, which translates |
| 1616 | spec stands for a numeric height value; this height spec specifies the | 1618 | into a number---the specified line height. There are several ways to |
| 1617 | actual line height, @var{line-height}. There are several ways to | 1619 | write a height spec; here's how each of them translates into a number: |
| 1618 | write a height spec; here's how each of them translates into a numeric | ||
| 1619 | height: | ||
| 1620 | 1620 | ||
| 1621 | @table @code | 1621 | @table @code |
| 1622 | @item @var{integer} | 1622 | @item @var{integer} |
| @@ -1634,11 +1634,10 @@ If the height spec is a cons of the format shown, the numeric height | |||
| 1634 | is @var{ratio} times the height of the contents of the line. | 1634 | is @var{ratio} times the height of the contents of the line. |
| 1635 | @end table | 1635 | @end table |
| 1636 | 1636 | ||
| 1637 | Thus, any valid non-@code{t} property value specifies a height in pixels, | 1637 | Thus, any valid height spec determines the height in pixels, one way |
| 1638 | @var{line-height}, one way or another. If the line contents' height | 1638 | or another. If the line contents' height is less than that, Emacs |
| 1639 | is less than @var{line-height}, Emacs adds extra vertical space above | 1639 | adds extra vertical space above the line to achieve the specified |
| 1640 | the line to achieve the total height @var{line-height}. Otherwise, | 1640 | total height. |
| 1641 | @var{line-height} has no effect. | ||
| 1642 | 1641 | ||
| 1643 | If you don't specify the @code{line-height} property, the line's | 1642 | If you don't specify the @code{line-height} property, the line's |
| 1644 | height consists of the contents' height plus the line spacing. | 1643 | height consists of the contents' height plus the line spacing. |
| @@ -1663,9 +1662,9 @@ height. This overrides line spacings specified for the frame. | |||
| 1663 | 1662 | ||
| 1664 | @kindex line-spacing @r{(text property)} | 1663 | @kindex line-spacing @r{(text property)} |
| 1665 | Finally, a newline can have a @code{line-spacing} text or overlay | 1664 | Finally, a newline can have a @code{line-spacing} text or overlay |
| 1666 | property that controls the height of the display line ending with that | 1665 | property that overrides the default frame line spacing and the buffer |
| 1667 | newline. The property value overrides the default frame line spacing | 1666 | local @code{line-spacing} variable, for the display line ending in |
| 1668 | and the buffer local @code{line-spacing} variable. | 1667 | that newline. |
| 1669 | 1668 | ||
| 1670 | One way or another, these mechanisms specify a Lisp value for the | 1669 | One way or another, these mechanisms specify a Lisp value for the |
| 1671 | spacing of each line. The value is a height spec, and it translates | 1670 | spacing of each line. The value is a height spec, and it translates |