Commit graph

4514 commits

Author SHA1 Message Date
UndeadKernel
c59f584444 Correctly report when rtags's client or server are not found. 2018-01-11 15:49:50 +01:00
Henrik Lissner
e571060063
Merge pull request #332 from UndeadKernel/latex_module
Latex module revamped
2018-01-10 04:16:27 -05:00
Henrik Lissner
4a8825e91d
Merge pull request #336 from Dragnucs/patch-1
Add Vue file to web mode
2018-01-10 04:15:46 -05:00
Henrik Lissner
01b4a59f84
feature/version-control: don't manage magit popups 2018-01-09 17:44:39 -05:00
Henrik Lissner
a4e22d48b8
feature/popup: add :ignore support to :popup
Allows you to ignore certain buffers. Helpful for plugins that manage
their own windows, like magit.

To use:

  (set! :popup "^\\*magit" :ignore)

Relevant to #337
2018-01-09 17:42:11 -05:00
Henrik Lissner
bfcbb9ca01
feature/popup: fix +popup/toggle always opening *Messagse*
Because +popup/restore would always return nil.
2018-01-09 16:49:26 -05:00
Henrik Lissner
c03d0dbc06
feature/popup: add +popup-display-buffer action #337
This is experimental and disabled by default. It uses a slightly more
primitive backend that will stack popups away from the edge of the
frame. This will need more work to take window-slot into account.

To use it:

  (remove-hook '+popup-display-buffer-actions 'display-buffer-in-side-window)
  (add-hook '+popup-display-buffer-actions #'+popup-display-buffer t)
2018-01-09 16:49:25 -05:00
Henrik Lissner
7bdf8cf8d9
feature/popup: add +popup-display-buffer-actions #337
Gives us more flexibility to control what display-buffer functions to
use when trying to display the popup window.
2018-01-09 16:49:14 -05:00
UndeadKernel
56a3c81778 Correct def-setting and use string-empty-p.
Change default ivy-bibtex behavior to insert bibliography.
2018-01-09 14:19:02 +01:00
Dragnucs
32c3dd847e
Add Vue file to web mode
Support `.vue` Vue.js files in web-mode.
2018-01-09 11:27:48 +00:00
Henrik Lissner
228b3a36e5
private/default: doom/kill-this-buffer => kill-this-buffer #334
Missed this when I removed doom/kill-this-buffer!
2018-01-09 04:16:31 -05:00
Henrik Lissner
d2bab1dc4d
Fix kill-this-buffer's dashboard addiction, the sequel
Again, the dashboard was being switched to too early (there were still
other real buffers to display).
2018-01-09 04:05:33 -05:00
Henrik Lissner
0e0966a4ce
feature/evil: evil-respect-visual-line-mode = t
Remaps line motions in visual-line-mode.
2018-01-09 03:52:11 -05:00
Henrik Lissner
233b2021ce
completion/ivy: add transformer for projectile-find-file 2018-01-09 03:45:27 -05:00
Henrik Lissner
565c4fa0f4
completion/ivy: fix stringp error from blank buffer-file-name 2018-01-09 03:45:05 -05:00
Henrik Lissner
3a0f27935e
Merge pull request #333 from dsdshcym/call-flycheck-popup-tip-mode-correctly
Call flycheck-popup-tip-mode correctly
2018-01-08 23:02:45 -05:00
Yiming Chen
eb927290b5 Call flycheck-popup-tip-mode correctly
- Fix issue: Symbol’s function definition is void: flycheck-popup-tip
2018-01-09 12:00:35 +08:00
Henrik Lissner
42f4d10d6d
Fix doom//reload-autoloads not reloading autoloads file
doom-packages--async-run doesn't return anything. Whoops!
2018-01-08 22:47:38 -05:00
Henrik Lissner
ca3f955a93
completion/ivy: use upstream ivy-rich
My PR was merged upstream.
2018-01-08 20:43:57 -05:00
Henrik Lissner
3dbf994871
lang/org: close agenda buffers after org-agenda
Experimental. Running org-agenda would leave leftover open buffers, this
hook cleans them up.
2018-01-08 20:42:43 -05:00
Henrik Lissner
6853196017
lang/org: general refactor; split init into hooks
lang/org's initialization process is now split up into hooks on
org-load-hook. This approach is cleaner and easier to customize. I also
removed the escape binding in org-agenda-mode-map, as the popup system
makes it redundant.
2018-01-08 20:41:56 -05:00
Henrik Lissner
b57c2e2264
Disarm doom/cleanup-session's oppressive regime
It killed buffers a little too indiscriminantly.
2018-01-08 19:36:02 -05:00
Henrik Lissner
af37d430fb
Fix kill-this-buffer's dashboard addiction
Our kill-this-buffer advice, which tries to ensure the user will always
land on a real buffer after killing another, would prematurely jump to
the dashboard even though there were other available, real buffers.

