Commit Graph

9190 Commits

Author SHA1 Message Date
Henrik Lissner
482c87308f
config/default: correct project keybinds
- SPC p > and SPC p ? were the wrong way around
- Add SPC p e to edit project .dir-locals.el
2019-05-20 21:09:10 -04:00
Henrik Lissner
916a3cb36a
config/default: update & reformat emacs keybinds 2019-05-20 21:09:10 -04:00
Henrik Lissner
a7069b93f2
Remove vestigial imenu-anywhere remappings 2019-05-20 21:09:10 -04:00
Henrik Lissner
4c9a3dd191
lang/markdown: remove +pandoc
The new default for markdown-command will try pandoc, if it is
available. This makes pandoc-mode redundant. The mode also doesn't quite
belong to the markdown module.
2019-05-20 21:09:10 -04:00
Henrik Lissner
a6ebd95aee
lang/markdown: fix doctor's executable detection 2019-05-20 21:09:10 -04:00
Henrik Lissner
57bd7a385e
Fix typo in +default/org-notes-headlines 2019-05-20 21:09:10 -04:00
Henrik Lissner
d6aea001c5
Implement lazy auto-revert
Instead of using auto-revert-mode or global-auto-revert-mode, we employ
lazy auto reverting on focus-in-hook, doom-switch-buffer-hook and
after-save-hook.

We do this because autorevert abuses inotify handles, which can grind
Emacs to a halt if you have hundreds of buffers open and something
performs expensive mtime or attribute-altering IO on their files outside
of Emacs. We only really need revert checks when we switch to or save a
buffer, or when we focus the Emacs frame.
2019-05-20 21:08:21 -04:00
Henrik Lissner
41de07177b
Update keybinds for :term modules 2019-05-19 02:30:43 -04:00
Henrik Lissner
d3cb394ce4
Refactor +ivy/tasks
Just realized ivy passes the candidate in its original data structure to
its handlers.
2019-05-19 02:18:26 -04:00
Henrik Lissner
39d4fa2256
Improve better-jumper integration into ivy
And remove unnecessary set-jump on imenu-after-jump-hook (it should
happen before the jump, not after).
2019-05-19 02:18:26 -04:00
Henrik Lissner
754dd75624
Update highlight-indent-guides faces on focus-in
The faces may go out of sync if you spawn a tty frame via the server.
Updating it when you switch frames is a workaround for this.
2019-05-19 02:18:26 -04:00
Henrik Lissner
10cef7a887
tools/flyspell: add +prog flag #1418
Enables flyspell-prog-mode on prog-mode-hook.
2019-05-19 02:18:25 -04:00
Henrik Lissner
c3cb7c5000
:tools password-store -> :tools pass
A simpler name and matches the prefix of its module.
2019-05-19 02:18:25 -04:00
Henrik Lissner
0674e4b4b0
Remove :emacs imenu module
Some of it was moved into core as reasonable defaults, but the rest of
it doesn't warrant a whole module dedicated to it.
2019-05-19 02:18:00 -04:00
Henrik Lissner
928ec16242
ui/workspaces: remove unused function 2019-05-19 02:17:59 -04:00
Henrik Lissner
8c65a63b1c
Move eshell, term & vterm modules to :term 2019-05-19 02:17:59 -04:00
Henrik Lissner
42ba2a22b8
Prevent ~/.emacs.d/transient from being created 2019-05-19 02:17:59 -04:00
Henrik Lissner
01face314d
Fix doom/help-* search commands
They weren't actually doing anything.
2019-05-19 02:17:59 -04:00
Henrik Lissner
dce3d0ddc6
Fix evil-alternate-buffer + persp-mode
Fixes an issue where evil-switch-to-windows-last-buffer would switch to
buffers outside the current workspace.
2019-05-19 02:17:59 -04:00
Henrik Lissner
892f0164af
Add :h[elp] ex command 2019-05-19 02:17:58 -04:00
Henrik Lissner
dba3ae5e4d
Prevent nav-flash from firing too often
And trigger on better-jumper-post-jump-hook instead, so that non-evil
users can benefit from nav-flash in this case too.
2019-05-19 02:17:58 -04:00
Henrik Lissner
4cde9afd93
Refactor setq-hook!
Simplifies its expanded form and names the hook function to make the
hook's value more readable in help buffers.
2019-05-19 02:17:58 -04:00
Henrik Lissner
4d20655f78
Optimize incremental loading
Interrupt package loading if Emacs recieves input. This further reduces
percieved pauses at startup.
2019-05-19 02:17:58 -04:00
Henrik Lissner
f7fb729269
Enable show-trailing-whitespace selectively
Instead of enabling it globally and disabling it in particular modes, we
do the opposite. There are fewer edge cases this way.
2019-05-19 02:17:58 -04:00
Henrik Lissner
81a054deda
Add custom-set-faces! convenience macro
For setting face attributes non-destructively. See docstring for usage
example.
2019-05-18 16:46:21 -04:00
Henrik Lissner
d62e13c803
Alphabetize plugins in core-editor
Easier to find them this way.
2019-05-18 14:44:40 -04:00
Henrik Lissner
30319d1c3e
lang/markdown: auto-resolve build & open programs
Markdown-mode will now auto-detect a markdown compiler when you use
markdown-preview (SPC m b). It will try marked, pandoc and markdown, in
that order.

As for markdown-open, it will now use "open" on MacOS and "xdg-open" on
Linux, by default.
2019-05-18 00:53:39 -04:00
Henrik Lissner
2e6d8be6fc
Rethink SPC n keybinds and add new ones
Adds the following keybinds:

