doomemacs/modules/ui/doom/README.org
Henrik Lissner b405225b90
refactor!(vc-gutter): drop git-gutter for diff-hl
BREAKING CHANGE: This removes git-gutter as an implementation for the
`:ui vc-gutter` module, leaving only the diff-hl implementation. There
are no longer any +git-gutter or +diff-hl flags for this module. Users
don't have to do anything to keep the vc gutter, unless they prefer
git-gutter for any reason (in which case they'll need to install and set
it up themselves).

This has been planned for some time, because of a roadmap goal for Doom
to lean into native/built-in functionality where it's equal or better
than the third party alternatives. diff-hl relies on the built-in vc.el
library instead of talking to git directly (thus expanding support to
whatever VCS's vc.el supports, and not git alone), which also means it
can take advantage of its caching and other user configuration for
vc.el. Overall, it is faster and lighter.

What I've also been waiting for was a stage-hunk command, similar to
git-gutter:stage-hunk, which arrived in dgutov/diff-hl@a0560551cd and
dgutov/diff-hl@133538973b, and have evolved since.

Ref: dgutov/diff-hl@a0560551cd
Ref: dgutov/diff-hl@133538973b
Ref: https://github.com/orgs/doomemacs/projects/5/views/1?pane=issue&itemId=58747789
2024-06-22 18:14:04 -04:00

4 KiB

:ui doom

Description   unfold

This module gives Doom its signature look: powered by the doom-one theme (loosely inspired by Atom's One Dark theme) and doom-package:solaire-mode. Includes:

Module flags

This module has no flags.

Hacks

No hacks documented for this module.

TODO Changelog

This module does not have a changelog yet.

Installation

Enable this module in your doom! block.

This module has no external requirements.

TODO Usage

󱌣 This module has no usage documentation yet. Write some?

TODO Configuration

󱌣 This module's configuration documentation is incomplete. Complete it?

Changing theme

Although this module uses the doom-one theme by default, doom-themes offers a number of alternatives:

  • doom-one: doom-themes' flagship theme, inspired by Atom's One Dark themes
  • doom-vibrant: a more vibrant version of doom-one
  • doom-molokai: based on Textmate's monokai
  • doom-nova: adapted from Nova
  • doom-one-light: light version of doom-one
  • doom-peacock: based on Peacock from daylerees' themes
  • doom-tomorrow-night: by Chris Kempson
  • And many more…

This can be changed by changing the doom-theme variable, e.g.

;; in $DOOMDIR/config.el
(setq doom-theme 'doom-molokai)

Changing fonts

core/core-ui.el has four relevant variables:

doom-font
the default font to use in Doom Emacs.
doom-big-font
the font to use when doom-big-font-mode is enabled.
doom-variable-pitch-font
the font to use when variable-pitch-mode is active (or where the variable-pitch face is used).
doom-symbol-font
the font used to display unicode symbols. This is ignored if the doom-module::ui unicode module is enabled.
(setq doom-font (font-spec :family "Fira Mono" :size 12)
      doom-variable-pitch-font (font-spec :family "Fira Sans")
      doom-symbol-font (font-spec :family "JuliaMono")
      doom-big-font (font-spec :family "Fira Mono" :size 19))

Troubleshooting

Report an issue?

Strange font symbols

If you're seeing strange unicode symbols, this is likely because you don't have nerd-icons's font icon installed. You can install them with M-x nerd-icons-install-fonts.

Ugly background colors in tty Emacs for daemon users

doom-package:solaire-mode is an aesthetic plugin that makes non-file-visiting buffers darker than the rest of the Emacs' frame (to visually differentiate temporary windows or sidebars from editing windows). This looks great in GUI Emacs, but can look questionable in the terminal.

It disables itself if you start tty Emacs with $ emacs -nw, but if you create a tty frame from a daemon (which solaire-mode cannot anticipate), you'll get an ugly background instead.

If you only use Emacs in the terminal, your best bet is to disable the solaire-mode package:

;; in $DOOMDIR/packages.el
(package! solaire-mode :disable t)

Frequently asked questions

This module has no FAQs yet. Ask one?

TODO Appendix

󱌣 This module has no appendix yet. Write one?