Commit graph

653 commits

Author SHA1 Message Date
Henrik Lissner
f78f71a74c
Minor refactors & comment revision 2020-01-01 23:52:02 -05:00
Henrik Lissner
6f951229ec
Add & revise comments
And move line number hooks to core/autoload/ui.el
2019-12-31 15:55:56 -05:00
Henrik Lissner
6e84ab0673
Fix doom-init-menu-bar-in-gui-frames-h #2156
window-setup-hook doesn't pass an argument.
2019-12-22 00:37:33 -05:00
Henrik Lissner
4faa4e22f9
Disable all-the-icons for tty users or tty frames #2200 2019-12-21 23:30:04 -05:00
Henrik Lissner
b53703d527
General comment revision & reformatting 2019-12-21 15:01:05 -05:00
Henrik Lissner
3583e1f2e0
Re-enable menu-bar-lines for GUI frames on MacOS #2156 2019-12-21 14:56:56 -05:00
Henrik Lissner
95bea5b95b
Disable hl-line when non-evil selection is active
This was already the case for evil users, now it is the case for
non-evil users.
2019-12-21 01:38:15 -05:00
Henrik Lissner
74e1143ac0
Don't disable all-the-icons in tty Emacs
Too much hassle to police. I'll leave it to users to disable.
2019-12-20 21:48:35 -05:00
Henrik Lissner
a999a0ddd6
General refactors & comment revision 2019-12-19 14:51:34 -05:00
Henrik Lissner
11acc30400
Half-revert c522ca4fc
Closes #2200
2019-12-16 19:01:27 -05:00
Henrik Lissner
160462d33d
Refactor doom--switch-to-fallback-buffer-maybe-a
Reduce technical debt by future proofing the advice.
2019-12-15 23:43:33 -05:00
Henrik Lissner
c522ca4fc0
Minor refactors & cleanup 2019-12-15 15:53:28 -05:00
Henrik Lissner
9eaa6ce194
display-line-numbers-widen = t 2019-12-15 15:52:28 -05:00
Henrik Lissner
8f77c41a48
font-use-system-font = t if no font is set 2019-11-28 15:35:30 -05:00
Henrik Lissner
b665e31bcb
Restore mode-line help-echo properties
And moved it to my private config.
2019-11-25 02:10:51 -05:00
Henrik Lissner
d873e75e63
Disable M-x customize & M-x customize-themes 2019-11-21 14:21:56 -05:00
Henrik Lissner
c7ddcefba9
core: use-package!->after! where former is unnecessary 2019-11-18 14:18:18 -05:00
Henrik Lissner
99cd52e70f
💥 Drop Emacs 25.x support
Emacs 26.1 is Doom's new minimum supported version

Closes #2026
2019-11-08 16:02:06 -05:00
Henrik Lissner
6549a4f982
Fix pre-existing font frame parameter being overwritten 2019-10-29 01:10:24 -04:00
Henrik Lissner
c360f0dceb
Minor refactor & comment/docstring revision 2019-10-26 23:44:28 -04:00
Henrik Lissner
ee80ed680c
Defer evaluation of custom-set-faces!'s arguments
...until the theme has first loaded.

