Commit Graph

6234 Commits

Author SHA1 Message Date
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
83590d65ba
Refactor/optimize completion/ido module
Ensure initialization only occurs once when ido is first used. Special
steps are needed because ido is automatically loaded at startup by
Emacs.
2018-06-03 15:01:21 +02:00
Henrik Lissner
3d893ea53e
Update org-format-latex-options when theme changes 2018-06-03 12:23:17 +02:00
Henrik Lissner
f9be8887fb
lang/org: minor refactor/reformatting
Also reduce internal use of map! (toward eventual switch to general)
2018-06-03 12:22:39 +02:00
Henrik Lissner
ae86498a41
Tie evil-org/evil-org-agenda to +everywhere flag 2018-06-03 12:20:16 +02:00
Henrik Lissner
da9096acac
Fix evil-org-mode keybinds on first org buffer
evil keeps track of auxiliary keymaps. This list is updated when you
switch states, but it _really_ needs to be updated when minor
modes (with keymaps) are toggled. When this isn't done, their keymaps
aren't recognized and their keys will be unavailable at first.

Since there is no global hook for enabling minor modes, we have to
manually add evil-normalize-keymaps to minor mode hooks.

This commit, specifically, fixes evil-org-mode-map. This also indirectly
fixes folding src blocks for evil users (on the first org buffer).
2018-06-03 12:08:33 +02:00
Henrik Lissner
01b07e573e
Fix visual j/k in dashboard and evil-mode
In case you've remapped j/k to gj/gk universally.
2018-06-03 12:04:42 +02:00
Henrik Lissner
ad5713cd78
add-hook 'nose-mode-hook #'evil-normalize-keymaps
Ensures nose-mode-map keybinds work in nose-mode.
2018-06-03 11:21:32 +02:00
Henrik Lissner
bcc01628a3
Remove anaconda-view-mode-map keybinds
It, with anaconda-view-mode, have been removed upstream.
2018-06-03 11:20:43 +02:00
Henrik Lissner
2761e8c841
lang/org: switch to hard word wrapping
Evil's motions are gimped in soft-wrapped buffers. It also hurts
performance.
2018-06-03 01:38:51 +02:00
Henrik Lissner
b2dfc4b8e8
Delete plugin *.elc before recompiling plugins 2018-06-03 01:38:35 +02:00
Henrik Lissner
29ed19b612
lang/elm: wrap elm-mode config in after! block 2018-06-02 21:42:11 +02:00
Henrik Lissner
4d2e1dd526
Fix modeline growing incrementally on big font mode
Fixes #575
2018-06-02 21:40:57 +02:00
Henrik Lissner
1a1d74afa3
Refactor package management API
To make backtraces a little less cluttered, in case of the notorious
arrayp error, which I am yet unable to reproduce or understand.
2018-06-02 21:31:14 +02:00
Henrik Lissner
6e6dfc2215
Implement helm project search functionality #644
Adds +helm/project-search, as well as +helm/ag and +helm/ag-from-cwd,
and variants for rg, pt and grep/git-grep, to mirror the functionality
available to :completion ivy.

