Commit graph

987 commits

Author SHA1 Message Date
Henrik Lissner
2fa8599364
ui/pretty-code: fix wrong-number-of-args: eq error
And minor refactor
2018-07-06 20:42:51 +02:00
Henrik Lissner
9f769fa985 Merge branch 'jseba-develop' into develop
* jseba-develop:
  ui/pretty-code: general refactor & fix premature )
  Fix & document set-pretty-symbols!
  Fix major mode symbols
  Support for multiple ligature'd fonts
2018-07-06 20:32:35 +02:00
Henrik Lissner
fc87a72904
ui/pretty-code: general refactor & fix premature ) 2018-07-06 20:32:00 +02:00
Henrik Lissner
2a125000ae
Fix & document set-pretty-symbols! 2018-07-06 20:31:59 +02:00
Henrik Lissner
0b7faa468c
Fix which-key sharing windows with other popups
Which-key is now lazy-loaded, so the modified which-key-popup-type gets
overwritten.
2018-07-06 14:57:40 +02:00
Josh Seba
a7cba67fd6 Support for multiple ligature'd fonts
Refactors the ligature configuration to support more than just Iosevka
(uses Fira Code as the second font).
2018-07-05 19:37:06 -07:00
Henrik Lissner
c38d324663
Make banner customizable
Add banner-file and banner-dir variables. If banner-file is nil, use
ASCII banner.
2018-07-05 14:33:48 +02:00
Henrik Lissner
b67745a9b6
Don't show "Open user manual" button
...unless the manual exists (it will soon)!
2018-07-05 12:37:05 +02:00
Henrik Lissner
3a1ba5381e
Use +default/find-in-config instead on dashboard
Instead of browse-config.
2018-07-05 12:36:32 +02:00
Henrik Lissner
1fa4c65c3a
ui/doom-dashboard: minor refactor 2018-07-05 01:32:04 +02:00
Henrik Lissner
f949df5646
Reformat ui/doom-dashboard tests 2018-07-04 23:14:31 +02:00
Henrik Lissner
ebd4d19fa4
Fix +doom-dashboard-p 2018-07-04 23:14:12 +02:00
Henrik Lissner
c55d6dad17
Reduce coupling with buffers library and dashboard 2018-07-04 23:06:47 +02:00
Henrik Lissner
0b1cb1bb48
Look up command binds dynamically in dashboard
Keys are no longer hard coded.

cc @UndeadKernel
2018-07-04 23:05:49 +02:00
Henrik Lissner
a406b2d0c8
Ignore errors if display-buffer ALIST is malformed
The gud.el library uses display-buffer incorrectly, by passing a list of
functions as its second argument, instead of as a nested list.

CORRECT:
  (display-buffer buffer
    '((display-buffer-reuse-window
       display-buffer-in-previous-window
       display-buffer-same-window display-buffer-pop-up-window)))

INCORRECT (how gud does it):
  (display-buffer buffer
    '(display-buffer-reuse-window
      display-buffer-in-previous-window
      display-buffer-same-window display-buffer-pop-up-window))

This causes "wrong-type-argument: listp
display-buffer-in-previous-window" error. However, it appears Emacs
handles malformed alists by just ignoring them, so Doom will do the
same.