Also fixes an issue where kill-this-buffer would get stuck switching
between the last buffers (because they aren't killed if they're visible
in other windows). If the only buffers left are visible in other
windows, it will now switch to the fallback buffer (dashboard or
scratch).
2018-01-08 19:32:53 -05:00
Henrik Lissner
865fe29a9d
completion/ivy: use switch-buffer transformer for projectile 2018-01-08 19:07:23 -05:00
Henrik Lissner
4b4447d31e
completion/ivy: dim non-project entries in counsel-recentf
Added +ivy-recentf-transformer to counsel-recentf. Entries that aren't
in the same project as the buffer recentf was opened from will be
slightly dimmed.
2018-01-08 19:05:12 -05:00
Henrik Lissner
1f52669684
completion/ivy: refactor switch-buffer transformer #331
Also switches to my private fork of ivy-rich until the changes are
merged upstream.
2018-01-08 19:04:21 -05:00
Henrik Lissner
3bdf1dd174
feature/popup: by default, don't handle window selection
Plenty of special popups switch to a buffer and simply assume that that
buffer is now focused. So best we don't interfere with that unless we
must.
2018-01-08 17:30:55 -05:00
Henrik Lissner
d443aed25c
feature/eval: improve compatibility with feature/popups
This makes quickrun, *doom eval* and *Pp Eval Output* buffers behave
better.

Eval output buffers should a) shrink themselves to the size of their
output (within reason), b) *not* grab focus, and c) be easy to close
from afar with C-g/Escape.

Gotchas:

1. Quickrun gets output asynchronously, so we shrink it on
   quickrun-after-run-hook, not in the popup rule.
2. *doom eval* and *Pp Eval Output* opens with its output ready, so the
   popup system may shrink those to fit.
3. *doom eval* and *Pp Eval Output* handle window selection themselves.
   Let them by setting the select window parameter to #'ignore.
