emacs-devel
[Top][All Lists]
Advanced

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

RE: Split `simple.el'?


From: Drew Adams
Subject: RE: Split `simple.el'?
Date: Wed, 4 Apr 2018 16:44:25 -0700 (PDT)

> On a similar note, I've been meaning to rebind C-h h, because every time I
> mistakenly hit it, Emacs completely locks up for about 30 seconds as it
> fetches all those various Unicode characters to display. How long does that
> take for you?

emacs -Q: 1 min 15 sec
my setup: 1 min 30 sec

> What would be nice is if all those characters rendered immediately as box
> characters, and then filled in font-lock-style as the renderings were
> found.

Yes.

But for some situations it can make more sense to render all
together (less mystery/surprise), rather than bit by bit.

And in some contexts it makes sense to give users control
over whether to try to show the glyphs at all.

E.g., in my library `apu.el', because of the slowdown from
calling `char-displayable-p', and because showing the glyphs
is not always the most important thing for this library,
users have an option, `apu-match-only-displayable-chars-flag',
whose initial, default value is (< emacs-major-version 25).

,----
| apu-match-only-displayable-chars-flag is a variable defined in `apu.el'.
| Its value is nil
| 
| Documentation:
| Non-nil means filter out chars not displayable (`char-displayable-p').
|
| NOTE:
| 
| Starting with Emacs 25, `char-displayable-p' can be extremely slow if
| the new variable `inhibit-compacting-font-caches' is nil, which it is
| by default, and if you have many, or large, fonts installed.  For this
| reason the default value of `apu-match-only-displayable-chars-flag' is
| nil for Emacs 25 and later.  This seems to be the case if you have MS
| Windows TrueType fonts installed, for instance.
| 
| If you want to be able to exclude non-displayable characters in Emacs
| 25+, then set `apu-match-only-displayable-chars-flag' to non-nil.  If
| you find that this makes APU commands such as `apropos-char' extremely
| slow then set variable `inhibit-compacting-font-caches' to `t'.
| 
| You can customize this variable.
`----



reply via email to

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