Commit Graph

9296 Commits

Author SHA1 Message Date
Henrik Lissner
8ca88aba9e Replace :email with set-email-account! autodef 2018-06-15 18:03:50 +02:00
Henrik Lissner
8b739fb3b0 Set doom-file property less eagerly
Reduces the size of the autoloads file by 6-10% by only setting
doom-file property on raw forms or no-op macros.
2018-06-15 17:35:20 +02:00
Henrik Lissner
c0251aacee Replace :lookup with set-lookup-handlers! autodef
And update all internal references.
2018-06-15 17:27:48 +02:00
Henrik Lissner
bfdc00cf42 Prevent tide-mode error when node isn't installed
This error prevents you from opening js files.
2018-06-15 17:15:25 +02:00
Henrik Lissner
c3d3638832 Fix js defvaralias errors in Emacs 27
In later versions of Emacs, if a var alias is created *after* it has
been assigned a value, an error is thrown. This prevents the user from
opening js files.
2018-06-15 17:12:54 +02:00
Henrik Lissner
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
Henrik Lissner
51aa60d67d Fix set-electric! complaining about :char
A typo! Should be :chars
2018-06-15 16:50:39 +02:00
Henrik Lissner
e63be83298 Bind SPC f X to doom/delete-this-file 2018-06-15 16:20:20 +02:00
Henrik Lissner
d588332aa0 Fix SPC TAB leader prefix not being recognized
Due to a TAB => [tab] remap later in config/default.
2018-06-15 16:20:20 +02:00
Henrik Lissner
11b5a7116f Allow map!'s :prefix to accept key vectors 2018-06-15 16:20:20 +02:00
Henrik Lissner
9e54e393ea Use new evil-collection blacklist instead of hook 2018-06-15 16:20:20 +02:00
Henrik Lissner
588359cc5f Replace :eval/:repl with autodef functions
+ :eval => set-eval-handler!
+ :repl => set-repl-handler!
+ Updates all internal references.
2018-06-15 16:20:20 +02:00
Henrik Lissner
98632fe086 Fix doom-module-from-path on module directories
Allow PATH to be an exact path to a module.
2018-06-15 16:20:20 +02:00
Henrik Lissner
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
Henrik Lissner
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
Henrik Lissner
1184967531 Advise symbol-file to return doom-file property
...if it exists. Otherwise fall back on original functionality. This
allows certain symbols to overwrite where Emacs thinks they were
defined.

Warning: only use this for autodefs! It may have unintended side-effects
for other symbols.
2018-06-15 16:20:20 +02:00
Henrik Lissner
da5e2d54ca Refactor autodef generator; put metadata in autodefs
Adds the doom-module and doom-file symbol properties to autodefs,
allowing functions like doom/describe-setting some insight into the
origin of the autodef.
2018-06-15 16:20:20 +02:00
Henrik Lissner
bbda434365 Move startup optimizations into init.el
Doesn't really belong in core.el and only applies to interactive
sessions.
2018-06-15 16:20:20 +02:00
Henrik Lissner
7b1db08ea2 Replace :devdocs with set-devdocs! autodef 2018-06-15 16:20:20 +02:00
Henrik Lissner
b99ab59578 Replace :docset with set-docset! autodef 2018-06-15 16:20:20 +02:00
Henrik Lissner
cccccbb3fd set-electric!: fix & improve error handling 2018-06-15 16:20:20 +02:00
Henrik Lissner
3c7c5d5120 Move doom-file-cookie-p to core-dispatcher
And rename it to doom--file-cookie-p
2018-06-15 16:20:20 +02:00
Henrik Lissner
c22b3da9f9 Move emacs/electric-indent to emacs/electric
This module will later be expanded to customize more of electric's
functionality.
2018-06-15 16:20:20 +02:00
Henrik Lissner
715167bec8 Add ability to mark modules as obsolete or moved
Better way to communicate to users that modules have moved without
breaking their config.
2018-06-15 16:20:20 +02:00
Henrik Lissner
9f0ebe42e8 Replace :electric with set-electric-rules!
And general refactor of the emacs/electric-indent module.

