Commit Graph

273 Commits

Author SHA1 Message Date
Henrik Lissner
ac546220a4
Refactor core-editor def-package! blocks 2018-06-14 03:36:46 +02:00
Henrik Lissner
36171f5b33
Fix :after-call deferred packages not loading
If you open emacs with a file (emacs file.txt), the file is switched to
before the switch-buffer hooks are set up. However, many core packages
are hooked to those switch-buffer hooks (to load when they're first
triggered). They miss the boat and don't get loaded.

These packages are now hooked onto after-find-file as well (and
immediately), which will fire when a file is opened, before or after
initialization.

Fixes #680
2018-06-14 03:36:46 +02:00
Henrik Lissner
bdee28609a
New emacs/ediff module
Ediff config was moved out of core. Also includes evil compatibility
(mvoed out of feature/evil) & wconf save/restore.
2018-05-27 12:52:28 +02:00
Henrik Lissner
2d6bef33d3
Disable doom|detect-indentation in fundamental or special modes
This should fix #607, which is caused by whitespace-mode messing up the
overlays/text properties in the mu4e sidebar.
2018-05-26 03:06:47 +02:00
Henrik Lissner
9febfb0477
Add fundamental-mode to doom-large-file-modes-list 2018-05-26 03:06:22 +02:00
Henrik Lissner
6dc375a891
Fix catch-all text-mode entry in auto-mode-alist
This indirectly fixes an issue where the elfeed db was opened in
text-mode, triggering the large-file check.
2018-05-24 21:20:02 +02:00
Henrik Lissner
8ce5e96ea5
recentf: auto-cleanup = 120; refactor temp-file detector 2018-05-21 01:38:17 +02:00
Henrik Lissner
1369c51000
Replace :defer HOOK/FN with :after-call keyword 2018-05-21 01:38:17 +02:00
Henrik Lissner
d4608c08f8
Defer dtrt-indent & don't detect indent in noninteractive Doom 2018-05-20 12:18:16 +02:00
Henrik Lissner
3d0745c3ec
Add automatic indentation-detection (experimental)
Editorconfig is given precedence. If it successfully sets an
indent_style or indent_size for the current buffer, automatic
indentation detection will be disabled.
2018-05-18 01:28:41 +02:00
Henrik Lissner
4f9cb60e07
Start server sooner 2018-05-17 15:29:54 +02:00
Henrik Lissner
02e4c15b8e
Move avy/ace-link from core-editor to core-ui 2018-05-17 15:29:29 +02:00
Henrik Lissner
b4a7e5348a
Autoload smartparens commands
Turns out I *do* need these!
2018-05-16 00:58:04 +02:00
Henrik Lissner
1e004a5638
Change undo-tree deferral to before switch buffer 2018-05-16 00:11:14 +02:00
Henrik Lissner
b6813393d8
Remove custom helpful pretty-printer; default is superior 2018-05-16 00:11:14 +02:00
Henrik Lissner
4734d55edc
Revert smartparens deferral until first before-switch-buffer 2018-05-15 22:19:37 +02:00
Henrik Lissner
8428a7a4ef
Autoload smartparens library 2018-05-15 22:07:44 +02:00
Henrik Lissner
7c97fd3c73
Load smartparens a little sooner (fix sp-with-modes error) 2018-05-15 21:52:09 +02:00
Henrik Lissner
c36e127ec5
Rethink core package deferral hooks
Ensure they are available exactly when they can be useful, but no
sooner.
2018-05-15 21:49:51 +02:00
Liu, Joey
86b6fab18e Add: ace-link-mu4e autoload 2018-05-15 09:30:21 -04:00
Henrik Lissner
032203ef99
hscroll-margin = 2
So that moving to the ends of a sentence don't sometimes leave the
cursor beyond the edge of the screen in GUI Emacs.
2018-05-15 10:54:45 +02:00
Henrik Lissner
a6c6686628
Enable global-undo-tree-mode after setting variables 2018-05-15 10:54:45 +02:00
Henrik Lissner
94f9e43f25
Rewrite :defer semantics
:defer now supports a hook, a cons cell with (SYMBOL . INTEGER) where
SYMBOL is a hook and INTEGER is a number of idle seconds before the
package is autoloaded, or just the integer (as per the default behavior
of :defer).

Also fixes an issue where switch-buffer-deffered packages (like
smartparens) wouldn't load.
2018-05-15 10:54:45 +02:00
Henrik Lissner
d51f3b1f38
Map /[A-Z]+$ files to text-mode 2018-05-15 01:40:42 +02:00
Henrik Lissner
bec79a3d4c
Major refactor of Doom bootstrap process
+ New `input` and `buffer` support for :defer in def-package! can now
  defer packages until the first command invoked after startup or first
  interactive buffer switch, respectively
+ Exploit these new :defer techniques to lazy-load many core packages,
  netting Doom a 20-30% decrease in startup time
+ Various userland macros (like package!, def-package-hook!, packages!,
  and disable-packages!) will now throw an error if used incorrectly
  (i.e. outside of their intended files; e.g. package! should be used in
  packages.el files)
