Commit Graph

3521 Commits

Author SHA1 Message Date
71d505b893 Cache doom-modules on doom refresh 2019-07-07 14:10:21 +02:00
b58b5e1d64 Fix auto-removal of builtin-preferred packges 2019-07-07 14:07:41 +02:00
faeefc1775 Add FLAG argument to doom-module-p 2019-07-07 14:07:11 +02:00
ebd53e5664 Allow expansion of stage-restricted forms
The package! family of macros will throw an error if used in the wrong
files. This same check would prevent macroexpand from expanding them, or
prevent them from being evaluated inline.
2019-07-07 13:29:22 +02:00
dd4c70fe93 Add doom/reload-autoloads 2019-07-07 13:20:25 +02:00
abfc8ced21 Add warning re :prefix-map in map! docstring
It really shouldn't be used outside of Doom proper; it has the
capability of destroying other :prefix-map's due to variable/keymap
naming collisions.
2019-07-07 02:00:36 +02:00
51c067cc4d Fix vanilla-doom+ sandbox instance
Now initializes doom-modules correctly and suppresses an undo-tree
error.
2019-07-07 01:58:49 +02:00
9c15bb82f9 Fix hook collisions by setq-hook!
Fixes an edge case where setq-hook! would override the setq hooks of
other calls to setq-hook!

I want to avoid make-symbol/gensym so users can refer to these hook
functions by name, in case users want to remove these hooks by hand, if
necessary (e.g. for debugging purposes).
2019-07-06 23:22:28 +02:00
af7a2d16c4 Clarify argument in after!'s docstring
after! takes a package, not a mode.
2019-07-06 23:22:28 +02:00
0f0a8a5744 Rewrite custom-set-face!, add custom-theme-set-face!
custom-set-faces! and custom-theme-set-faces! are now drop-in
replacements for custom-set-faces and custom-theme-set-faces with one
major distinction: the latter will wait for the theme to be loaded
before applying the changes, this allows you to use theme-specific APIs
in your face definitions (like doom-color from doom-themes).

You no longer have to think about load order when using these macros.
2019-07-06 23:22:27 +02:00
3b17d767b8 package!: fix the fix fix fix for the :built-in fix
fixfixfixfixfixfixfixfixfixfixfixfixfixfixfixfixfixfix
fixfixfixfixfixfixfixfixfixfixfixfixfixfixfixfixfixfix
fixfix   fixfixfixfixfixfixfixfixfixfixfixfi    fixfix
fixfi    fixfixfixfixfixfixfixfixfixfixfixf     fixfix
fixfixfixfixfixfixfixfixfixfixfixfixfixfixfixfixfixfix
fixfixfixfixfixfixfixfixfixfixfixfixfixfixfixfixfixfix
fixfix                                       fixfixfix
fixfixfix       everything is fine        fixfixfixfix
fixfixfixfixfix                     fixfixfixfixfixfix
fixfixfixfixfixfixfixfixfixfixfixfixfixfixfixfixfixfix
fixfixfixfixfixfixfixfixfixfixfixfixfixfixfixfixfixfix
2019-07-05 23:53:56 +02:00
0dab58ef19 package!: fix the fix for :built-in fix
fixfixfix
2019-07-05 23:07:05 +02:00
ecc4e8087c package!: fix :built-in property 2019-07-05 22:30:24 +02:00
1f644d07e0 package!: accept 'prefer in :built-in property
This tells Doom's package manager to prefer the built-in package, if it
is present, rather than installing the new version from elpa.
2019-07-05 20:03:37 +02:00
cb783b0609 Prevent hash-table-p errors on startup 2019-07-02 23:17:20 +02:00
d8e7a2003b Fix custom.el writing to DOOMDIR/init.el too early
This would cause ~/.doom.d/init.el to exist before `doom quickstart` can
copy ~/.emacs.d/init.example.el into it, causing some newcomers to
experience a wrong-type-argument: hash-table-p error at startup (and no
modules being enabled).
2019-07-02 23:17:20 +02:00
52f575d4d2 Exclude PROMPT & RPROMPT envvars from env file 2019-07-02 14:16:58 +02:00
275f499ce9 Exclude PS1 envvar from env file 2019-07-02 13:01:28 +02:00
2762a08a76 highlight non-default indent despite whitespace-mode
Before, a custom whitespace-style (or global-whitespace-mode) would
disable doom|highlight-non-default-indentation (because they were
incompatible). Now it injects itself into the current style, if one
exists.
2019-06-30 14:28:21 +02:00
58299341b8 Fix vanilla-doom+ launcher in sandbox (C-c C-p)
vanilla-doom+ should launch an instance of Doom with doom core plus
modules minus your private config loaded.
2019-06-30 13:18:14 +02:00
5d0c408c38 cli/env: ignore PWD envvar 2019-06-30 09:48:54 +02:00
92676bfe39 uniquify-buffer-name-style = 'forward #1506 2019-06-28 17:28:53 +02:00
81cf6080bf doom/window-maximizer-buffer: fail gracefully in popups
Doesn't work within popups and it's non-trivial to fix this, so better
it fail gracefully with a suggestion, instead of fail silently.
2019-06-27 17:21:00 +02:00
d6aa19b638 Suppress error from projectile-default-generic-command
Caused when using projectile-{run,test,compile,configure}-project
commands in a project that projectile cannot recognize (i.e. doesn't
match any project in projectile-project-types).
2019-06-27 17:17:04 +02:00
22cc519ac1 Add set-project-type! autodef
And use it for love2d projects in lang/lua module.
2019-06-27 17:16:40 +02:00
2aa9252725 Move doom|disable-show-paren-mode to autoload/ui 2019-06-27 13:26:03 +02:00
6317fa0435 Fix #1509: failure to resize certain popups (part 2)
doom/window-enlargen would fail silently for windows with a preserved
size (e.g. all ui/popup popup windows)
2019-06-26 23:06:46 +02:00
95dff9f2c6 Remove deprecated set-env! 2019-06-26 21:06:05 +02:00
129377ca5f Remap tags commands sooner
Makes them easier for users to remap later.
2019-06-26 14:49:39 +02:00
a9951ee63b Autorevert on switch window
Better coverage for lazy autoreverting
2019-06-26 14:31:07 +02:00
9c29ad78e0 Add SHELL to doom-info 2019-06-26 14:31:07 +02:00
9a02bd8ac8 Minor refactors across the board
- when-let* -> when-let
- Fix projectile-locate-dominating-file for connected remote files
2019-06-26 14:31:06 +02:00
4f5f51237e cli/env: remove ignored vars retroactively
doom-env-ignored-vars is now treated as a list of regexps.