Also updates (set! :electric ...) references in various :lang modules
2018-06-15 13:32:07 +02:00
Henrik Lissner
f801939ce7 test-evil: load :feature evil module 2018-06-15 04:46:13 +02:00
Henrik Lissner
5a427b1c2b Move custom evil arg types back to config.el
No need to autoload that.
2018-06-15 04:45:09 +02:00
Henrik Lissner
46062db978 travis: disable debug output while installing 2018-06-15 04:33:41 +02:00
Henrik Lissner
13426eecde Fix YES/-y support in doom refresh dispatcher 2018-06-15 04:24:48 +02:00
Henrik Lissner
8da06c0b62 travis: use doom install instead of refresh 2018-06-15 04:22:30 +02:00
Henrik Lissner
fb406a165b bin/doom: more feedback about enabled options 2018-06-15 04:22:05 +02:00
Henrik Lissner
2c0e93773b bin/doom: set YES and DEBUG envvars on -y/-d 2018-06-15 04:13:03 +02:00
Henrik Lissner
eea729fdf3 Use bin/doom in travis.yml 2018-06-15 04:03:48 +02:00
Henrik Lissner
cbb5b2ed7d Fix unknown interactive code error in evil tests 2018-06-15 04:03:22 +02:00
Henrik Lissner
bd55e53691 Add -i/--insecure flag to bin/doom 2018-06-15 03:58:04 +02:00
Henrik Lissner
0ef522bbf2 tools/pdf: close annotation lists when killing pdf 2018-06-15 03:42:01 +02:00
Henrik Lissner
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
Henrik Lissner
98d2f1de3f Add set-env! autodef; make :env obsolete 2018-06-15 03:42:01 +02:00
Henrik Lissner
3b0fad871f Add :lang common-lisp doctor 2018-06-15 03:42:01 +02:00
Henrik Lissner
2023aac314 Add +treemacs/toggle command 2018-06-15 03:42:01 +02:00
Henrik Lissner
2496e0348d Add :when support to after!
This lets you delay a body of code until an arbitrary condition is
met (which is checked whenever a file is loaded).

Also refactors set-file-template! to wait until +file-templates-alist is
defined.
2018-06-15 03:42:01 +02:00
Henrik Lissner
d8b1e469bc Introduce autodefs to replace some settings
+ :popup -> set-popup-rule!
+ :popups -> set-popup-rules!
+ :company-backend -> set-company-backend!
+ :evil-state -> set-evil-initial-state!

I am slowly phasing out the setting system (def-setting! and set!),
starting with these.

What are autodefs? These are functions that are always defined, whether
or not their respective modules are enabled. However, when their modules
are disabled, they are replaced with macros that no-op and don't
waste time evaluating their arguments.

The old set! function will still work, for a while.
2018-06-15 03:42:01 +02:00
Henrik Lissner
6693db48af Mark +org-dir obsolete (use org-directory instead)
I prefer not to invent new variables when they aren't strictly
necessary. org-directory is one such variable (although the other path
variables are still necessary).
2018-06-15 01:05:22 +02:00
Henrik Lissner
db8b4091dd Fix bin/doom ignoring -d flag
defconst -> defvar
2018-06-15 00:25:39 +02:00
Henrik Lissner
40e4c872f4 Remove redundant eshell-error-if-no-glob setting 2018-06-14 23:40:08 +02:00
Henrik Lissner
209f33c12e Refactor tools/eshell
Make eshell-directory-name easier to customize & remove unnecessary
def-package! block.
2018-06-14 23:36:42 +02:00
Henrik Lissner
6fe0017e24 Add popup hacks for pdf-tools' annot list windows
Annotations are displayed in stacked windows to the left of the pdf.

Thanks to @UndeadKernel for help figuring this out.
2018-06-14 19:55:36 +02:00
Henrik Lissner
0020631b2e Fontify autodef/if cookies & *! symbols in elisp 2018-06-14 19:52:15 +02:00
Henrik Lissner
421d00f085 Refactor doom|check-large-file
More checks, fewer false positives.
2018-06-14 19:51:11 +02:00
Henrik Lissner
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