GNU bug report logs - #475
23.0.60; [Feature request] activate kerning and standard ligatures in variable-pitch-mode

Previous Next

Package: emacs;

Reported by: James Cloos <cloos <at> jhcloos.com>

Date: Tue, 24 Jun 2008 11:55:05 UTC

Severity: wishlist

Merged with 30331, 36914

To reply to this bug, email your comments to 475 AT debbugs.gnu.org.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-submit-list <at> lists.donarmstrong.com, Emacs Bugs <bug-gnu-emacs <at> gnu.org>:
bug#475; Package emacs. Full text and rfc822 format available.

Acknowledgement sent to James Cloos <cloos <at> jhcloos.com>:
New bug report received and forwarded. Copy sent to Emacs Bugs <bug-gnu-emacs <at> gnu.org>. Full text and rfc822 format available.

Message #5 received at submit <at> emacsbugs.donarmstrong.com (full text, mbox):

From: James Cloos <cloos <at> jhcloos.com>
To: emacs-pretest-bug <at> gnu.org
Subject: 23.0.60; [Feature request] activate kerning and standard ligatures in variable-pitch-mode
Date: Tue, 24 Jun 2008 07:23:50 -0400
Please write in English if possible, because the Emacs maintainers
usually do not have translators to read other languages for them.

Your bug report will be posted to the emacs-pretest-bug <at> gnu.org mailing list.

Please describe exactly what actions triggered the bug
and the precise symptoms of the bug:

I’ve been testing (variable-pitch-mode) for gnus *Article* buffers,
message buffers and src modes.  Quite cool.

But it would be better were the standard ligatures applied.

I’ve been using DejaVu Serif for the variable-pitch face.  Its OTF
tables include ff, fi, fl, ffi, ffl ligs which should apply for all text
runs, but Emacs does not apply them.  The ligs /are/ easier to read,
even at screen resolutions.

Obviously this should not be done for fixed-pitch text runs, but it will
improve variable-pitch runs quite a bit.

For cases where point is at one of the characters which make up a
ligated glyph, the Right Thing To Do is to break the text run either
side of point, so that the individual glyphs are painted; this will
ensure that the user can tell what is going on.

Put another way:  in order the get the ligated glyphs you have to pass
each text run at least a word at a time to the OTF engine.  If the text
run is also broken before and after point — which implies that the
character at point is its own single-character text run — then
everything just works.

(At least for simple scripts like latin, greek, cyrillic, et al.  I
/think/ that concept would work OK for arabic as well, but I’m not at
all sure how well it matches up with, eg, the dravidian scripts.)

For non-OTF variable-pitch-mode fonts, it would not hurt to look for
encoded ligatures and use them, at least for fi and fl, but getting it
working for fonts with OTF tables would be an important first step.

Kerning probably will have only a minimal impact on the display at
typical screen resolution, but it should be applied anyway.  There are a
few combinations where it does make a significant difference in legibility.

As a side note, it would be cool to support applying other OTF features
by way of overlays.

In GNU Emacs 23.0.60.1 (i686-pc-linux-gnu, X toolkit, Xaw3d scroll bars)
 of 2008-06-21 on lugabout
Windowing system distributor `The X.Org Foundation', version 11.0.10599001
configured using `configure  '--prefix=/usr' '--host=i686-pc-linux-gnu' '--mandir=/usr/share/man' '--infodir=/usr/share/info' '--datadir=/usr/share' '--sysconfdir=/etc' '--localstatedir=/var/lib' '--program-suffix=-emacs-23' '--infodir=/usr/share/info/emacs-23' '--without-carbon' '--with-sound' '--with-x' '--with-toolkit-scroll-bars' '--with-gif' '--with-jpeg' '--with-png' '--with-rsvg' '--with-tiff' '--with-xpm' '--enable-font-backend' '--with-freetype' '--with-xft' '--with-libotf' '--with-m17n-flt' '--with-x-toolkit=athena' '--without-hesiod' '--with-kerberos' '--with-kerberos5' '--with-gpm' '--with-dbus' '--build=i686-pc-linux-gnu' 'build_alias=i686-pc-linux-gnu' 'host_alias=i686-pc-linux-gnu' 'CC=i686-pc-linux-gnu-gcc' 'CFLAGS=-march=pentium3 -O2' 'LDFLAGS= -Wl,--as-needed ''

Important settings:
  value of $LC_ALL: nil
  value of $LC_COLLATE: C
  value of $LC_CTYPE: nil
  value of $LC_MESSAGES: nil
  value of $LC_MONETARY: nil
  value of $LC_NUMERIC: nil
  value of $LC_TIME: C
  value of $LANG: en_US.UTF-8
  value of $XMODIFIERS: nil
  locale-coding-system: utf-8-unix
  default-enable-multibyte-characters: t





Severity set to `wishlist' from `normal' Request was from Jason Rumney <jasonr <at> gnu.org> to control <at> emacsbugs.donarmstrong.com. (Sat, 02 Aug 2008 10:10:04 GMT) Full text and rfc822 format available.

Forcibly Merged 475 36914. Request was from Lars Ingebrigtsen <larsi <at> gnus.org> to control <at> debbugs.gnu.org. (Mon, 30 Sep 2019 06:03:02 GMT) Full text and rfc822 format available.

Forcibly Merged 475 30331 36914. Request was from Lars Ingebrigtsen <larsi <at> gnus.org> to control <at> debbugs.gnu.org. (Mon, 30 Sep 2019 06:03:05 GMT) Full text and rfc822 format available.

This bug report was last modified 5 years and 257 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.