Commit graph

618 commits

Author SHA1 Message Date
Henrik Lissner
8272d8e98f
ui/modeline: rpad +modeline-flycheck 2018-08-01 01:14:36 +02:00
Henrik Lissner
fb3d385211
ui/modeline: add flycheck segment 2018-07-31 18:40:54 +02:00
Henrik Lissner
b3f2a8cd54
ui/modeline: minor refactor
Add +modeline-segment-active-p predicate function.
2018-07-31 18:40:30 +02:00
Henrik Lissner
b62e40b10b
ui/modeline: add +modeline-width option 2018-07-31 16:54:38 +02:00
Henrik Lissner
70e0280db3
Don't byte-compile modeline format functions
Fixes unused lexical arg warnings when starting up.
2018-07-30 23:50:03 +02:00
Henrik Lissner
59f869bf5e
ui/modeline: update comments & benchmarks 2018-07-30 23:10:18 +02:00
Henrik Lissner
1211c2c7f7
Fix incorrectly rendered icons in modeline #773
And possibly fix bytecomp warnings about unused lexical variables.
2018-07-30 23:00:35 +02:00
Henrik Lissner
cbc59f9333
Appease the byte-compiler 2018-07-30 12:10:11 +02:00
Henrik Lissner
55870458e6
Byte-compile mode-line segment :eval forms
Byte-compiled function calls are ~10% faster than evalling quoted forms.
2018-07-30 02:57:50 +02:00
Henrik Lissner
1205db0f73
Decouple :modeline popup rule from modeline API
The :modeline property still takes:

  t => default modeline
  nil => no modeline (the default)

But now also accepts:

  function => uses its return value as the mode-line-format
  anything non-nil => used directly as the mode-line-format

This is to decouple the popup API from the modeline API. You can still
use them compositionally:

  (set-popup-rule "abc" :modeline (lambda () (set-modeline! :project)))
2018-07-30 02:57:50 +02:00
Henrik Lissner
923093b263
Don't set buffer-read-only in +doom-dashboard-mode
This is already set by the parent mode, special-mode.
2018-07-29 19:31:33 +02:00
Henrik Lissner
088480047c
Polish & move new modeline into :ui modeline
Removes modeline library out of core-ui and contains them in :ui
doom-modeline and :ui modeline.

:ui modeline will eventually replace :ui doom-modeline, but is still
considered experimental. This update provides makes it much more stable
and closer to being feature complete.
2018-07-29 19:31:32 +02:00
Henrik Lissner
9abafcf74a
Rename def-modeline! -> def-modeline-format!
As to differentiate it from the old def-modeline! macro. This only
affects users of the +new modeline.
2018-07-29 17:41:55 +02:00
Henrik Lissner
f58f3c3604
ui/nav-flash: refactor
+ Add +nav-flash-exclude-commands to control where
  +nav-flash-blink-cursor-maybe should not trigger nav-flash.
+ Rename API to conform to Doom naming conventions
  + +nav-flash-blink-cursor
  + +nav-flash-blink-cursor-maybe
  + +nav-flash|delayed-blink-cursor
  + +nav-flash|blink-cursor
  + +nav-flash|blink-cursor-maybe
  + +nav-flash*blink-cursor
2018-07-24 20:04:03 +02:00
Henrik Lissner
399194e868
Autoload +popup--init
Fixes #766
2018-07-21 14:00:02 +02:00
Henrik Lissner
28e21352ec
Have popup manager handle treemacs windows
Other windows would be resized slightly incorrectly because treemacs
opens as a fixed split, rather than a side window. This change forces it
to be a side window, which resolves the problem _and_ restores the
functionality of balance-windows, which is disabled when a fixed split
is present.
2018-07-21 01:20:59 +02:00
Henrik Lissner
7f284e98b6
Fix helm-M-x help popup not properly closing
On successive TAB presses on a command
2018-07-21 01:20:05 +02:00
Henrik Lissner
8756837036
ui/treemacs: disable treemacs-follow-mode
Can be disruptive if you've got many windows with buffers across
different projects. Also, SPC o P is available to "jump to current file"
in the treemacs window.
2018-07-19 03:38:52 +02:00
Henrik Lissner
76d90e752f
Update git-gutter on magit stage/unstage file
Old magit-post-refresh-hook wasn't working (no guarantee the correct
buffer was current).
2018-07-12 18:47:54 +02:00
Henrik Lissner
0c63298253
No prettify-symbols-mode in special modes
Fixes issues with magit popups losing their color.
2018-07-12 16:43:37 +02:00
Henrik Lissner
e4778f9923
Disable treemacs-follow-mode by default
This has proven intrusive, especially when you have files from different
projects open and you switch between them rapidly. Enabling
treemacs-follow-mode is left up to the user. Otherwise, the SPC o P
keybind and treemacs-find-file command can this manually and on-demand.

Also remove hide-mode-line-mode from treemacs because it's redundant
with the doom-themes treemacs icon theme.
2018-07-10 23:08:05 +02:00
Henrik Lissner
b5c57ab6e4
Don't trigger nav-flash in special windows 2018-07-10 23:05:39 +02:00
Henrik Lissner
35b76ee49b
Enable minimalistic icon theme for treemacs
Still experimental.
2018-07-10 23:05:01 +02:00
Henrik Lissner
ba4d72713a
Don't set mode-line if format doesn't exist 2018-07-10 21:48:52 +02:00
Henrik Lissner
0cd32b5f1d
Add selection info segment to new modeline 2018-07-10 21:48:32 +02:00
Henrik Lissner
043dc4e875
Update dashboard on +doom-dashboard/open 2018-07-10 17:46:31 +02:00
Henrik Lissner
ae21b90278
Merge pull request #748 from aidangilmore/develop
ui/pretty-code: Added support for PragmataPro font
2018-07-09 23:52:16 +02:00
Aidan Gilmore
b8179ca236
ui/pretty-code: Added support for PragmataPro font 2018-07-09 14:38:31 -04:00
Henrik Lissner
04c66829eb
Don't init prettify-symbols-mode in special modes
Or eshell, term and comint modes.
2018-07-08 13:43:18 +02:00
Henrik Lissner
10daa435f7
Document :ignore property in set-popup-rule! 2018-07-07 11:44:47 +02:00
Henrik Lissner
1a068f82f1
Add +workspace/load-last-session
And fix the load last session button on dashboard.
2018-07-07 11:41:24 +02:00
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