Commit Graph

593 Commits

Author SHA1 Message Date
44363cae40 General, minor refactor & revision
Across the board. All the boards.
2018-06-16 12:26:58 +02:00
3f2318bc69 Fix wrong-type-argument errors on backspace
Caused when pressed at the beginning or end of a buffer.
2018-06-16 11:50:55 +02:00
9a2f96c0f1 Lazy load projectile (experimental)
I can feel it; the power coursing through my veins. Every millisecond
saved at startup makes me more powerful. This world will be mine. Mine I
tell you!
2018-06-16 11:42:37 +02:00
c81304d18b Enable smartparens in eval-expression
This is experimental, so we can have delimiter/quote autopairing while
we write lisp into eval-expression.
2018-06-16 11:42:01 +02:00
4d5a247d53 With C-u, doom/what-face doesn't fontify results
In case you get a face that's too hard to see.
2018-06-15 18:50:45 +02:00
60e7b78739 Minor refactor of doom/describe-active-minor-mode 2018-06-15 18:32:53 +02:00
f81a0e6f41 Remove redundant def-setting! docstrings
def-setting! will now grab the autodef's docstring if it has an
:obsolete property defined.
2018-06-15 16:54:39 +02:00
58601488d9 describe-module: shows all modules, dim disabled
Shows all modules, whether or not they are enabled and dims disabled
modules.
2018-06-15 16:20:20 +02:00
a500bfb0a0 Rewrite+rename describe-settings->describe-setters
Will now list autodefs instead of def-settings, including an origin
module label to tell you where it comes from at a glance.
2018-06-15 16:20:20 +02:00
eaca8c58fa Move unit tests from ert to buttercup
Easier to organize and write. Now I can hopefully strive for better
coverage!
2018-06-15 03:42:01 +02:00
98d2f1de3f Add set-env! autodef; make :env obsolete 2018-06-15 03:42:01 +02:00
3228369d73 Fix void-function errors from doom//reload
Because certain commands aren't available without core-dispatcher.
2018-06-14 19:50:27 +02:00
69c6e0b8fb Add doom-get-package-alist
New function returns a list of (NAME . DESC) cons cells in the order
they were declared (in module packages.el files).

Fixes a load-order issue where autoloads from one package would depend
on the autoloads of another package, but was inserted into
doom-package-autoload-file *before* the depended package, causing
void-variable errors.

Also allows for a big refactor of the :plugins byte-compile target.
2018-06-14 03:36:46 +02:00
b6f9bc9675 Fix package manager not :ignore'ing packages 2018-06-13 22:15:08 +02:00
64e02e4232 Load core-packages in doom//run-tests 2018-06-12 01:45:52 +02:00
1c3183b298 Remove space in backend labels during install
Minor reformatting. To be consistent with the backend transition labels
in doom//packages-autoremove.
2018-06-12 00:02:04 +02:00
72201fead5 Major refactor of package management API
Fixes issues where:

+ package!'s :disable property was ignored and def-package! wouldn't
  ignore disabled packages.
+ Certain quelpa packages were being removed/reinstalled infinitely
+ Improved flexibility of doom-get-packages (its docstring needs to be
  updated!)
2018-06-12 00:02:04 +02:00
0be2be5c82 Remove autoload/modules library
Move batch commands into core-dispatcher and doom//reload into
autoload/help. It will soon be renamed doom/reload.
2018-06-12 00:02:04 +02:00
0741c8851a Split core-packages into two (packages & modules)
+ Move doom-initialize et co into core.el
+ Lazy load core-packages
+ load! has been moved into core-lib
+ Added FILE! and DIR! macros
+ Fix package! not returning correct value when package is disabled
+ Remove :disabled support for def-package-hook! officially
2018-06-12 00:02:04 +02:00
a25eff0189 delete-this-file: don't propagate deletion to vcs
Doom shouldn't assume the user always wants to stage the current
deletion after every delete.
2018-06-11 01:33:56 +02:00
6bf529ddf8 Add magit/vcs support to doom file commands 2018-06-10 23:23:09 +02:00
5295f36115 case-fold-search = nil in reload-package-autoloads
Slight optimization.
2018-06-10 20:54:32 +02:00
2d5ac8a164 Fix void-variable package--builtins error
Occurs while running make install because package.el wasn't loaded in
time.
2018-06-10 19:15:39 +02:00
85704bea33 Fix void-variable ex2 error while package managing 2018-06-10 19:10:58 +02:00
8d4971d02b Remove vestigial reference to doom-module-table 2018-06-10 17:48:48 +02:00
9cc190adc9 Minor reformat & refactor keyword intern 2018-06-10 17:28:17 +02:00
3498d5c6b1 Catch more *.elc files with bin/doom clean 2018-06-10 17:28:17 +02:00
7e00a83acc Update & refactor doom-info 2018-06-10 17:28:17 +02:00
88f1ae3797 Refactor autoloads init in doom-initialize
Simplify doom-initialize-autoloads
2018-06-10 17:28:17 +02:00
ee154911ae Redesign doom-get-package
Now more useful for filtering packages by certain properties.
2018-06-10 17:28:17 +02:00
01d1a814f9 Refactor doom-initialize functions
Removes doom-module-table; which was inflexible (though more stable). It
prevented you from putting your doom! block in anywhere but
~/.doom.d/init.el.