You'll need to set `doom-theme` to nil if you want to use this macro
without a theme!
2019-10-24 19:43:10 -04:00
Henrik Lissner
80532921bb
Highlight urls in buffers as links 2019-10-18 21:23:02 -04:00
Henrik Lissner
f9e25f95a8
show-paren-when-point-in-periphery = t 2019-10-18 21:10:56 -04:00
Henrik Lissner
d987a81b33
auto-window-vscroll = nil 2019-10-18 17:23:47 -04:00
Henrik Lissner
0fe576d104
Add more names to winner-boring-buffers 2019-10-10 16:11:42 -04:00
Henrik Lissner
342d7f8f12
Minor reformatting & comment revision 2019-09-22 11:59:53 -04:00
Henrik Lissner
17174e1437
Improve font/theme init for daemon sessions 2019-09-20 19:47:42 -04:00
Henrik Lissner
abc9b9a84f
Apply fonts to all existing frames
As well as all future frames.
2019-09-20 18:14:23 -04:00
Henrik Lissner
2d365619cd
General refactor & cleanup, across the board 2019-09-13 22:00:34 -04:00
Henrik Lissner
3a10e948aa
Fix #1718: void-function set-fontset-font
Occurs when Emacs is built without X server/GUI support.
2019-08-29 18:52:33 -04:00
Henrik Lissner
970a31fc56
Enable ns-auto-titlebar-mode for mac users
ns-auto-titlebar-mode needs to be enabled for
ns-auto-titlebar-set-all-frames and ns-auto-tilebar-set-frame to work.
2019-08-21 21:12:52 -04:00
Henrik Lissner
2eb8035f15
Add more DEPRECATED tags
For Emacs 25 functionality that'll be removed when 25.x support is
dropped.
2019-08-19 21:04:11 -04:00
Henrik Lissner
b34a542ca0
Fix over-eager whitespace-mode after switching major modes
Some major modes (like rust-mode) may trigger
doom-highlight-non-default-indentation-h twice, causing whitespace-style
to be set to its default global value, which (by default) enables
whitespace-mode with all its features. This may overwhelm the
unsuspecting user, so we instead only tack on our modifications to
whitespace-style to its existing buffer-local value, rather than its
global value.
2019-08-06 20:38:04 -04:00
Henrik Lissner
80988a7ad4
Fix kill-current-buffer advise supressing exwm hooks 2019-08-06 14:37:46 -04:00
Henrik Lissner
ff5be98cec
Disable show-trailing-whitespace by default #1593
Let people decide if they want it on or not.

See doom-enable-show-trailing-whitespace-h or setq-hook!
2019-07-28 16:10:54 +02:00
Henrik Lissner
19ecf8e46a
Correct last inline hook defuns
See a3e262c7 for rationale
2019-07-28 16:10:53 +02:00
Henrik Lissner
fe5d285a50
scroll-conservatively = 10
Match the vim default behavior of recenting the cursor in the window if
it moves more than 10 lines above or below the ends of the window.
2019-07-27 02:46:49 +02:00
Henrik Lissner
a3e262c7ac
💥 Refactor add-hook! macro & change arg order
This update may potentially break your usage of add-hook! if you pass
the :local or :append properties to it. This is how they used to work:

  (add-hook! :append 'some-mode-hook #'do-something)

Thsoe properties must now follow the hooks, e.g.

  (add-hook! 'some-mode-hook :append #'do-something)

Other changes:
- Various add-hook calls have been renamed to add-hook! because I
  incorrectly assumed `defun` always returned its definition's symbol,
  when in fact, its return value is "undefined" (so sayeth the
  documentation). This should fix #1597.