Reported by @maskray
2018-07-04 21:42:33 +02:00
Henrik Lissner
57020cdfdb
Fix void-variable after-focus-change-function error
The condition was the wrong way around.
2018-07-04 21:26:20 +02:00
Henrik Lissner
f5e8c72bb6
Add experimental modeline (disabled by default)
This mode-line may have bugs and its implementation details are certain
to change (it doesn't follow naming conventions, for instance). It also
doesn't have all the features of the old modeline (yet).

However, it is easily twice as fast as the original, and a little more
flexible, what with the `mode-line-format-left' and
`mode-line-format-right' variables. It also exposes a more powerful API
for defining modelines and modeline segments (and switching between
them).

It is disabled by default and must be activated with the +new module
flag on the ui/doom-modeline module.
2018-07-04 17:49:44 +02:00
Henrik Lissner
ee4060ab80
Add image banner display logic to dashboard
But disabled by default (until the logo is ready).
2018-07-04 16:20:02 +02:00
Henrik Lissner
e37e6fc25c
Fix invalid face: quote errors in dashboard 2018-07-04 15:33:15 +02:00
Henrik Lissner
00e23db0b0
Fix workspace restore/load workspace keybinds
As well as keybind on dashboard.
2018-07-04 13:40:44 +02:00
Henrik Lissner
1d4a41833e
Don't wrap forward/backward-button keys 2018-07-03 20:07:14 +02:00
Henrik Lissner
d0eaa0af1e
Redesign dashboard widgets 2018-07-03 20:07:14 +02:00
Henrik Lissner
f39d49c954
Conditionally enable custom neotree icon theme
If :ui neotree is disabled, disable the icon theme.
2018-07-03 12:29:27 +02:00
Henrik Lissner
24686948c2
ui/fci: fix invalid-face: line-number error #738
The line-number face was introduced in Emacs 26 and will cause this
error in earlier versions.
2018-07-03 03:41:08 +02:00
Henrik Lissner
9756a0a18c
Remove doom-themes-common reloading
No longer necessary with upcoming doom-themes update.
2018-07-03 03:41:08 +02:00
Henrik Lissner
81ffed520b
Rename doom-before-switch-*-hook hooks
+ doom-before-switch-buffer-hook => doom-exit-buffer-hook
+ doom-before-switch-window-hook => doom-exit-window-hook
+ doom-after-switch-buffer-hook => doom-enter-buffer-hook
+ doom-after-switch-window-hook => doom-enter-window-hook

Shorter, easier-to-type names that better describe their intended
purpose.

The old names are still usable, but deprecated.
2018-07-03 03:41:08 +02:00
Henrik Lissner
4213899b01
Refactor out -pcase in +treemacs/toggle 2018-07-01 01:16:37 +02:00
Henrik Lissner
cddde09b79
Fix popup system not cleaning up buffers with ttl
Because of extra parentheses causing essential logic from running. I am
a silly goose.
2018-07-01 00:57:27 +02:00
Henrik Lissner
15f2e21468
On second thought...
Causes char-table-p errors in some cases.

Setting hscroll-margin = 0 in dashboard accomplishes the same thing, by
preventing truncation glyphs from ever appearing anyway.
2018-06-30 02:58:01 +02:00
Henrik Lissner
04ee1c23fd
Don't set margins in left/right popups 2018-06-29 02:35:33 +02:00
Henrik Lissner
a4121f33c0 Revert "Require project root in dashboard buffer #733"
This reverts commit 2dac739ce7.

Causes breaking "Not in project" errors at startup in certain daemon
workflows.
2018-06-29 00:56:04 +02:00
Henrik Lissner
2dac739ce7
Require project root in dashboard buffer #733
Require default-directory to be in a valid project for project commands
to work. This will prevent hangs when accidentally invoking
projectile-find-file from $HOME.
2018-06-28 20:15:50 +02:00
Henrik Lissner
4eda07e576
Don't replace scratch buffer with other popups 2018-06-28 00:31:36 +02:00
Henrik Lissner
26f514001e
Autoload git-gutter:{revert-hook,stage-hunk}
In case they're used before git-gutter has loaded; they should be
allowed to error themselves.
2018-06-27 18:51:32 +02:00
Henrik Lissner
017ba8d79c
Autoload defhydras & use new naming convention
Phasing out the +module@name convention for plain old
+module-name-hydra, which is more compatible with elisp reflection tools
like describe-function and such.

Also, Emacs starts up faster now. Tee hee.
2018-06-26 01:43:54 +02:00
Henrik Lissner
0dc0ccc63e
Refactor +popup*org-pop-to-buffer
Simplify pop-to-buffer call.
2018-06-25 20:19:33 +02:00
Henrik Lissner
8fcc12ed08
Add +popup-display-buffer-fullframe
Adds support for the saved-wconf window parameter. If a popup possesses
a window configuration in this parameter, it will be restored when the
popup (or its popup buffer) is killed.
2018-06-25 19:28:09 +02:00
Marcelo dos Santos
fcbf221267 Add new symbols. 2018-06-23 18:14:01 -03:00
Henrik Lissner
618358413b
Major refactor of ui/popup
+ Make it pass tests
+ Changes the behavior and arguments of functions passed to :autosave,
  :ttl, and :modeline.
+ Updated the documentation of set-popup-rule! to reflect these changes
+ Phase out map.el usage as per f6dc6ac7
2018-06-23 22:18:44 +02:00
Henrik Lissner
f11bd617cd
Add ui/popup tests (wip) 2018-06-23 22:17:56 +02:00
Henrik Lissner
f6dc6ac74e
Refactor out map.el usage
After some profiling, it turns out map-put and map-delete are 5-7x
slower (more on Emacs 25) than delq, setf/alist-get and add-to-list for
small lists (under 250 items), which is exactly how I've been using
them.

The only caveat is alist-get's signature is different on Emacs 25, thus
a polyfill is necessary in core-lib.
2018-06-23 19:53:54 +02:00
Benjamin Andresen
61cdac230f ui/vc emacs/vc: unify hydra design
this design will also break less based on the fonts
2018-06-23 16:25:58 +02:00
Henrik Lissner
0bea00c183
Fix with-popup-rules! macro
Mistreating its RULES argument, causing void-function errors.
2018-06-22 19:17:15 +02:00
Henrik Lissner
16975d0dc3
Slightly smaller backtrace popups 2018-06-22 01:49:21 +02:00
Henrik Lissner
5531d7115a
Fix indentation for many autodef setters 2018-06-22 01:49:21 +02:00
Henrik Lissner
8c5deef5fc
Fix unintern calls (missing second argument) 2018-06-22 01:49:21 +02:00
Henrik Lissner
60779c9aed
feature/version-control => ui/vc-gutter, emacs/vc
Reorganize vcs functionality. Moves the custom fringe bitmaps into :ui
vc-gutter.
2018-06-22 01:49:20 +02:00
Henrik Lissner
d01f39d658
Add unsetting capability to set-pretty-symbols!
+ Allows (set-pretty-symbols! 'some-mode nil)
+ Changes the semantics of +pretty-code-enabled-modes, which is now t by
  default (meaning enable all modes). It also supports '(not ...).
2018-06-22 01:49:19 +02:00
Henrik Lissner
27ab47cd11
Improve *Backtrace* popup rule
+ High vslot = unlikely to be replaced by other popups.
+ Make it large; backtraces are important!
+ Don't allow ESC to close it. It must be done manually, with q or zx
2018-06-20 02:12:37 +02:00
Henrik Lissner
205cc718d2
Fix dashboard not appearing in daemon frames
Because they start in the *server* buffer, instead of the *scratch*
buffer.
2018-06-19 17:44:24 +02:00