SPC n .    Browses org-directory
SPC n /    Text search in org-directory
SPC n *    Text search in org-directory with symbol at point
SPC n h    Jump to org headline in org-agenda-files
2019-05-17 23:57:24 -04:00
Henrik Lissner
5ec0c5ba3f
cli/env: refactor 2019-05-17 21:34:21 -04:00
Henrik Lissner
f8b359516f
lang/python: set docsets 2019-05-17 21:02:25 -04:00
Henrik Lissner
f7b75a7d68
editor/evil: use evil-set-cursor-color
set-cursor-color causes an expensive redraw. Plugins like treemacs may
silently change window focus, triggering these calls and causing
freezing. We use evil-set-cursor-color instead, which avoids
set-cursor-color unless the cursor's color has changed.
2019-05-17 21:02:24 -04:00
Henrik Lissner
571e7bd527
Fix +lookup/in-docsets & docsets lookup backend
They were throwing 'cannot find docset' errors.

- Adds new +lookup/in-all-docsets command.
- If a prefix arg is passed to +lookup/in-docsets, it will search all
  docsets in dash-docs-common-docsets.
2019-05-17 21:02:24 -04:00
Henrik Lissner
507fb50ff2
Warn us if evil-collection module loads too early 2019-05-17 20:23:52 -04:00
Henrik Lissner
3ed54e191b
Fix #1322: replace load-env-vars w/ custom loader
I've replaced load-env-var with our own custom parser. load-env-var
expects a well-formatted env file, which neither env nor set produces,
which is what doom env uses to dump the shell environment.

This should fix issues that arise when envvars (like PATH) contain
arbitrary whitespace.
2019-05-17 20:19:35 -04:00
Henrik Lissner
31ed6fdf2b
tools/eval: fix eval-and-replace not first clearing selection 2019-05-17 16:01:46 -04:00
Henrik Lissner
ec240d0bfa
tools/eval: fix window-live-p error on eval-and-replace
Caused because the quickrun window adjustment hooks assume quickrun will
always spawn a results buffer, but in the case of eval-and-replace, it
doesn't.
2019-05-17 15:59:49 -04:00
Henrik Lissner
32f8fa9f46
Fix :prefix-map indentation in map! calls 2019-05-17 13:31:05 -04:00
Henrik Lissner
87899124ab
Disable lsp-ui-doc by default
In the interest of performance and simplicity. lsp-ui-doc is redundant
with +lookup/documentation and eldoc (which are less imposing than
lsp-ui-doc's childframe).

Also sets lsp-groovy-server-install-dir.
2019-05-17 02:05:33 -04:00
Henrik Lissner
3240238a18
tools/vterm: improve UI/UX
- Don't prompt about processes when killing buffer
- Hide modeline in vterm buffers (doesn't do anything useful and would
  be consistent with settings for eshell and term modules).
- Refactor +vterm/open & +vterm/open-popup
- Add Emacs window redraw hack to force vterm to redraw, fixing
  artefacting in some edge cases.
- Fix ansi-color-names-vector when solaire-mode is present, otherwise
  you get a mismatched background in vterm (and other terms).
2019-05-17 01:58:42 -04:00
Henrik Lissner
ba92adf7b3
Reformat core-ui, add outline headers to core-editor 2019-05-17 01:58:39 -04:00
Henrik Lissner
20720cda61
Remove visual-fill-column package from Doom core
It is not essential enough to keep in Doom core. I'm working on a new
module (or a rewrite for app/write) to replace it.
2019-05-17 01:58:27 -04:00
Henrik Lissner
67b6c44939
Enable show-trailing-whitespace globally
The variable is buffer-local and must be set with setq-default instead.

Also adds doom|{enable,disable}-show-trailing-whitespace hooks.
2019-05-17 01:58:08 -04:00
Henrik Lissner
29a1120f01
config/default: fix F-f9 typo
Should be C-f9, there is no F- modifier.
2019-05-16 15:00:21 -04:00
Henrik Lissner
5d2610fc31
Fix window issues due to switch-buffer hooks
- Fixes the issue that 45873615 was trying to address with frameworks
  like ivy, helm and hydra (where they would manipulate the wrong
  windows),
- Fixes an issue where notmuch couldn't find its buffers ("no buffer
  named *notmuch-X*" errors),
2019-05-16 11:42:30 -04:00
Henrik Lissner
a247f00a45
email/notmuch: fix invalid-function error
Caused by malformed company backends.
2019-05-16 11:41:46 -04:00
Henrik Lissner
4587361579
Prevent switch hooks while minibuffer is active
Fixes an issue where lv (used by hydra) would manipulate the wrong
window when invoked from, say, ivy.
2019-05-16 03:27:52 -04:00
Henrik Lissner
4e80ca7d23
editor/fold: add hs support for nxml-mode 2019-05-16 01:22:50 -04:00
Henrik Lissner
0ac3044606
Add 'SPC / k' and 'SPC c k' keybinds
For searching docsets and documentation, respectively.
2019-05-16 00:39:09 -04:00
Henrik Lissner
ae8aa26c33
tools/lookup: add prefix arg to lookup commands
The prefix arg causes +lookup/{definition,references,documentation} to
prompt you for which lookup backend to use.
2019-05-16 00:37:27 -04:00
Henrik Lissner
1f88efeb82
tools/lookup: fix missing +lookup-symbol-or-region error 2019-05-16 00:10:56 -04:00