Commit Graph

115 Commits

Author SHA1 Message Date
643ff13053 ui/doom: make solaire-mode a little pickier
Instead of only activating in buffers that a real (which is more
selective), simply activate in buffers that are file-visiting (this
means that real buffers that aren't highlighted can exist, particularly
term/eshell buffers).
2018-05-25 00:55:06 +02:00
09cb4f6716 Major refactor & optimization of how modules load their packages
Now that we are loading package autoloads files (as part of the
generated doom-package-autoload-file when running make autoloads), many
:commands properties are redundant. In fact, many def-package! blocks
are redundant.

In some cases, we can do without a config.el file entirely, and can move
into the autoloads file or rely entirely on package autoloads.

Also, many settings have been moved in their module's autoloads files,
which makes them available ASAP; their use no longer depends on module
load order.

This gained me a modest ~10% boost in startup speed.
2018-05-25 00:46:16 +02:00
0b8f884d18 ui/doom: simplify +doom-folded-face (now set in doom-themes) 2018-05-14 13:05:03 +02:00
52cdb0bd83 Remove doom-fringe-size; set default fringe in :ui doom
There was no way to customize doom-fringe-size. Better to customize
fringes by using fringe-mode, {left,right}-fringe-width or
set-window-fringes directly.
2018-05-11 10:00:23 +02:00
0afae2eacf Remove fringe-helper package 2018-05-08 19:42:28 +02:00
87aa05ffee ui/doom: solaire-mode support for doom-nord-light 2018-05-03 18:03:13 +02:00
f38cd94f33 ui/doom: improve solaire-mode theme integration
Now +doom-solaire-themes is an alist that informs Doom if the current
theme should be loaded with solaire-mode, and whether
solaire-mode-swap-bg should be used.
2018-03-28 06:49:54 -04:00
174e0518a1 ui/doom: fix void-symbol error caused by misnamed advice function 2018-03-28 03:32:52 -04:00
895b9d5484 ui/doom: +doom|reload-theme => +doom*reload 2018-03-22 23:27:31 -04:00
0e5e586826 ui/doom: improve theme+solaire-mode init process
Solaire-mode will now auto-enable itself and swap the bg for themes
defined in `+doom-solaire-themes`.

Also, use doom-load-theme-hook now.
2018-03-22 19:28:53 -04:00
b9da309d6b ui/doom: fix solaire not resetting post-load-theme 2018-03-22 19:27:25 -04:00
3f85c76a2c ui/doom: use ':weight light' in +doom-folded-face 2018-03-18 03:36:36 -04:00
f4a0311834 ui/doom: add solaire-mode-reset to focus-in-hook
Addresses an edge case where the fringes would forget their color.
2018-02-18 03:14:52 -05:00
7707aec28a Remove doom group
Not really useful, and Doom doesn't encourage using the Emacs Customize
interface.
2018-02-18 03:04:58 -05:00
bd6fb35007 ui/doom: turn-on-solaire-mode on org-capture-mode-hook 2018-02-07 01:36:16 -05:00
91357a3e5d 💥 Replace core-popup with new feature/popup module
This is a breaking change! Update your :popup settings. Old ones will
throw errors!

Doom's new popup management system casts off its shackles (hur hur) and
replaces them with the monster that is `display-buffer-alist`, and
window parameters.

However, this is highly experimental! Expect edge cases.  Particularly
with org-mode and magit (or anything that does its own window
management).

