Commit graph

907 commits

Author SHA1 Message Date
Henrik Lissner
fa36014559
Allow set-yas-minor-mode! to accept multiple modes 2018-06-19 13:49:18 +02:00
Henrik Lissner
8f76ee9a8a
Refactor feature/snippets
+ Don't clear yas-minor-mode-map; the default keybinds can be useful,
  esp to non-evil users.
+ Moved +snippets|enable-project-modes hook to autoloads file.
+ Reformat yasnippet config.
2018-06-19 13:49:15 +02:00
Henrik Lissner
ae6c3cacf2
Merge pull request #699 from Emiller88/feature/solidity-template
Add Solidity Template
2018-06-19 13:49:05 +02:00
Henrik Lissner
ccce20b581
set-evil-initial-state!: fix wrong-type-arguments
Caused when set-evil-initial-state! was used with a single mode (which
is 99% of the time!).

Indirectly fixes #696
2018-06-19 12:01:52 +02:00
Henrik Lissner
16b341e605
Move aya-persist-snippets-dir to doom-etc-dir 2018-06-19 12:01:51 +02:00
Edmund Miller
5ec74fdffb Add Solidity Template
Add Trigger and basic file template
2018-06-18 20:29:37 -05:00
Henrik Lissner
615735a404
Add exato (x/html attribute text objects for evil)
Bound to x
2018-06-18 23:46:14 +02:00
Henrik Lissner
ca2c8b5a45
Minor refactor, across the board
Do you see the board? Now look at the other side. That's how far this
refactor extends.

Yes.
2018-06-18 15:02:24 +02:00
Henrik Lissner
6808c46b58
💥 Change set-popup-rule! usage
Now accepts a flat plist of all its former parameters, including new
:parameters and :actions properties to increase your control over the
fate of your windows.

The old usage of set-popup-rule! is deprecated and may not work right!

The :ui popup module has also seen a major refactor to improve
efficiency and load times.

Sorry! This is the last "big" change before 2.1!
2018-06-18 02:34:16 +02:00
Henrik Lissner
19f1c70144
Refactor company keybinds
Also merge evil-collection-company into Doom.

Two new features to note: C-S-s will invoke your completion engine for
the remaining results.
2018-06-17 16:43:10 +02:00
Henrik Lissner
17981d6a61
Conform hook names to conventions
Also minor reformatting & comment corrections.
2018-06-17 02:25:12 +02:00
Henrik Lissner
5e23429309
Fix set-devdocs!
Was not applying to all MODES and was using incorrect variable (docsets
-> docset), causing a void-variable error.
2018-06-16 21:16:24 +02:00
Henrik Lissner
44363cae40
General, minor refactor & revision
Across the board. All the boards.
2018-06-16 12:26:58 +02:00
Henrik Lissner
02caf4eeac
Fix file templates expanding non-interactively #553
File templates should not expand unless the current file was opened
interactively. We use a simple heuristic to detect this: if the opened
buffer's is visible or not.
2018-06-16 12:23:47 +02:00
Henrik Lissner
b5baeb81a7
Improve error handling in snippet commands
Fixes wrong-type-argument errors when fields or overlays are not
actually fields or overlays. Such heresy!
2018-06-16 12:22:50 +02:00
Henrik Lissner
ef90633432
Fix docset lookup & lazyload *-dash
Have to forward declare *-dash-docsets so we can lazy load the *-dash
libraries.

Also fixes a void-variable error because helm-dash-docsets isn't defined
by helm-dash, just used.
2018-06-15 21:42:38 +02:00
Henrik Lissner
4856217c84
Set default ispell-dictionary
Prevents wrong-type-argument stringp errors when starting flyspell-mode.
2018-06-15 21:25:32 +02:00
Henrik Lissner
d0abe742f9
Don't set ispell-program-name
ispell already looks for aspell, ispell, and hunspell on initialization.
2018-06-15 20:52:00 +02:00
Henrik Lissner
4d017ae19e
Replace :yas-minor-mode with set-yas-minor-mode! 2018-06-15 18:03:50 +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
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
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
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
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
cbb5b2ed7d
Fix unknown interactive code error in evil tests 2018-06-15 04:03:22 +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
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
37946080e2
Add :yas-minor-mode setting to feature/snippets 2018-06-07 02:51:46 +02:00
Henrik Lissner
f22eeff763
Add treemacs-mode to evil-escape-excluded-major-modes
Fixes an unresponsive "j" key in treemacs-mode.
2018-06-07 02:51:46 +02:00
Henrik Lissner
69a796ff60
Don't invoke doom/escape too eagerly from evil
This fixes an issue where certain evil plugins would call
evil-force-normal-state non-interactively, causing `doom-escape-hook` to
wreck havoc. Instead, this should only happen when
evil-force-normal-state is called interactively (e.g. via ESC in normal
mode).

