From c1cbc25ad68c12ce7894efc76e9657c2863f4784 Mon Sep 17 00:00:00 2001 From: "Kim F. Storm" Date: Fri, 19 Mar 2004 22:26:38 +0000 Subject: [PATCH] Document new :width and :align-to features. --- etc/NEWS | 59 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 59 insertions(+) diff --git a/etc/NEWS b/etc/NEWS index f44134bae40..701064fa2e9 100644 --- a/etc/NEWS +++ b/etc/NEWS @@ -1850,6 +1850,65 @@ configuration files. * Lisp Changes in Emacs 21.4 +** The display space :width and :align-to text properties are now +supported on text terminals. + +** Enhancements to stretch display properties + +The display property stretch specification form `(space PROPS)', where +PROPS is a property list now allows pixel based width and height +specifications, as well as enhanced horisontal text alignment. + +The value of these properties can now be a (primitive) expression +which is evaluated during redisplay. The following expressions +are supported: + +EXPR ::= NUM | (NUM) | UNIT | ELEM | POS | IMAGE | FORM +NUM ::= INTEGER | FLOAT | SYMBOL +UNIT ::= in | mm | cm | width | height +ELEM ::= left-fringe | right-fringe | left-margin | right-margin + | scroll-bar | text +POS ::= left | center | right +FORM ::= (NUM . EXPR) | (OP EXPR ...) +OP ::= + | - + +The form `NUM' specifies a fractional width or height of the default +frame font size. The form `(NUM)' specifies an absolute number of +pixels. If a symbol is specified, its buffer-local variable binding +is used. The `in', `mm', and `cm' units specifies the number of +pixels per inch, milli-meter, and centi-meter, resp. The `width' and +`height' units correspond to the width and height of the current face +font. An image specification corresponds to the width or height of +the image. + +The `left-fringe', `right-fringe', `left-margin', `right-margin', +`scroll-bar', and `text' elements specify to the width of the +corresponding area of the window. + +The `left', `center', and `right' positions can be used with :align-to +to specify a position relative to the left edge, center, or right edge +of the text area. One of the above window elements (except `text') +can also be used with :align-to to specify that the position is +relative to the left edge of the given area. Once the base offset for +a relative position has been set (by the first occurrence of one of +these symbols), further occurences of these symbols are interpreted as +the width of the area. + +For example, to align to the center of the left-margin, use + :align-to (+ left-margin (0.5 . left-margin)) + +If no specific base offset is set for alignment, it is always relative +to the left edge of the text area. For example, :align-to 0 in a +header-line aligns with the first text column in the text area. + +The value of the form `(NUM . EXPR)' is the value of NUM multiplied by +the value of the expression EXPR. For example, (2 . in) specifies a +width of 2 inches, while (0.5 . IMAGE) specifies half the width (or +height) of the specified image. + +The form `(+ EXPR ...)' adds up the value of the expressions. +The form `(- EXPR ...)' negates or subtracts the value of the expressions. + ** New macro with-local-quit temporarily sets inhibit-quit to nil for use around potentially blocking or long-running code in timers and post-command-hooks. -- 2.39.2