Also updates docstrings and announces ignored variables.
2019-06-26 14:31:06 +02:00
cdc41fc822 cli/env: reformat envvar file header
Places the generation command on line 2 for easier retrieval and
reformats explanation below.
2019-06-26 14:31:06 +02:00
b245237b0c Move custom-file to DOOMDIR/init.el
(And don't auto-load it at startup; no need)
2019-06-26 14:31:06 +02:00
26da625981 Fix #1509: failure to resize certain popups 2019-06-26 14:28:40 +02:00
1e357310c4 Fix localleader alt key in insert mode 2019-06-26 14:28:40 +02:00
c0eb1f524d Fix exclusion of doom local files in recentf
Due to a load order issue, the doom-local-dir regexp wouldn't be mapped
through our custom recentf-filename-handlers. `file-in-directory-p` is
more robust.
2019-06-26 14:28:40 +02:00
b45591989b Revert remote reloading after refreshing autoloads
It's too flimsy, breaks easily, and doesn't handle the case where
multiple instances of Emacs are open.
2019-06-18 22:10:19 +02:00
4575cbef05 Add rg check to core/doctor.el 2019-06-18 17:30:08 +02:00
798e10c4f2 Refactor doom doctor
And move font check into core/doctor.el
2019-06-18 17:29:50 +02:00
fd1b31667e Index projects with ripgrep/fd on Windows 2019-06-18 14:43:15 +02:00
f2d7c5625d Revise comments & docstring 2019-06-18 14:43:05 +02:00
3589ce4c5b Fix exclusion of doom-local-dir from recentf list 2019-06-18 13:38:21 +02:00
ae365272ad Set exec-path/shell-file-name in doom-load-env-vars
And perform file-readable-p check inside doom-load-env-vars
2019-06-18 11:46:27 +02:00
12fa049012 Disable lazy autorevert if auto-revert-mode is used 2019-06-18 00:51:59 +02:00
e2869c62a1 Add file-readable-p check to doom-project-find-file 2019-06-17 20:57:29 +02:00
d27c148e14 Fix font-resizing in child frames #1500 2019-06-17 16:01:37 +02:00
6be401f1a7 Refactor Doom core & reload autoloads remotely
- Move subr-x/cl-lib loading to core-lib
- Revise docstrings for and rename various CLI functions to be more
  descriptive and up-to-date
- After regenerating autoloads file, bin/doom will try to reload
  autoloads files remotely, through the server/daemon, if possible. This
  is highly experimental and could break
2019-06-16 23:01:17 +02:00
72fd61e07b Ensure order of after-change-major-mode-hook hooks
Reduces the likeliness of load order issues.
2019-06-16 19:16:23 +02:00