Commit graph

1193 commits

Author SHA1 Message Date
Henrik Lissner
856f8b6aeb Fix #4995: adapt to renamed comp-* symbols
Adapting to native-comp changes on Emacs HEAD.
2021-05-08 14:46:51 -04:00
Henrik Lissner
f3c496d295 Fix #5009: custom-{,theme-}set-faces\! at startup
An erroneous check preventing these macros from taking effect any other
time but before your doom-theme has loaded.
2021-05-08 13:53:55 -04:00
Henrik Lissner
1c549f21d6 Fix custom-set-faces\! & custom-theme-set-faces\! 2021-05-08 02:32:26 -04:00
Henrik Lissner
f989bf60f0 Rewrite how themes are loaded, and fonts reloaded
A follow-up to 578dddd, which wasn't sufficient.

Fixes #5000 (again)
2021-05-08 00:42:06 -04:00
Henrik Lissner
e2a11d24fd core: minor refactors and comment revisions 2021-05-06 18:36:32 -04:00
Henrik Lissner
d4dec35658 Improve unicode, emoji, & symbol font support
+ Adds doom-emoji-fallback-font-families
+ Adds doom-symbol-fallback-font-families
+ Gives doom-unicode-font higher precedence (and sets it to nil by
  default, since Emacs defaults to symbola already).
+ Store custom face settings in psuedo theme, rather than crowding the
  user theme (which may be immortalized to custom-file, which we want to
  avoid).
+ Now, after-setting-font-hook is guaranteed to fire after *all* fonts
  are set, giving you a more reliable interface to add your own
  font(set) modifications.

More testing is needed to ensure the patched fonts our ligatures modules
don't conflict with this change.
2021-05-06 04:27:33 -04:00
Henrik Lissner
5d7526a224 doom-info: rename distro->system & add window-system 2021-05-06 04:27:33 -04:00
Henrik Lissner
45147aace8 Refactor doom-debug-mode
Store intiial value in symbol plist instead. More info in 8ec8b2b.
2021-05-06 04:27:33 -04:00
Henrik Lissner
ff64a9d106 Add doom-run-hooks
Produces more helpful (and harder-to-miss) error messages when a hook
emits an error. Also advises run-hook when doom-debug-mode is active, so
errors in hooks (generally, major mode hooks) don't quietly go
unnoticed.
2021-05-06 04:27:33 -04:00
Henrik Lissner
df10383a26 Use symbol plists instead of internal variables
More in line with Emacs' built-in practice of storing a variable's
standard-value in a symbol property of the same name, with the added
benefit of less global state.
2021-05-06 04:27:33 -04:00
Henrik Lissner
21b8af1ce1 Rewrite doom/reload-theme to reload active themes
Now reloads all active themes, rather than just the primary one.
2021-05-03 00:17:16 -04:00
Henrik Lissner
2ef54eb782 Fix void-variable emacs-repository-branch in doom-info
Seems this var doesn't exist in some Emacs builds?
2021-04-29 17:24:40 -04:00
Henrik Lissner
f60f576048 Bump :core
Fuco1/smartparens@63695c6 -> Fuco1/smartparens@25f4d6d
bbatsov/projectile@1528ed4 -> bbatsov/projectile@513228f
domtronn/all-the-icons.el@a8c8417 -> domtronn/all-the-icons.el@7a12258
emacs-straight/so-long@a5d445d -> emacs-straight/so-long@1da43ed
jscheid/dtrt-indent@37529fc -> jscheid/dtrt-indent@9714f2c
justbur/emacs-which-key@c632dbf -> justbur/emacs-which-key@5fb3030
raxod502/straight.el@0f9b828 -> raxod502/straight.el@253d7db

Fixes #4947 (needed raxod502/straight.el@0831f6b)

