Commit graph

213 commits

Author SHA1 Message Date
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
0c0276378f
feature/evil: add evil-ediff 2018-05-27 11:41:16 +02:00
Henrik Lissner
f9bcd2aff3
feature/evil: don't revert to initial state on window switch
The issue this "fixes" wasn't really an issue to begin with.
2018-05-26 21:09:10 +02:00
Henrik Lissner
09cb4f6716
Major refactor & optimization of how modules load their packages
Now that we are loading package autoloads files (as part of the
generated doom-package-autoload-file when running make autoloads), many
:commands properties are redundant. In fact, many def-package! blocks
are redundant.

In some cases, we can do without a config.el file entirely, and can move
into the autoloads file or rely entirely on package autoloads.

Also, many settings have been moved in their module's autoloads files,
which makes them available ASAP; their use no longer depends on module
load order.

This gained me a modest ~10% boost in startup speed.
2018-05-25 00:46:16 +02:00
Henrik Lissner
f058505306
New bin/doom (eventual replacement for make)
This commit adds bin/doom, which acts as the middle man that make once
was (and will stay for a while, though the documentation will shift away
from using it). It does everything the previous make interface did, but
is faster and more flexible. bin/doom should eventually replace the
makefile.

bin/doom also makes it easier to run Doom outside of ~/.emacs.d and
~/.doom.d with, for example:

  bin/doom run -p ~/.other.doom.d/ -e ~/.other.emacs.d

bin/doom.cmd is included for Windows users, but I don't recommend using
it yet. It hasn't been tested nor have I ever written a batch script
before.

