Commit Graph

394 Commits

Author SHA1 Message Date
6729de9918 evil-goggles-duration = 0.1
Display a little longer.
2018-06-04 00:12:51 +02:00
e71cd93488 Don't change which-key settings in doom dashboard 2018-06-03 17:22:23 +02:00
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
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
4d2e1dd526 Fix modeline growing incrementally on big font mode
Fixes #575
2018-06-02 21:40:57 +02:00
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
dd57a521f3 Correct :popup/:popups docstrings 2018-06-02 18:20:09 +02:00
209b281dc6 Move popup mode keymaps to autoload.el 2018-06-02 16:58:56 +02:00
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
90ddc67337 Fix with-popup-rules! macro 2018-05-31 01:34:53 +02:00
abd8f87e28 Move popup keymaps to config.el
This prevents void-variable +popup-buffer-mode-map errors that occur in
some hard to reproduce scenarios.

Also ensures that window-persistent-parameters is being restored when
+popup-mode is disabled.
2018-05-30 23:02:36 +02:00
75e6ea6bee ui/popup: delete old rule in :popup/:popups settings
In case the settings are used or ran after initialization (e.g. in the
case of doom//reload).
2018-05-30 01:39:17 +02:00
73d083b1fa ui/popup: larger Info popups 2018-05-29 16:00:16 +02:00
947fe345c3 Minor, general refactor
In some contexts, map-put is superior to add-to-list.
2018-05-29 15:34:13 +02:00
80f766c151 ui/doom-modeline: load evil-anzu only if evil is enabled 2018-05-29 15:32:36 +02:00
456dc62051 Fix compile-time void-function errors from modeline 2018-05-29 15:32:36 +02:00
442aa91eea ui/doom-modeline: optimize/refactor flycheck segment 2018-05-29 14:13:31 +02:00
9ae99deb65 ui/doom-modeline: optimize vcs segment (experimental) 2018-05-29 14:13:31 +02:00
1a452b6842 💥 Change first arg of load! macro
load!'s first argument is no longer a symbol (that will cause
void-variable errors now) to save on unnecessary interning and simplify
compile-time logic. It accepts any valid form that evaluates to a string
now.

If you use load!, you need to change its argument to a string!