Also includes fixes due to straight changing its logging API.
2021-04-29 17:24:40 -04:00
Henrik Lissner
c9b41205b2 Fix #4925: defining lexical variables error in 28+ 2021-04-29 13:25:48 -04:00
Henrik Lissner
6e49cb5ce2 Reduce false positive symlinks in doom/info {emacs,doom}dir 2021-04-17 23:26:27 -04:00
Henrik Lissner
233fd93b65 Add custom-file trait & custom-vars list to doom/info
So I can tell if users may have a custom.el where something may be
inadvertently saved.
2021-04-17 23:26:27 -04:00
Henrik Lissner
079feb26e4 Left align fields in doom-info
The leading whitespace can cause issues with some whitespace trimming
clipboard managers and <pre> blocks.
2021-04-14 23:31:13 -04:00
Fulvio di Girolamo
01bb9357c9 Tolerate colon characters inside code 2021-03-29 14:22:13 +02:00
Henrik Lissner
ce65645fb8 Minor refactors & comment revision 2021-03-27 18:27:19 -04:00
Henrik Lissner
ea105b874e Toggle async-debug on doom-debug-mode 2021-03-12 22:58:15 -05:00
Henrik Lissner
2e1c10a6a4 Move sandbox code into own library 2021-03-12 22:58:15 -05:00
Henrik Lissner
d667a2a292 Fix expiration of doom-store entries 2021-03-11 17:55:29 -05:00
Henrik Lissner
ce22f75a57 Fix string type error from doom-store API
Do to nil location.
2021-03-11 17:49:59 -05:00
Henrik Lissner
abec86310b Fix #4777: wrong-type-argument listp unpin error 2021-03-11 10:57:41 -05:00
Henrik Lissner
d76d50c1c9 Fix #4676: one-off on go-to-EOL if comment at BOL
Before this commit:
  1. With `|;;; hello`
  2. Press `C-e`: `;|;; hello`
  3. Press `C-e` again: `;;; hello|`

After:
  1. With `|;;; hello`
  2. Press `C-e`: `;;; hello|`
  3. Press `C-e` again: `|;;; hello`
2021-03-10 13:03:29 -05:00
Henrik Lissner
7870350f84 Fix #4768: don't ignore remote projects 2021-03-10 10:48:57 -05:00
Henrik Lissner
b0bec922a9 Fix #4758: wrong-type-arg listp on doom-store-persist 2021-03-09 14:44:24 -05:00
Henrik Lissner
ab7710adfd doom-info: fix args-out-of-range error 2021-03-08 10:25:09 -05:00
Henrik Lissner
4192d87dcd Redesign doom/info
+ Focus on the important information and cut down on excess.
+ Prompt the user to open pastebin.com after copying doom-info to
  clipboard.
+ Include timestamp in doom-info.
2021-03-07 00:03:04 -05:00
Henrik Lissner
f8d181a8c4 Ignore remote/temp files or packages as projects 2021-03-06 11:41:47 -05:00
Henrik Lissner
e52fd138e2 Refactor autoload/store.el library
+ Expired pcache entries are now purged when Emacs is killed.
+ Preform additional type checks for better runtime safety.
+ TTL argument can now be a predicate function. Takes two arguments: the
  key and value, if it returns nil, consider the entry stale.
2021-03-05 20:09:22 -05:00
Henrik Lissner
3bb271738a Fix void-variable disto on M-x doom/info 2021-03-04 16:10:45 -05:00
Henrik Lissner
7798aa9190 Fix repo location in doom/help-packages 2021-03-04 14:09:40 -05:00
Henrik Lissner
70c8ca30b2 Update docstrings for doom/window-{enlargen,maximize-buffer}
As of 56e9d273e, these commands no longer toggle because the toggle was
brittle could be unpredictable at times. Use winner-undo instead (on
`C-w r` or `SPC w r` by default).
2021-03-02 23:48:54 -05:00
Henrik Lissner
8ccba925dd Fix parsing issue in doom-system-distro{,-version}
No guarantee the values in /etc/os-release are quoted.

