docs(:ui): update READMEs to new format

This commit is contained in:
Henrik Lissner 2021-10-16 01:29:57 +02:00 committed by Henrik Lissner
parent 6da20e45bd
commit b5a2aa48fe
25 changed files with 1533 additions and 922 deletions

View file

@ -1,11 +1,9 @@
← [[doom-module-index:][Back to module index]] ↙ [[doom-changelog-search:::ui nil][Changelog]] ± [[doom-suggest-edit:][Suggest edits]] ? [[doom-help-modules:][Help]] ← [[doom-module-index:][Back to module index]] ↖ [[doom-module-source:ui][Source]] ± [[doom-suggest-edit:][Suggest edits]] ? [[doom-help-modules:][Help]]
-------------------------------------------------------------------------------- --------------------------------------------------------------------------------
#+TITLE: :ui #+TITLE: :ui
#+SUBTITLE: <A one-liner to display in init.example.el>
#+CREATED: July 29, 2021 #+CREATED: July 29, 2021
#+SINCE: v21.12.0 #+SINCE: 21.12.0
#+SETUPFILE: ../../docs/.setupfile.org
* Description * Description
For modules who specialize in changing Emacs' appearance or providing interfaces For modules concerned with changing Emacs' appearance or providing interfaces
for its features, like sidebars, tabs, or fonts. for its features, like sidebars, tabs, or fonts.

View file