It is replaced (somewhat) by (doom-modules).
2018-06-10 17:30:26 +02:00
99d6927e56 Improve error-handling for quelpa packages 2018-06-08 13:08:38 +02:00
99afb01315 equals -> file-equal-p refactor
Use more reliable file comparison function.
2018-06-08 13:08:37 +02:00
ee262e7737 Refactor error handling in package management API
I am hoping this will improve the ambiguous errors that originate from
package.el or quelpa.el.
2018-06-08 13:08:34 +02:00
3661462a7a Use dynamic byte-compilation for autoload files
Very experimental! This reduces the size and overhead of autoload files
slightly, but may have other reprecussions!
2018-06-05 14:07:35 +02:00
282e0d6653 Move emacs version check into doom-initialize
Also fixes void-function errors caused by (now removed)
doom-same-emacs-version-p not being defined in all the contexts it was
needed.

Where it was before was clumsy design.
2018-06-05 12:04:43 +02:00
3027ed2f7f Add new doom|mark-buffer-as-real hook to term/eshell
This is simpler (and perhaps faster) than doom-real-buffer-functions.
Better to reserve that for more complex logic.
2018-06-04 21:17:49 +02:00
ee154a3eb7 Add Emacs version check to noninteractive session
Changing Emacs versions can cause incompatibilities. Doom now warns the
user about these.
2018-06-04 21:17:49 +02:00
8762129e8d Don't prompt when byte-compiling plugins
The warning only applies to full byte-compilation of your config.
2018-06-04 21:17:49 +02:00
7acfcf907a Add warning prompt to byte-compile
Byte-compiling should be a considered an advanced workflow. Warn users
of the dangers. The prompt can be suppressed with the -y option. e.g.

  bin/doom -y compile

You won't get the prompt for byte-compiling :core or :plugins however.
2018-06-03 22:00:40 +02:00
b2dfc4b8e8 Delete plugin *.elc before recompiling plugins 2018-06-03 01:38:35 +02:00
1a1d74afa3 Refactor package management API
To make backtraces a little less cluttered, in case of the notorious
arrayp error, which I am yet unable to reproduce or understand.
2018-06-02 21:31:14 +02:00
428f1e1d07 Refactor def-setting!/set! implementation
The `doom-settings` variable has been removed. Setting checks are done
with fboundp now, which is simpler.
2018-06-02 16:26:59 +02:00
6480a45f84 Fix reload-package-autoloads outdated detection
The package autoloads generator wouldn't take module packages.el files
into consideration when detecting whether the autoloads file should be
regenerated. Now it does.
2018-06-01 17:06:03 +02:00
6bad6d12f3 Remove doom-psuedo-modules-dir
Not needed with now that doom-private-dir has first class support.
2018-06-01 17:01:39 +02:00
b1ab80ec3f Fix doom//byte-compile when recompiling plugins
This would cause odd void-variable/function errors because
doom//byte-compile would erroneously try to compile *everything* after
recompiling plugins.
2018-05-31 01:31:33 +02:00
d2ca6f65b3 doom/cleanup-session: don't kill modified buffers 2018-05-30 23:06:13 +02:00
bb9f00e275 Fix unused return value warnings
When byte-compiling or reloading autoloads files.
2018-05-30 16:05:24 +02:00
debe3e0dd3 Remove unnused letvar doom--inhibit-reload 2018-05-29 19:39:22 +02:00
592d83a968 Fix doom//byte-compile not initializing module list in some contexts 2018-05-29 15:32:36 +02:00