Commit graph

752 commits

Author SHA1 Message Date
Henrik Lissner
c50888a83a
Inhibit doom-dashboard in noninteractive session 2017-06-14 21:15:20 +02:00
Henrik Lissner
816df321a5
General refactor & cleanup 2017-06-14 21:15:19 +02:00
Henrik Lissner
732dee608a
Stability/error-handling refactor (part 1)
This refactor is about improving how Emacs deals with errors.

A large net is now cast at startup to catch possible errors, produce
more helpful error messages, and localize the damage. Significantly
reducing the risk of later modules not loading (and leaving you
stranded in a half-broken Emacs session).

The DOOM core files are an exception. If something messes up in there,
it *should* choke.

+ use-package will now report missing packages or slow-loading/broken
  def-package! configurations.
+ Persp-mode no longer (inadvertantly) hides buffers that pop up at
  startup, like the *Warnings*, *Backtrace* or debugger buffers.
+ `make autoloads` (or doom/reload-autoloads) now produces a slightly
  more informative error message if an error occurs while building the
  autoloads file.
+ Error handling for package management is *slightly* better now; error
  messages now include the type of error; this needs work.
2017-06-14 21:15:19 +02:00
Henrik Lissner
042da73d5d
Initialize doom-init-time a little sooner (#106) 2017-06-12 15:13:30 +02:00
Henrik Lissner
7f76dabfd0
Use 'special' modeline in circe-mode (#103) 2017-06-12 14:31:41 +02:00
Henrik Lissner
571b5c55d8
Add buffer-info-simple modeline segment 2017-06-12 14:31:12 +02:00
Henrik Lissner
2d219c24eb
Fix ui/doom-quit for new quit-confirm system 2017-06-12 01:41:54 +02:00
Henrik Lissner
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
Henrik Lissner
e165450903
Refactor fringe-helper config 2017-06-09 01:09:19 +02:00
Henrik Lissner
58b77716c9
Move all-the-icons to core-ui 2017-06-09 01:09:19 +02:00
Henrik Lissner
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
Henrik Lissner
64a142b3fc
ui/unicode: setq-default bidi-display-reordering 2017-06-08 14:34:57 +02:00
Henrik Lissner
cdd24312d9
Move feature/unicode => ui/unicode 2017-06-08 14:27:06 +02:00
Henrik Lissner
b4e454823f
Ignore +doom-unicode-font if :feature unicode is active 2017-06-08 14:21:51 +02:00
Henrik Lissner
b8bbda68c9 Update +doom-folded-face colors (for doom-themes update) 2017-06-07 21:03:24 +02:00
Henrik Lissner
bf4dc9d5c5 Reset solaire-mode on load-theme or doom/reload 2017-06-07 21:03:24 +02:00
Henrik Lissner
9fc4a0e619 ui/doom: re-enable doom-themes-visual-bell-config 2017-06-07 21:03:24 +02:00
Henrik Lissner
ef8dede1ed evil-goggles: defer load; disable diff faces (#93)
Diff faces is a customization, which is best saved for the private
module. Also, defer evil-goggles-mode to emacs-startup.
2017-06-07 21:02:50 +02:00
Henrik Lissner
b6beacf804
Refactor evil-goggles config 2017-06-07 03:57:21 +02:00
Henrik Lissner
0e00ece5c3 Merge pull request #93 from gilbertw1/feature-evil-goggles
added module ui/evil-goggles
2017-06-07 03:47:43 +02:00
Henrik Lissner
a027775739
Disable doom-themes-visual-bell-config (fix #95) 2017-06-06 14:02:56 +02:00
Henrik Lissner
baad7953bf
Breaking change: rewrite add-transient-hook!
HOOK is now evaluated. Hooks should be quoted (and functions
sharp-quoted).

This also fixes commit 0150f78e.
2017-06-05 16:43:14 +02:00
Henrik Lissner
14b3228dfb Remove visual bell fn (doom-themes offers this now) 2017-06-05 12:35:51 +02:00
Henrik Lissner
b7b9a2c2fd Add solaire-mode 2017-06-05 12:35:51 +02:00
Henrik Lissner
861cc537cc Add nlinum-hl 2017-06-05 12:35:51 +02:00
Henrik Lissner
cbf9f7a079 Move window-divider-mode from ui/doom => core-ui 2017-06-05 12:35:51 +02:00
Henrik Lissner
30402495fe General refactor + cleanup 2017-06-05 12:35:51 +02:00
Bryan Gilbert
78c13a4202 added module ui/evil-goggles 2017-06-04 13:27:19 -04:00
Henrik Lissner
084c7be50f
Move nav-flash from ui/doom to ui/nav-flash (#92) 2017-06-04 18:28:17 +02:00
Henrik Lissner
117e55f0c2 General cleanup + refactor 2017-05-29 01:05:34 +02:00
Henrik Lissner
b4917bfa2a ui/doom: blink on focus-in & refactor 2017-05-28 02:48:20 +02:00
Henrik Lissner
8ca6e2630b Bring back nlinum
linum-mode *really* slows down buffers when they're displayed in more
than one window. This lag isn't present in nlinum. nlinum isn't perfect
either but... lesser of two evils.

This includes advisors and an ESC hook to mitigate the issue of
disappearing nlinum line numbers.
2017-05-28 02:48:20 +02:00
Henrik Lissner
7fc4447ef6 Conform nav-flash commands to naming conventions 2017-05-26 20:22:45 +02:00
Henrik Lissner
c711d7e662 Fix void-function define-fringe-bitmap errors 2017-05-25 20:13:05 +02:00
Henrik Lissner
10ea06b661 General cleanup + refactor 2017-05-25 20:12:43 +02:00
Henrik Lissner
e1f60b2bfd Update READMEs & add new ones 2017-05-25 20:09:12 +02:00
Henrik Lissner
733042cb7f Refactor anzu--reset-status hooks 2017-05-25 12:12:38 +02:00
Henrik Lissner
6b5f0af985 Make dashboard more vanilla Emacs friendly 2017-05-25 12:12:15 +02:00
Henrik Lissner
656452df00 General cleanup & refactor; update TODO 2017-05-19 17:21:52 +02:00
Henrik Lissner
615cf15313 General refactor & cleanup 2017-05-17 21:07:41 +02:00
Henrik Lissner
03ebdf7855 ui/doom-modeline: revise face defs (to match doom-themes update) 2017-05-17 18:27:02 +02:00
Henrik Lissner
44e672655d ui/doom: use initial-frame-alist & better +doom/reset-theme 2017-05-17 01:34:33 +02:00
Henrik Lissner
c64526eb40 Move flycheck ui config to ui/doom 2017-05-16 22:21:21 +02:00
Henrik Lissner
20b7d4a6f9 ui/doom: fix blinking when using H/M/L jumps 2017-05-16 22:20:57 +02:00
Henrik Lissner
e071545d36 ui/doom: add docstrings for blink-cursor funcs 2017-05-16 18:07:17 +02:00
Henrik Lissner
b679a86452 feature/evil: improve neotree popup integration 2017-05-16 18:05:39 +02:00
Henrik Lissner
1ce3f39529 ui/doom: fix nav-flash triggers
Used to trigger when evil-multiedit was invoked, or on every keypress in
eshell/term buffers (both caused by eager recenter-ing).
2017-05-16 18:05:39 +02:00
Henrik Lissner
721b26d9f3 ui/doom-modeline: set special modeline for image buffers 2017-05-16 18:05:39 +02:00
Henrik Lissner
994978bc0b ui/doom-modeline: tweak mode-line faces & formatting 2017-05-16 18:05:39 +02:00
Henrik Lissner
d8e3d853a9 ui/doom: centralize doom-buffer-mode activation 2017-05-16 18:05:39 +02:00