e.g. (load! +my-module) => (load! "+my-module")
2018-05-27 12:52:28 +02:00
fa17de9f19 ui/popup: refactor :popup/:popups settings
And move org popup settings to lang/org
2018-05-26 23:26:45 +02:00
4e2beb8b7e Merge +popup-define's documentation into :popup setting's
Users are more likely to view :popup's documentation for information on
defining popup rules (they shouldn't be using +popup-define!).
2018-05-26 14:20:23 +02:00
6b70831386 ui/evil-goggles: evil-goggles-enable-delete = nil 2018-05-25 00:56:34 +02:00
1e4f108655 ui/neotree: non-capturing groups in neo-hidden-regexp-list
Slight optimization.
2018-05-25 00:56:19 +02:00
643ff13053 ui/doom: make solaire-mode a little pickier
Instead of only activating in buffers that a real (which is more
selective), simply activate in buffers that are file-visiting (this
means that real buffers that aren't highlighted can exist, particularly
term/eshell buffers).
2018-05-25 00:55:06 +02:00
2f83757018 ui/doom-dashboard: more robust feature detection
In case you aren't using those modules, but have other means of loading
those packages.
2018-05-25 00:54:07 +02:00
09cb4f6716 Major refactor & optimization of how modules load their packages
Now that we are loading package autoloads files (as part of the
generated doom-package-autoload-file when running make autoloads), many
:commands properties are redundant. In fact, many def-package! blocks
are redundant.

In some cases, we can do without a config.el file entirely, and can move
into the autoloads file or rely entirely on package autoloads.

Also, many settings have been moved in their module's autoloads files,
which makes them available ASAP; their use no longer depends on module
load order.

This gained me a modest ~10% boost in startup speed.
2018-05-25 00:46:16 +02:00
dcec3b9b25 feature/popup: add new autosave window parameter
(autosave . CDR)

This parameter determines what to do with modified buffers in closing
popup windows. CDR can be a t, 'ignore, a function or nil.

+ If t, no prompts. Just save them automatically (if they're
  file-visiting buffers).
+ If 'ignore, no prompts, no saving. Just silently kill it.
+ If nil (the default), prompt the user what to do if the buffer is
  file-visiting and modified.
+ If a function, the return value must return one of the other values.
  It takes two arguments: the popup window and buffer.
2018-05-19 12:08:24 +02:00
80adb9c1f6 General refactor for consistency & idempotency
Also updated comments
2018-05-18 01:26:41 +02:00
3e6d6279a6 ui/evil-goggles: remove unnecessary toggle wrapper command 2018-05-16 13:06:07 +02:00
06c22a5af2 ui/doom-dashboard: add vertical centering (experimental) 2018-05-15 21:49:50 +02:00
94f9e43f25 Rewrite :defer semantics
:defer now supports a hook, a cons cell with (SYMBOL . INTEGER) where
SYMBOL is a hook and INTEGER is a number of idle seconds before the
package is autoloaded, or just the integer (as per the default behavior
of :defer).

Also fixes an issue where switch-buffer-deffered packages (like
smartparens) wouldn't load.
2018-05-15 10:54:45 +02:00
7122a3e01b ui/evil-goggles: enable evil-goggles-mode on load 2018-05-15 03:15:45 +02:00
5537f81e02 ui/doom-dashboard: doom-packages--benchmark => doom|display-benchmark 2018-05-14 20:56:17 +02:00
a631c10d05 Exploit new :defer input|buffer across various modules 2018-05-14 20:45:47 +02:00
83118dc65c Move feature/popup => ui/popup
And move settings to ui/popup/init.el
2018-05-14 13:05:03 +02:00
0b8f884d18 ui/doom: simplify +doom-folded-face (now set in doom-themes) 2018-05-14 13:05:03 +02:00
a0fa6e5b97 ui/neotree: add *.class to hidden files regexp 2018-05-14 13:05:03 +02:00
99eef125b0 Move :tools neotree => :ui neotree 2018-05-14 13:05:03 +02:00
52cdb0bd83 Remove doom-fringe-size; set default fringe in :ui doom
There was no way to customize doom-fringe-size. Better to customize
fringes by using fringe-mode, {left,right}-fringe-width or
set-window-fringes directly.
2018-05-11 10:00:23 +02:00
4705153873 Minor refactor
+ comment revision
+ delq->map-delete
+ remove obsolete variable
2018-05-09 00:20:01 +02:00
317b556bde Extract :ui posframe packages into other modules 2018-05-09 00:20:01 +02:00
0afae2eacf Remove fringe-helper package 2018-05-08 19:42:28 +02:00
6c8a8a723a ui/evil-goggles: evil-goggles-enable-change = nil
Until edkolev/evil-goggles#19 is fixed
2018-05-07 19:26:31 +02:00
7553f83b04 ui/doom-modeline: minor refactoring 2018-05-04 15:12:44 +02:00
85e5ac4514 ui/doom-modeline: adjust bars when height/width is changed
Also when doom-big-font-mode is toggled.
2018-05-04 15:12:44 +02:00
e6c7c8a8cd ui/doom-modeline: reduce redundant anzu config 2018-05-04 15:12:44 +02:00
d0b183b770 Anzu mode made right. 2018-05-03 21:23:35 +02:00
5c5cbe23db Enabled vanilla anzu. 2018-05-03 20:12:21 +02:00
c05b16ee6f Minor refactor/reformatting 2018-05-03 18:03:13 +02:00
87aa05ffee ui/doom: solaire-mode support for doom-nord-light 2018-05-03 18:03:13 +02:00