[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

line-height and line-spacing - behavior and doc

From: Drew Adams
Subject: line-height and line-spacing - behavior and doc
Date: Sat, 20 May 2006 18:22:51 -0700

Unless there is a product bug here, Elisp manual Info node Line Height
should be clarified.  Apparently, although it is said nowhere,
line-height can never be less than the initial character height plus
some irreducible interline spacing.  I tried several values for
line-height: t, (t . ratio), and (nil . ratio). Only when ratio was
greater than 1.0 did I see any change in the appearance. More
precisely, a ratio < 1.0 can be used if you previously used a ratio >
1.0 to insert more space, to bring it back to the default conditon,
but you cannot reduce the default interline spacing, AFAICT. That
seems hard-coded, AFAICT.

I also did not notice that a value of t aligned characters with no
space between them vertically, as I expected from the description
("tiling small images").  Apparently what it does for images you
cannot do with lines of characters.  Too bad.

If this is only a doc bug (please clarify the doc), then the rest of
this bug report is in fact a feature-enhancement request. I don't
know what the design is, so I don't know if the doc is wrong
(incomplete) or the product broken.

I'd like to think that this is a bug that will be fixed, so you can
use, for example, character graphics - or just make a (square) color
palette with space characters or square-box characters.  I would like
to be able to get rid of all interline spacing, and maybe even overlap
consecutive lines to some extent. That is, I'd like to be able to use
a ratio < 1.0 starting from the default situation.

The line-spacing frame parameter is described more clearly than is
line-height - it hints at least that you cannot get rid of the space
between lines; you can only add additional space.

It would also be good to remove that limitation - to be able to reduce
vertical line space using the line-spacing parameter, in particular,
to remove the (hard-coded?) minimal interline space that seems always
to be present.

Another enhancement, slightly related, would be to be able to scale
displayed characters (for display only), to change their height or
width. I guess you might be able to do something by fiddling with a
font spec, but it would be handy to change simply the displayed aspect
ratio, for instance, not the font spec. You could use that to, for
example, display a space character as a square instead of a rectangle
with a hard-coded aspect ratio.

I didn't find much use of line-height in the standard Emacs-Lisp
libraries, so I wonder if all of the various values actually got
tested. I'm hoping that they didn't, and that this is a product bug
that can be fixed, and not just a limitation in the design.

In GNU Emacs (i386-mingw-nt5.1.2600)
 of 2006-03-20 on W2ONE
X server distributor `Microsoft Corp.', version 5.1.2600
configured using `configure --with-gcc (3.4) --cflags -Id:/g/include'

Important settings:
  value of $LC_ALL: nil
  value of $LC_COLLATE: nil
  value of $LC_CTYPE: nil
  value of $LC_MESSAGES: nil
  value of $LC_MONETARY: nil
  value of $LC_NUMERIC: nil
  value of $LC_TIME: nil
  value of $LANG: ENU
  locale-coding-system: cp1252
  default-enable-multibyte-characters: t

Major mode: Emacs-Lisp

Minor modes in effect:
  encoded-kbd-mode: t
  tooltip-mode: t
  auto-compression-mode: t
  tool-bar-mode: t
  mouse-wheel-mode: t
  menu-bar-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  blink-cursor-mode: t
  unify-8859-on-encoding-mode: t
  utf-translate-cjk-mode: t
  line-number-mode: t

Recent input:
e i g h t SPC t ) <return> C-_ C-x <escape> <escape>
M-b M-b M-d ' ( t SPC . SPC 1 . <backspace> <backspace>
2 . 0 ) C-e <backspace> ) <return> C-x <escape> <escape>
M-b M-b M-b M-d M-d 0 . 5 <return> C-x <escape> <escape>
<return> C-x <escape> <escape> M-b M-b M-b M-b M-d
n i l M-f M-f <M-backspace> <M-backspace> 2 . 0 <return>
C-x <escape> <escape> M-b M-b M-b M-b M-f M-f M-f <M-backspace>
<M-backspace> 0 . 5 <return> C-x <escape> <escape>
<return> <help-echo> <help-echo> <help-echo> <help-echo>
<help-echo> <help-echo> <help-echo> <help-echo> <menu-bar>
<help-menu> <report-emacs-bug>

Recent messages:
Loading debug...done
Entering debugger...
Back to top level.
Quit [3 times]
repeat-complex-command: Command attempted to use minibuffer while in
Quit [4 times]
nil [6 times]
Loading emacsbug...done

reply via email to

[Prev in Thread] Current Thread [Next in Thread]