2018-01-08 17:30:54 -05:00
Henrik Lissner
b6bf0d7afd
ui/doom-dashboard: major refactor; use initial-buffer-choice
Much of my work getting dashboard to behave across GUI, tty and daemon
Emacs is already done with initial-buffer-choice, so I cut down on my
own code and exploit that instead. Needs more testing.
2018-01-08 17:30:54 -05:00
Henrik Lissner
971e4904fe
feature/services: -when-let => when-let* 2018-01-08 15:25:28 -05:00
Henrik Lissner
3beb1f098a
completion/ivy: use font-lock-doc-face instead of ivy-remote 2018-01-08 15:02:54 -05:00
Henrik Lissner
7777f9940e
Change add-hook! macro to retain hook order
(add-hook! hook '(1 2 3)) should set hook to `(1 2 3 ,@old-hooks).
Before this, they would be pushed sequentially, resulting in hook =
`(3 2 1 ,@old hooks)`
2018-01-08 14:55:58 -05:00
Henrik Lissner
f2e5321ce1
feature/ivy: fix virtual buffers in +ivy/switch-workspace-buffer #331
The former +ivy/switch-workspace-buffer constructed its own collection
of buffers, so ivy-use-virtual-buffers would have no effect on it.  Use
internal-complete-buffer instead and ivy-read will know what to do under
the hood.
2018-01-08 14:43:58 -05:00
Henrik Lissner
1c2683ce9d
completion/ivy: add ivy-rich; rewrite custom transformer #331
+ivy-buffer-transformer does *most* of what ivy-rich does, so lets cut down on
our own code, bring in ivy-rich, and add our customizations on top of it.

This fixes ivy-use-virtual-buffers support, too.
2018-01-08 14:41:41 -05:00
Undead Kernel
e91cb11243 Latex module revamped
Latex language module with previews, latexmk, reftex, bibtex and others.
Completion with company mode.
Selection of bibliography using Ivy or Helm.
Later preview panel or okular as viewers.
LatexMk for compiling code.
Prettified indentation with adaptive-wrap along with good indentation of environments.
Additional fontification of common commands.
2018-01-08 19:18:37 +01:00
Henrik Lissner
35594f0729
lang/org: fix todo(t) capture target (incorrect path) 2018-01-07 22:20:11 -05:00
Henrik Lissner
bf7055a7db
feature/popup: make extra sure popups die safely
A buffer can find other, unexpected ways to kill itself, so we set up
a kill-buffer-hook to make sure we're there to catch them. Not all
heroes wear capes.
2018-01-07 22:18:50 -05:00
Henrik Lissner
395af731d9
feature/popup: tweak org rules + add org-capture rule 2018-01-07 22:18:50 -05:00
Henrik Lissner
7ca2e1593e
feature/popup: split +popup-p into two functions
Better to be explicit about what we want, especially when using one or
the other with no arguments.
2018-01-07 22:18:50 -05:00
Henrik Lissner
f9ab0cf767
feature/popup: add multi-term, eshell and evil hacks 2018-01-07 22:18:50 -05:00
Henrik Lissner
031e31c03c
feature/popup: minor refactor 2018-01-07 18:39:42 -05:00
Henrik Lissner
5a420faa0f
feature/popup: tweak popup rules, add +popup-shrink-to-fit
+popup-shrink-to-fit wraps shrink-window-if-larger-than-buffer, and
won't do anything if the buffer is empty.
2018-01-07 18:36:27 -05:00
Henrik Lissner
b11101d9cf
feature/popup: add rule for Compilation buffer 2018-01-07 15:26:20 -05:00
Henrik Lissner
742f5b26ed
Improve popup compatibility for eshell & multi-term 2018-01-07 15:25:35 -05:00
Henrik Lissner
d675ade45d
feature/popup: move hacks to +hacks.el 2018-01-07 15:04:33 -05:00
Henrik Lissner
4bd74d9653
Fix doom-cleanup-hook breaking if hook didn't return an integer 2018-01-07 15:03:45 -05:00
Henrik Lissner
8f9175c25e
feature/popup: fix popup window-parameters in Emacs 25.x #261
The window parameters of popup windows weren't being set in Emacs 25.x. Turns
out `display-buffer-alist`'s ALIST argument didn't support the
windows-parameters alist entry until Emacs 26.
2018-01-07 13:12:55 -05:00
Henrik Lissner
750f6ca1f5
private/default: remove popup-buffer bindings
Fixes prefix errors too
2018-01-07 06:48:06 -05:00
Henrik Lissner
e02f01b694
feature/popup: make extra sure escape=>doom/escape in popups #261 2018-01-07 06:47:00 -05:00
Henrik Lissner
5f52e21796
feature/popup: fix incorrect delete-window window parameter #261
A bug that could make popup windows invulnerable to being closed. The
horror!
2018-01-07 06:44:37 -05:00