+ Removed support for multiple/nested doom! calls. There should only be
  THE ONE in ~/.doom.d/init.el (or ~/.config/doom/init.el)
+ Fix an issue where load-path and auto-mode-list modifications would
  not persist because doom-packages-file was cached too late.
+ Added package-activated-list to cached variables in
  doom-packages-file, thus we no longer need custom-file.
+ Load Doom core files from doom-initialize. Now doom-initialize can be
  called from state-dependent non-interactive functions, instead of
  reloading core/core.el, which was clumsy
+ Removed the doom-post-init-hook hook. There was no reason for it to
  exist when doom-init-hook can simply be appended to
2018-05-14 20:37:13 +02:00
Henrik Lissner
99bd3beec2
Autoload ace-link-addr 2018-05-14 13:05:03 +02:00
Henrik Lissner
57f383ef76
General revision of docstrings 2018-05-14 13:05:03 +02:00
Henrik Lissner
67f9aa1ffe
Move whitespace config to core-ui
Introduces new doom|show-whitespace-maybe hook to replace
doom|editorconfig-whitespace-mode-maybe
2018-05-09 00:20:01 +02:00
Henrik Lissner
8d936f2d0b
Move editorconfig out of core into tools/editorconfig 2018-05-08 19:59:08 +02:00
Henrik Lissner
99ca62c106
Remove smart-forward package 2018-05-08 19:56:31 +02:00
Henrik Lissner
cecff39a7e
Refactor doom|check-large-file 2018-05-07 19:26:31 +02:00
Henrik Lissner
65245bfc21
recentf-auto-cleanup = 60
Cleanup would cause tremendous slowdowns on startup if files in its list
didn't exist.
2018-05-07 19:26:31 +02:00
Henrik Lissner
9e315c93da
Revert sp-autowrap-region to default
Fixes wrapping regions for non-evil users
2018-05-02 15:53:54 +02:00
UndeadKernel
856dd96636 Whitespace should preferably respect the fill-column variable
Let whitespace dynamically set `whitespace-line-column` depending on the current
state of the variable `fill-column`. Changing the value to `nil` does exactly that.
2018-03-26 18:17:59 +02:00
Henrik Lissner
51b5fb0f44
Add missing modes to editorconfig-indentation-alist 2018-03-21 05:19:01 -04:00
Henrik Lissner
1352ac4553
Exclude images and remote files from recentf 2018-03-14 18:28:48 -04:00
Henrik Lissner
00a9a08afb
Automatically add execute permission to files with a shebang line 2018-03-12 13:32:02 -04:00
Henrik Lissner
5726da8be2
Fix unbalanced-parenthesis error in some helpful-variable buffers 2018-03-12 13:32:00 -04:00
Henrik Lissner
11e5140b98
Fix editorconfig file ext 'guesser' in org-edit-src buffers
Fixes editorconfig not correctly guessing style settings in org-edit-src
buffers.
2018-02-13 19:42:39 -05:00
Henrik Lissner
bae2287d51
Recenter screen after save-place successfully loads point 2018-02-02 20:47:32 -05:00
Henrik Lissner
03a03853e4
core-editor: reset expand-region on doom/escape #317 2018-02-01 19:58:44 -05:00
Henrik Lissner
c5b72566ea
Remove help-fns+, add helpful plugin #363 2018-01-21 21:37:15 -05:00
Henrik Lissner
45c2221316
General update for docstrings and comments & minor refactor 2018-01-15 00:43:28 -05:00
Henrik Lissner
5ee50c6b53
Move wgrep config from core-editor to completion/{ivy,helm} 2018-01-14 02:04:34 -05:00
Henrik Lissner
25619908a2
Narrow down the purpose of init & post-init hooks
Essential hooks should be added to doom-init-hook. Non-essential and
extra hooks should be added to doom-psot-init-hook.
2018-01-07 00:15:58 -05:00
Henrik Lissner
392f04446f
General refactor (use map.el more)
+ map-delete is shorter and faster than assq-delete-all
+ map-put is simpler than the delete-then-set workflow
+ map-merge is great for merging default and user settings
2018-01-07 00:15:58 -05:00
Henrik Lissner
69385fac1a
Major rewrite of core-ui
Phases out dependence on the doom-kill-buffer workflow, which ensured
the user would always land on a real buffer (or the fallback buffer)
after killing a buffer. This required all quit-window, kill-this-buffer
and various buffer-killing commands be advised or remapped. There was no
need, kill-buffer-query-functions is better.

Also introduces a new hook: doom-init-theme-hook. doom-init-ui-hook
still exists, but is used for UI initialization (surprise), while theme
hooks should be moved over.
2018-01-04 03:01:35 -05:00
Henrik Lissner
92e52fafd1
Fix expand-region misplacing cursor on cancel/C-g #317 2018-01-02 13:50:43 -05:00
Henrik Lissner
fd11f958f9
Move doom*quit-window to core-editor 2018-01-01 16:30:22 -05:00
Henrik Lissner
eef6ed3d11
Minor, general refactor & comment updates 2018-01-01 13:21:52 -05:00