resetting font-ligatures means passing `nil` as the second argument of `(set-font-ligatures!)` Using `ligatures-ignored-major-modes` to cancel ligatures is too brittle, because "resetting ligatures for `prog-mode`" would have bad semantics with all its derived modes. The user probably just wants to remove the default ligatures and then configure `foo-mode`, but pushing `prog-mode` to `ignored-major-modes` might just disable ligatures across all modes _derived from_ `prog-mode`. This commit changes things in 2 ways: - resetting ligatures now directly manipulates ligature.el internal state (the `ligature-composition-table` alist) - in order to work, Doom must maintain an extra invariant on that alist, multi-modes keys (`'(foo-mode bar-mode)`), cannot be used, only single modes. That mostly means that users should _not_ use `ligature-set-ligatures` themselves in private config, but instead always rely on `set-font-ligatures!` which does splicing behind curtains. Failing to do so would be mostly harmless though (it would just make "resetting ligatures" only partially remove set ligatures). Fix: #7433 |
||
---|---|---|
.. | ||
deft | ||
doom | ||
doom-dashboard | ||
doom-quit | ||
emoji | ||
hl-todo | ||
hydra | ||
indent-guides | ||
ligatures | ||
minimap | ||
modeline | ||
nav-flash | ||
neotree | ||
ophints | ||
popup | ||
tabs | ||
treemacs | ||
unicode | ||
vc-gutter | ||
vi-tilde-fringe | ||
window-select | ||
workspaces | ||
zen | ||
README.org |
:ui
Description
For modules concerned with changing Emacs' appearance or providing interfaces for its features, like sidebars, tabs, or fonts.
Frequently asked questions
This category has no FAQs yet. Ask one?