Also, eliminate the code paths where these functions return nil.
2021-03-02 11:59:55 -05:00
Henrik Lissner
ad16d85e99
Merge pull request #4600 from MageJohn/refactor/help-packages
Refactor doom/help-packages
2021-03-01 22:53:59 -05:00
Henrik Lissner
c5e3f4d632 New autoload/system.el core library 2021-03-01 22:27:17 -05:00
Henrik Lissner
1a7536cbd1 Extend & compact doom/info
+ Output is now a couple lines shorter
+ Now tries to guess Linux distro names and versions
+ Displays symlinked EMACSDIR and DOOMDIR
+ Replaces elc-files segment with 'byte-compiled-config trait
2021-02-11 17:35:48 -05:00
Henrik Lissner
de1f2a8f96 Add doom-plist-{keys,values} functions
Backported from the CLI rewrite.
2021-02-05 22:50:18 -05:00
Janfel
8331f4f896
Fix interactive spec of doom/retab 2021-02-02 02:41:45 +01:00
Yuri Pieters
bf185edd91 Prefer readability over a line length < 80 2021-02-01 19:01:42 +00:00
Yuri Pieters
b983929e82 Refactor doom/help-packages 2021-02-01 02:23:37 +00:00
Yuri Pieters
5293c460db Refactor doom--help-insert-button
Changes:
- Fixes a bug where opening a file which a buffer was already visiting
didn't raise the buffer.
- The function had unused functionality where it would split a string on
'::' and then search for the text after the first '::' in the buffer;
this has been removed.
- The searching functionality has been replaced with the option to pass
a line number, which the opened buffer will jump to. This is now used by
the part of doom/help-packages that shows the places a package is configured.
- It now fails earlier. If there's an invalid file, it fails at call
time rather than when the button is pressed.
- Add a docstring
2021-01-31 19:11:31 +00:00
Henrik Lissner
56e9d273e1 Simplify doom/window-enlargen & doom/window-maximize-buffer
+ No longer toggle window conf on consecutive presses. It's redundant
  with winner-undo and only adds a degree of uncertainty to the command.
+ `doom/window-maximize-buffer` now works with popup windows (before
  it'd spout an unhelp error about running +popup/raise).
2021-01-28 21:23:07 -05:00
Yuri Pieters
a5f39d75a5 Fix 'readme' button doom/help-packages
The button was trying to open `path/to/README.org/README.org`.
2021-01-28 21:09:36 +00:00
Henrik Lissner
fc184852d0
Only replace usernames in file paths in doom/info 2021-01-11 02:49:00 -05:00
Henrik Lissner
cfb8a866dc
Bump :core
Fuco1/smartparens@7f5825d -> Fuco1/smartparens@63695c6
bbatsov/projectile@d1cfad0 -> bbatsov/projectile@c31bd41
domtronn/all-the-icons.el@6917b08 -> domtronn/all-the-icons.el@9aa16ae
iqbalansari/restart-emacs@e570749 -> iqbalansari/restart-emacs@1607da2
jscheid/dtrt-indent@a7ade6d -> jscheid/dtrt-indent@854b9a1
justbur/emacs-which-key@ca268fd -> justbur/emacs-which-key@428aedf
jwiegley/use-package@caa92f1 -> jwiegley/use-package@365c73d
raxod502/straight.el@3277e1c -> raxod502/straight.el@a32c97c

+ Closes #4513
+ Fixes (wrong-number-of-arguments (3 . 4) 2) error for users on Emacs
  HEAD (see bbatsov/projectile#1635).
+ package! :build semantics have changed due to upstream changes. What
  was :build is now :pre-build. What was :no-build is now :build nil.
+ Now we must be careful not to auto-disable the "use-package" psuedo
  theme. It is used as a place to store :custom assignments without them
  being saved to custom.el.
2021-01-09 02:55:09 -05:00
Henrik Lissner
34c5dad750
Add value+docstring columns to doom/help-custom-variable
When used with ivy. Also: slight refactor of doom/help-custom-variable.
2021-01-05 19:29:19 -05:00
Henrik Lissner
b89929f3f8
Bind {C-h, SPC h} V to doom/help-custom-variable
For looking up custom variables (i.e. variables intended to be
customized; defined with defcustom).
2021-01-05 19:21:54 -05:00
Ralf Beckmann
712d6a7c40 Fix interactive call of doom/bump-package
The function expects 'package' to be a symbol instead of a string.
2020-12-20 17:37:29 +01:00