@ -1,51 +1,77 @@
#+TITLE: ui/deft ← [[doom-module-index:][Back to module index]] ↙ [[doom-module-issues:::ui deft][Issues]] ↖ [[doom-module-source:ui/deft][Source]] ± [[doom-suggest-edit:][Suggest edits]] ? [[doom-help-modules:][Help]]
#+DATE: August 27, 2018 --------------------------------------------------------------------------------
#+SINCE: v2.0.9 #+TITLE: :ui deft
#+STARTUP: inlineimages nofold #+SUBTITLE: Notational velocity for Emacs
#+CREATED: August 26, 2018
#+SINCE: 21.12.0 (#835)
* Table of Contents :TOC_3:noexport: * Description :unfold:
- [[#description][Description]] [[https://jblevins.org/projects/deft/][Deft]] is a major mode for creating, browsing, and filtering notes written in
- [[#maintainers][Maintainers]] plain text formats, such as org-mode, markdown, and LaTeX. It enables you to
- [[#module-flags][Module Flags]] quickly jot down thoughts and easily retrieve them later.
- [[#plugins][Plugins]]
- [[#prerequisites][Prerequisites]]
- [[#configuration][Configuration]]
- [[#troubleshooting][Troubleshooting]]
* Description
[[https://jblevins.org/projects/deft/][Deft]] is a major mode for creating, browsing, and filtering notes written in plain text formats, such as org-mode, markdown, and LaTeX. It enables you to quickly jot down thoughts and easily retrieve them later.
** Maintainers ** Maintainers
This module has no dedicated maintainers. /This module has no dedicated maintainers./ [[doom-contrib-maintainer:][Become a maintainer?]]
** Module Flags ** Module flags
This module provides no flags. /This module has no flags./
** Plugins ** Packages
+ [[https://github.com/jrblevin/deft][deft]] - [[doom-package:][deft]]
* Prerequisites ** Hacks
This module has no prerequisites. /No hacks documented for this module./
* Configuration ** TODO Changelog
To use deft, you first need to specify the directory in which your notes are stored: # This section will be machine generated. Don't edit it by hand.
/This module does not have a changelog yet./
#+begin_src elisp * Installation
;; ~/.doom.d/config.el [[id:01cffea4-3329-45e2-a892-95a384ab2338][Enable this module in your ~doom!~ block.]]
/This module has no external requirements./
* TODO Usage
#+begin_quote
🔨 This module has no usage documentation yet. [[doom-contrib-module:][Write some?]]
#+end_quote
* TODO Configuration
#+begin_quote
🔨 /This module's configuration documentation is incomplete./ [[doom-contrib-module:][Complete it?]]
#+end_quote
To use deft, you first need to specify the directory in which your notes are
stored:
#+begin_src emacs-lisp
;; in $DOOMDIR/config.el
(setq deft-directory "~/notes") (setq deft-directory "~/notes")
#+end_src #+end_src
The default note format is org-mode. You can change this by setting the value of The default note format is org-mode. You can change this by setting the value of
the variable ~deft-default-extension~. Replacing the value with ~"md"~, for example, the variable ~deft-default-extension~. Replacing the value with ~"md"~, for
will change the default note format to markdown: example, will change the default note format to markdown:
#+begin_src emacs-lisp
#+begin_src elisp (after! deft
(setq deft-default-extension "md") (setq deft-default-extension "md"))
#+end_src #+end_src
You may also want to alter the way titles and file names are automatically created by editing ~deft-use-filename-as-title~ and/or ~deft-use-filter-string-for-filename~. You may also want to alter the way titles and file names are automatically
created by editing ~deft-use-filename-as-title~ and/or
~deft-use-filter-string-for-filename~.
Further customization options can be found here: https://github.com/jrblevin/deft#other-customizations Further customization options can be found here:
https://github.com/jrblevin/deft#other-customizations
* Troubleshooting * Troubleshooting
It is [[https://github.com/hlissner/doom-emacs/pull/2845/commits/dce80a3c8032f5390f4e763e18a108d5f3f08772][not recommended]] to re-enable deft's buffer auto-save. [[doom-report:][Report an issue?]]
- It is [[https://github.com/hlissner/doom-emacs/pull/2845/commits/dce80a3c8032f5390f4e763e18a108d5f3f08772][not recommended]] to re-enable deft's buffer auto-save.
* Frequently asked questions
/This module has no FAQs yet./ [[doom-suggest-faq:][Ask one?]]
* TODO Appendix
#+begin_quote
🔨 This module has no appendix yet. [[doom-contrib-module:][Write one?]]
#+end_quote

View file

@ -1,18 +1,11 @@
#+TITLE: ui/doom-dashboard ← [[doom-module-index:][Back to module index]] ↙ [[doom-module-issues:::ui doom-dashboard][Issues]] ↖ [[doom-module-source:ui/doom-dashboard][Source]] ± [[doom-suggest-edit:][Suggest edits]] ? [[doom-help-modules:][Help]]
#+DATE: October 9, 2019 --------------------------------------------------------------------------------
#+SINCE: v1.3 #+TITLE: :ui doom-dashboard
#+STARTUP: inlineimages nofold #+SUBTITLE: Welcome to your doom
#+CREATED: February 20, 2017
#+SINCE: 2.0.0
* Table of Contents :TOC_3:noexport: * Description :unfold:
- [[#description][Description]]
- [[#module-flags][Module Flags]]
- [[#prerequisites][Prerequisites]]
- [[#configuration][Configuration]]
- [[#a-custom-banner][A custom banner]]
- [[#adding-text-to-the-dashboard][Adding text to the dashboard]]
- [[#customizing-faces][Customizing Faces]]
* Description
This module adds a minimalistic, Atom-inspired dashboard to Emacs. This module adds a minimalistic, Atom-inspired dashboard to Emacs.
Besides eye candy, the dashboard serves two other purposes: Besides eye candy, the dashboard serves two other purposes:
@ -29,28 +22,53 @@ Besides eye candy, the dashboard serves two other purposes:
of the last open buffer, ~M-x find-file~ will work from the directory I of the last open buffer, ~M-x find-file~ will work from the directory I
expect. expect.
** Module Flags ** Maintainers
This module provides no flags. - [[doom-user:][@hlissner]]
* Prerequisites [[doom-contrib-maintainer:][Become a maintainer?]]
This module only requires that ~all-the-icons~'s icon fonts are installed.
It should've been installed when you first installed Doom, but ~M-x ** Module flags
all-the-icons-install-fonts~ will install them again. /This module has no flags./
** Packages
/This module doesn't install any packages./
** Hacks
/No hacks documented for this module./
** TODO Changelog
# This section will be machine generated. Don't edit it by hand.
/This module does not have a changelog yet./
* Installation
[[id:01cffea4-3329-45e2-a892-95a384ab2338][Enable this module in your ~doom!~ block.]]
This module only requires that ~all-the-icons~'s icon fonts are installed, which
should've been installed when you ran ~$ doom install~. Otherwise, use ~M-x
all-the-icons-install-fonts~ to install them.
* Usage
Once this module is enabled, the dashboard will present itself after opening a
fresh instance of Emacs, or after killing all real buffers.
You can forcibly open the dashboard with ~M-x +doom-dashboard/open~.
* TODO Configuration
#+begin_quote
🔨 /This module's configuration documentation is incomplete./ [[doom-contrib-module:][Complete it?]]
#+end_quote
* Configuration
** A custom banner ** A custom banner
To use a custom image as your banner, change ~fancy-splash-image~: To use a custom image as your banner, change ~fancy-splash-image~:
#+begin_src emacs-lisp
#+BEGIN_SRC elisp
(setq fancy-splash-image "~/my/banners/image.png") (setq fancy-splash-image "~/my/banners/image.png")
#+END_SRC #+end_src
#+begin_quote #+begin_quote
Doom will fall back to its ASCII banner in Terminal Emacs. To replace the ASCII 📌 Doom will fall back to its ASCII banner in Terminal Emacs. To replace the
banner, replace the ~doom-dashboard-widget-banner~ function in ASCII banner, replace the ~doom-dashboard-widget-banner~ function in
~+doom-dashboard-functions~ with a function that inserts your new banner into ~+doom-dashboard-functions~ with a function that inserts your new banner
the current file. into the current file.
#+end_quote #+end_quote
** Adding text to the dashboard ** Adding text to the dashboard
@ -59,15 +77,16 @@ redraw. Add your own functions to operate on the buffer and potentially add
whatever you like to Doom's splash screen. whatever you like to Doom's splash screen.
#+begin_quote #+begin_quote
Keep in mind that inserting text from expensive sources, e.g. your org agenda, 🚧 Keep in mind that inserting text from expensive sources, e.g. your org
will negate most of Doom's startup benefits. agenda, will negate most of Doom's startup benefits.
#+end_quote #+end_quote
** Customizing Faces ** Customizing Faces
Doom's dashboard defaults to inheriting faces set by the current theme. If you wish Doom's dashboard defaults to inheriting faces set by the current theme. If you
to customize it independently of the theme (or just inherit a different color wish to customize it independently of the theme (or just inherit a different
from the theme) you can make use of ~custom-set-faces!~ or ~custom-theme-set-faces!~ color from the theme) you can make use of ~custom-set-faces!~ or
#+BEGIN_SRC elisp ~custom-theme-set-faces!~:
#+begin_src emacs-lisp
(custom-set-faces! (custom-set-faces!
'(doom-dashboard-banner :foreground "red" :background "#000000" :weight bold) '(doom-dashboard-banner :foreground "red" :background "#000000" :weight bold)
'(doom-dashboard-footer :inherit font-lock-constant-face) '(doom-dashboard-footer :inherit font-lock-constant-face)
@ -75,9 +94,10 @@ from the theme) you can make use of ~custom-set-faces!~ or ~custom-theme-set-fa
'(doom-dashboard-loaded :inherit font-lock-warning-face) '(doom-dashboard-loaded :inherit font-lock-warning-face)
'(doom-dashboard-menu-desc :inherit font-lock-string-face) '(doom-dashboard-menu-desc :inherit font-lock-string-face)
'(doom-dashboard-menu-title :inherit font-lock-function-name-face)) '(doom-dashboard-menu-title :inherit font-lock-function-name-face))
#+END_SRC #+end_src
or for a per-theme setting or for a per-theme setting
#+BEGIN_SRC elisp #+begin_src emacs-lisp
(custom-theme-set-faces! 'doom-tomorrow-night (custom-theme-set-faces! 'doom-tomorrow-night
'(doom-dashboard-banner :foreground "red" :background "#000000" :weight bold) '(doom-dashboard-banner :foreground "red" :background "#000000" :weight bold)
'(doom-dashboard-footer :inherit font-lock-constant-face) '(doom-dashboard-footer :inherit font-lock-constant-face)
@ -85,4 +105,15 @@ or for a per-theme setting
'(doom-dashboard-loaded :inherit font-lock-warning-face) '(doom-dashboard-loaded :inherit font-lock-warning-face)
'(doom-dashboard-menu-desc :inherit font-lock-string-face) '(doom-dashboard-menu-desc :inherit font-lock-string-face)
'(doom-dashboard-menu-title :inherit font-lock-function-name-face)) '(doom-dashboard-menu-title :inherit font-lock-function-name-face))
#+END_SRC #+end_src
* Troubleshooting
/There are no known problems with this module./ [[doom-report:][Report one?]]
* Frequently asked questions
/This module has no FAQs yet./ [[doom-suggest-faq:][Ask one?]]
* TODO Appendix
#+begin_quote
🔨 This module has no appendix yet. [[doom-contrib-module:][Write one?]]
#+end_quote

View file

@ -172,7 +172,7 @@ PLIST can have the following properties:
;;; Major mode ;;; Major mode
(define-derived-mode +doom-dashboard-mode special-mode (define-derived-mode +doom-dashboard-mode special-mode
(format "DOOM v%s" doom-version) (format "DOOM v%s" doom-core-version)
"Major mode for the DOOM dashboard buffer." "Major mode for the DOOM dashboard buffer."
:syntax-table nil :syntax-table nil
:abbrev-table nil :abbrev-table nil
@ -500,7 +500,11 @@ What it is set to is controlled by `+doom-dashboard-pwd-policy'."
(defun doom-dashboard-widget-footer () (defun doom-dashboard-widget-footer ()
(insert (insert
"\n" (+doom-dashboard--center
+doom-dashboard--width
(propertize (concat "DOOM CORE: " doom-core-version " MODULES: " doom-version)
'face 'font-lock-doc-face))
"\n\n"
(+doom-dashboard--center (+doom-dashboard--center
(- +doom-dashboard--width 2) (- +doom-dashboard--width 2)
(with-temp-buffer (with-temp-buffer
@ -509,5 +513,6 @@ What it is set to is controlled by `+doom-dashboard-pwd-policy'."
'action (lambda (_) (browse-url "https://github.com/hlissner/doom-emacs")) 'action (lambda (_) (browse-url "https://github.com/hlissner/doom-emacs"))
'follow-link t 'follow-link t
'help-echo "Open Doom Emacs github page") 'help-echo "Open Doom Emacs github page")
(buffer-string))) (buffer-string)))
"\n")) "\n"))

View file

@ -1,39 +1,70 @@
#+TITLE: ui/doom-quit ← [[doom-module-index:][Back to module index]] ↙ [[doom-module-issues:::ui doom-quit][Issues]] ↖ [[doom-module-source:ui/doom-quit][Source]] ± [[doom-suggest-edit:][Suggest edits]] ? [[doom-help-modules:][Help]]
#+DATE: February 19, 2017 --------------------------------------------------------------------------------
#+SINCE: v2.0 #+TITLE: :ui doom-quit
#+STARTUP: inlineimages #+SUBTITLE: One does not simply quit Emacs
#+CREATED: February 19, 2017
#+SINCE: 2.0.0
* Table of Contents :TOC_3:noexport: * Description :unfold:
- [[#description][Description]] A silly module that throws cute confirmation prompts at you when you exit Emacs,
- [[#module-flags][Module Flags]] like DOOM (the game) did. Some quotes are from the classic games, others are
- [[#plugins][Plugins]] random, nerdy references that no decent human being has any business
- [[#prerequisites][Prerequisites]] recognizing.
- [[#features][Features]]
- [[#configurations][Configurations]] ** Maintainers
- [[#troubleshooting][Troubleshooting]] - [[doom-user:][@hlissner]]
[[doom-contrib-maintainer:][Become a maintainer?]]
** Module flags
/This module has no flags./
** Packages
/This module doesn't install any packages./
** Hacks
/No hacks documented for this module./
** TODO Changelog
# This section will be machine generated. Don't edit it by hand.
/This module does not have a changelog yet./
* Installation
[[id:01cffea4-3329-45e2-a892-95a384ab2338][Enable this module in your ~doom!~ block.]]
/This module has no external requirements./
* Usage
Quit Emacs with [[kbd:][<leader> q q]] and watch it go. The prompt only happens if you
have (real) buffers open.
#+begin_quote
🚧 This module won't kick in when killing daemon frames (because that isn't
actually “quitting” Emacs).
#+end_quote
* Description
A silly module that prompts you with messages when you try to quit, like DOOM
did. Some quotes are from Doom's quit-message list. Others are random, nerdy
references that no decent human being has any business recognising.
** Module Flags
This module provides no flags
** Plugins
This module uses no Plugins
* Prerequisites
This module provides no prerequisite
* Features
This module only works when you run individual Emacs instances and not the
daemon.
* Configurations * Configurations
you can configure the messages by adding to the variable ~+doom-quit-messages~ The messages presented by this module can be customized by changing the
#+BEGIN_SRC emacs-lisp ~+doom-quit-messages~ variable:
(setq +doom-quit-messages '(;;from doom 2 #+begin_src emacs-lisp
(setq +doom-quit-messages
'(;;from doom 2
"Don't go now, there's a dimensional shambler waiting at the dos prompt!" "Don't go now, there's a dimensional shambler waiting at the dos prompt!"
"Get outta here and go back to your boring programs." "Get outta here and go back to your boring programs."
"If I were your boss, I'd deathmatch ya in a minute!" "If I were your boss, I'd deathmatch ya in a minute!"
"Look, bud. You leave now and you forfeit your body count!" "Look, bud. You leave now and you forfeit your body count!"
"You're lucky I don't smack you for thinking about leaving.")) "You're lucky I don't smack you for thinking about leaving."))
#+END_SRC #+end_src
* Troubleshooting * Troubleshooting
If you have any issues with this module do let me know If you have any issues with this module do let me know
* Frequently asked questions
/This module has no FAQs yet./ [[doom-suggest-faq:][Ask one?]]
* Appendix
** Variables
- [[var:][+doom-quit-messages]]
** Functions
- [[fn:][+doom-quit-fn]]

View file

@ -1,93 +1,117 @@
#+TITLE: ui/doom ← [[doom-module-index:][Back to module index]] ↙ [[doom-module-issues:::ui doom][Issues]] ↖ [[doom-module-source:ui/doom][Source]] ± [[doom-suggest-edit:][Suggest edits]] ? [[doom-help-modules:][Help]]
#+DATE: October 9, 2019 --------------------------------------------------------------------------------
#+SINCE: v1.3 #+TITLE: :ui doom
#+STARTUP: inlineimages nofold #+SUBTITLE: Make Doom fabulous again
#+CREATED: February 20, 2017
#+SINCE: 2.0.0
* Table of Contents :TOC_3:noexport: * Description :unfold:
- [[#description][Description]] This module gives Doom its signature look: powered by the [[doom-package:doom-themes][doom-one]] theme
- [[#module-flags][Module Flags]] (loosely inspired by [[https://github.com/atom/one-dark-syntax][Atom's One Dark theme]]) and [[doom-package:][solaire-mode]]. Includes:
- [[#plugins][Plugins]]
- [[#prerequisites][Prerequisites]]
- [[#configuration][Configuration]]
- [[#changing-theme][Changing theme]]
- [[#changing-fonts][Changing fonts]]
- [[#troubleshooting][Troubleshooting]]
- [[#strange-font-symbols][Strange font symbols]]
- [[#ugly-background-colors-in-tty-emacs-for-daemon-users][Ugly background colors in tty Emacs for daemon users]]
* Description - A custom folded-region indicator for [[doom-package:][hideshow]].
This module gives Doom its signature look: powered by the =doom-one= theme - "Thin bar" fringe bitmaps for [[doom-package:][git-gutter-fringe]].
(inspired by Atom's One Dark theme) and =solaire-mode=. - File-visiting buffers are slightly brighter (thanks to [[doom-package:][solaire-mode]]).
+ A colorscheme inspired by Atom's One Dark theme (now available in a separate ** Maintainers
plugin: [[https://github.com/hlissner/emacs-doom-theme/][doom-themes]]) - [[doom-user:][@hlissner]]
+ A custom folded-region indicator for ~hideshow~
+ "Thin bar" fringe bitmaps for ~git-gutter-fringe~
+ File-visiting buffers are slightly brighter (thanks to solaire-mode)
** Module Flags [[doom-contrib-maintainer:][Become a maintainer?]]
This module provides no flags.
** Plugins ** Module flags
+ [[https://github.com/hlissner/emacs-doom-themes][doom-themes]] /This module has no flags./
+ [[https://github.com/hlissner/emacs-solaire-mode][solaire-mode]]
* Prerequisites ** Packages
This module has no prerequisites. - [[doom-package:][doom-themes]]
- [[doom-package:][solaire-mode]]
** Hacks
/No hacks documented for this module./
** TODO Changelog
# This section will be machine generated. Don't edit it by hand.
/This module does not have a changelog yet./
* Installation
[[id:01cffea4-3329-45e2-a892-95a384ab2338][Enable this module in your ~doom!~ block.]]
/This module has no external requirements./
* TODO Usage
#+begin_quote
🔨 This module has no usage documentation yet. [[doom-contrib-module:][Write some?]]
#+end_quote
* TODO Configuration
#+begin_quote
🔨 /This module's configuration documentation is incomplete./ [[doom-contrib-module:][Complete it?]]
#+end_quote
* Configuration
** Changing theme ** Changing theme
Although this module uses the ~doom-one~ theme by default, [[https://github.com/hlissner/emacs-doom-theme/][doom-themes]] offers a number of alternatives: Although this module uses the ~doom-one~ theme by default, [[https://github.com/hlissner/emacs-doom-theme/][doom-themes]] offers a
number of alternatives:
+ *doom-one:* doom-themes' flagship theme, inspired by [[https://atom.io/][Atom's]] One Dark themes - *doom-one:* doom-themes' flagship theme, inspired by [[https://atom.io/][Atom's]] One Dark themes
+ *doom-vibrant:* a more vibrant version of doom-one - *doom-vibrant:* a more vibrant version of doom-one
+ *doom-molokai:* based on Textmate's monokai - *doom-molokai:* based on Textmate's monokai
+ *doom-nova:* adapted from [[https://github.com/trevordmiller/nova-colors][Nova]] - *doom-nova:* adapted from [[https://github.com/trevordmiller/nova-colors][Nova]]
+ *doom-one-light:* light version of doom-one - *doom-one-light:* light version of doom-one
+ *doom-peacock:* based on Peacock from [[https://daylerees.github.io/][daylerees' themes]] - *doom-peacock:* based on Peacock from [[https://daylerees.github.io/][daylerees' themes]]
+ *doom-tomorrow-night:* by [[https://github.com/ChrisKempson/Tomorrow-Theme][Chris Kempson]] - *doom-tomorrow-night:* by [[https://github.com/ChrisKempson/Tomorrow-Theme][Chris Kempson]]
- And /many/ more...
This can be changed by changing the ~doom-theme~ variable, e.g. This can be changed by changing the ~doom-theme~ variable, e.g.
#+begin_src emacs-lisp
#+BEGIN_SRC emacs-lisp ;; in $DOOMDIR/config.el
(setq doom-theme 'doom-molokai) (setq doom-theme 'doom-molokai)
#+END_SRC #+end_src
** Changing fonts ** Changing fonts
core/core-ui.el has four relevant variables: core/core-ui.el has four relevant variables:
+ ~doom-font~ :: the default font to use in Doom Emacs. - ~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-big-font~ :: the font to use when ~doom-big-font-mode~ is enabled.
+ ~doom-variable-font~ :: the font to use when ~variable-pitch-mode~ is active (or where the ~variable-pitch~ face is used). - ~doom-variable-font~ :: the font to use when ~variable-pitch-mode~ is active
+ ~doom-unicode-font~ :: the font used to display unicode symbols. This is ignored if the =:ui unicode= module is enabled. (or where the ~variable-pitch~ face is used).
- ~doom-unicode-font~ :: the font used to display unicode symbols. This is
ignored if the [[doom-module:][:ui unicode]] module is enabled.
#+BEGIN_SRC emacs-lisp #+begin_src emacs-lisp
(setq doom-font (font-spec :family "Fira Mono" :size 12) (setq doom-font (font-spec :family "Fira Mono" :size 12)
doom-variable-pitch-font (font-spec :family "Fira Sans") doom-variable-pitch-font (font-spec :family "Fira Sans")
doom-unicode-font (font-spec :family "DejaVu Sans Mono") doom-unicode-font (font-spec :family "DejaVu Sans Mono")
doom-big-font (font-spec :family "Fira Mono" :size 19)) doom-big-font (font-spec :family "Fira Mono" :size 19))
#+END_SRC #+end_src
* Troubleshooting * Troubleshooting
[[doom-report:][Report an issue?]]
** Strange font symbols ** Strange font symbols
If you're seeing strange unicode symbols, this is likely because you don't have If you're seeing strange unicode symbols, this is likely because you don't have
~all-the-icons~'s font icon installed. You can install them with ~M-x ~all-the-icons~'s font icon installed. You can install them with ~M-x
all-the-icons-install-fonts~. all-the-icons-install-fonts~.
** Ugly background colors in tty Emacs for daemon users ** Ugly background colors in tty Emacs for daemon users
=solaire-mode= is an aesthetic plugin that makes non-file-visiting buffers [[doom-package:][solaire-mode]] is an aesthetic plugin that makes non-file-visiting buffers darker
darker than the rest of the Emacs' frame (to visually differentiate temporary than the rest of the Emacs' frame (to visually differentiate temporary windows
windows or sidebars from editing windows). This looks great in GUI Emacs, but or sidebars from editing windows). This looks great in GUI Emacs, but can look
can look questionable in the terminal. questionable in the terminal.
It disables itself if you start tty Emacs with ~emacs -nw~, but if you create a It disables itself if you start tty Emacs with ~$ emacs -nw~, but if you create
tty frame from a daemon (which solaire-mode cannot anticipate), you'll get an a tty frame from a daemon (which solaire-mode cannot anticipate), you'll get an
ugly background instead. ugly background instead.
If you only use Emacs in the terminal, your best bet is to disable the If you only use Emacs in the terminal, your best bet is to disable the
solaire-mode package: solaire-mode package:
#+begin_src emacs-lisp
#+BEGIN_SRC elisp ;; in $DOOMDIR/packages.el
;; in ~/.doom.d/packages.el
(package! solaire-mode :disable t) (package! solaire-mode :disable t)
#+END_SRC #+end_src
* Frequently asked questions
/This module has no FAQs yet./ [[doom-suggest-faq:][Ask one?]]
* TODO Appendix
#+begin_quote
🔨 This module has no appendix yet. [[doom-contrib-module:][Write one?]]
#+end_quote

View file

@ -1,40 +1,41 @@
#+TITLE: ui/emoji ← [[doom-module-index:][Back to module index]] ↙ [[doom-module-issues:::ui emoji][Issues]] ↖ [[doom-module-source:ui/emoji][Source]] ± [[doom-suggest-edit:][Suggest edits]] ? [[doom-help-modules:][Help]]
#+DATE: September 30, 2020 --------------------------------------------------------------------------------
#+SINCE: v3.0 #+TITLE: :ui emoji
#+STARTUP: inlineimages nofold #+SUBTITLE: 💩
#+CREATED: September 30, 2020
#+SINCE: 21.12.0
* Table of Contents :TOC_3:noexport: * Description :unfold:
- [[#description][Description]] This module gives Emacs the ability to display and insert emojis (ASCII, Github
- [[#maintainers][Maintainers]] style, or unicode styles), as well as convert certain text patterns (e.g.
- [[#module-flags][Module Flags]] =:smile:=) into emojis.
- [[#plugins][Plugins]]
- [[#prerequisites][Prerequisites]]
- [[#features][Features]]
- [[#configuration][Configuration]]
- [[#troubleshooting][Troubleshooting]]
* Description
Displays and inserts emojis (ASCII, Github style, unicode).
+ Converts recognized text to emojis.
+ Enables inserting emojis.
** Maintainers ** Maintainers
This module has no dedicated maintainers. *This module needs a maintainer.* [[doom-contrib-maintainer:][Become a maintainer?]]
** Module Flags ** Module flags
+ =+ascii= Include plain text emojis like =:)=. - +ascii ::
+ =+github= Include Github-style emojis like =:smile:=. Include plain text emojis like =:)=.
+ =+unicode= Include unicode emojis like 🙂. - +github ::
Include Github-style emojis like =:smile:=.
- +unicode ::
Include unicode emojis like 🙂.
** Plugins ** Packages
+ [[https://github.com/iqbalansari/emacs-emojify][emojify]] by @iqbalansari - [[doom-package:][emojify]]
* Prerequisites ** Hacks
/No hacks documented for this module./
See the [[https://github.com/iqbalansari/emacs-emojify/blob/master/README.org#requirements][emojify requirements]] docs: ** TODO Changelog
# This section will be machine generated. Don't edit it by hand.
/This module does not have a changelog yet./
#+BEGIN_QUOTE * Installation
[[id:01cffea4-3329-45e2-a892-95a384ab2338][Enable this module in your ~doom!~ block.]]
From the [[https://github.com/iqbalansari/emacs-emojify/blob/master/README.org#requirements][emojify requirements]] docs:
#+begin_quote
The [[https://github.com/iqbalansari/emacs-emojify][emojify]] package requires Emacs *v24.3* and above. Emacs should be compiled The [[https://github.com/iqbalansari/emacs-emojify][emojify]] package requires Emacs *v24.3* and above. Emacs should be compiled
with support for *PNG* images to display emojis as images. It is *recommended* with support for *PNG* images to display emojis as images. It is *recommended*
that Emacs is compiled with *ImageMagick* support. ~emojify~ will use it to that Emacs is compiled with *ImageMagick* support. ~emojify~ will use it to
@ -44,13 +45,25 @@ color for emojis to workaround the bug described in [[https://github.com/iqbalan
PNG support might require some additional steps to on Windows, you might find PNG support might require some additional steps to on Windows, you might find
[[http://stackoverflow.com/questions/2650041/emacs-under-windows-and-png-files][this]] stackoverflow answer helpful. [[http://stackoverflow.com/questions/2650041/emacs-under-windows-and-png-files][this]] stackoverflow answer helpful.
#+END_QUOTE #+end_quote
* TODO Features * TODO Usage
# An in-depth list of features, how to use them, and their dependencies. #+begin_quote
🔨 This module has no usage documentation yet. [[doom-contrib-module:][Write some?]]
#+end_quote
* TODO Configuration * TODO Configuration
# How to configure this module, including common problems and how to address them. #+begin_quote
🔨 This module has no configuration documentation yet. [[doom-contrib-module:][Write some?]]
#+end_quote
* TODO Troubleshooting * Troubleshooting
# Common issues and their solution, or places to look for help. /There are no known problems with this module./ [[doom-report:][Report one?]]
* Frequently asked questions
/This module has no FAQs yet./ [[doom-suggest-faq:][Ask one?]]
* TODO Appendix
#+begin_quote
🔨 This module has no appendix yet. [[doom-contrib-module:][Write one?]]
#+end_quote

View file

@ -1,83 +1,89 @@
← [[doom-module-index:][Back to module index]] ↙ [[doom-module-issues:::ui hl-todo][Issues]] ↖ [[doom-module-source:ui/hl-todo][Source]] ± [[doom-suggest-edit:][Suggest edits]] ? [[doom-help-modules:][Help]]
--------------------------------------------------------------------------------
#+TITLE: :ui hl-todo #+TITLE: :ui hl-todo
#+DATE: February 19, 2017 #+SUBTITLE: TODO FIXME NOTE DEPRECATED HACK REVIEW
#+SINCE: v1.3 #+CREATED: February 19, 2017
#+STARTUP: inlineimages #+SINCE: 1.3
* Table of Contents :TOC_3:noexport: * Description :unfold:
- [[#description][Description]] This module adds syntax highlighting for various tags in code comments, such as
- [[#module-flags][Module Flags]] =TODO=, =FIXME=, and =NOTE=, among others.
- [[#plugins][Plugins]]
- [[#prerequisites][Prerequisites]]
- [[#features][Features]]
- [[#making-items][Making Items]]
- [[#keybindings][Keybindings]]
- [[#adding-items][Adding items.]]
- [[#configuration][Configuration]]
- [[#troubleshooting][Troubleshooting]]
* Description ** Maintainers
This module adds syntax highlighting for TODO/FIXME/NOTE tags in programming - [[doom-user:][@hlissner]]
major-modes.
** Module Flags [[doom-contrib-maintainer:][Become a maintainer?]]
This module provides no flags
** Plugins ** Module flags
+ [[https://github.com/tarsius/hl-todo][hl-todo]] /This module has no flags./
* Prerequisites ** Packages
This module has no prerequisites - [[doom-package:][hl-todo]]
* Features ** Hacks
/No hacks documented for this module./
** Making Items ** TODO Changelog
You can make a TODO item by simply writing # This section will be machine generated. Don't edit it by hand.
+ =TODO= /This module does not have a changelog yet./
For things that need to be done, just not today.
+ =HACK= * Installation
For tidbits that are unconventional and not intended uses of the [[id:01cffea4-3329-45e2-a892-95a384ab2338][Enable this module in your ~doom!~ block.]]
/This module has no external requirements./
* TODO Usage
#+begin_quote
🔨 /This module's usage documentation is incomplete./ [[doom-contrib-module:][Complete it?]]
#+end_quote
By enabling this module, the following keywords will be highlighted if they
occur in code comments:
- =TODO=: For things that need to be done, just not today.
- =HACK=: For tidbits that are unconventional and not intended uses of the
constituent parts, and may break in a future update. constituent parts, and may break in a future update.
+ =FIXME= - =FIXME=: For problems that will become bigger problems later if not fixed
For problems that will become bigger problems later if not fixed ASAP. ASAP.
+ =REVIEW= - =REVIEW=: for things that were done hastily and/or hasn't been thoroughly
for things that were done hastily and/or hasn't been thoroughly
tested. it may not even be necessary! tested. it may not even be necessary!
+ =NOTE= - =NOTE=: For especially important gotchas with a given implementation, directed
For especially important gotchas with a given implementation, at another user other than the author.
directed at another user other than the author. - =DEPRECATED=: For things that just gotta go and will soon be gone.
+ =DEPRECATED= - =BUG=: For a known bug that needs a workaround.
For things that just gotta go and will soon be gone. - =XXX=: For warning about a problematic or misguiding code.
+ =BUG=
For a known bug that needs a workaround
+ =XXX=
For warning about a problematic or misguiding code
** Keybindings ** Keybindings
| keybind | description | | keybind | description |
|-----------+----------------------------------| |---------+----------------------------------|
| =]t= | go to next TODO item | | [[kbd:][]t]] | go to next TODO item |
| =[t= | go to previous TODO item | | [[kbd:][[t]] | go to previous TODO item |
| =SPC p t= | show all TODO items in a project | | [[kbd:][SPC p t]] | show all TODO items in a project |
| =SPC s p= | search project for a string | | [[kbd:][SPC s p]] | search project for a string |
| =SPC s b= | search buffer for string | | [[kbd:][SPC s b]] | search buffer for string |
** TODO Adding items. * TODO Configuration
The way you would add a TODO item is to use a snippet but these have not been #+begin_quote
made. you can make them yourself by adding the snippet to 🔨 /This module's configuration documentation is incomplete./ [[doom-contrib-module:][Complete it?]]
=$DOOMDIR/snippets/MAJOR-MODE/name-of-snippet=. you will find more info on how #+end_quote
to make them [[https://github.com/hlissner/doom-snippets][here]]
* Configuration
To add your own ITEMS you would need to configure them using To add your own ITEMS you would need to configure them using
~hl-todo-keyword-faces~ ~hl-todo-keyword-faces~:
#+BEGIN_SRC emacs-lisp #+begin_src emacs-lisp
;; the default ;; in $DOOMDIR/config.el
(after! hl-todo (after! hl-todo
(setq hl-todo-keyword-faces (setq hl-todo-keyword-faces
`( `(("FOO" . ,(face-foreground "MY COLOUR HEX CODE"))
("FOO" . ,(face-foreground "MY COLOUR HEX CODE"))
("BAR" . ,(face-foreground 'my-colour-var))))) ("BAR" . ,(face-foreground 'my-colour-var)))))
#+END_SRC #+end_src
* TODO Troubleshooting * Troubleshooting
If you have any problems with this module do get in touch! /There are no known problems with this module./ [[doom-report:][Report one?]]
* Frequently asked questions
/This module has no FAQs yet./ [[doom-suggest-faq:][Ask one?]]
* TODO Appendix
#+begin_quote
🔨 This module has no appendix yet. [[doom-contrib-module:][Write one?]]
#+end_quote

View file

@ -1,31 +1,64 @@
#+TITLE: ui/hydra ← [[doom-module-index:][Back to module index]] ↙ [[doom-module-issues:::ui hydra][Issues]] ↖ [[doom-module-source:ui/hydra][Source]] ± [[doom-suggest-edit:][Suggest edits]] ? [[doom-help-modules:][Help]]
#+DATE: october 29, 2019 --------------------------------------------------------------------------------
#+SINCE: 2.0 #+TITLE: :ui hydra
#+STARTUP: inlineimages #+SUBTITLE: Discount modality for mythological beast hunters
#+CREATED: October 29, 2019
#+SINCE: 2.0.0
* Table of Contents :TOC_3:noexport: #+begin_quote
- [[#description][Description]] 🚧 *This module is deprecated.* The module is too trivially small, and it's
- [[#module-flags][Module Flags]] always been unclear how hydra fits into Doom's vision for its UI. It's been
- [[#plugins][Plugins]] decided that Doom will head toward Embark, transient, or hercules instead.
- [[#prerequisites][Prerequisites]] #+end_quote
- [[#configuration][Configuration]]
* Description * Description :unfold:
This module adds hydra to Doom Emacs, as well as a few custom built hydras to This module adds hydra to Doom Emacs, as well as a few custom built hydras to
start with: start with:
+ A hydra to control windows ~+hydra/window-nav/body~ - A hydra to control windows ~+hydra/window-nav/body~.
+ A hydra to control text zoom level ~+hydra/text-zoom/body~ - A hydra to control text zoom level ~+hydra/text-zoom/body~.
** Module Flags ** Maintainers
This module provides no flags. /This module has no dedicated maintainers./ [[doom-contrib-maintainer:][Become a maintainer?]]
** Plugins ** Module flags
+ [[https://github.com/abo-abo/hydra][hydra]] /This module has no flags./
* Prerequisites ** Packages
This module has no prerequisites. - [[doom-package:][hydra]]
** Hacks
/No hacks documented for this module./
** TODO Changelog
# This section will be machine generated. Don't edit it by hand.
/This module does not have a changelog yet./
* Installation
[[id:01cffea4-3329-45e2-a892-95a384ab2338][Enable this module in your ~doom!~ block.]]
/This module has no external requirements./
* TODO Usage
#+begin_quote
🔨 This module has no usage documentation yet. [[doom-contrib-module:][Write some?]]
#+end_quote
* TODO Configuration
#+begin_quote
🔨 /This module's configuration documentation is incomplete./ [[doom-contrib-module:][Complete it?]]
#+end_quote
* Configuration
Configuring this module is only setting bindings to the provided hydra, or Configuring this module is only setting bindings to the provided hydra, or
creating your own ones! creating your own ones!
* Troubleshooting
/There are no known problems with this module./ [[doom-report:][Report one?]]
* Frequently asked questions
/This module has no FAQs yet./ [[doom-suggest-faq:][Ask one?]]
* TODO Appendix
#+begin_quote
🔨 This module has no appendix yet. [[doom-contrib-module:][Write one?]]
#+end_quote

View file

@ -0,0 +1,51 @@
← [[doom-module-index:][Back to module index]] ↙ [[doom-module-issues:::ui indent-guides][Issues]] ↖ [[doom-module-source:ui/indent-guides][Source]] ± [[doom-suggest-edit:][Suggest edits]] ? [[doom-help-modules:][Help]]
--------------------------------------------------------------------------------
#+TITLE: :ui indent-guides
#+SUBTITLE: Line up them indent columns
#+CREATED: March 11, 2019
#+SINCE: 21.12.0
* TODO Description :unfold:
/(No description yet)/
** Maintainers
/This module has no dedicated maintainers./ [[doom-contrib-maintainer:][Become a maintainer?]]
** Module flags
/This module has no flags./
** Packages
- [[doom-package:][highlight-indent-guides]]
** Hacks
/No hacks documented for this module./
** TODO Changelog
# This section will be machine generated. Don't edit it by hand.
/This module does not have a changelog yet./
* Installation
[[id:01cffea4-3329-45e2-a892-95a384ab2338][Enable this module in your ~doom!~ block.]]
/This module has no external requirements./
* TODO Usage
#+begin_quote
🔨 This module has no usage documentation yet. [[doom-contrib-module:][Write some?]]
#+end_quote
* TODO Configuration
#+begin_quote
🔨 This module has no configuration documentation yet. [[doom-contrib-module:][Write some?]]
#+end_quote
* Troubleshooting
/There are no known problems with this module./ [[doom-report-issue:][Report one?]]
* Frequently asked questions
/This module has no FAQs yet./ [[doom-suggest-faq:][Ask one?]]
* TODO Appendix
#+begin_quote
🔨 This module has no appendix yet. [[doom-contrib-module:][Write one?]]
#+end_quote

View file

@ -1,72 +1,69 @@
#+TITLE: ui/ligatures ← [[doom-module-index:][Back to module index]] ↙ [[doom-module-issues:::ui ligatures][Issues]] ↖ [[doom-module-source:ui/ligatures][Source]] ± [[doom-suggest-edit:][Suggest edits]] ? [[doom-help-modules:][Help]]
#+DATE: June 16, 2018 --------------------------------------------------------------------------------
#+SINCE: v2.0.9 #+TITLE: :ui ligatures
#+STARTUP: inlineimages nofold #+SUBTITLE: Distract folks from your code
#+CREATED: June 16, 2018
#+SINCE: 21.12.0
* Table of Contents :TOC_3:noexport: * Description :unfold:
- [[#description][Description]]
- [[#maintainers][Maintainers]]
- [[#module-flags][Module Flags]]
- [[#font-ligatures-module-flags][Font ligatures module flags]]
- [[#plugins][Plugins]]
- [[#prerequisites][Prerequisites]]
- [[#mutsuharus-emacs-mac-port-or-emacs-28-with-harfbuzz-support][Mutsuharu's emacs-mac port or Emacs 28+ with Harfbuzz support]]
- [[#not-emacs-mac-and-emacs--27][Not Emacs-mac and Emacs <= 27]]
- [[#features][Features]]
- [[#mathematical-symbols-replacement][Mathematical symbols replacement]]
- [[#coding-ligatures][Coding ligatures]]
- [[#configuration][Configuration]]
- [[#setting-ligatures][Setting ligatures]]
- [[#changing-ligatures][Changing ligatures]]
- [[#troubleshooting][Troubleshooting]]
* Description
This module enables ligatures and arbitrary symbol substitutions with This module enables ligatures and arbitrary symbol substitutions with
~mac-auto-operator-composition-mode~ (on supported macOS systems) or composition ~mac-auto-operator-composition-mode~ (on supported macOS systems) or composition
tables (harfbuzz on Emacs 28), falling back on ~prettify-symbols-mode~ tables (harfbuzz on Emacs 28), falling back on ~prettify-symbols-mode~
otherwise. otherwise.
** Maintainers ** Maintainers
This module has no dedicated maintainers. /This module has no dedicated maintainers./ [[doom-contrib-maintainer:][Become a maintainer?]]
** Module Flags ** Module flags
+ =+extra= Enables extra symbol substitutions in certain modes, for example - +extra ::
~lambda~ in lisps are replaced with ~λ~. Enables extra symbol substitutions in certain modes, for example ~lambda~ in
lisps are replaced with ~λ~.
*** Font ligatures module flags - +fira ::
This module provides four flags for enabling fall-back ligature support for a Enable =Fira Code= ligatures. This requires Fira Code Symbol and [[id:a7e7402b-e202-4860-878b-d1933cff1d16][a patched
particular font. They are: version of Fira Code]].
- +hasklig ::
+ =+fira= Enables =Fira Code= ligatures. This requires Fira Code Symbol and a Enable =Hasklig= ligatures. This requires [[id:a7e7402b-e202-4860-878b-d1933cff1d16][a patched version of the HaskLig
patched version of Fira Code (see below). font]].
+ =+hasklig= Enable =Hasklig= ligatures. This requires a patched version of the - +iosevka ::
HaskLig font (see below). Enable =Iosevka= ligatures. This requires [[id:a7e7402b-e202-4860-878b-d1933cff1d16][a patched version of the Iosevka
+ =+iosevka= Enable =Iosevka= ligatures. This requires a patched version of the font]].
Iosevka font (see below). - +pragmata-pro ::
+ =+pragmata-pro= Enable =Pragmata Pro= ligatures. This requires the [[https://www.fsd.it/shop/fonts/pragmatapro/][Pragmata Enable =Pragmata Pro= ligatures. This requires the [[https://www.fsd.it/shop/fonts/pragmatapro/][Pragmata Pro font]].
Pro font]].
#+begin_quote #+begin_quote
All these flags are ignored _if_ you're sporting either a) Emacs 28+ with 🚧 Font flags are ignored _if_ you're sporting either a) Emacs 28+ with
Harfbuzz support (which can compose ligatures natively), or b) Mitsuharu's Harfbuzz support (which can compose ligatures natively), or b) Mitsuharu's
=emacs-mac= build on macOS (which uses ~mac-auto-operator-composition-mode~). =emacs-mac= build on macOS (which uses
~mac-auto-operator-composition-mode~).
#+end_quote #+end_quote
** Plugins ** Packages
This module installs no packages. /This module doesn't install any packages./
** Hacks
/No hacks documented for this module./
** TODO Changelog
# This section will be machine generated. Don't edit it by hand.
/This module does not have a changelog yet./
* Installation
[[id:01cffea4-3329-45e2-a892-95a384ab2338][Enable this module in your ~doom!~ block.]]
* Prerequisites
This module requires one of three setups for ligatures to work: This module requires one of three setups for ligatures to work:
- A recent enough version of Emacs which will compose ligatures automatically - A recent enough version of Emacs which will compose ligatures automatically
(Emacs 28 with Harfbuzz support), or (Emacs 28 with Harfbuzz support), or
- Mitsuharu's =emacs-mac= build on macOS (available on homebrew), or - Mitsuharu's =emacs-mac= build on macOS (available on Homebrew), or
- A patched font for Doom's fallback ligature support. - A patched font for Doom's fallback ligature support.
** Mutsuharu's emacs-mac port or Emacs 28+ with Harfbuzz support ** Mutsuharu's emacs-mac port or Emacs 28+ with Harfbuzz support
Ligatures should be handled without any additional configuration. Ligatures should be handled without any additional configuration.
** Not Emacs-mac and Emacs <= 27 ** Not Emacs-mac and Emacs <= 27
:PROPERTIES:
:ID: a7e7402b-e202-4860-878b-d1933cff1d16
:END:
1. Enable one of the four ligature font flags: =+fira=, =+hasklig=, =+iosevka= 1. Enable one of the four ligature font flags: =+fira=, =+hasklig=, =+iosevka=
or =+pragmata-pro=. or =+pragmata-pro=.
2. Install the patched version of the associated font with ~M-x 2. Install the patched version of the associated font with ~M-x
@ -74,8 +71,13 @@ Ligatures should be handled without any additional configuration.
way because it is a non-free font and must be purchased and installed way because it is a non-free font and must be purchased and installed
manually. manually.
* TODO Features * TODO Usage
#+begin_quote
🔨 /This module's usage documentation is incomplete./ [[doom-contrib-module:][Complete it?]]
#+end_quote
** TODO Mathematical symbols replacement ** TODO Mathematical symbols replacement
** Coding ligatures ** Coding ligatures
This module includes configuration to compose combinations like =->= or =::= This module includes configuration to compose combinations like =->= or =::=
into prettier glyphs (called a ligature). Depending on the current version of into prettier glyphs (called a ligature). Depending on the current version of
@ -85,8 +87,8 @@ emacs, this is implemented in two different ways :
which haves the ligatures as separate unicode symbols, and using which haves the ligatures as separate unicode symbols, and using
prettify-symbols-mode, =->=-like combinations are manually listed and replaced prettify-symbols-mode, =->=-like combinations are manually listed and replaced
with the correct symbol. The mapping between =->=-like sequences and unicode with the correct symbol. The mapping between =->=-like sequences and unicode
values in the font are font-specific ; therefore =+fira=, =+iosevka=... files values in the font are font-specific ; therefore [[doom-module:][+fira]], [[doom-module:][+iosevka]]... files and
and specific fonts are necessary for it to work. specific fonts are necessary for it to work.
- composition-function-table method :: regexps are used to match all the usual - composition-function-table method :: regexps are used to match all the usual
sequences which are composed into ligatures. These regexps are passed to emacs sequences which are composed into ligatures. These regexps are passed to emacs
directly, which asks Harfbuzz to shape it. Ligatures are obtained directly, which asks Harfbuzz to shape it. Ligatures are obtained
@ -102,17 +104,23 @@ Even though harfbuzz has been included in emacs 27, there is currently a [[https
(#40864)]] which prevents a safe usage of /composition-function-table/ method in (#40864)]] which prevents a safe usage of /composition-function-table/ method in
emacs 27. emacs 27.
* Configuration * TODO Configuration
#+begin_quote
🔨 /This module's configuration documentation is incomplete./ [[doom-contrib-module:][Complete it?]]
#+end_quote
** Setting ligatures ** Setting ligatures
If you want to set ligatures for modules that don't have them by default you can If you want to set ligatures for modules that don't have them by default you can
use the ~set-ligatures!~ macro in your config el file use the ~set-ligatures!~ macro:
#+BEGIN_SRC emacs-lisp #+begin_src emacs-lisp
;; in $DOOMDIR/config.el
(after! PACKAGE (after! PACKAGE
(set-ligatures! 'MAJOR-MODE (set-ligatures! 'MAJOR-MODE
:symbol "keyword")) :symbol "keyword"))
#+END_SRC #+end_src
eg.
#+BEGIN_SRC emacs-lisp E.g.
#+begin_src emacs-lisp
(after! go-mode ; in this case the major mode and package named the same thing (after! go-mode ; in this case the major mode and package named the same thing
(set-ligatures! 'go-mode (set-ligatures! 'go-mode
:def "func" ; function keyword :def "func" ; function keyword
@ -123,9 +131,10 @@ eg.
:float "float" :bool "bool" :float "float" :bool "bool"
:for "for" :for "for"
:return "return" :yeild "yeild")) :return "return" :yeild "yeild"))
#+END_SRC #+end_src
you can set these symbols out of the box
#+BEGIN_SRC emacs-lisp You can set these symbols out of the box:
#+begin_src emacs-lisp
(set-ligatures! 'MAJOR-MODE (set-ligatures! 'MAJOR-MODE
;; Functional ;; Functional
:lambda "lambda keyword" :lambda "lambda keyword"
@ -158,19 +167,18 @@ you can set these symbols out of the box
:tuple "Tuple Keyword " :tuple "Tuple Keyword "
:pipe "Pipe Keyword" ;; FIXME: find a non-private char :pipe "Pipe Keyword" ;; FIXME: find a non-private char
:dot "Dot operator") :dot "Dot operator")
#+END_SRC #+end_src
If you have multiple versions of the same keyword you can set the symbol twice If you have multiple versions of the same keyword you can set the symbol twice:
#+begin_src emacs-lisp
#+BEGIN_SRC emacs-lisp
(set-ligatures! scala-mode (set-ligatures! scala-mode
:null "none" :null "none"
:null "None") :null "None")
#+END_SRC #+end_src
** Changing ligatures
if you don't like the symbols chosen you can change them by using...
#+BEGIN_SRC emacs-lisp ** Changing ligatures
if you don't like the symbols chosen you can change them by using:
#+begin_src emacs-lisp
;; you don't need to include all of them you can pick and mix ;; you don't need to include all of them you can pick and mix
(plist-put! +ligatures-extra-symbols (plist-put! +ligatures-extra-symbols
;; org ;; org
@ -210,7 +218,15 @@ if you don't like the symbols chosen you can change them by using...
:tuple "⨂" :tuple "⨂"
:pipe "" ;; FIXME: find a non-private char :pipe "" ;; FIXME: find a non-private char
:dot "•") ;; you could also add your own if you want :dot "•") ;; you could also add your own if you want
#+END_SRC #+end_src
* TODO Troubleshooting * Troubleshooting
If you have any problems with this module, do get in touch! /There are no known problems with this module./ [[doom-report:][Report one?]]
* Frequently asked questions
/This module has no FAQs yet./ [[doom-suggest-faq:][Ask one?]]
* TODO Appendix
#+begin_quote
🔨 This module has no appendix yet. [[doom-contrib-module:][Write one?]]
#+end_quote

View file

@ -1,43 +1,61 @@
← [[doom-module-index:][Back to module index]] ↙ [[doom-module-issues:::ui minimap][Issues]] ↖ [[doom-module-source:ui/minimap][Source]] ± [[doom-suggest-edit:][Suggest edits]] ? [[doom-help-modules:][Help]]
--------------------------------------------------------------------------------
#+TITLE: :ui minimap #+TITLE: :ui minimap
#+DATE: May 8, 2020 #+SUBTITLE: A map for lost programmers
#+SINCE: v3.0.0 #+CREATED: May 08, 2020
#+STARTUP: inlineimages nofold #+SINCE: 21.12.0
* Table of Contents :TOC_3:noexport: * Description :unfold:
- [[#description][Description]] This module displays a minimap of the buffer in a sidebar, similar to the
- [[#maintainers][Maintainers]] feature found in many other editors.
- [[#module-flags][Module Flags]]
- [[#plugins][Plugins]]
- [[#features][Features]]
- [[#configuration][Configuration]]
- [[#troubleshooting][Troubleshooting]]
- [[#scrolling-is-slowlaggy][Scrolling is slow/laggy]]
- [[#minimap-doesnt-close-when-disabled][Minimap doesn't close when disabled]]
* Description
This module adds a minimap to the right side of Emacs, similar to the feature
found in many other editors.
** Maintainers ** Maintainers
+ [[https://github.com/rushsteve1][@rushsteve1]] (Author) - [[doom-user:][@rushsteve1]]
** Module Flags [[doom-contrib-maintainer:][Become a maintainer?]]
This module provides no flags.
** Plugins ** Module flags
+ [[https://elpa.gnu.org/packages/minimap.html][minimap.el]] /This module has no flags./
** Packages
- [[doom-package:][minimap]]
** Hacks
/No hacks documented for this module./
** TODO Changelog
# This section will be machine generated. Don't edit it by hand.
/This module does not have a changelog yet./
* TODO Usage
#+begin_quote
🔨 /This module's usage documentation is incomplete./ [[doom-contrib-module:][Complete it?]]
#+end_quote
* Features
A minimap which provides an overview of the current buffer to the side, A minimap which provides an overview of the current buffer to the side,
displaying the currently visible region and the current line. You can left-click displaying the currently visible region and the current line. You can left-click
and drag to scroll along the buffer, or right-click anywhere to jump to there. and drag to scroll along the buffer, or right-click anywhere to jump to there.
* Configuration * TODO Configuration
#+begin_quote
🔨 /This module's configuration documentation is incomplete./ [[doom-contrib-module:][Complete it?]]
#+end_quote
There are a number of options provided by the =minimap.el= package this module There are a number of options provided by the =minimap.el= package this module
is based on. The easiest way to see all of them is =SPC h v minimap=. is based on. The easiest way to see all of them is [[kbd:][SPC h v minimap]].
* Troubleshooting * Troubleshooting
[[doom-report:][Report an issue?]]
** Scrolling is slow/laggy ** Scrolling is slow/laggy
Disable the minimap using =SPC t m= Disable the minimap using [[kbd:][SPC t m]].
** TODO Minimap doesn't close when disabled ** TODO Minimap doesn't close when disabled
* Frequently asked questions
/This module has no FAQs yet./ [[doom-suggest-faq:][Ask one?]]
* TODO Appendix
#+begin_quote
🔨 This module has no appendix yet. [[doom-contrib-module:][Write one?]]
#+end_quote

View file

@ -1,53 +1,55 @@
#+TITLE: ui/modeline ← [[doom-module-index:][Back to module index]] ↙ [[doom-module-issues:::ui modeline][Issues]] ↖ [[doom-module-source:ui/modeline][Source]] ± [[doom-suggest-edit:][Suggest edits]] ? [[doom-help-modules:][Help]]
#+DATE: July 29, 2018 --------------------------------------------------------------------------------
#+SINCE: v2.0.9 #+TITLE: :ui modeline
#+STARTUP: inlineimages #+SUBTITLE: Snazzy, Atom-inspired modeline, plus API
#+CREATED: February 20, 2017
#+SINCE: 2.0.0
* Table of Contents :TOC_2:noexport: * Description :unfold:
- [[#description][Description]]
- [[#module-flags][Module Flags]]
- [[#plugins][Plugins]]
- [[#prerequisites][Prerequisites]]
- [[#usage][Usage]]
- [[#hiding-the-modeline][Hiding the modeline]]
- [[#switching-the-modeline-and-header-line][Switching the modeline and header line]]
- [[#configuration][Configuration]]
- [[#changing-the-default-modeline][Changing the default modeline]]
- [[#activating-a-format][Activating a format]]
- [[#defining-a-modeline-format][Defining a modeline format]]
- [[#defining-a-modeline-segment][Defining a modeline segment]]
- [[#extracting-dooms-modeline-into-your-config][Extracting Doom's modeline into your config]]
- [[#troubleshooting][Troubleshooting]]
- [[#where-are-my-minor-modes][Where are my minor modes?]]
- [[#icons-in-my-modeline-look-strange][Icons in my modeline look strange]]
- [[#the-right-side-of-the-modeline-is-cut-off][The right side of the modeline is cut off]]
- [[#appendix][Appendix]]
- [[#autodefs][Autodefs]]
- [[#variables][Variables]]
- [[#faces][Faces]]
* Description
This module provides an Atom-inspired, minimalistic modeline for Doom Emacs, This module provides an Atom-inspired, minimalistic modeline for Doom Emacs,
powered by [[https://github.com/seagle0128/doom-modeline][the doom-modeline package]] (where you can find screenshots). powered by the [[doom-package:][doom-modeline]] package (where you can find screenshots).
** Module Flags ** Maintainers
+ =+light= Enables a lighter, less featureful version of the modeline that does - [[doom-user:][@hlissner]]
not depend on ~doom-modeline~, which has performances issues in some cases.
** Plugins [[doom-contrib-maintainer:][Become a maintainer?]]
+ [[https://github.com/seagle0128/doom-modeline][doom-modeline]]
+ [[https://github.com/syohex/emacs-anzu][anzu]]
+ [[https://github.com/syohex/emacs-evil-anzu][evil-anzu]]
* Prerequisites ** Module flags
This module has no prerequisites. - +light ::
Enable a lighter, less featureful version of the modeline that does not depend
on [[doom-package:][doom-modeline]], which has performances issues in some cases.
** Packages
- [[doom-package:][anzu]]
- [[doom-package:][doom-modeline]] unless [[doom-module:][+light]]
- [[doom-package:][evil-anzu]] if [[doom-module:][:editor evil]]
** Hacks
/No hacks documented for this module./
** TODO Changelog
# This section will be machine generated. Don't edit it by hand.
/This module does not have a changelog yet./
* Installation
[[id:01cffea4-3329-45e2-a892-95a384ab2338][Enable this module in your ~doom!~ block.]]
/This module has no external requirements./
* TODO Usage
#+begin_quote
🔨 /This module's usage documentation is incomplete./ [[doom-contrib-module:][Complete it?]]
#+end_quote
* Usage
** TODO Hiding the modeline ** TODO Hiding the modeline
** TODO Switching the modeline and header line ** TODO Switching the modeline and header line
* Configuration * TODO Configuration
#+begin_quote
🔨 /This module's configuration documentation is incomplete./ [[doom-contrib-module:][Complete it?]]
#+end_quote
** TODO Changing the default modeline ** TODO Changing the default modeline
** TODO Activating a format ** TODO Activating a format
@ -59,20 +61,23 @@ This module has no prerequisites.
** TODO Extracting Doom's modeline into your config ** TODO Extracting Doom's modeline into your config
* Troubleshooting * Troubleshooting
[[doom-report:][Report an issue?]]
** Where are my minor modes? ** Where are my minor modes?
I rarely need to know what minor modes are active, so I removed them. ~M-x I rarely need to know what minor modes are active, so I removed them. ~M-x
doom/describe-active-minor-mode~ was written to substitute for it. doom/describe-active-minor-mode~ was written to substitute for it.
** TODO Icons in my modeline look strange ** TODO Icons in my modeline look strange
** TODO The right side of the modeline is cut off ** TODO The right side of the modeline is cut off
I believe the consensus is: this is due to oversized icons, i.e. a font issue. Some possible solutions: I believe the consensus is: this is due to oversized icons, i.e. a font issue.
Some possible solutions:
1. Tweak ~all-the-icons-scale-factor~ (1.2 by default): ~(setq 1. Tweak ~all-the-icons-scale-factor~ (1.2 by default): ~(setq
all-the-icons-scale-factor 1.1)~ all-the-icons-scale-factor 1.1)~
2. Add some padding to the modeline definition: 2. Add some padding to the modeline definition:
#+begin_src emacs-lisp
#+begin_src elisp
(after! doom-modeline (after! doom-modeline
(doom-modeline-def-modeline 'main (doom-modeline-def-modeline 'main
'(bar matches buffer-info remote-host buffer-position parrot selection-info) '(bar matches buffer-info remote-host buffer-position parrot selection-info)
@ -80,18 +85,16 @@ I believe the consensus is: this is due to oversized icons, i.e. a font issue. S
#+end_src #+end_src
3. Use another font for the mode line (or a different ~:height~) (source) 3. Use another font for the mode line (or a different ~:height~) (source)
#+begin_src emacs-lisp
#+BEGIN_SRC elisp
(custom-set-faces! (custom-set-faces!
'(mode-line :family "Noto Sans" :height 0.9) '(mode-line :family "Noto Sans" :height 0.9)
'(mode-line-inactive :family "Noto Sans" :height 0.9)) '(mode-line-inactive :family "Noto Sans" :height 0.9))
#+END_SRC #+end_src
(Mentioned in #1680, #278 and seagle0128/doom-modeline#334) (Mentioned in [[doom-issue:][#1680]], [[doom-issue:][#278]] and [[https://github.com/seagle0128/doom-modeline/issues/334][seagle0128/doom-modeline#334]])
4. Change the width of icon characters in ~char-width-table~: 4. Change the width of icon characters in ~char-width-table~:
#+begin_src emacs-lisp
#+BEGIN_SRC elisp
(add-hook! 'doom-modeline-mode-hook (add-hook! 'doom-modeline-mode-hook
(let ((char-table char-width-table)) (let ((char-table char-width-table))
(while (setq char-table (char-table-parent char-table))) (while (setq char-table (char-table-parent char-table)))
@ -104,62 +107,72 @@ I believe the consensus is: this is due to oversized icons, i.e. a font issue. S
(optimize-char-table table) (optimize-char-table table)
(set-char-table-parent table char-table) (set-char-table-parent table char-table)
(setq char-width-table table))))) (setq char-width-table table)))))
#+END_SRC #+end_src
If this doesn't help, try different values for ~width~ such as ~width 1~ or ~width 3~. If this doesn't help, try different values for ~width~ such as ~width 1~ or
~width 3~.
* Frequently asked questions
/This module has no FAQs yet./ [[doom-suggest-faq:][Ask one?]]
* TODO Appendix
#+begin_quote
🔨 /This module's appendix is incomplete./ [[doom-contrib-module:][Write more?]]
#+end_quote
* Appendix
** Autodefs ** Autodefs
+ ~def-modeline-format! NAME LEFT &optional RIGHT~ - ~def-modeline-format! NAME LEFT &optional RIGHT~
+ ~def-modeline-segment! NAME &rest REST~ - ~def-modeline-segment! NAME &rest REST~
+ ~set-modeline! NAME &optional DEFAULT~ - ~set-modeline! NAME &optional DEFAULT~
** Variables ** Variables
+ doom-modeline-height - doom-modeline-height
+ doom-modeline-bar-width - doom-modeline-bar-width
+ doom-modeline-buffer-file-name-style - doom-modeline-buffer-file-name-style
+ doom-modeline-icon - doom-modeline-icon
+ doom-modeline-major-mode-icon - doom-modeline-major-mode-icon
+ doom-modeline-major-mode-color-icon - doom-modeline-major-mode-color-icon
+ doom-modeline-buffer-state-icon - doom-modeline-buffer-state-icon
+ doom-modeline-buffer-modification-icon - doom-modeline-buffer-modification-icon
+ doom-modeline-minor-modes - doom-modeline-minor-modes
+ doom-modeline-enable-word-count - doom-modeline-enable-word-count
+ doom-modeline-buffer-encoding - doom-modeline-buffer-encoding
+ doom-modeline-indent-info - doom-modeline-indent-info
+ doom-modeline-checker-simple-format - doom-modeline-checker-simple-format
+ doom-modeline-vcs-max-length - doom-modeline-vcs-max-length
+ doom-modeline-persp-name - doom-modeline-persp-name
+ doom-modeline-lsp - doom-modeline-lsp
+ doom-modeline-github - doom-modeline-github
+ doom-modeline-github-interval - doom-modeline-github-interval
+ doom-modeline-env-version - doom-modeline-env-version
+ doom-modeline-mu4e - doom-modeline-mu4e
+ doom-modeline-irc - doom-modeline-irc
+ doom-modeline-irc-stylize - doom-modeline-irc-stylize
** Faces ** Faces
+ doom-modeline-buffer-path - doom-modeline-buffer-path
+ doom-modeline-buffer-file - doom-modeline-buffer-file
+ doom-modeline-buffer-modified - doom-modeline-buffer-modified
+ doom-modeline-buffer-major-mode - doom-modeline-buffer-major-mode
+ doom-modeline-buffer-minor-mode - doom-modeline-buffer-minor-mode
+ doom-modeline-project-parent-dir - doom-modeline-project-parent-dir
+ doom-modeline-project-dir - doom-modeline-project-dir
+ doom-modeline-project-root-dir - doom-modeline-project-root-dir
+ doom-modeline-highlight - doom-modeline-highlight
+ doom-modeline-panel - doom-modeline-panel
+ doom-modeline-debug - doom-modeline-debug
+ doom-modeline-info - doom-modeline-info
+ doom-modeline-warning - doom-modeline-warning
+ doom-modeline-urgent - doom-modeline-urgent
+ doom-modeline-unread-number - doom-modeline-unread-number
+ doom-modeline-bar - doom-modeline-bar
+ doom-modeline-inactive-bar - doom-modeline-inactive-bar
+ doom-modeline-evil-emacs-state - doom-modeline-evil-emacs-state
+ doom-modeline-evil-insert-state - doom-modeline-evil-insert-state
+ doom-modeline-evil-motion-state - doom-modeline-evil-motion-state
+ doom-modeline-evil-normal-state - doom-modeline-evil-normal-state
+ doom-modeline-evil-operator-state - doom-modeline-evil-operator-state
+ doom-modeline-evil-visual-state - doom-modeline-evil-visual-state
+ doom-modeline-evil-replace-state - doom-modeline-evil-replace-state
+ doom-modeline-persp-name - doom-modeline-persp-name
+ doom-modeline-persp-buffer-not-in-persp - doom-modeline-persp-buffer-not-in-persp

View file

@ -1,37 +1,65 @@
#+TITLE: ui/nav-flash ← [[doom-module-index:][Back to module index]] ↙ [[doom-module-issues:::ui nav-flash][Issues]] ↖ [[doom-module-source:ui/nav-flash][Source]] ± [[doom-suggest-edit:][Suggest edits]] ? [[doom-help-modules:][Help]]
#+DATE: June 4, 2017 --------------------------------------------------------------------------------
#+SINCE: v2.0 #+TITLE: :ui nav-flash
#+STARTUP: inlineimages #+SUBTITLE: Blink after big motions
#+CREATED: June 04, 2017
#+SINCE: 2.0.0
* Table of Contents :TOC: * Description :unfold:
- [[#description][Description]]
- [[#plugins][Plugins]]
- [[#prerequisites][Prerequisites]]
- [[#configuration][Configuration]]
* Description
This module flashes the line around the cursor after any significant motion, to This module flashes the line around the cursor after any significant motion, to
make it easy to follow after big operations. make it easy to follow after big operations.
#+begin_quote #+begin_quote
Tremendously helpful on large, 1600p+ or 4K displays. 💡 Tremendously helpful on large, 1600p+ or 4K displays.
#+end_quote #+end_quote
** Plugins ** Maintainers
+ [[https://github.com/rolandwalker/nav-flash][nav-flash]] - [[doom-user:][@hlissner]]
* Prerequisites [[doom-contrib-maintainer:][Become a maintainer?]]
This module has no dependencies.
* Configuration ** Module flags
By default, ~nav-flash~ will be triggered whenever ~recenter~ is called or an /This module has no flags./
entry is added to the jump-list (managed by better-jumper).
~recenter~ is called after many hooks and commands, such as: ** Packages
- [[doom-package:][nav-flash]]
+ better-jumper-post-jump-hook ** Hacks
+ rtags-after-find-file-hook /No hacks documented for this module./
+ org-follow-link-hook
+ imenu-after-jump-hook ** TODO Changelog
+ counsel-grep-post-action-hook # This section will be machine generated. Don't edit it by hand.
+ dumb-jump-after-jump-hook /This module does not have a changelog yet./
* Installation
[[id:01cffea4-3329-45e2-a892-95a384ab2338][Enable this module in your ~doom!~ block.]]
/This module has no external requirements./
* Usage
By default, [[doom-package:][nav-flash]] will be triggered whenever [[fn:][recenter]] is called or an entry
is added to the jump-list (managed by [[doom-package:][better-jumper]]).
[[fn:][recenter]] is called after many hooks and commands, such as:
- [[var:][better-jumper-post-jump-hook]]
- [[var:][rtags-after-find-file-hook]]
- [[var:][org-follow-link-hook]]
- [[var:][imenu-after-jump-hook]]
- [[var:][counsel-grep-post-action-hook]]
- [[var:][dumb-jump-after-jump-hook]]
* TODO Configuration
#+begin_quote
🔨 This module has no configuration documentation yet. [[doom-contrib-module:][Write some?]]
#+end_quote
* Troubleshooting
/There are no known problems with this module./ [[doom-report:][Report one?]]
* Frequently asked questions
/This module has no FAQs yet./ [[doom-suggest-faq:][Ask one?]]
* TODO Appendix
#+begin_quote
🔨 This module has no appendix yet. [[doom-contrib-module:][Write one?]]
#+end_quote

View file

@ -1,9 +1,59 @@
#+TITLE: :evil neotree ← [[doom-module-index:][Back to module index]] ↙ [[doom-module-issues:::ui neotree][Issues]] ↖ [[doom-module-source:ui/neotree][Source]] ± [[doom-suggest-edit:][Suggest edits]] ? [[doom-help-modules:][Help]]
--------------------------------------------------------------------------------
#+TITLE: :ui neotree
#+SUBTITLE: NERDTree for evil nerds
#+CREATED: May 11, 2018
#+SINCE: 21.12.0
* Description :unfold:
This module brings a side panel for browsing project files, inspired by vim's This module brings a side panel for browsing project files, inspired by vim's
NERDTree. NERDTree.
#+begin_quote #+begin_quote
Sure, there's dired and projectile, but sometimes I'd like a bird's eye view of 💡 Sure, there's [[doom-package:][dired]] and [[doom-package:][projectile]], but sometimes I'd like a bird's eye view
a project. of a project.
#+end_quote
** Maintainers
*This module needs a maintainer.* [[doom-contrib-maintainer:][Become a maintainer?]]
** Module flags
/This module has no flags./
** Packages
- [[doom-package:][neotree]]
** TODO Hacks
#+begin_quote
🔨 This module's hacks haven't been documented yet. [[doom-contrib-module:][Document them?]]
#+end_quote
** TODO Changelog
# This section will be machine generated. Don't edit it by hand.
/This module does not have a changelog yet./
* Installation
[[id:01cffea4-3329-45e2-a892-95a384ab2338][Enable this module in your ~doom!~ block.]]
/This module has no external requirements./
* TODO Usage
#+begin_quote
🔨 This module has no usage documentation yet. [[doom-contrib-module:][Write some?]]
#+end_quote
* TODO Configuration
#+begin_quote
🔨 This module has no configuration documentation yet. [[doom-contrib-module:][Write some?]]
#+end_quote
* Troubleshooting
/There are no known problems with this module./ [[doom-report:][Report one?]]
* Frequently asked questions
/This module has no FAQs yet./ [[doom-suggest-faq:][Ask one?]]
* TODO Appendix
#+begin_quote
🔨 This module has no appendix yet. [[doom-contrib-module:][Write one?]]
#+end_quote #+end_quote

View file

@ -1,23 +1,58 @@
#+TITLE: ui/ophints ← [[doom-module-index:][Back to module index]] ↙ [[doom-module-issues:::ui ophints][Issues]] ↖ [[doom-module-source:ui/ophints][Source]] ± [[doom-suggest-edit:][Suggest edits]] ? [[doom-help-modules:][Help]]
#+DATE: June 4, 2017 --------------------------------------------------------------------------------
#+SINCE: v2.0 #+TITLE: :ui ophints
#+STARTUP: inlineimages #+SUBTITLE: An indicator for “what did I just do?”
#+CREATED: June 04, 2017
#+SINCE: 2.0.0
* Table of Contents :TOC_3:noexport: * Description :unfold:
- [[#description][Description]]
- [[#module-flags][Module Flags]]
- [[#plugins][Plugins]]
* Description
This module provides op-hints (operation hinting), i.e. visual feedback for This module provides op-hints (operation hinting), i.e. visual feedback for
certain operations. It highlights regions of text that the last operation (like certain operations. It highlights regions of text that the last operation (like
yank) acted on. yank) acted on.
Uses ~evil-goggles~ for evil users and ~volatile-highlights~ otherwise. Uses [[doom-package:][evil-goggles]] for evil users and [[doom-package:][volatile-highlights]] otherwise.
** Module Flags ** Maintainers
This module provides no flags. - [[doom-user:][@hlissner]]
** Plugins [[doom-contrib-maintainer:][Become a maintainer?]]
+ [[https://github.com/edkolev/evil-goggles/][evil-goggles]]*
+ [[https://github.com/k-talo/volatile-highlights.el][volatile-highlights]]* ** Module flags
/This module has no flags./
** Packages
- [[doom-package:][evil-goggles]] if [[doom-module:][:editor evil]]
- [[doom-package:][volatile-highlights]] unless [[doom-module:][:editor evil]]
** Hacks
/No hacks documented for this module./
** TODO Changelog
# This section will be machine generated. Don't edit it by hand.
/This module does not have a changelog yet./
* Installation
[[id:01cffea4-3329-45e2-a892-95a384ab2338][Enable this module in your ~doom!~ block.]]
/This module has no external requirements./
* TODO Usage
#+begin_quote
🔨 This module has no usage documentation yet. [[doom-contrib-module:][Write some?]]
#+end_quote
* TODO Configuration
#+begin_quote
🔨 This module has no configuration documentation yet. [[doom-contrib-module:][Write some?]]
#+end_quote
* Troubleshooting
/There are no known problems with this module./ [[doom-report:][Report one?]]
* Frequently asked questions
/This module has no FAQs yet./ [[doom-suggest-faq:][Ask one?]]
* TODO Appendix
#+begin_quote
🔨 This module has no appendix yet. [[doom-contrib-module:][Write one?]]
#+end_quote

View file

@ -1,21 +1,11 @@
#+TITLE: ui/popup ← [[doom-module-index:][Back to module index]] ↙ [[doom-module-issues:::ui popup][Issues]] ↖ [[doom-module-source:ui/popup][Source]] ± [[doom-suggest-edit:][Suggest edits]] ? [[doom-help-modules:][Help]]
#+DATE: January 6, 2018 --------------------------------------------------------------------------------
#+SINCE: v2.0.9 #+TITLE: :ui popup
#+STARTUP: inlineimages #+SUBTITLE: Tame sudden yet inevitable temporary windows
#+CREATED: January 06, 2018
#+SINCE: 21.12.0
* Table of Contents :TOC: * Description :unfold:
- [[#description][Description]]
- [[#module-flags][Module Flags]]
- [[#prerequisites][Prerequisites]]
- [[#configuration][Configuration]]
- [[#set-popup-rule-and-set-popup-rules][~set-popup-rule!~ and ~set-popup-rules!~]]
- [[#disabling-hidden-mode-line-in-popups][Disabling hidden mode-line in popups]]
- [[#appendix][Appendix]]
- [[#commands][Commands]]
- [[#library][Library]]
- [[#hacks][Hacks]]
* Description
This module provides a customizable popup window management system. This module provides a customizable popup window management system.
Not all windows are created equally. Some are less important. Some I want gone Not all windows are created equally. Some are less important. Some I want gone
@ -23,41 +13,84 @@ once they have served their purpose, like code output or a help buffer. Others I
want to stick around, like a scratch buffer or org-capture popup. want to stick around, like a scratch buffer or org-capture popup.
More than that, popups ought to be the second class citizens of my editor; More than that, popups ought to be the second class citizens of my editor;
spawned off to the side, discarded with the push of a button (e.g. =ESC= or spawned off to the side, discarded with the push of a button (e.g. [[kbd:][ESC]] or [[kbd:][C-g]]),
=C-g=), and easily restored if I want to see them again. Of course, this system and easily restored if I want to see them again. Of course, this system should
should clean up after itself and kill off buffers I mark as transient. clean up after itself and kill off buffers I mark as transient.
** Module Flags ** Maintainers
+ =+all= Enables fallback rules to ensure all temporary/special buffers (whose - [[doom-user:][@hlissner]]
name begins with a space or asterix) are treated as popups.
+ =+defaults= Enables reasonable default popup rules for a variety of buffers.
* Prerequisites [[doom-contrib-maintainer:][Become a maintainer?]]
This module has no external prerequisites.
** Module flags
- +all ::
Enable fallback rules to ensure all temporary/special buffers (whose name
begins with a space or asterix) are treated as popups.
- +defaults ::
Enable reasonable default popup rules for a variety of buffers.
** Packages
/This module doesn't install any packages./
** Hacks
- [[doom-package:][help-mode]] has been advised to follow file links in the buffer you were in
before entering the popup, rather than in a new window.
- [[doom-package:][wgrep]] buffers are advised to close themselves when aborting or committing
changes.
- [[doom-package:][persp-mode]] is advised to restore popup windows when loading a session from
file.
- Interactive calls to ~windmove-*~ commands (used by ~evil-window-*~ commands)
will ignore the ~no-other-window~ window parameter, allowing you to switch to
popup windows as if they're ordinary windows.
- ~balance-windows~ has been advised to close popups while it does its business,
then restore them afterwards.
- [[doom-package:][neotree]] advises ~balance-windows~, which causes major slow-downs when paired
with our ~balance-window~ advice, so we removes neotree's advice.
- [[doom-package:][org-mode]] is an ongoing (and huge) effort. It has a scorched-earth window
management system I'm not fond of. ie. it kills all windows and monopolizes
the frame. On top of that, it /really/ likes to use ~switch-to-buffer~ for
most of its buffer management, which completely bypasses
~display-buffer-alist~. Some work has gone into reversing this.
** TODO Changelog
# This section will be machine generated. Don't edit it by hand.
/This module does not have a changelog yet./
* Installation
[[id:01cffea4-3329-45e2-a892-95a384ab2338][Enable this module in your ~doom!~ block.]]
/This module has no external requirements./
* TODO Usage
#+begin_quote
🔨 This module has no usage documentation yet. [[doom-contrib-module:][Write some?]]
#+end_quote
* TODO Configuration
#+begin_quote
🔨 /This module's configuration documentation is incomplete./ [[doom-contrib-module:][Complete it?]]
#+end_quote
* Configuration
** ~set-popup-rule!~ and ~set-popup-rules!~ ** ~set-popup-rule!~ and ~set-popup-rules!~
This module has two functions for defining your own rules for popups: This module has two functions for defining your own rules for popups:
#+begin_src emacs-lisp
#+BEGIN_SRC emacs-lisp
(set-popup-rule! PREDICATE &key IGNORE ACTIONS SIDE SIZE WIDTH HEIGHT SLOT VSLOT TTL QUIT SELECT MODELINE AUTOSAVE PARAMETERS) (set-popup-rule! PREDICATE &key IGNORE ACTIONS SIDE SIZE WIDTH HEIGHT SLOT VSLOT TTL QUIT SELECT MODELINE AUTOSAVE PARAMETERS)
(set-popup-rules! &rest RULESETS) (set-popup-rules! &rest RULESETS)
#+END_SRC #+end_src
~PREDICATE~ is a predicate function or regexp string to match against the ~PREDICATE~ is a predicate function or regexp string to match against the
buffer's name. You'll find comprehensive documentation on the other keywords in buffer's name. You'll find comprehensive documentation on the other keywords in
~set-popup-rule!~'s docstring (=SPC h f set-popup-rule!=). ~set-popup-rule!~'s docstring ([[kbd:][SPC h f set-popup-rule!]]).
#+begin_quote #+begin_quote
Popup rules end up in ~display-buffer-alist~, which instructs ~display-buffer~ 📌 Popup rules end up in ~display-buffer-alist~, which instructs
calls on how to set up windows for buffers that meet certain conditions. ~display-buffer~ calls on how to set up windows for buffers that meet
However, some plugins can avoid it entirely if they use ~set-buffer~ or certain conditions. However, some plugins can avoid it entirely if they use
~switch-to-buffer~, which don't obey ~display-buffer-alist~. ~set-buffer~ or ~switch-to-buffer~, which don't obey ~display-buffer-alist~.
#+end_quote #+end_quote
Multiple popup rules can be defined with ~set-popup-rules!~: Multiple popup rules can be defined with ~set-popup-rules!~:
#+begin_src emacs-lisp
#+BEGIN_SRC emacs-lisp
(set-popup-rules! (set-popup-rules!
'(("^ \\*" :slot -1) ; fallback rule for special buffers '(("^ \\*" :slot -1) ; fallback rule for special buffers
("^\\*" :select t) ("^\\*" :select t)
@ -66,7 +99,7 @@ Multiple popup rules can be defined with ~set-popup-rules!~:
("^\\*Help" :slot -1 :size 0.2 :select t) ("^\\*Help" :slot -1 :size 0.2 :select t)
("^\\*doom:" ("^\\*doom:"
:size 0.35 :select t :modeline t :quit t :ttl t))) :size 0.35 :select t :modeline t :quit t :ttl t)))
#+END_SRC #+end_src
Omitted parameters in a ~set-popup-rules!~ will use the defaults set in Omitted parameters in a ~set-popup-rules!~ will use the defaults set in
~+popup-defaults~. ~+popup-defaults~.
@ -75,66 +108,55 @@ Omitted parameters in a ~set-popup-rules!~ will use the defaults set in
By default, the mode-line is hidden in popups. To disable this, you can either: By default, the mode-line is hidden in popups. To disable this, you can either:
1. Change the default ~:modeline~ property in ~+popup-defaults~: 1. Change the default ~:modeline~ property in ~+popup-defaults~:
#+begin_src emacs-lisp
#+BEGIN_SRC emacs-lisp ;; in $DOOMDIR/config.el
;; add to $DOOMDIR/config.el
(plist-put +popup-defaults :modeline t) (plist-put +popup-defaults :modeline t)
#+END_SRC #+end_src
A value of ~t~ will instruct popups to use the default mode-line. Any A value of ~t~ will instruct popups to use the default mode-line. Any popup
popup rule with a ~:modeline~ property can still override this. rule with a ~:modeline~ property can still override this.
2. Completely disable management of the mode-line in popups: 2. Completely disable management of the mode-line in popups:
#+begin_src emacs-lisp
#+BEGIN_SRC emacs-lisp ;; in $DOOMDIR/config.el
;; add to ~/.doom.d/config.el
(remove-hook '+popup-buffer-mode-hook #'+popup-set-modeline-on-enable-h) (remove-hook '+popup-buffer-mode-hook #'+popup-set-modeline-on-enable-h)
#+END_SRC #+end_src
* Troubleshooting
/There are no known problems with this module./ [[doom-report:][Report one?]]
* Frequently asked questions
/This module has no FAQs yet./ [[doom-suggest-faq:][Ask one?]]
* TODO Appendix
#+begin_quote
🔨 /This module's appendix is incomplete./ [[doom-contrib-module:][Write more?]]
#+end_quote
* Appendix
** Commands ** Commands
+ ~+popup/other~ (aliased to ~other-popup~, bound to ~C-x p~) - ~+popup/other~ (aliased to ~other-popup~, bound to [[kbd:][C-x p]])
+ ~+popup/toggle~ - ~+popup/toggle~
+ ~+popup/close~ - ~+popup/close~
+ ~+popup/close-all~ - ~+popup/close-all~
+ ~+popup/toggle~ - ~+popup/toggle~
+ ~+popup/restore~ - ~+popup/restore~
+ ~+popup/raise~ - ~+popup/raise~
** Library ** Library
+ Functions - Functions
+ ~+popup-window-p WINDOW~ - ~+popup-window-p WINDOW~
+ ~+popup-buffer-p BUFFER~ - ~+popup-buffer-p BUFFER~
+ ~+popup-buffer BUFFER &optional ALIST~ - ~+popup-buffer BUFFER &optional ALIST~
+ ~+popup-parameter PARAMETER &optional WINDOW~ - ~+popup-parameter PARAMETER &optional WINDOW~
+ ~+popup-parameter-fn PARAMETER &optional WINDOW~ - ~+popup-parameter-fn PARAMETER &optional WINDOW~
+ ~+popup-windows~ - ~+popup-windows~
+ Macros - Macros
+ ~without-popups!~ - ~without-popups!~
+ ~save-popups!~ - ~save-popups!~
+ Hooks - Hooks
+ ~+popup-adjust-fringes-h~ - ~+popup-adjust-fringes-h~
+ ~+popup|set-modeline~ - ~+popup|set-modeline~
+ ~+popup-close-on-escape-h~ - ~+popup-close-on-escape-h~
+ ~+popup-cleanup-rules-h~ - ~+popup-cleanup-rules-h~
+ Minor modes - Minor modes
+ ~+popup-mode~ - ~+popup-mode~
+ ~+popup-buffer-mode~ - ~+popup-buffer-mode~
** Hacks
+ =help-mode= has been advised to follow file links in the buffer you were in
before entering the popup, rather than in a new window.
+ =wgrep= buffers are advised to close themselves when aborting or committing
changes.
+ =persp-mode= is advised to restore popup windows when loading a session from
file.
+ Interactive calls to ~windmove-*~ commands (used by ~evil-window-*~ commands)
will ignore the ~no-other-window~ window parameter, allowing you to switch to
popup windows as if they're ordinary windows.
+ ~balance-windows~ has been advised to close popups while it does its business,
then restore them afterwards.
+ =neotree= advises ~balance-windows~, which causes major slow-downs when paired
with our ~balance-window~ advice, so we removes neotree's advice.
+ =org-mode= is an ongoing (and huge) effort. It has a scorched-earth window
management system I'm not fond of. ie. it kills all windows and monopolizes
the frame. On top of that, it /really/ likes to use ~switch-to-buffer~ for
most of its buffer management, which completely bypasses
~display-buffer-alist~. Some work has gone into reversing this.

View file

@ -1,18 +1,51 @@
#+TITLE: ui/tabs ← [[doom-module-index:][Back to module index]] ↙ [[doom-module-issues:::ui tabs][Issues]] ↖ [[doom-module-source:ui/tabs][Source]] ± [[doom-suggest-edit:][Suggest edits]] ? [[doom-help-modules:][Help]]
#+DATE: July 12, 2019 --------------------------------------------------------------------------------
#+SINCE: v2.1 #+TITLE: :ui tabs
#+STARTUP: inlineimages #+SUBTITLE: Keep tabs on your buffers, literally
#+CREATED: July 12, 2019
#+SINCE: 21.12.0
* Table of Contents :TOC_3:noexport: * Description :unfold:
- [[#description][Description]]
- [[#module-flags][Module Flags]]
- [[#plugins][Plugins]]
* Description
This module adds an Atom-esque tab bar to the Emacs UI. This module adds an Atom-esque tab bar to the Emacs UI.
** Module Flags ** Maintainers
This module provides no flags. /This module has no dedicated maintainers./ [[doom-contrib-maintainer:][Become a maintainer?]]
** Plugins ** Module flags
+ [[https://github.com/ema2159/centaur-tabs][centaur-tabs]] /This module has no flags./
** Packages
- [[doom-package:][centaur-tabs]]
** Hacks
/No hacks documented for this module./
** TODO Changelog
# This section will be machine generated. Don't edit it by hand.
/This module does not have a changelog yet./
* Installation
[[id:01cffea4-3329-45e2-a892-95a384ab2338][Enable this module in your ~doom!~ block.]]
/This module has no external requirements./
* TODO Usage
#+begin_quote
🔨 This module has no usage documentation yet. [[doom-contrib-module:][Write some?]]
#+end_quote
* TODO Configuration
#+begin_quote
🔨 This module has no configuration documentation yet. [[doom-contrib-module:][Write some?]]
#+end_quote
* Troubleshooting
/There are no known problems with this module./ [[doom-report:][Report one?]]
* Frequently asked questions
/This module has no FAQs yet./ [[doom-suggest-faq:][Ask one?]]
* TODO Appendix
#+begin_quote
🔨 This module has no appendix yet. [[doom-contrib-module:][Write one?]]
#+end_quote

View file

@ -1,71 +1,89 @@
#+TITLE: ui/treemacs ← [[doom-module-index:][Back to module index]] ↙ [[doom-module-issues:::ui treemacs][Issues]] ↖ [[doom-module-source:ui/treemacs][Source]] ± [[doom-suggest-edit:][Suggest edits]] ? [[doom-help-modules:][Help]]
#+DATE: April 5, 2021 --------------------------------------------------------------------------------
#+SINCE: v2.0.4 #+TITLE: :ui treemacs
#+STARTUP: inlineimages nofold #+SUBTITLE: A sidebar for all the things
#+CREATED: June 09, 2018
#+SINCE: 21.12.0 (#669)
* Table of Contents :TOC_3:noexport: * Description :unfold:
- [[#description][Description]] [[doom-package:treemacs][Treemacs]] is a file and project explorer similar to NeoTree or vim's NerdTree,
- [[#maintainers][Maintainers]] but largely inspired by the Project Explorer in Eclipse. It shows the file
- [[#module-flags][Module Flags]] system outlines of your projects in a simple tree layout allowing quick
- [[#plugins][Plugins]] navigation and exploration, while also possessing basic file management
- [[#prerequisites][Prerequisites]] utilities. It includes:
- [[#features][Features]]
- [[#configuration][Configuration]]
- [[#troubleshooting][Troubleshooting]]
* Description - Integration with Git (if [[doom-module:][:tools magit]] is enabled)
[[https://github.com/Alexander-Miller/treemacs][Treemacs]] is a file and project explorer similar to NeoTree or vims NerdTree, but largely inspired by the Project Explorer in Eclipse. It shows the file system outlines of your projects in a simple tree layout allowing quick navigation and exploration, while also possessing basic file management utilities. - Integration with Evil (if [[doom-module:][:editor evil +everywhere]] is enabled)
It includes: - Workspace awareness (if [[doom-module:][:ui workspaces]] is enabled)
+ Integration with Git (when =:tools magit= is enabled)
+ Integration with Evil (when =:editor evil +everywhere= is enabled)
+ Workspace awareness (when =:ui workspaces= is enabled)
** Maintainers ** Maintainers
+ This module has no dedicated maintainers. - [[doom-user:][@hlissner]]
** Module Flags [[doom-contrib-maintainer:][Become a maintainer?]]
+ =+lsp= Enable ~lsp-treemacs~ integration and add shortcuts for common commands.
** Plugins ** Module flags
+ [[https://github.com/Alexander-Miller/treemacs/][treemacs]] - +lsp ::
+ [[https://github.com/Alexander-Miller/treemacs/#treemacs-projectile][treemacs-projectile]] Enable ~lsp-treemacs~ integration and add shortcuts for common commands.
+ =:editor evil +everywhere=
+ [[https://github.com/Alexander-Miller/treemacs/#treemacs-evil][treemacs-evil]]
+ =:tools magit=
+ [[https://github.com/Alexander-Miller/treemacs/#treemacs-magit][treemacs-magit]]
+ =:ui workspaces=
+ [[https://github.com/Alexander-Miller/treemacs/#treemacs-persptreemacs-perspective][treemacs-persp]]
+ =+lsp=
+ [[https://github.com/emacs-lsp/lsp-treemacs][lsp-treemacs]]
* Prerequisites ** Packages
If ~+treemacs-git-mode~ is set to ~extended~ or ~deferred~ you will need to have - [[doom-package:][lsp-treemacs]] if [[doom-module:][+lsp]]
~python3~ installed. - [[doom-package:][treemacs]]
- [[doom-package:][treemacs-evil]] if [[doom-module:][:editor evil +everywhere]]
- [[doom-package:][treemacs-magit]] if [[doom-module:][:tools magit]]
- [[doom-package:][treemacs-persp]] if [[doom-module:][:ui workspaces]]
- [[doom-package:][treemacs-projectile]]
* Features ** Hacks
The project bar can be opened using =SPC o p=. /No hacks documented for this module./
** TODO Changelog
# This section will be machine generated. Don't edit it by hand.
/This module does not have a changelog yet./
* Installation
[[id:01cffea4-3329-45e2-a892-95a384ab2338][Enable this module in your ~doom!~ block.]]
If =python3= is present on your =$PATH=, [[doom-package:][treemacs]] will use it to display git
status for files.
* TODO Usage
#+begin_quote
🔨 /This module's usage documentation is incomplete./ [[doom-contrib-module:][Complete it?]]
#+end_quote
The project bar can be opened using [[kbd:][SPC o p]].
| Keybind | Description | | Keybind | Description |
|---------+-----------------------------------------------------------------| |---------+------------------------------------------------------------------|
| =o s= | Open a horizontal dired buffer on the currently highlighted node | | [[kbd:][o s]] | Open a horizontal dired buffer on the currently highlighted node |
| =o v= | Open a vertical dired buffer on the currently highlighted node | | [[kbd:][o v]] | Open a vertical dired buffer on the currently highlighted node |
* TODO Configuration
#+begin_quote
🔨 /This module's configuration documentation is incomplete./ [[doom-contrib-module:][Complete it?]]
#+end_quote
* Configuration
The variable ~+treemacs-git-mode~ sets the type of git integration that treemacs The variable ~+treemacs-git-mode~ sets the type of git integration that treemacs
has. has.
There are 3 possible values: There are 3 possible values:
1. ~'simple~ (the default), which highlights only files based on their git
1. simple, which highlights only files based on their git status, and is status, and is slightly faster,
slightly faster, 2. ~'extended~, which highlights both files and directories, but requires
2. extended, which highlights both files and directories, but requires
python, python,
3. deferred, same as extended, but highlights asynchronously. 3. ~'deferred~, same as extended, but highlights asynchronously.
the default being simple #+begin_quote
🚧 ~+treemacs-git-mode~ must be set before treemacs is loaded.
#+end_quote
This must be set before treemacs has loaded. * Troubleshooting
/There are no known problems with this module./ [[doom-report:][Report one?]]
* TODO Troubleshooting * Frequently asked questions
# Common issues and their solution, or places to look for help. /This module has no FAQs yet./ [[doom-suggest-faq:][Ask one?]]
* TODO Appendix
#+begin_quote
🔨 This module has no appendix yet. [[doom-contrib-module:][Write one?]]
#+end_quote

View file

@ -1,77 +1,98 @@
#+TITLE: ui/unicode ← [[doom-module-index:][Back to module index]] ↙ [[doom-module-issues:::ui unicode][Issues]] ↖ [[doom-module-source:ui/unicode][Source]] ± [[doom-suggest-edit:][Suggest edits]] ? [[doom-help-modules:][Help]]
#+DATE: June 8, 2020 --------------------------------------------------------------------------------
#+SINCE: v2.0 #+TITLE: :ui unicode
#+STARTUP: inlineimages nofold #+SUBTITLE: Extended unicode support for various languages
#+CREATED: June 08, 2020
#+SINCE: 2.0.0
* Description :unfold:
This module extends Doom's ability to display non-English unicode. It is
primarily useful for non-English Emacs users, for whom Doom's built-in unicode
support in insufficient.
* Table of Contents :TOC_3:noexport: This module relies on the [[https://github.com/rolandwalker/unicode-fonts][unicode-fonts]] package. It tries to setup the default
- [[#description][Description]] emacs fontset to cover as many unicode glyphs as possible by scanning all
- [[#maintainers][Maintainers]] available glyphs from all available fonts.
- [[#module-flags][Module Flags]]
- [[#plugins][Plugins]]
- [[#prerequisites][Prerequisites]]
- [[#features][Features]]
- [[#configuration][Configuration]]
- [[#getting-fonts-with-good-coverage][Getting fonts with good coverage]]
- [[#advanced-configuration][Advanced configuration]]
- [[#troubleshooting][Troubleshooting]]
- [[#emacs-daemon-mode][Emacs daemon mode]]
* Description
This module extends Doom's ability to display non-English unicode.
It is primarily useful for non-English Emacs users, for whom Doom's built-in unicode support in insufficient.
This module relies on the [[https://github.com/rolandwalker/unicode-fonts][unicode-fonts]] package. It tries to setup the default emacs fontset to cover as many unicode glyphs as possible by scanning all available glyphs from all available fonts.
When this module is enabled...
+ Emacs will prefer to use the ~doom-unicode-font~ font to display non-latin glyphs if it provides coverage for them.
+ The first time you run Emacs a unicode cache will be generated -- this will take a while!
+ The cache will be regenerated every time Emacs is made aware of new fonts or you change the font configuration e.g. by modifying ~doom-unicode-font~.
+ The cache will be stored and should not be regenerated unless font-related configuration or the versions of relevant packages changes.
When this module is enabled:
- Emacs will prefer to use the ~doom-unicode-font~ font to display non-latin
glyphs if it provides coverage for them.
- The first time you run Emacs a unicode cache will be generated -- this will
take a while!
- The cache will be regenerated every time Emacs is made aware of new fonts or
you change the font configuration e.g. by modifying ~doom-unicode-font~.
- The cache will be stored and should not be regenerated unless font-related
configuration or the versions of relevant packages changes.
** Maintainers ** Maintainers
This module has no dedicated maintainers. *This module needs a maintainer.* [[doom-contrib-maintainer:][Become a maintainer?]]
** Module Flags ** Module flags
This module provides no flags. /This module has no flags./
** Plugins ** Packages
+ [[https://github.com/rolandwalker/unicode-fonts][unicode-fonts]] - [[doom-package:][unicode-fonts]]
* Prerequisites ** Hacks
This module has no prerequisites. /No hacks documented for this module./
* Features ** TODO Changelog
# An in-depth list of features, how to use them, and their dependencies. # This section will be machine generated. Don't edit it by hand.
/This module does not have a changelog yet./
* Configuration * Installation
The first font that will be analyzed to see if it contains the glyphs of non-latin characters will be ~doom-unicode-font~. To set this font place [[id:01cffea4-3329-45e2-a892-95a384ab2338][Enable this module in your ~doom!~ block.]]
#+BEGIN_SRC elisp
/This module has no external requirements./
* TODO Usage
#+begin_quote
🔨 This module has no usage documentation yet. [[doom-contrib-module:][Write some?]]
#+end_quote
* TODO Configuration
#+begin_quote
🔨 /This module's configuration documentation is incomplete./ [[doom-contrib-module:][Complete it?]]
#+end_quote
The first font that will be analyzed to see if it contains the glyphs of
non-latin characters will be ~doom-unicode-font~:
#+begin_src emacs-lisp
;; in $DOOMDIR/config.el
(setq doom-unicode-font (font-spec :family "Fira Mono")) (setq doom-unicode-font (font-spec :family "Fira Mono"))
#+END_SRC #+end_src
in your private =config.el= file. If your ~doom-font~ provides good unicode coverage you just set
#+BEGIN_SRC elisp If your ~doom-font~ provides good unicode coverage use:
#+begin_src emacs-lisp
;; in $DOOMDIR/config.el
(setq doom-unicode-font doom-font) (setq doom-unicode-font doom-font)
#+END_SRC #+end_src
If your font does not provide some glyphs, this package will try its best to find another font that does.
If your font does not provide some glyphs, this package will try its best to
find another font that does.
** Getting fonts with good coverage ** Getting fonts with good coverage
A list of fonts with good unicode coverage can be found on the page of the [[https://github.com/rolandwalker/unicode-fonts#minimum-useful-fonts][unicode-fonts]] package. A list of fonts with good unicode coverage can be found on the page of the
[[https://github.com/rolandwalker/unicode-fonts#minimum-useful-fonts][unicode-fonts]] package.
** Advanced configuration ** Advanced configuration
Consult the [[https://github.com/rolandwalker/unicode-fonts][unicode-fonts]] package documentation for a description of more advanced configuration. The configuration should be placed, as usual, in your private =config.el= wrapped in an ~(after! unicode-fonts)~ block. The variable ~unicode-fonts-blocks~ contains a list of all unicode block names and their character ranges. The default fonts to search for glyphs are in the variable ~unicode-fonts-block-font-mapping~. Consult the [[https://github.com/rolandwalker/unicode-fonts][unicode-fonts]] package documentation for a description of more
advanced configuration. The configuration should be placed, as usual, in
=$DOOMDIR/config.el= wrapped in an ~(after! unicode-fonts)~ block. The variable
~unicode-fonts-blocks~ contains a list of all unicode block names and their
character ranges. The default fonts to search for glyphs are in the variable
~unicode-fonts-block-font-mapping~.
If you want to use the font =Symbola= for =Miscellaneous Symbols= by default you could add If you want to use the font =Symbola= for =Miscellaneous Symbols= by default
#+BEGIN_SRC elisp use:
#+begin_src emacs-lisp
;; in $DOOMDIR/config.el
(after! unicode-fonts (after! unicode-fonts
(push "Symbola" (cadr (assoc "Miscellaneous Symbols" unicode-fonts-block-font-mapping)))) (push "Symbola" (cadr (assoc "Miscellaneous Symbols" unicode-fonts-block-font-mapping))))
#+END_SRC #+end_src
to your =config.el=.
If you want to redefine several blocks an efficient way would be If you want to redefine several blocks an efficient way would be:
#+BEGIN_SRC elisp #+begin_src emacs-lisp
(after! unicode-fonts (after! unicode-fonts
(dolist (unicode-block '("Mathematical Alphanumeric Symbols" (dolist (unicode-block '("Mathematical Alphanumeric Symbols"
"Mathematical Operators" "Mathematical Operators"
@ -81,12 +102,20 @@ If you want to redefine several blocks an efficient way would be
"Miscellaneous Symbols and Arrows" "Miscellaneous Symbols and Arrows"
"Miscellaneous Symbols and Pictographs")) "Miscellaneous Symbols and Pictographs"))
(push "DejaVu Math TeX Gyre" (cadr (assoc unicode-block unicode-fonts-block-font-mapping))))) (push "DejaVu Math TeX Gyre" (cadr (assoc unicode-block unicode-fonts-block-font-mapping)))))
#+END_SRC #+end_src
You can find a list of fonts available to emacs using ~M-x counsel-fonts~. You can find a list of fonts available to emacs using ~M-x counsel-fonts~.
* Troubleshooting * Troubleshooting
# Common issues and their solution, or places to look for help. [[doom-report:][Report an issue?]]
** TODO Emacs daemon mode
Currently this module may fail setup fonts when emacs is run in daemon mode. See [[https://github.com/hlissner/doom-emacs/issues/3328][Bug 3328]]. ** TODO Emacs daemon mode ([[doom-issue:][#3328]])
This module may fail to setup fonts when emacs is run in a daemon session.
* Frequently asked questions
/This module has no FAQs yet./ [[doom-suggest-faq:][Ask one?]]
* TODO Appendix
#+begin_quote
🔨 This module has no appendix yet. [[doom-contrib-module:][Write one?]]
#+end_quote

View file

@ -0,0 +1,57 @@
← [[doom-module-index:][Back to module index]] ↙ [[doom-module-issues:::ui vc-gutter][Issues]] ↖ [[doom-module-source:ui/vc-gutter][Source]] ± [[doom-suggest-edit:][Suggest edits]] ? [[doom-help-modules:][Help]]
--------------------------------------------------------------------------------
#+TITLE: :ui vc-gutter
#+SUBTITLE: Get your diff out of the gutter
#+CREATED: June 26, 2018
#+SINCE: 21.12.0
* Description :unfold:
This module displays a diff of the current file (against HEAD) in the fringe.
Supports Git, Svn, Hg, and Bzr.
** Maintainers
- [[doom-user:][@hlissner]]
[[doom-contrib-maintainer:][Become a maintainer?]]
** Module flags
/This module has no flags./
** Packages
- [[doom-package:][git-gutter-fringe]]
** TODO Hacks
#+begin_quote
🔨 This module's hacks haven't been documented yet. [[doom-contrib-module:][Document them?]]
#+end_quote
** TODO Changelog
# This section will be machine generated. Don't edit it by hand.
/This module does not have a changelog yet./
* Installation
[[id:01cffea4-3329-45e2-a892-95a384ab2338][Enable this module in your ~doom!~ block.]]
This module requires any of Git, Svn, Hg, and/or Bazaar to get gutter diffs in
projects version controlled by them.
* TODO Usage
#+begin_quote
🔨 This module has no usage documentation yet. [[doom-contrib-module:][Write some?]]
#+end_quote
* TODO Configuration
#+begin_quote
🔨 This module has no configuration documentation yet. [[doom-contrib-module:][Write some?]]
#+end_quote
* Troubleshooting
/There are no known problems with this module./ [[doom-report:][Report one?]]
* Frequently asked questions
/This module has no FAQs yet./ [[doom-suggest-faq:][Ask one?]]
* TODO Appendix
#+begin_quote
🔨 This module has no appendix yet. [[doom-contrib-module:][Write one?]]
#+end_quote

View file

@ -1,42 +1,62 @@
#+TITLE: ui/vi-tilde-fringe ← [[doom-module-index:][Back to module index]] ↙ [[doom-module-issues:::ui vi-tilde-fringe][Issues]] ↖ [[doom-module-source:ui/vi-tilde-fringe][Source]] ± [[doom-suggest-edit:][Suggest edits]] ? [[doom-help-modules:][Help]]
#+DATE: May 22, 2021 --------------------------------------------------------------------------------
#+SINCE: v2.0.5 #+TITLE: :ui vi-tilde-fringe
#+STARTUP: inlineimages nofold #+SUBTITLE: Fringe tildes beyond EOB
#+CREATED: September 24, 2017
#+SINCE: 2.0.6
* Table of Contents :TOC_3:noexport: * Description :unfold:
- [[#description][Description]]
- [[#maintainers][Maintainers]]
- [[#module-flags][Module Flags]]
- [[#plugins][Plugins]]
- [[#prerequisites][Prerequisites]]
- [[#configuration][Configuration]]
* Description
Displays a tilde(~) in the left fringe to indicate an empty line, similar to Vi. Displays a tilde(~) in the left fringe to indicate an empty line, similar to Vi.
** Maintainers ** Maintainers
This module has no dedicated maintainers. - [[doom-user:][@hlissner]]
** Module Flags [[doom-contrib-maintainer:][Become a maintainer?]]
This module provides no flags.
** Plugins ** Module flags
+ [[https://github.com/syl20bnr/vi-tilde-fringe][vi-tilde-fringe]] /This module has no flags./
* Prerequisites ** Packages
This module has no prerequisites. - [[doom-package:][vi-tilde-fringe]]
** Hacks
/No hacks documented for this module./
** TODO Changelog
# This section will be machine generated. Don't edit it by hand.
/This module does not have a changelog yet./
* Installation
[[id:01cffea4-3329-45e2-a892-95a384ab2338][Enable this module in your ~doom!~ block.]]
/This module has no external requirements./
* Usage
Nothing more needs to be done once the module is activated. Tildes will become
visible in all buffers, after EOB.
* Configuration * Configuration
By default, doom activates ~vi-tilde-fringe-mode~ for ~prog-mode~, ~text-mode~ and ~conf-mode~. To change this to your liking, you can remove any of the modes from the list By default, doom activates ~vi-tilde-fringe-mode~ for ~prog-mode~, ~text-mode~
and ~conf-mode~. To change this to your liking, you can remove any of the modes
from the list:
#+begin_src emacs-lisp #+begin_src emacs-lisp
;; in ~/.doom.d/config.el ;; in $DOOMDIR/config.el
(remove-hook 'text-mode-hook #'vi-tilde-fringe-mode) (remove-hook 'text-mode-hook #'vi-tilde-fringe-mode)
#+end_src #+end_src
or add new modes where you would like ~vi-tilde-fringe-mode~ enabled. Or add new modes where you would like ~vi-tilde-fringe-mode~ enabled:
#+begin_src emacs-lisp #+begin_src emacs-lisp
;; in ~/.doom.d/config.el ;; in $DOOMDIR/config.el
(add-hook 'org-mode-hook #'vi-tilde-fringe-mode) (add-hook 'org-mode-hook #'vi-tilde-fringe-mode)
#+end_src #+end_src
* Troubleshooting
/There are no known problems with this module./ [[doom-report:][Report one?]]
* Frequently asked questions
/This module has no FAQs yet./ [[doom-suggest-faq:][Ask one?]]
* TODO Appendix
#+begin_quote
🔨 This module has no appendix yet. [[doom-contrib-module:][Write one?]]
#+end_quote

View file

@ -1,66 +1,92 @@
#+TITLE: ui/window-select ← [[doom-module-index:][Back to module index]] ↙ [[doom-module-issues:::ui window-select][Issues]] ↖ [[doom-module-source:ui/window-select][Source]] ± [[doom-suggest-edit:][Suggest edits]] ? [[doom-help-modules:][Help]]
#+DATE: October 8, 2017 --------------------------------------------------------------------------------
#+SINCE: v2.0.7 #+TITLE: :ui window-select
#+STARTUP: inlineimages #+SUBTITLE: Visually switch windows
#+CREATED: October 08, 2017
#+SINCE: 2.0.7 (#237)
* Table of Contents :TOC: * Description :unfold:
- [[#description][Description]]
- [[#module-flags][Module Flags]]
- [[#packages][Packages]]
- [[#prerequisites][Prerequisites]]
- [[#features][Features]]
- [[#configuration][Configuration]]
- [[#ace-window][ace-window]]
- [[#switch-window][switch-window]]
* Description
This module provides several methods for selecting windows without the use of This module provides several methods for selecting windows without the use of
the mouse or spatial navigation (e.g. =C-w {h,j,k,l}=). the mouse or spatial navigation (e.g. [[kbd:][C-w {h,j,k,l}]]).
The command ~other-window~ is remapped to either ~switch-window~ or The command ~other-window~ is remapped to either [[doom-package:][switch-window]] or [[doom-package:][ace-window]],
~ace-window~, depending on which backend you've enabled. It is bound to ~C-x o~ depending on which backend you've enabled. It is bound to [[kbd:][C-x o]] (and [[kbd:][C-w C-w]] for
(and ~C-w C-w~ for evil users). evil users).
It also provides numbered windows and selection with the ~winum~ package, if It also provides numbered windows and selection with the [[doom-package:][winum]] package, if
desired. Evil users can jump to window N in =C-w <N>= (where N is a number desired. Evil users can jump to window N in [[kbd:][C-w <N>]] (where N is a number between
between 0 and 9). Non evil users have =C-x w <N>= instead. 0 and 9). Non evil users have [[kbd:][C-x w <N>]] instead.
** Module Flags ** Maintainers
+ =+switch-window= Use the switch-window package as the backend, instead of /This module has no dedicated maintainers./ [[doom-contrib-maintainer:][Become a maintainer?]]
ace-window (avy).
+ =+numbers= Enable numbered windows and window selection (using winum). ** Module flags
- +numbers ::
Enable numbered windows and window selection (using [[doom-package:][winum]]).
- +switch-window ::
Use the [[doom-package:][switch-window]] package as the backend, instead of ace-window ([[doom-package:][avy]]).
** Packages ** Packages
+ [[https://github.com/dimitri/switch-window][switch-window]] (if =+switch-window=) - [[doom-package:][ace-window]] unless [[doom-module:][+switch-window]]
+ [[https://github.com/abo-abo/ace-window][ace-window]] (if =+switch-window= isn't enabled) - [[doom-package:][switch-window]] if [[doom-module:][+switch-window]]
+ [[https://github.com/deb0ch/emacs-winum][winum]] (if =+numbers=) - [[doom-package:][winum]] if [[doom-module:][+numbers]]
* Prerequisites ** Hacks
This module has no additional dependencies. /No hacks documented for this module./
** TODO Changelog
# This section will be machine generated. Don't edit it by hand.
/This module does not have a changelog yet./
* Installation
[[id:01cffea4-3329-45e2-a892-95a384ab2338][Enable this module in your ~doom!~ block.]]
/This module has no external requirements./
* TODO Usage
#+begin_quote
🔨 This module has no usage documentation yet. [[doom-contrib-module:][Write some?]]
#+end_quote
* TODO Configuration
#+begin_quote
🔨 /This module's configuration documentation is incomplete./ [[doom-contrib-module:][Complete it?]]
#+end_quote
* TODO Features
* Configuration
This module provides two backends, both providing the same functionality, but This module provides two backends, both providing the same functionality, but
with different visual cues. They are =ace-window= and =switch-window=. with different visual cues. They are [[doom-package:][ace-window]] and [[doom-package:][switch-window]].
** ace-window ** ace-window
The first character of the buffers changes to a highlighted, user-selectable The first character of the buffers changes to a highlighted, user-selectable
character. character.
+ Pros: the content of the buffers are always visible. - *Pros:* the content of the buffers are always visible.
+ Cons: The display characters are small and difficult to see (see below for a way to enlarge them). - *Cons:* The display characters are small and difficult to see (see below for a
way to enlarge them).
**** Custom font-face example *** Custom font-face example
This changes the ace-window display to show a white letter with a red background. The box attribute adds some padding. This changes the ace-window display to show a white letter with a red
#+BEGIN_SRC elisp background. The box attribute adds some padding:
#+begin_src emacs-lisp
(custom-set-faces! (custom-set-faces!
'(aw-leading-char-face '(aw-leading-char-face
:foreground "white" :background "red" :foreground "white" :background "red"
:weight bold :height 2.5 :box (:line-width 10 :color "red"))) :weight bold :height 2.5 :box (:line-width 10 :color "red")))
#+END_SRC #+end_src
** switch-window ** switch-window
Replaces the entire buffer with large letters. Replaces the entire buffer with large letters.
+ Pros: The displayed characters are /really/ easy to see. - *Pros:* The displayed characters are /really/ easy to see.
+ Cons: You can't see the contents of the buffers. - *Cons:* You can't see the contents of the buffers.
* Troubleshooting
/There are no known problems with this module./ [[doom-report:][Report one?]]
* Frequently asked questions
/This module has no FAQs yet./ [[doom-suggest-faq:][Ask one?]]
* TODO Appendix
#+begin_quote
🔨 This module has no appendix yet. [[doom-contrib-module:][Write one?]]
#+end_quote

View file

@ -1,45 +1,53 @@
#+TITLE: ui/workspaces ← [[doom-module-index:][Back to module index]] ↙ [[doom-module-issues:::ui workspaces][Issues]] ↖ [[doom-module-source:ui/workspaces][Source]] ± [[doom-suggest-edit:][Suggest edits]] ? [[doom-help-modules:][Help]]
#+DATE: February 4, 2017 --------------------------------------------------------------------------------
#+SINCE: v1.3 #+TITLE: :ui workspaces
#+STARTUP: inlineimages #+SUBTITLE: Tab emulation, persistence, & separate workspaces
#+CREATED: February 20, 2017
#+SINCE: 2.0.0
* Table of Contents :TOC: * Description :unfold:
- [[#description][Description]] This module adds support for workspaces, powered by [[doom-package:][persp-mode]], as well as a API
- [[#module-flags][Module Flags]]
- [[#packages][Packages]]
- [[#prerequisites][Prerequisites]]
- [[#features][Features]]
- [[#isolated-buffer-list][Isolated buffer-list]]
- [[#automatic-workspaces][Automatic workspaces]]
- [[#session-persistence][Session persistence]]
- [[#workspace-persistence][Workspace persistence]]
- [[#appendix][Appendix]]
- [[#commands--keybindings][Commands & Keybindings]]
- [[#api][API]]
* Description
This module adds support for workspaces, powered by persp_mode, as well as a API
for manipulating them. for manipulating them.
#+begin_quote #+begin_quote
There are many ways to use workspaces. I spawn a workspace per task. Say I'm 💡 There are many ways to use workspaces. I spawn a workspace per task. Say I'm
working in the main workspace, when I realize there is a bug in another part of working in the main workspace, when I realize there is a bug in another part
my project. I open a new workspace and deal with it in there. In the meantime, I of my project. I open a new workspace and deal with it in there. In the
need to check my email, so mu4e gets its own workspace. meantime, I need to check my email, so mu4e gets its own workspace.
Once I've completed the task, I close the workspace and return to main. Once I've completed the task, I close the workspace and return to main.
#+end_quote #+end_quote
** Module Flags ** Maintainers
This module provides no flags. - [[doom-user:][@hlissner]]
[[doom-contrib-maintainer:][Become a maintainer?]]
** Module flags
/This module has no flags./
** Packages ** Packages
+ [[https://github.com/Bad-ptr/persp-mode.el][persp-mode]] - [[doom-package:][persp-mode]]
* Prerequisites ** TODO Hacks
This module has no additional dependencies. #+begin_quote
🔨 This module's hacks haven't been documented yet. [[doom-contrib-module:][Document them?]]
#+end_quote
** TODO Changelog
# This section will be machine generated. Don't edit it by hand.
/This module does not have a changelog yet./
* Installation
[[id:01cffea4-3329-45e2-a892-95a384ab2338][Enable this module in your ~doom!~ block.]]
/This module has no external requirements./
* TODO Usage
#+begin_quote
🔨 /This module's usage documentation is incomplete./ [[doom-contrib-module:][Complete it?]]
#+end_quote
* Features
** Isolated buffer-list ** Isolated buffer-list
When persp-mode is active, ~doom-buffer-list~ becomes workspace-restricted. You When persp-mode is active, ~doom-buffer-list~ becomes workspace-restricted. You
can overcome this by using ~buffer-list~. can overcome this by using ~buffer-list~.
@ -47,8 +55,8 @@ can overcome this by using ~buffer-list~.
** Automatic workspaces ** Automatic workspaces
A workspace is automatically created (and switched to) when you: A workspace is automatically created (and switched to) when you:
+ Create a new frame (with =make-frame=; bound to =M-N= by default). - Create a new frame (with =make-frame=; bound to [[kbd:][M-N]] by default).
+ Switch to a project using ~projectile-switch-project~. - Switch to a project using ~projectile-switch-project~.
** Session persistence ** Session persistence
By default, your session is autosaved when you quit Emacs (or disable By default, your session is autosaved when you quit Emacs (or disable
@ -63,26 +71,41 @@ If you'd like to save a specific workspace, use ~M-x +workspace/save~, which can
be loaded into the current session (as another workspace) with ~M-x be loaded into the current session (as another workspace) with ~M-x
+workspace/load~. +workspace/load~.
* Appendix
** Commands & Keybindings ** Commands & Keybindings
Here is a list of available commands, their default keybindings (defined in Here is a list of available commands, their default keybindings (defined in
[[../../config/default/+evil-bindings.el][private/default/+bindings.el]]), and corresponding ex commands (if any -- defined [[../../config/default/+evil-bindings.el][config/default/+bindings.el]]), and corresponding ex commands (if any -- defined
in [[../../editor/evil/+commands.el][private/default/+evil-commands.el]]). in [[../../editor/evil/+commands.el][config/default/+evil-commands.el]]).
| command | key / ex command | description | | command | key / ex command | description |
|-----------------------------------+----------------------------+------------------------------------------------------------| |-----------------------------------+----------------------+------------------------------------------------------------|
| ~+workspace/new~ | =SPC TAB n= | Create a new, blank workspace | | ~+workspace/new~ | [[kbd:][SPC TAB n]] | Create a new, blank workspace |
| ~+workspace/display~ | =SPC TAB TAB= | Display open workspaces in the mode-line | | ~+workspace/display~ | [[kbd:][SPC TAB TAB]] | Display open workspaces in the mode-line |
| ~+workspace/load~ | =SPC TAB l= | Load a saved workspace into the current session | | ~+workspace/load~ | [[kbd:][SPC TAB l]] | Load a saved workspace into the current session |
| ~+workspace/restore-last-session~ | =SPC TAB R= | Restore last session | | ~+workspace/restore-last-session~ | [[kbd:][SPC TAB R]] | Restore last session |
| ~+workspace/rename~ | =SPC TAB r= | Rename the current workspace | | ~+workspace/rename~ | [[kbd:][SPC TAB r]] | Rename the current workspace |
| ~+workspace/save~ | =SPC TAB s= | Save the current workspace to a file | | ~+workspace/save~ | [[kbd:][SPC TAB s]] | Save the current workspace to a file |
| ~+workspace/switch-to~ | =SPC TAB .= | Switch to an open workspace | | ~+workspace/switch-to~ | [[kbd:][SPC TAB .]] | Switch to an open workspace |
| ~+workspace/other~ | =SPC TAB `= | Switch to last workspace | | ~+workspace/other~ | [[kbd:][SPC TAB `]] | Switch to last workspace |
| ~+workspace/switch-left~ | =SPC TAB [= / =[ w= / =gT= | Switch to previous workspace | | ~+workspace/switch-left~ | [[kbd:][SPC TAB []] / [[kbd:][[ w]] / [[kbd:][gT]] | Switch to previous workspace |
| ~+workspace/switch-right~ | =SPC TAB ]= / =] w= / =gt= | Switch to next workspace | | ~+workspace/switch-right~ | [[kbd:][SPC TAB ]]] / [[kbd:][] w]] / [[kbd:][gt]] | Switch to next workspace |
| ~+workspace/delete~ | =SPC TAB d= | Delete the current workspace | | ~+workspace/delete~ | [[kbd:][SPC TAB d]] | Delete the current workspace |
| ~+workspace/kill-session~ | =SPC TAB x= / =:sclear= | Clears the current session (kills all windows and buffers) | | ~+workspace/kill-session~ | [[kbd:][SPC TAB x]] / [[kbd:][:sclear]] | Clears the current session (kills all windows and buffers) |
* TODO Configuration
#+begin_quote
🔨 This module has no configuration documentation yet. [[doom-contrib-module:][Write some?]]
#+end_quote
* Troubleshooting
/There are no known problems with this module./ [[doom-report:][Report one?]]
* Frequently asked questions
/This module has no FAQs yet./ [[doom-suggest-faq:][Ask one?]]
* TODO Appendix
#+begin_quote
🔨 /This module's appendix is incomplete./ [[doom-contrib-module:][Write more?]]
#+end_quote
** API ** API
+ ~+workspace-list~ -> list<Struct> + ~+workspace-list~ -> list<Struct>

View file

@ -1,33 +1,24 @@
#+TITLE: ui/zen ← [[doom-module-index:][Back to module index]] ↙ [[doom-module-issues:::ui zen][Issues]] ↖ [[doom-module-source:ui/zen][Source]] ± [[doom-suggest-edit:][Suggest edits]] ? [[doom-help-modules:][Help]]
#+DATE: December 20, 2019 --------------------------------------------------------------------------------
#+SINCE: v3.0.0 #+TITLE: :ui zen
#+STARTUP: inlineimages #+SUBTITLE: Distraction-free mode for the eternally distracted
#+CREATED: December 20, 2019
#+SINCE: 21.12.0
* Table of Contents :TOC_3:noexport: * Description :unfold:
- [[#description][Description]]
- [[#usage][Usage]]
- [[#module-flags][Module Flags]]
- [[#plugins][Plugins]]
- [[#hacks][Hacks]]
- [[#prerequisites][Prerequisites]]
- [[#features][Features]]
- [[#distractions-free-mode][Distractions-free mode]]
- [[#configuration][Configuration]]
- [[#enable-fullscreen-on-activation][Enable fullscreen on activation]]
* Description
This module provides two minor modes that make Emacs into a more comfortable This module provides two minor modes that make Emacs into a more comfortable
writing or coding environment. Folks familiar with "distraction-free" or "zen" writing or coding environment. Folks familiar with "distraction-free" or "zen"
modes from other editors -- or [[https://github.com/rnkn/olivetti][olivetti]], [[https://github.com/zk-phi/sublimity][sublimity]], and [[https://github.com/IdoMagal/Tabula-Rasa][tabula-rasa]] (Emacs modes from other editors -- or [[doom-package:][olivetti]], [[doom-package:][sublimity]], and [[doom-package:][tabula-rasa]] (Emacs
plugins) -- will feel right at home. plugins) -- will feel right at home.
These modes are: These modes are:
- ~mixed-pitch-mode~ ::
+ ~mixed-pitch-mode~ :: Which renders (most) text in a variable pitch font (see Which renders (most) text in a variable pitch font (see
~doom-variable-pitch-font~). Unlike ~variable-pitch-mode~, this will not ~doom-variable-pitch-font~). Unlike ~variable-pitch-mode~, this will not
affect segments of text that are intended to remain in a fixed pitch font, affect segments of text that are intended to remain in a fixed pitch font,
such as code blocks or ASCII tables. such as code blocks or ASCII tables.
+ ~writeroom-mode~ :: Our all-in-one "zen" mode that will: - ~writeroom-mode~ ::
Our all-in-one "zen" mode that will:
1. Center the current buffer. 1. Center the current buffer.
2. Remove superfluous UI elements (like the modeline). 2. Remove superfluous UI elements (like the modeline).
3. Activate ~mixed-pitch-mode~. 3. Activate ~mixed-pitch-mode~.
@ -35,22 +26,17 @@ These modes are:
5. And make the window's borders slightly thicker (see 5. And make the window's borders slightly thicker (see
~+zen-window-divider-size~). ~+zen-window-divider-size~).
** Usage ** Maintainers
This module provides two entry points: - [[doom-user:][@hlissner]]
+ ~M-x +zen/toggle~ :: toggles ~writeroom-mode~ (restricted to the current [[doom-contrib-maintainer:][Become a maintainer?]]
buffer).
+ ~M-x +zen/toggle-fullscreen~ :: toggles zen mode in full-screen mode (deletes
other windows and full screens the Emacs frame).
Invoke either command again to undo the change. ** Module flags
/This module has no flags./
** Module Flags ** Packages
This module provides no flags. - [[doom-package:][mixed-pitch]]
- [[doom-package:][writeroom-mode]]
** Plugins
+ [[https://github.com/joostkremers/writeroom-mode][writeroom-mode]]
+ [[https://gitlab.com/jabranham/mixed-pitch][mixed-pitch]]
** Hacks ** Hacks
+ Doom has disabled all of writeroom-mode's "global" effects + Doom has disabled all of writeroom-mode's "global" effects
@ -61,18 +47,37 @@ This module provides no flags.
+ ~text-scale~ has been advised to adjust ~visual-fill-column~'s margins, so its + ~text-scale~ has been advised to adjust ~visual-fill-column~'s margins, so its
text won't "squeeze" as you scale it up (or "spill" when scaled down). text won't "squeeze" as you scale it up (or "spill" when scaled down).
* Prerequisites ** TODO Changelog
This module has no prerequisites. # This section will be machine generated. Don't edit it by hand.
/This module does not have a changelog yet./
* Features * Installation
** Distractions-free mode [[id:01cffea4-3329-45e2-a892-95a384ab2338][Enable this module in your ~doom!~ block.]]
This can be activated with =SPC t z= for evil users.
Non-evil users can use =C-c t z= or 'M-x writeroom-mode'.
* Configuration /This module has no external requirements./
** Enable fullscreen on activation
#+BEGIN_SRC elisp
(setq writeroom-fullscreen-effect t)
#+END_SRC
Or fullscreen manually with =SPC t F= (or =F11= for non-evil users). * Usage
This module provides two entry points:
- ~M-x +zen/toggle~ (on [[kbd:][<leader> t z]]): toggles ~writeroom-mode~ (restricted to
the current buffer).
- ~M-x +zen/toggle-fullscreen~ (on [[kbd:][<leader> t Z]]): toggles zen mode in
full-screen mode (deletes other windows and full screens the Emacs frame).
Invoke either command again to undo the change.
* TODO Configuration
#+begin_quote
🔨 This module has no configuration documentation yet. [[doom-contrib-module:][Write some?]]
#+end_quote
* Troubleshooting
/There are no known problems with this module./ [[doom-report:][Report one?]]
* Frequently asked questions
/This module has no FAQs yet./ [[doom-suggest-faq:][Ask one?]]
* TODO Appendix
#+begin_quote
🔨 This module has no appendix yet. [[doom-contrib-module:][Write one?]]
#+end_quote