Commit Graph

1694 Commits

Author SHA1 Message Date
d3270a9b00 Fix whitespace-mode space-marks in nlinum (#109)
...by changing the padding character in line numbers.
2017-06-15 14:45:33 +02:00
3d6bd3f3f0 Improve whitespace-mode config 2017-06-15 14:45:32 +02:00
853ad98ae9 Fix editorconfig indent-policing in Lisp modes
Editorconfig in Lisp enforces lisp-indent-offset too strictly, ruining
its adaptive indentation. We don't want to disable it complete in those
modes however. In all other respects (controlling spaces vs tabs,
charset, max_line_length, etc) editorconfig is great.
2017-06-15 14:45:32 +02:00
cf7779138a Fix editorconfig-conf-mode 2017-06-15 14:24:18 +02:00
9039707184 Fix error when private init.el doesn't exist
Found in doom-initialize-packages, which DOOM calls in many
noninteractive functions.
2017-06-14 21:42:08 +02:00
816df321a5 General refactor & cleanup 2017-06-14 21:15:19 +02:00
633e693cab {Fix,Refactor} doom/describe-{setting,module} 2017-06-14 21:15:19 +02:00
9c93c453e8 Reorganize unit-tests and test workflow
+ Moved unit tests out of tests/ and into their respective modules.
+ Rewrite makefile and added these tasks:
  + <MODULE>/<SUBMODULE> -- byte-compile a specific module
  + test:<MODULE>/<SUBMODULE> -- runs tests for a specific module
  + testi -- run tests in an interactive session of Emacs (WIP)
  + run -- opens an Emacs session with this config; useful when it is in
    a non-standard location.
2017-06-14 21:15:19 +02:00
cacd188286 Replace doom-package-*-p with doom-package-prop 2017-06-14 21:15:19 +02:00
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
55f0760c4e Add nlinum-hl to core/packages.el 2017-06-14 12:14:34 +02:00
6dff6e124b Bring back nlinum-hl
I moved the nlinum--region fix to the nlinum-hl package; which also
contains fixes for other problematic major-modes.
2017-06-14 02:51:24 +02:00
c1890307a6 Fix precedence of popup rules
More general rules should be lower in the list.
2017-06-13 17:52:06 +02:00
3031212a76 If an init-hook dies in the forest, does it make a sound? 2017-06-12 15:15:39 +02:00
042da73d5d Initialize doom-init-time a little sooner (#106) 2017-06-12 15:13:30 +02:00
d9d049549f By default, empty buffer-file-name = unreal buffer 2017-06-12 14:28:59 +02:00
07299c5020 core-lib: add doom-quote & doom-enlist 2017-06-12 02:48:26 +02:00
e5a04e512f core-ui: refactor echo-keystrokes hooks 2017-06-12 01:41:55 +02:00
38f9e4b0a6 Fix delete-frame => doom/delete-frame remap 2017-06-12 01:41:54 +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
d3054f4679 Load core-lib a little sooner 2017-06-11 23:52:56 +02:00
d5652d2779 Change what recentf ignores; add doom-host-dir var 2017-06-11 23:50:50 +02:00
66cfbb2563 Fix quit confirmations in daemon; add for frames
+ Add quit confirmation when closing a frame with real buffers
+ Ensure quit confirmations also work in daemon frames (tty or gui)
2017-06-11 16:24:49 +02:00
c8e977e50a v2.0.3 bump 2017-06-11 01:16:56 +02:00
2097498f3e General docstring+idempotency refactor 2017-06-11 00:59:02 +02:00
7c20a43be6 Clean up quelpa build repos on package deletion 2017-06-10 23:32:59 +02:00
74c5f1111a require => load! (premature optimization) 2017-06-10 22:59:51 +02:00
5f65855f13 Remove goto-last-change
This plugin conflicts with goto-chg dependency in Evil.
2017-06-10 22:58:35 +02:00
688aef12d4 Fix #88: ignored private packages.el 2017-06-10 18:21:59 +02:00
de8269acf8 fixup! Fix doom/what-face not handling face plist specs 2017-06-10 16:10:59 +02:00
ca222c1b75 Fix doom/what-face not handling face plist specs 2017-06-10 16:07:56 +02:00
f1c34fba72 core-os: remove unnecessary persistent-soft-store 2017-06-10 11:54:47 +02:00
c5f2879927 core-ui: optimize hooks 2017-06-10 01:54:59 +02:00
085fbb3f72 core-popups: optimize + refactor 2017-06-10 01:54:33 +02:00
a30b0efce5 Add doom-popup-no-fringe option; disable fringes in popups 2017-06-10 01:54:15 +02:00
bab738c56c Move helm popup settings to core-popups 2017-06-10 01:53:51 +02:00
6d2a7e22b3 Fix typo in nlinum--region advice 2017-06-09 14:20:45 +02:00
7ba22d0d86 Possibly fix disappearing line numbers (#59) 2017-06-09 13:48:28 +02:00
ae2ca94609 Add all-the-icons to core/packages.el 2017-06-09 01:48:29 +02:00
1ef4d6f190 Optimize buffer library (reduce function calls) 2017-06-09 01:18:31 +02:00
f071e55dc0 Enable nlinum-highlight-current-line 2017-06-09 01:09:19 +02:00
e165450903 Refactor fringe-helper config 2017-06-09 01:09:19 +02:00
58b77716c9 Move all-the-icons to core-ui 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
4d487c3e0f Rewrite buffer tests; refactor doom-kill-buffer 2017-06-08 13:46:23 +02:00
7b5d2063f8 doom-popup-p: don't require window for buffer target 2017-06-08 13:45:04 +02:00
c60de062ce doom/what-minor-mode: accept symbols & handle errors 2017-06-08 11:16:44 +02:00
b4986e908a doom/what-face: return list noninteractively 2017-06-08 11:16:44 +02:00
655e565fe0 doom/what-face: accept pos arg 2017-06-08 11:16:44 +02:00
aa6ecaa68e Revert async package refresh (#95, #96) 2017-06-08 01:00:44 +02:00