Relevant to #261, #263, #325
2018-01-06 02:17:43 -05:00
93f3f0ef38 ui/doom: update hooks, refactor & simplify
+ doom-init-ui-hook => doom-init-theme-hook
+ Remove specific mode hooks for solaire-mode (need to revisit this)
+ Preemptive removal of doom-popup-mode hook
+ Use function for hs-set-up-overlay instead of lambda
2018-01-04 16:14:59 -05:00
0ff5966379 Refactor solaire-mode init (fix startup errors in #285) 2017-12-09 16:52:23 -05:00
f8e8dbad8f General minor refactor 2017-12-08 23:14:12 -05:00
c3077d1049 ui/doom: update README 2017-12-08 23:14:12 -05:00
5a09d539ba Breaking change: remove font and theme settings
I am removing settings for core configuration to reduce "magic" in Doom.
set! is meant for cross-configuring modules that may or may not be
enabled. There should be no such concern for configuring Doom core.

From now on, change your fonts with:

  (setq doom-font (font-spec :family "Fira Mono" :size 12)
        doom-variable-pitch-font (font-spec :family "Fira Sans")
        doom-unicode-font (font-spec :family "DejaVu Sans Mono")
        doom-big-font (font-spec :family "Fira Mono" :size 19))
2017-12-08 23:14:12 -05:00
9d81bc5a8b Major refactor: use-package-always-defer = nil & use :hook
Possibly breaking change: packages are no longer deferred by default.

Addresses #286
2017-12-08 23:14:11 -05:00
323953db29 Remove default font (leave it to the user)
Addresses #164, #165, #205, #244
2017-11-05 19:54:44 +01:00
42fec8494d Rename doom/reload => doom/reload-load-path 2017-09-19 15:07:57 +02:00
90048fc019 Temporarily disable doom-themes-visual-bell-config
It currently conflicts with swapping backgrounds with solaire-mode.
2017-09-03 21:59:13 +02:00
cbabf6849c Standardize module READMEs 2017-08-21 20:13:31 +02:00
ab5c87bae9 Add solaire-mode-swap-bg 2017-08-09 21:22:00 +02:00
749553993d Remove org-mode custom fontification
This has been merged into doom-themes.
2017-08-03 21:24:08 +02:00
e6658b7d8e General minor refactor 2017-07-19 00:25:05 +02:00
2b5eb5763f Use new font/theme settings in ui/doom 2017-07-05 02:59:17 +02:00
8c1fb1e6b2 +doom:scratch-buffer => doom/scratch-buffer 2017-07-03 03:39:18 +02:00
cca37f2508 Add doom-(pre|post)-reload-theme-hook 2017-06-29 14:58:10 +02:00
ecd8ad0f46 Change how themes, fonts & modelines are loaded
WARNING: THIS IS A BREAKING CHANGE FOR THEME/FONT/NLINUM CUSTOMIZATIONS.

This change was motivated by the need to decouple theme and font loading
from the ui/doom module.

Now, it is doom-core's purview. Theme and fonts are loaded after
initfiles are read (attached to the doom-init-ui-hook hook), giving
other modules (especially private ones) a chance to change the theme or
fonts.

+ Refactor core-ui.el
+ New init hook: doom-init-ui-hook
+ Decouple theme/font loading from ui/doom
+ Load modelines are doom-init-ui-hook
+ New theme/font variables (replaces old ui/doom variables)
  + doom-theme
  + doom-font
  + doom-variable-pitch-font
  + doom-unicode-font
+ Change nlinum variables
  + doom-line-number-lpad
  + doom-line-number-rpad
  + doom-line-number-pad-char

Addresses #117
2017-06-28 16:18:24 +02:00
46b3f06f50 Remove :load-path for doom-themes 2017-06-23 03:13:21 +02:00
c958f1eafd Move italic customization to private module 2017-06-15 15:09:31 +02:00
816df321a5 General refactor & cleanup 2017-06-14 21:15:19 +02:00
4984a548d1 Refactor DOOM init & add new init hooks
+ Add doom-init-hook and doom-post-init-hook to simplify Emacs init
  hooks into less ambiguous ones.
+ Attach former after-init-hook and emacs-startup-hook hooks to new doom
  init hooks.
+ Vastly improves daemon and tty support: preventing incorrect colors
  from bleeding across face class barriers, and into GUI Emacs and vice
  versa, when spawned with emacsclient.
+ Fix persp-mode breaking Emacs daemon, and ensuring that initialization
  is done properly in terminal Emacs (and emacsclient frames).
2017-06-12 00:37:14 +02:00
e165450903 Refactor fringe-helper config 2017-06-09 01:09:19 +02:00
c7254e7bdc Major optimization refactor, across the board
+ enable lexical-scope everywhere (lexical-binding = t): ~5-10% faster
  startup; ~5-20% general boost
+ reduce consing, function calls & garbage collection by preferring
  cl-loop & dolist over lambda closures (for mapc[ar], add-hook, and
  various cl-lib filter/map/reduce functions) -- where possible
+ prefer functions with dedicated opcodes, like assq (see byte-defop's
  in bytecomp.el for more)
+ prefer pcase & cond (faster) over cl-case
+ general refactor for code readability
+ ensure naming & style conventions are adhered to
+ appease byte-compiler by marking unused variables with underscore
+ defer minor mode activation to after-init, emacs-startup or
  window-setup hooks; a customization opportunity for users + ensures
  custom functionality won't interfere with startup.
2017-06-09 00:47:45 +02:00
cdd24312d9 Move feature/unicode => ui/unicode 2017-06-08 14:27:06 +02:00
b4e454823f Ignore +doom-unicode-font if :feature unicode is active 2017-06-08 14:21:51 +02:00
b8bbda68c9 Update +doom-folded-face colors (for doom-themes update) 2017-06-07 21:03:24 +02:00
bf4dc9d5c5 Reset solaire-mode on load-theme or doom/reload 2017-06-07 21:03:24 +02:00
9fc4a0e619 ui/doom: re-enable doom-themes-visual-bell-config 2017-06-07 21:03:24 +02:00
a027775739 Disable doom-themes-visual-bell-config (fix #95) 2017-06-06 14:02:56 +02:00
14b3228dfb Remove visual bell fn (doom-themes offers this now) 2017-06-05 12:35:51 +02:00
b7b9a2c2fd Add solaire-mode 2017-06-05 12:35:51 +02:00
861cc537cc Add nlinum-hl 2017-06-05 12:35:51 +02:00
cbf9f7a079 Move window-divider-mode from ui/doom => core-ui 2017-06-05 12:35:51 +02:00
084c7be50f Move nav-flash from ui/doom to ui/nav-flash (#92) 2017-06-04 18:28:17 +02:00