Fixes evil-mc-make-cursor-move-next-line and
evil-mc-make-cursor-move-prev-line.
2018-06-07 02:51:45 +02:00
Henrik Lissner
530bdca097
Refactor persp-mode-map keybinds
Use define-key! instead of individual define-key's
2018-06-05 19:50:56 +02:00
Henrik Lissner
e4e2fb55ed
feature/workspaces: remove non-side-window fix
This was fixed upstream in persp-mode#90.
2018-06-05 18:39:50 +02:00
Henrik Lissner
bc4fb8f18e
Fix helm macro errors due to load order
Some packages (like evil-collection and dumb-jump) use helm macros, but
Doom cannot ensure helm will be installed by the time these packages are
byte-compiled during installation. In fact, the default load order
prevents this.

Rather than imposing hard load order requirements, we just make sure
helm is higher on the packages list, so it gets installed sooner.
2018-06-05 14:08:29 +02:00
Henrik Lissner
c9a3c9e615
Disable evil-collection-minibuffer 2018-06-05 13:23:46 +02:00
Henrik Lissner
d5934ec8f7
feature/evil: update evil-shift-width manually (experimental) 2018-06-05 13:23:37 +02:00
Henrik Lissner
fa4a9a38d4
Less intrusive error prefix for flycheck popups
The default character was taller than a line. My OCD won't have it.
2018-06-05 03:21:26 +02:00
Henrik Lissner
9c62ef9dfa
Fix flycheck-posframe errors #653
The +childframe check was too simple (and unnecessary, since the
posframe function autoloaded).
2018-06-05 03:20:19 +02:00
Henrik Lissner
1d9ae834f2
Minor refactors & docstring revision
These are not the refactors you are looking for.
2018-06-04 21:17:49 +02:00
Henrik Lissner
818cb27724
Refactor feature/file-templates
This removes its dependency on the feature/snippets.
2018-06-03 23:43:27 +02:00
Henrik Lissner
48fdc8a5b5
feature/evil: fix missing keymap in key def 2018-06-03 18:11:49 +02:00
Henrik Lissner
1e81a35461
Minimize dependence on map!
This is in preparation for general.el integration coming in 2.1.1. It is
very likely that map! will change (and even more, be split into several
macros). Not much, but change none-the-less. Specifically, the state
keywords (e.g. :nvi, :n, :i) will be removed in favor of a :state
property that takes a list, e.g. (normal visual insert).

In any case, both map! and general are also relatively expensive
compared to define-key and evil-define-key* (and the new define-key!
macro), so use that when we can.

This also means changes to either API won't affect Doom's modules in the
long term.
2018-06-03 15:46:00 +02:00
Henrik Lissner
de014a817b Move :lookup setting to autoload.el 2018-06-02 18:20:09 +02:00
Henrik Lissner
43152d774f
Fix commented out :config causing errors
Semicolons, what have you done?
2018-06-01 16:32:38 +02:00
Henrik Lissner
553867bf61
Remove evil-collection-helm hack (it's disabled) 2018-06-01 16:20:11 +02:00
Henrik Lissner
dc2dad0af3
Disable evil-collection-ruby-mode
May indirectly fix broken :localleader keybinds on ruby-mode-map
2018-06-01 16:19:49 +02:00
Henrik Lissner
002f514b22
Minor refactor of evil-mc->smartparens integration 2018-06-01 13:40:48 +02:00
Henrik Lissner
3c967cf3a3
Resume evil-mc upon switching to insert mode #618
I believe this is intuitive, but I've designed it to be easily disabled
with:

  (remove-hook 'evil-insert-state-entry-hook #'+evil-mc|resume-cursors)
2018-06-01 13:40:47 +02:00