Commit Graph

105 Commits

Author SHA1 Message Date
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
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
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
06c22a5af2 ui/doom-dashboard: add vertical centering (experimental) 2018-05-15 21:49:50 +02:00
5537f81e02 ui/doom-dashboard: doom-packages--benchmark => doom|display-benchmark 2018-05-14 20:56:17 +02:00
61865d0646 ui/doom-dashboard: don't open dashboard over files (part 2) #523 2018-04-18 19:41:50 -04:00
c24c868945 ui/doom-dashboard: remove 'Edit Doom Emacs' button 2018-04-03 16:58:41 -04:00
cc13f51b7f ui/doom-dashboard: update for new doom-private-dir 2018-04-03 16:29:14 -04:00
93678494cb ui/doom-dashboard: fix wrong-type-arg error on reload 2018-03-27 19:08:46 -04:00
8604966e21 ui/doom-dashboard: add 'edit modules list' button 2018-03-24 17:53:13 -04:00
4d80c20251 Add arrow, tab/S-tab, & C-n/C-p keys for navigating dashboard 2018-03-20 17:36:23 -04:00
b68fa3b120 ui/doom-dashboard: disable visual mode in post-command-hook too 2018-03-20 00:00:21 -04:00
ff0b45299e Refactor dashboard autoload functions 2018-03-18 15:17:40 -04:00
d75df875c9 Trap cursor in buttons better in dashboard #465 2018-03-18 15:17:20 -04:00
01cb16cf42 ui/doom-dashboard: minor refactor 2018-03-18 02:36:12 -04:00
a9c8f8f41b ui/doom-dashboard: lock point in buttons #465 2018-03-18 02:35:52 -04:00
dba1f20dd3 ui/doom-dashboard: refresh dashboard on buffer switch 2018-03-14 18:51:08 -04:00
c2fd538261 Refactor doom startup benchmark 2018-02-28 17:57:29 -05:00
dd163dace0 Fix org-agenda-list showing on dashboard 2018-02-28 13:53:37 +01:00
18d0b9425d ui/doom-dashboard: add sharp quote 2018-02-18 20:50:30 -05:00
f8bf86e1a3 ui/doom-dashboard: add button to open private module 2018-02-16 21:02:46 -05:00
2b1c323dbf 💥 Redesign private sub-module system
~/.doom.d/modules is now a full module tree, like ~/.emacs.d/modules.
Symlinks are no longer involved.

Private modules can now shadow Doom modules. e.g.
~/.doom.d/modules/lang/org will take precendence over
~/.emacs.d/modules/lang/org.

Also, made doom--*-load-path variables public (e.g. doom--site-load-path
=> doom-site-load-path), and rearranged the load-path for a 10-15%
startup boost.
2018-02-16 02:11:10 -05:00
ca262f5e4e Rename doom-fallback-buffer (variable) => doom-fallback-buffer-name 2018-02-01 20:06:00 -05:00
4567054aed ui/doom-dashboard: no emacs-state in dashboard 2018-02-01 19:58:44 -05:00
2ab0072d83 ui/doom-dashboard: fix dashboard not updating pwd on kill-buffer 2018-02-01 01:24:19 -05:00
5827186123 ui/doom-dashboard: +default/find-in-emacsd => doom-project-find-file 2018-01-29 01:02:24 -05:00
8b19e35ef6 Consider dired-mode buffers real 2018-01-28 20:37:40 -05:00
086a1659b4 ui/doom-dashboard: edit emacs.d button => fuzzy find-file 2018-01-28 18:15:43 -05:00
e3040c676b ui/doom-dashboard: reload at least once on startup 2018-01-28 18:15:22 -05:00
4977d22b75 ui/doom-dashboard: don't hide dired-mode buffers on startup 2018-01-28 18:15:04 -05:00
7bfd7c1ade ui/doom-dashboard: don't change default-directory on startup 2018-01-28 18:14:41 -05:00
0d83834ac7 ui/doom-dashboard: major refactor
+ Fix default-directory not being set properly when switching
  perspectives. ie. Add persp-mode integration (#347, #360)
+ Ensure dashboard initializes properly, at the right time to ensure
  benchmark is properly reported (fix #361)
2018-01-20 15:42:13 -05:00
e6e1282346 ui/doom-dashboard: fix recentf, project & bookmark buttons
When none of these buttons' commands were remapped, you'd get a commandp
nil error.
2018-01-12 18:41:10 -05:00
637a678529 ui/doom-dashboard: fix unchanging default-directory #347 2018-01-11 12:24:38 -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
23ff93703c Append slash to default-directory in doom dashboard
...And give +doom-dashboard-update-pwd a docstring
2018-01-05 14:54:47 -05:00
bee80c1a24 ui/doom-dashboard: don't cd into non-existent directories
Causes CDPATH errors.
2018-01-05 04:31:48 -05:00
7f2dd52b2e ui/doom-dashboard: add docstring for +doom-dashboard|reload-on-kill 2017-12-29 04:16:14 -05:00
54001de36e ui/doom-dashboard: fix string/function pwd-policy when last-cwd is blank 2017-12-29 04:15:56 -05:00
bf681f37b7 Correct typo in docstring 2017-12-29 04:11:54 -05:00
43ad36e614 ui/doom-dashboard: major refactor #309
This should resolve any issues with the dashboard refusing to set its
pwd correctly (or at all) when being switched to.
2017-12-29 01:49:33 -05:00
d8105427e2 ui/doom-dashboard: fix restriction to dashboard buffer 2017-12-28 20:04:46 -05:00
7ea3895b99 ui/doom-dashboard: fix pwd not always being set #309 2017-12-28 19:59:32 -05:00
58b2605215 ui/doom-dashboard: fix 'last pwd policy 2017-12-28 19:58:27 -05:00
538e4c52bd ui/doom-dashboard: fix edge cases where cwd wasn't set properly 2017-12-27 21:00:03 -05:00
86f445d6a1 ui/doom-dashboard: only set last-cwd in real buffers 2017-12-27 17:12:50 -05:00
6c3d7ad7c7 ui/doom-dashboard: expand string +doom-dashboard-pwd-policy #309 2017-12-27 17:11:59 -05:00