Commit Graph

4575 Commits

Author SHA1 Message Date
ad06eacdac feature/popup: general refactor
Adds +popup-origin-window, which contains the last non-popup you were in
before a popup was opened.
2018-01-11 01:09:16 -05:00
bff48e5ed7 feature/popup: use new +popup-display-buffer #337
Adds support for `slot` and `vslot`, allowing for two dimensional
control over where popups may spawn. Highly experimental.

It's upsetting that I have to set `window--sides-inhibit-check`, I'd
like to find a way around that, if possible.
2018-01-11 01:05:24 -05:00
991297b8e7 feature/popup: fix wrong-number-of-args error 2018-01-11 00:43:26 -05:00
fa54eef776 Merge pull request #342 from dsdshcym/feature-evil-numbers-config
feature/evil: add mapping for evil-numbers
2018-01-10 22:57:28 -05:00
471c68fc8a feature/evil: move evil-numbers bindings to private/default/+bindings.el 2018-01-11 11:50:55 +08:00
2b98e550e8 Reverse load-path to fix precedence issues
Originally, I built the load-path with site-lisp paths first, then
packages. There was a modest ~10% startup boost doing this, because
there were considerably more site packages loaded at startup than
plugins.

However, this meant built-in packages would get precedence over plugins,
which is undesirable. In org's case, I simply modified the load-path
in lang/org/init.el. However, this issue has cropped up again in #340.

Evidently, that 10% boost may not be worth the risk it imposes, so I've
rearranged the load-path with packages first.
2018-01-10 22:47:35 -05:00
669b3cbbb0 lang/cc: fix void-function irony-mode error #341 2018-01-10 22:25:09 -05:00
44f8b579ab Merge pull request #339 from dsdshcym/fix-popup-evil-command-window-execute
Fix popup evil command window execute
2018-01-10 22:08:05 -05:00
c24889d75e feature/evil: add mapping for evil-numbers 2018-01-11 09:17:49 +08:00
ea55fcfd0f feature/popup: use delete-window in +popup*evil-command-window-execute
- +popup/close will pollute the popup history
- see also https://github.com/hlissner/doom-emacs/pull/339#issuecomment-356544535
2018-01-10 17:39:12 +08:00
e571060063 Merge pull request #332 from UndeadKernel/latex_module
Latex module revamped
2018-01-10 04:16:27 -05:00
4a8825e91d Merge pull request #336 from Dragnucs/patch-1
Add Vue file to web mode
2018-01-10 04:15:46 -05:00
4c310bfb17 feature/popup: call get-buffer-window for evil-command execute-window
- doom-popup-other-window was removed
2018-01-10 10:09:03 +08:00
8227f40d08 feature/popup: call +popup/close in +popup*evil-command-window-execute
- doom/popup-close was renamed to +popup/close
2018-01-10 10:08:55 +08:00
01b4a59f84 feature/version-control: don't manage magit popups 2018-01-09 17:44:39 -05:00
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
bfcbb9ca01 feature/popup: fix +popup/toggle always opening *Messagse*
Because +popup/restore would always return nil.
2018-01-09 16:49:26 -05:00
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
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
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
32c3dd847e Add Vue file to web mode
Support `.vue` Vue.js files in web-mode.
2018-01-09 11:27:48 +00:00
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
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
0e0966a4ce feature/evil: evil-respect-visual-line-mode = t
Remaps line motions in visual-line-mode.
2018-01-09 03:52:11 -05:00
233b2021ce completion/ivy: add transformer for projectile-find-file 2018-01-09 03:45:27 -05:00
565c4fa0f4 completion/ivy: fix stringp error from blank buffer-file-name 2018-01-09 03:45:05 -05:00
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
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
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
ca3f955a93 completion/ivy: use upstream ivy-rich
My PR was merged upstream.
2018-01-08 20:43:57 -05:00
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
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
b57c2e2264 Disarm doom/cleanup-session's oppressive regime
It killed buffers a little too indiscriminantly.
2018-01-08 19:36:02 -05:00
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
865fe29a9d completion/ivy: use switch-buffer transformer for projectile 2018-01-08 19:07:23 -05:00
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
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
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
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
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
971e4904fe feature/services: -when-let => when-let* 2018-01-08 15:25:28 -05:00
3beb1f098a completion/ivy: use font-lock-doc-face instead of ivy-remote 2018-01-08 15:02:54 -05:00
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
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
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
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
35594f0729 lang/org: fix todo(t) capture target (incorrect path) 2018-01-07 22:20:11 -05:00
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
395af731d9 feature/popup: tweak org rules + add org-capture rule 2018-01-07 22:18:50 -05:00
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