Also update init.example.el with new defaults.
2018-05-21 01:38:17 +02:00
Henrik Lissner
80adb9c1f6
General refactor for consistency & idempotency
Also updated comments
2018-05-18 01:26:41 +02:00
Henrik Lissner
fa6a99f963
feature/evil: fix */# keybinds entering operator mode 2018-05-17 00:54:29 +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
bb88411cc9
General minor refactor & docstring fixes 2018-05-14 20:55:55 +02:00
Henrik Lissner
67dab98859
Improve idempotency of Doom config (in case of reloading) 2018-05-14 20:54:58 +02:00
Henrik Lissner
a631c10d05
Exploit new :defer input|buffer across various modules 2018-05-14 20:45:47 +02:00
Henrik Lissner
587d69dda0
feature/evil: inline inlined function 2018-05-14 13:05:03 +02:00
Henrik Lissner
f943e3442c
feature/evil: comment fix #519 2018-05-07 21:57:00 +02:00
Henrik Lissner
1fc15e41c5
feature/evil: minor reformatting 2018-05-05 07:49:20 +02:00
Henrik Lissner
f319034c5a
feature/evil: refactor multiple-cursors compat config 2018-05-04 15:12:45 +02:00
Henrik Lissner
27153d128c
feature/evil: remove evil-snipe-disabled-modes
These have been set upstream.
2018-05-04 15:12:45 +02:00
Henrik Lissner
c05b16ee6f
Minor refactor/reformatting 2018-05-03 18:03:13 +02:00
Henrik Lissner
26eb33e36e
feature/evil: fix :vs/:sp not focusing split w/ a file argument #552 2018-04-26 22:27:08 -04:00
Henrik Lissner
b8fd35a855
feature/evil: fix inclusivity of evil-matchit #519 2018-04-18 01:08:56 -04:00
Henrik Lissner
2ce6549e98
feature/evil: disable evil-collection-simple keybinds #506 2018-04-04 07:00:36 -04:00
Henrik Lissner
48ae8e2aff
feature/evil: add mu4e modes to evil-snipe-disabled-modes 2018-04-03 22:37:12 -04:00
Henrik Lissner
56dcc42440
feature/evil: fix nil evil-want-integration when +everywhere isn't used 2018-03-28 04:14:00 -04:00
Henrik Lissner
8a74a081c4
Remove doom-mode-map; semi-revert abe42fcb 2018-03-27 03:49:45 -04:00
Henrik Lissner
653caf4e73
feature/evil: remove ] and [ evil-snipe aliases #478 2018-03-24 17:52:44 -04:00
Henrik Lissner
87f18bb906
feature/evil: doom-init-theme-hook => doom-load-theme-hook 2018-03-22 19:29:07 -04:00
Henrik Lissner
abe42fcb9a
Give config/default keybinds higher precedence
This is highly experimental! It gives keybinds bound with `map!` much
higher precedence, allowing it to override the defaults imposed by
major modes and plugins (like evil-collection).
2018-03-22 06:28:33 -04:00
Henrik Lissner
744e7d6dfd
feature/evil: move evil-collection fixes to config/default 2018-03-22 06:28:30 -04:00
Henrik Lissner
850acebad1
feature/evil: minor refactor (when => if) 2018-03-20 23:57:02 -04:00
Henrik Lissner
612efccd72
tools/magit: fix reference to possibly undefined variable #469 2018-03-20 16:01:33 -04:00
Henrik Lissner
c95c4a3586
Add < > support to evil-args text-objects 2018-03-20 01:38:47 -04:00
Henrik Lissner
8f21154e50
feature/evil: disable evil-snipe in ranger-mode 2018-03-19 23:57:17 -04:00
Henrik Lissner
57bdd92756
feature/evil: fix leader key in dired buffers 2018-03-19 23:56:58 -04:00
Henrik Lissner
8798477de2
feature/evil: don't rebind gd/K/gz in major modes #459 2018-03-19 16:08:29 -04:00
Henrik Lissner
203f09e808
feature/evil: evil-define-key => evil-define-key* (don't defer) 2018-03-19 14:44:28 -04:00
Henrik Lissner
3e21187595
feature/evil: evil-collection-company-use-tng = nil #459 #467 2018-03-19 14:44:28 -04:00
Henrik Lissner
d07495e626
feature/evil: add git-rebase-mode to evil-snipe-disabled-modes 2018-03-19 04:52:52 -04:00
Henrik Lissner
4a29825e0d
feature/evil: fix leader key in special-mode-map 2018-03-19 04:44:34 -04:00
Henrik Lissner
31611f913a
feature/evil: add evil-collection (with +everywhere flag) #459 2018-03-19 04:39:02 -04:00
Henrik Lissner
ff2f30f9b4
feature/evil: improve bf771dcb 2018-03-18 22:01:08 -04:00
Henrik Lissner
99f11415d2
feature/evil: fix wrong-type-argument error when buffer-file-name is blank 2018-03-02 20:21:16 -05:00
Henrik Lissner
0d27eda45a
feature/evil: make evil-vimish-fold less ubiquitous #439 2018-02-28 17:57:30 -05:00
Alois Janíček
aa1fe6957e feature/evil: add org-agenda-mode to evil-snipe-disabled-modes 2018-02-26 20:30:37 +01:00
Henrik Lissner
0408464489
feature/evil: evil-want-C-w-delete = t 2018-02-18 03:13:11 -05:00
Henrik Lissner
6c4e048c23
General refactor & cleanup 2018-02-14 07:47:22 -05:00
Henrik Lissner
3a6388bb68
feature/evil: fix vars being set too late #401
Certain evil variables, like evil-respect-visual-line-mode, need to be
set before evil is loaded for it to take effect.
2018-02-03 22:41:19 -05:00
Henrik Lissner
c4244de05e
feature/evil: don't override user cursor settings
Slightly more flexible. If you change the evil cursors, but want to
retain the color changes, you'll need to make `evil-default-cursor` and
`evil-emacs-state-cursor` into lists and add `+evil-default-cursor` and
`+evil-emacs-cursor` to them, respectively.
2018-02-02 20:47:32 -05:00
Henrik Lissner
b9d8116734
feature/evil: switch to initial state on change window
This used to change to normal mode, but now it respects the buffer's
initial state.
2018-02-02 20:47:32 -05:00
Henrik Lissner
84218386d8
feature/evil: open grep-mode buffers in normal mode #375 2018-01-28 22:30:37 -05:00
Henrik Lissner
45c2221316
General update for docstrings and comments & minor refactor 2018-01-15 00:43:28 -05:00
Henrik Lissner
227e7b095d
feature/evil: refactor how evil-snipe + bindings are autoloaded 2018-01-15 00:08:28 -05:00