Also updates the evil ex commands and keybinds
2018-06-02 20:37:02 +02:00
Henrik Lissner
b72764c6ea
fixup! Refactor ivy project-search functionality 2018-06-02 20:31:50 +02:00
Henrik Lissner
8f847682fa app/rss: fix invalid window errors #646
The popup system cleans up after closed popup windows, so a
delete-window following a kill-buffer will operate on a dead window,
causing this error.
2018-06-02 18:20:09 +02:00
Henrik Lissner
de014a817b Move :lookup setting to autoload.el 2018-06-02 18:20:09 +02:00
Henrik Lissner
e4c56d0f15 Fix +default:multi-*-line motions in magit buffers 2018-06-02 18:20:09 +02:00
Henrik Lissner
dd57a521f3 Correct :popup/:popups docstrings 2018-06-02 18:20:09 +02:00
Henrik Lissner
209b281dc6
Move popup mode keymaps to autoload.el 2018-06-02 16:58:56 +02:00
Henrik Lissner
428f1e1d07
Refactor def-setting!/set! implementation
The `doom-settings` variable has been removed. Setting checks are done
with fboundp now, which is simpler.
2018-06-02 16:26:59 +02:00
Henrik Lissner
385cb476ba
Fix redundant minor mode entries in elisp imenu 2018-06-02 15:22:41 +02:00
Henrik Lissner
7f00221551
Refactor ivy project-search functionality
To prepare for Helm counterpart
2018-06-02 14:34:12 +02:00
Henrik Lissner
8aa21517a2
Remap swiper => helm-swoop for helm users #644
Plus remove redundant remappings
2018-06-02 14:01:31 +02:00
Henrik Lissner
e5a4415d58
General, minor reformatting/refactor 2018-06-02 13:58:04 +02:00
Henrik Lissner
ae7ead6e87
Refactor doom//upgrade 2018-06-02 13:56:39 +02:00
Henrik Lissner
d20ffca78d
tools/magit: minor refactor/reformatting 2018-06-02 10:56:04 +02:00
Henrik Lissner
1dd4076f8d
Handle magit windows w/ fullframe-status-v1
This new default was chosen to keep magit consistent with fullscreen
:app workflows (which work very similarly). It is also more predictable
than the default method.
2018-06-02 10:54:30 +02:00
Henrik Lissner
1ffdf616e8
Hide mode-line in magit windows (experimental) 2018-06-02 10:54:12 +02:00
Henrik Lissner
6d218fc5a0
Consider magit buffers real
So they can be switched to if buried
2018-06-02 10:53:51 +02:00
Henrik Lissner
e66abfb9e8
Use newline-based alignment technique on dashboard
Fixes #645, because Emacs' mouse events don't appear to compensate for
variable-width whitespace.
2018-06-02 10:48:55 +02:00
Henrik Lissner
08a453bd5e
bin/doom: show usage info if no command is entered 2018-06-02 02:56:18 +02:00
Henrik Lissner
6fdd6cb14c
bin/doom: respond to -h/--help
In case people try that before `help`
2018-06-02 02:55:52 +02:00
Henrik Lissner
c747bc46e3
Optimize lang/qt #642 2018-06-02 02:53:54 +02:00
Henrik Lissner
9e62a7aac3
Merge pull request #642 from nealot/develop
Add basic qt support
2018-06-02 02:49:53 +02:00
Henrik Lissner
92fd24ff0f config/default: refactor evil key fixes
Also fixes #643, which is caused because evil is disabled and these
fixes clumsily use evil-define-key* (which won't exist).
2018-06-02 02:39:31 +02:00
Henrik Lissner
a0bec84997 Don't complain if no private packages.el 2018-06-02 01:08:23 +02:00
Nealot
83232ac9aa Add basic qt support 2018-06-01 18:23:35 -04:00
Henrik Lissner
3b1f7c02cc
Fix C-S-j/C-S-k keybinds in ivy/minibuffer 2018-06-01 21:12:18 +02:00
Henrik Lissner
cb4b94cc12
Conditionally install anaconda-mode dependencies 2018-06-01 17:14:17 +02:00
Henrik Lissner
1938a0d253
Enforce encrypted authinfo & store in doom-etc-dir
Plaintext authinfo should not be the default.
2018-06-01 17:10:30 +02:00
Henrik Lissner
48ee4ff71e
lang/markdown: markdown-enable-math = nil
Not a common necessity when writing markdown, and slows down modes with
markdown submode regions (like magithub, when initializing issue/PR
bodies).

This is easily toggled with markdown-toggle-math anyway.
2018-06-01 17:08:48 +02:00
Henrik Lissner
b28d3414bb
Remove load-prefer-newer letvar around private init
Doesn't actually help and only slows things down.
2018-06-01 17:07:53 +02:00
Henrik Lissner
6480a45f84
Fix reload-package-autoloads outdated detection
The package autoloads generator wouldn't take module packages.el files
into consideration when detecting whether the autoloads file should be
regenerated. Now it does.
2018-06-01 17:06:03 +02:00
Henrik Lissner
c04bccc68b
Fix disabled packages not being disabled
By loading the private packages.el in two passes. The first time ensures
later modules will know about disabled packages and the second time
ensures overwritten packages are properly overwritten.

Not the most efficient, but efficiency is low priority in noninteractive
sessions (i.e. during package management), the performance loss is
negligible, and packages.el files (should) have no other side effects
anyway.
2018-06-01 17:03:01 +02:00
Henrik Lissner
6bad6d12f3
Remove doom-psuedo-modules-dir
Not needed with now that doom-private-dir has first class support.
2018-06-01 17:01:39 +02:00
Henrik Lissner
fd95bfee07
Fix rspec-mode activation & localleader keybinds 2018-06-01 16:59:25 +02:00
Henrik Lissner
36c36ca271
Optimize switch buffer/window hooks
Significantly reduces nested triggering of these hooks.
2018-06-01 16:40:39 +02:00
Henrik Lissner
8e38209394
Fix travis.yml (renamed to emacs-26.1-travis)
And removed emacs-25.1-travis. I'll be phasing out support for emacs <=
25.2.
2018-06-01 16:36:33 +02:00