Commit graph

192 commits

Author SHA1 Message Date
Henrik Lissner
e87b788078
Update & reformat module readmes for v2.0.9
+ completion/ivy
+ completion/company
+ feature/evil
+ feature/eval
+ feature/snippets
+ feature/workspaces
+ tools/neotree
2018-01-01 13:21:53 -05:00
Henrik Lissner
eef6ed3d11
Minor, general refactor & comment updates 2018-01-01 13:21:52 -05:00
Henrik Lissner
8ad2666f8f
Refactor and fix unit tests, plus isolate them better 2017-12-31 14:58:45 -05:00
Henrik Lissner
f61d7c9e7f
doom-force-kill-buffer => doom/kill-this-buffer-in-all-windows 2017-12-30 00:55:44 -05:00
Henrik Lissner
76a4ae459d
Fix obsolete (when|if)-let messages in Emacs 26 2017-12-10 14:49:52 -05:00
Henrik Lissner
9d81bc5a8b
Major refactor: use-package-always-defer = nil & use :hook
Possibly breaking change: packages are no longer deferred by default.

Addresses #286
2017-12-08 23:14:11 -05:00
Henrik Lissner
a24e22cf57
cl-pushnew => push
Now that doom//byte-compile and doom//reload-autoloads always run in an
isolated Emacs session, there is little need to ensure idempotency of
the current session's state.
2017-11-10 00:19:05 +01:00
Henrik Lissner
6b9849fd57
Add conditional autoload/compile cookies #229 2017-11-05 01:16:35 +01:00
Henrik Lissner
642dc094d1
Fix reference to defunct variable #232 2017-10-07 20:32:48 +02:00
Henrik Lissner
cd7ab060e0
General refactor & docstring updates 2017-10-05 17:02:59 +02:00
Henrik Lissner
5a5d2f2d94
Add multiple-cursors compatibility integration
mc doesn't work well with evil, but some plugins force us to use it
anyway (like js2r-refactor). This config reduces (but doesn't eliminate)
that friction.
2017-10-03 02:58:09 +02:00
Henrik Lissner
a4ddb1bc9b
General minor refactor + cleanup 2017-09-28 18:19:15 +02:00
Henrik Lissner
e8ff048c9b
Rewrite and move doom-resolve-vim-path tests 2017-09-27 01:40:11 +02:00
Henrik Lissner
6cb5efc929
core-lib: rename helper fns; move doom-resolve-vim-path
+ doom--resolve-paths => doom--resolve-path-forms
+ doom--resolve-hooks => doom--resolve-hook-forms
+ +evil*ex-replace-special-filenames => doom-resolve-vim-path
2017-09-27 01:23:54 +02:00
Henrik Lissner
e7a9a1a3ca
Improve support for moving popup windows (WIP)
Now, the +evil/window-move-* commands are consistent when used with
popups. Also added doom/popup-move-* as popup-alternatives to
evil-window-move-{very,far}-* commands.

Relevant to #141 #171
2017-09-25 13:02:27 +02:00
Henrik Lissner
2ea01a5b66
Add basic support for moving popup windows (WIP)
Relevant to #141 #171
2017-09-24 20:47:24 +02:00
Henrik Lissner
91783e0695
General refactor & cleanup 2017-09-15 14:37:20 +02:00
Henrik Lissner
5f26399ff2
Fix evil-mc not whitelisting custom commands 2017-09-12 23:55:34 +02:00
Henrik Lissner
6439d7abee
Add elfeed-(show|search)-mode to evil-snipe-disabled-modes 2017-09-02 16:14:27 +02:00
Henrik Lissner
cbabf6849c
Standardize module READMEs 2017-08-21 20:13:31 +02:00
Henrik Lissner
6a5bd216e5
Appease byte-compiler senpai 2017-07-14 18:19:08 +02:00
Henrik Lissner
f40ebf9725
Minor docstring updates 2017-07-09 02:14:45 +02:00
Henrik Lissner
2adbd54b59
Load evil-snipe later in startup 2017-07-02 16:53:28 +02:00
Henrik Lissner
992e636b31
feature/evil: improve idempotency 2017-07-02 16:53:04 +02:00
Henrik Lissner
532db96645
evil: don't force normal mode from emacs mode 2017-07-02 16:52:01 +02:00
Henrik Lissner
478eafa59b
Add evil-mc-has-cursors-p autoload to evil-mc 2017-07-01 11:24:45 +02:00
Henrik Lissner
b447148a4a
Enable evil-snipe-mode too 2017-06-30 23:47:06 +02:00
Henrik Lissner
28810eee3a
feature/evil: refactor code-folding keybinds 2017-06-30 23:46:53 +02:00
Henrik Lissner
869bc03ca6
Load bare minimum for tests 2017-06-28 15:28:13 +02:00
Henrik Lissner
25dca5fde7
Fix :mv/:rm/:cp error when projectile-mode is off 2017-06-28 15:17:47 +02:00
Henrik Lissner
822c78554f
destructuring-bind => cl-destructuring-bind 2017-06-25 02:04:50 +02:00
Henrik Lissner
c294effd8d
Fix incorrect argc in +evil/reselect-paste 2017-06-22 20:03:27 +02:00
Henrik Lissner
8f00b3d07a
Minor general refactor 2017-06-20 16:32:50 +02:00
Henrik Lissner
392c58ea47
General refactor & cleanup 2017-06-19 00:32:45 +02:00
Henrik Lissner
928812da8a
Make def-setting! behave more like defmacro
set! used to aggressively evaluate its arguments (at expansion-time),
even if placed inside an after! block. This causes unavoidable errors if
those arguments use functions/variables that don't exist yet.

Fixes #112
2017-06-19 00:32:44 +02:00
Henrik Lissner
7d081c3154
Fix subr-x macro autoloads 2017-06-18 23:43:08 +02:00
Henrik Lissner
816df321a5
General refactor & cleanup 2017-06-14 21:15:19 +02:00
Henrik Lissner
9c93c453e8
Reorganize unit-tests and test workflow
+ Moved unit tests out of tests/ and into their respective modules.
+ Rewrite makefile and added these tasks:
  + <MODULE>/<SUBMODULE> -- byte-compile a specific module
  + test:<MODULE>/<SUBMODULE> -- runs tests for a specific module
  + testi -- run tests in an interactive session of Emacs (WIP)
  + run -- opens an Emacs session with this config; useful when it is in
    a non-standard location.
2017-06-14 21:15:19 +02:00
Henrik Lissner
4984a548d1
Refactor DOOM init & add new init hooks
+ Add doom-init-hook and doom-post-init-hook to simplify Emacs init
  hooks into less ambiguous ones.
+ Attach former after-init-hook and emacs-startup-hook hooks to new doom
  init hooks.
+ Vastly improves daemon and tty support: preventing incorrect colors
  from bleeding across face class barriers, and into GUI Emacs and vice
  versa, when spawned with emacsclient.
+ Fix persp-mode breaking Emacs daemon, and ensuring that initialization
  is done properly in terminal Emacs (and emacsclient frames).
2017-06-12 00:37:14 +02:00
Henrik Lissner
d214d94207
Fix goto-last-change (by autoloading its commands)
Its default binds (bound by evil-maps) are g; and g,
2017-06-11 00:59:42 +02:00
Henrik Lissner
2097498f3e
General docstring+idempotency refactor 2017-06-11 00:59:02 +02:00
Henrik Lissner
2e1e908f57
Load hideshow when folding system is autoloaded 2017-06-10 18:18:34 +02:00
Henrik Lissner
77eb06727c
Move to EOL before (un)folding (#99) 2017-06-09 14:06:00 +02:00
Henrik Lissner
99ef794f92
evil-escape: disable in minibuffer and motion state 2017-06-09 01:09:20 +02:00
Henrik Lissner
c7254e7bdc
Major optimization refactor, across the board
+ enable lexical-scope everywhere (lexical-binding = t): ~5-10% faster
  startup; ~5-20% general boost
+ reduce consing, function calls & garbage collection by preferring
  cl-loop & dolist over lambda closures (for mapc[ar], add-hook, and
  various cl-lib filter/map/reduce functions) -- where possible
+ prefer functions with dedicated opcodes, like assq (see byte-defop's
  in bytecomp.el for more)
+ prefer pcase & cond (faster) over cl-case
+ general refactor for code readability
+ ensure naming & style conventions are adhered to
+ appease byte-compiler by marking unused variables with underscore
+ defer minor mode activation to after-init, emacs-startup or
  window-setup hooks; a customization opportunity for users + ensures
  custom functionality won't interfere with startup.
2017-06-09 00:47:45 +02:00
Henrik Lissner
a20aeaf76b
Refactor code-fold system (defer load + advise) 2017-06-07 20:43:58 +02:00
Henrik Lissner
3b4517e7bd
evil-escape: exclude emacs state 2017-06-07 17:13:01 +02:00
Henrik Lissner
4acacd5c1c
Refactor +evil/reselect-paste 2017-06-07 16:14:05 +02:00
Henrik Lissner
f6be10efb3 Add feature/evil README 2017-06-05 12:57:53 +02:00
Henrik Lissner
a5325f6a2a Move evil-mc personal config to private module 2017-06-05 12:35:51 +02:00