- This update adds the ability to add multiple functions to hooks
  without a list:

    (add-hook! 'some-mode-hook
               #'do-something
               #'do-something-else)

- The indentation logic has been changed so that consecutive function
  symbols at indented at the same level as the first argument, but forms
  are indent like a defun.

    (add-hook! 'some-mode-hook
               #'do-something
               #'do-something-else)

    (add-hook! 'some-mode-hook
      (message "Hello"))
2019-07-26 20:17:29 +02:00
Henrik Lissner
88096a81a9
merge whitespace-style with global value, not local
And ensure it runs as late as possible in after-change-major-mode-hook.

Hopefully to increase the probability of
doom-highlight-non-default-indentation-h detecting a user-enabled
whitespace-mode and bowing out in time.
2019-07-26 13:57:42 +02:00
Henrik Lissner
4299da1eb8
:after -> :after-while for load-theme advice
The advice shouldn't run if load-theme doesn't return
non-nil (indicating it succeeded).
2019-07-25 01:50:33 +02:00
Henrik Lissner
be46d31866
Use display-multi-font-p check in all-the-icons advice
display-multi-font-p is just an alias for display-graphic-p, but it
communicates better the purpose of this advice.
2019-07-23 17:27:55 +02:00
Henrik Lissner
82ae3a73f3
def-advice!->defadvice! & conform to new advice conventions
This commit does two things:

- Renames def-advice! to defadvice!, in the spirit of naming convenience
  macros after the function/macro they enhance or replace.
- Correct the names of advice functions to indicate visibility and
  intent. A public advice function like doom-set-jump-a is meant to be
  used elsewhere. A private one like +dired--cleanup-header-line-a
  shouldn't -- it likely won't work anywhere but the function(s) it was
  made to advise.
2019-07-23 17:24:56 +02:00
Henrik Lissner
76cacb5bfe
💥 Rename def-package! -> use-package!
Calling this pivotal macro "def-package!" has frequently been a source
of confusion. It is a thin wrapper around use-package, and it should be
obvious that it is so. For this reason, and to match the naming
convention used with other convenience macros/wrappers, it is now
use-package!.

Also changes def-package-hook! -> use-package-hook!

The old macros are now marked obsolete and will be removed when straight
integration is merged.
2019-07-23 12:50:45 +02:00
Henrik Lissner
c795a988e6
Conform many modules to new conventions 2019-07-23 12:30:47 +02:00
Henrik Lissner
d59405b282
Minor comment revision & refactors 2019-07-23 00:30:45 +02:00
Henrik Lissner
060ede0e2e
General, minor reformatting across the board
And an offering of blood to our great lord Byte Compiler-sama.
2019-07-22 02:37:45 +02:00
Henrik Lissner
47216117cc
Stop reloading theme on every new frame
It was slow and unnecessary (doom-themes and solaire-mode support
terminal colors already).
2019-07-22 02:30:41 +02:00
Henrik Lissner
a0593cc097
Refactor font loading
Init extra fonts within doom-init-fonts-h. This was moved because I used
to believe that set-fontset-font (according to its documentation) could
only change the frame-local fontset. It turns out that the exception
when you pass t for its first argument, which targets the default (i.e.
global) fontset.
2019-07-22 02:30:40 +02:00
Henrik Lissner
fdcb259bcd
Major refactor of Doom core files
- Remove core-os and move many of its settings out to other core
  libraries, where they belong
- Significantly improve commenting & compartmentalization of many
  settings
- Correct some mis-named public hooks (that were named as if they were
  private)
- Move the vast majority of optimizations to "Optimizations" section in
  core.el
- Don't activate xclip-mode or osx-clipboard-mode if we're accessing
  Emacs through an SSH connection (does more bad than good there)
- Add fast-but-imprecise-scrolling = t
- Set bidi-display-reordering = 'left-to-right, at the recommendation of
  an Emacs dev. Apparently setting it to nil is undefined, as Emacs is
  designed to always assume it's set; setting it explicitly to
  left-to-right will still do what was originally intended by turning it
  off: to reduce line/text scans for bidirectional text, which gives us
  a moderate boost in general runtime snappiness
- Set inhibit-compacting-fon-caches = t on windows (where it struggles
  especially with icon fonts)
- Disables "literal" mode for very large files (because I will be
  backporting so-long.el from Emacs 27 in the next commit)
2019-07-22 02:30:38 +02:00
Henrik Lissner
149b2617b0
💥 revise hook/var fns naming convention (2/2)
This is second of three big naming convention changes. In this commit,
we change the naming conventions for hook functions and variable
functions:

1. Replace the bar | to indicate a hook function with a -h suffix, e.g.

     doom|init-ui -> doom-init-ui-h
     doom|run-local-var-hooks -> doom-run-local-var-hooks-h

2. And add a -fn suffix for functions meant to be set on variables,
   e.g.

     (setq magit-display-buffer-function #'+magit-display-buffer-fn)

See ccf327f8 for the reasoning behind these changes.
2019-07-22 02:30:38 +02:00