Commit Graph

124 Commits

Author SHA1 Message Date
c96086d426 Fix reference to void variable path
In certain uses of file-exists-p! and project-file-exists-p!
2018-06-04 21:17:49 +02:00
52a04fd8c6 Optimize file-exists-p! & project-file-exists-p! 2018-06-04 21:17:49 +02:00
b53df20dd5 Minor refactor of associate! macro 2018-06-03 23:56:25 +02:00
796af69c28 Move define-key! macro to core-lib 2018-06-03 23:52:21 +02:00
e5a4415d58 General, minor reformatting/refactor 2018-06-02 13:58:04 +02:00
a4d03654bd Fix associate!'s :files refusing a list of strings
Due to changes under the hood, the :files FORM property requires FORM to
either be a nested form of and/or sexps, or a single string. This is
inconsistent with the plurality of ":files", so it has been fixed to
accept a list of strings (with an implicit (and ...)).
2018-05-31 16:59:53 +02:00
c0b904afca Fix void-variable nose-mode error in python #628
Caused by associate! only doing a fboundp check on MODE, but not boundp,
before trying to access its value.
2018-05-30 16:05:24 +02:00
6b1e1a2c58 Fix doom-files-in returning files in arbitrary order
This would cause compilation issues in doom//byte-compile because
prerequisite files weren't compiled before dependent ones.
2018-05-30 01:43:57 +02:00
4863f9fbf0 Fix after! macro with multiple features 2018-05-28 17:31:44 +02:00
9e7703db2a core-lib (add-transient-hook!): set permanent-local-hook on hook fn 2018-05-24 22:35:45 +02:00
3dd291a675 core-lib: improve function docstrings 2018-05-24 21:15:17 +02:00
4ee0b5ba6d New macros file-exists-p! & project-file-exists-p!
The latter replaces the doom-project-has! macro
2018-05-24 21:15:17 +02:00
b2186745b7 Refactor doom--resolve-path-forms 2018-05-24 18:35:06 +02:00
a48f75371b core-lib (doom-files-in): default relative-to to default-directory 2018-05-24 13:02:20 +02:00
dc0175b8e1 Merge doom-files-under into doom-files-in; more powerful doom-files-in 2018-05-23 23:34:32 +02:00
2637c415d3 Add error checks & docstrings to doom-keyword-* lib functions 2018-05-23 19:09:09 +02:00
67269fdf2b add-transient-hook!: unintern => fmakunbound 2018-05-21 01:38:17 +02:00
ac5eaf0fb3 Load core-lib before core-package
So that core-package may use the Doom standard library.
2018-05-21 01:38:17 +02:00
16a9126b3e Make after! noop if package is disabled
After disabling a package, def-package! blocks for that package are
ignored. Now, after! blocks for those packages will be ignored too.
2018-05-21 01:38:17 +02:00
dc4e0f1556 Add doom-file-cookie-p to core-lib 2018-05-20 00:07:06 +02:00
fa37d7b05e Refactor core initialization process
A vastly simpler bootstrap process.

Also load core libs in core-lib (duh)
2018-05-19 16:42:48 +02:00
59f510e85f Add four new functions for keywords & file collection 2018-05-19 16:32:12 +02:00
80adb9c1f6 General refactor for consistency & idempotency
Also updated comments
2018-05-18 01:26:41 +02:00
673d3ed147 Prevent duplicate entries in doom-auto-minor-mode-alist 2018-05-16 13:14:46 +02:00
262b2f957b Fix associate! not enabling minor modes for :files/:modes/:when
Fixes #585
2018-05-16 13:14:46 +02:00
6b8520d189 Change add-transient-hook! to take hook suffix as 2nd arg
By default, transient hooks are defined as doom-transient-hook-N, where
N is a counter. This makes debugging them difficult.

Now, you may specify an id for the second argument. e.g.

  (add-transient-hook! 'find-file-hook load-evil (require 'evil))

Will define doom|transient-hook-load-evil, which is easier to debug and
remove, if necessary.
2018-05-15 21:49:51 +02:00
afdc6a31b5 Move def-setting! macros to core-packages 2018-05-14 13:05:03 +02:00
cef82fe0b0 Minor reorganization of core-lib 2018-05-14 13:05:03 +02:00
57f383ef76 General revision of docstrings 2018-05-14 13:05:03 +02:00
878b413885 New library macro: setq-hook! 2018-05-07 22:35:14 +02:00
035353d295 after!: don't shadow features var 2018-05-07 19:26:31 +02:00
aef9724324 Add doom*shut-up advisor to core-lib 2018-04-23 00:03:28 -04:00
21a23228f2 Refactor initialization; allow package! to universally disable packages
No need for def-package-hook! for disable packages anymore, you can do
it from package! in packages.el files.
2018-03-26 02:57:37 -04:00
5eadfdc880 Add EMACS26+ & EMACS27+ constants 2018-03-24 07:25:00 -04:00
01f9ca9e67 Ensure (if|when)-let* are available to the byte-compiler
This fixes void function errors in earlier versions of Emacs while
byte-compiling Doom.
2018-03-02 19:14:45 -05:00
138ec2bf07 Remove manual loading of pkg-autoloads files
No longer necessary as of 0c80bb42
2018-02-28 17:57:30 -05:00
589108fdb2 Extend after! macro to support :any, :all & feature lists #442 2018-02-28 17:57:30 -05:00
2b1c323dbf 💥 Redesign private sub-module system
~/.doom.d/modules is now a full module tree, like ~/.emacs.d/modules.
Symlinks are no longer involved.

Private modules can now shadow Doom modules. e.g.
~/.doom.d/modules/lang/org will take precendence over
~/.emacs.d/modules/lang/org.

Also, made doom--*-load-path variables public (e.g. doom--site-load-path
=> doom-site-load-path), and rearranged the load-path for a 10-15%
startup boost.
2018-02-16 02:11:10 -05:00
562d805136 Sensible alias 2018-02-01 14:46:17 +08:00
2f0822ed44 Remove aggressive load of use-package
The autoload in core-packages takes care of it.
2018-01-11 22:18:32 -05:00
7777f9940e Change add-hook! macro to retain hook order
(add-hook! hook '(1 2 3)) should set hook to `(1 2 3 ,@old-hooks).
Before this, they would be pushed sequentially, resulting in hook =
`(3 2 1 ,@old hooks)`
2018-01-08 14:55:58 -05:00
5cd29479f4 Refactor feature/evil hacks & advice; fix tests 2018-01-07 00:15:57 -05:00
31a4244686 Rethink what Doom loads at startup and manually
Better to simply load what we need, when we need it, rather than set up
autoloads for every litte thing.
2018-01-07 00:15:57 -05:00
0042a56d02 Add new cache library (persistent-soft wrapper) 2018-01-07 00:15:57 -05:00
b28f6ed477 General minor refactor & comment revision 2018-01-06 03:03:02 -05:00
02c14f560d Refactor bootstrap process + add doom-initialize-load-path 2017-12-22 16:26:05 -05:00
76a4ae459d Fix obsolete (when|if)-let messages in Emacs 26 2017-12-10 14:49:52 -05:00
4a04406b2b core-lib: minor refactor; update docstrings+comments 2017-12-09 16:23:19 -05:00
9d3155892a Rethink how Doom loads core & std libs 2017-12-09 14:41:22 -05:00
07088d3dcf Removed s.el dependency (prefer built-in) 2017-12-09 14:40:14 -05:00