195dfda045
Minor refactors & comment revision
2020-01-02 21:16:02 -05:00
b63ce98731
Add benchmark hook & restore switch earlier
...
If the user wants to remove them for some reason.
2019-12-29 18:47:12 -05:00
e8aa293bc0
Defer tty-run-terminal-initialization to window-setup-hook
...
This seems to work just as well, and ensures it runs in time for
interactive use.
2019-12-23 00:02:10 -05:00
29b383d900
Disable tty-run-terminal-initialization
...
This code *may* have side-effects, but it does reduce startup time for
terminal users by a significant margin. In my case it reduced from 2.6s
to 0.4s.
2019-12-22 23:53:04 -05:00
fd3f5b5b77
Revert 2f79fab99
#2211
...
This breaks too many packages.
2019-12-19 14:51:29 -05:00
2f79fab99f
case-fold-search = nil
2019-12-16 01:11:41 -05:00
eaa5621b36
Update comments
2019-12-15 23:51:59 -05:00
ae3316f0ae
bidi-paragraph-direction = 'left-to-right
...
A minor performance boost.
2019-12-08 20:14:11 -05:00
996188250b
Minor refactors & comment revision
2019-12-06 17:16:34 -05:00
35bb87edeb
Fix unrelated errors when missing autoloads files
...
It should warn the user that the autoloads files are missing and need to
be generated, but instead displayed an unrelated error.
2019-12-05 14:52:46 -05:00
4300957aea
Add NOERROR arg to doom-initialize
2019-12-05 14:52:30 -05:00
34500c9177
Fix #2103 : logic error initializing gcmh-mode
2019-11-22 12:56:00 -05:00
a6e25209b8
Fix #2046 replacing process-environment, exec-path & shell-file-name
2019-11-21 17:16:46 -05:00
db19241936
Use gcmh package to manage adjust GC interactively
2019-11-21 14:46:45 -05:00
a4fcbb40e9
Revert ed3408d
#2085
2019-11-21 00:36:40 -05:00
304506edcc
Fix first envvar set by doom-load-envvar-file
...
Potentially fixes #2077
2019-11-19 19:09:44 -05:00
ed3408d839
Move tramp-histfile-override to doom-cache-dir
2019-11-17 18:45:30 -05:00
fa1a19a1f0
core: minor refactor & reformatting
2019-11-17 16:48:26 -05:00
7a7b89ded1
Init packages from init.el in noninteractive sessions
...
This allows users to load init.el for their batch scripts, rather than
some monstrosity involving loading core/core.el and doom-initialize.
2019-11-17 01:17:34 -05:00
d683effd23
Recognize single-character envvars in doom-load-envvars-file
...
And preserve insertion order for process-environment's new value.
2019-11-08 16:02:06 -05:00
d78d584fdf
Demote autoload errors to warnings
2019-11-08 16:02:06 -05:00
873fc5c0db
Rewrite core-cli
...
Highlights:
- 'doom purge' now purges builds, elpa packages, and repos by default.
Regrafting repos is now opt-in with the -g/--regraft switches.
Negation flags have been added for elpa/repos: -e/--no-elpa and
-r/--no-repos.
- Removed 'doom rebuild' (it is now just 'doom build' or 'doom b').
- Removed 'doom build's -f flag, this is now the default. Added the -r
flag instead, which only builds packages that need rebuilding.
- 'doom update' now updates packages synchronously, but produces more
informative output about the updating process.
- Straight can now prompt in batch mode, which resolves a lot of issues
with 'doom update' (and 'doom upgrade') freezing indefinitely or
throwing repo branch errors.
- 'bin/doom's switches are now positional. Switches aimed at `bin/doom`
must precede any subcommands. e.g.
Do: 'doom -yd upgrade'
Don't do: 'doom upgrade -yd'
- Moved 'doom doctor' from bin/doom-doctor to core/cli/doctor, and
integrated core/doctor.el into it, as to avoid naming conflicts
between it and Emacs doctor.
- The defcli! macro now has a special syntax for declaring flags, their
arguments and descriptions.
Addresses #1981 , #1925 , #1816 , #1721 , #1322
2019-11-08 16:02:06 -05:00
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
8db3b7dca7
Always load package autoloads file & demote errors
...
Indirectly addresses #2010
2019-11-04 17:21:56 -05:00
7b9991711a
defvar->defconst for dir vars & expand DIR envvars
...
- Use defconst so that we can reload core.el if these variables change.
- Expand DIR envvars to ensure their correctness
2019-11-01 15:12:12 -04:00
d407b3355a
Fix nonsensical error if autoloads are missing
...
`signal` treats its second argument like a list. Passing it a string
make it spew out the message as a list of character codes.
2019-10-30 00:03:39 -04:00
90d9fd65b7
Fix void-function if-let on startup #1982
2019-10-30 00:03:39 -04:00
63dfd298ca
Append slash to DOOMLOCALDIR & DOOMDIR
...
If needed.
2019-10-29 22:36:51 -04:00
5b1dc3c63f
Support INSECURE envvar (again)
2019-10-26 23:44:28 -04:00
12b276c4d6
Fix void-variable EMACS26+ issue
...
By loading core-lib a little later, for now.
2019-10-18 22:21:25 -04:00
7b45b39860
Refactor doom-load-packages-incrementally
2019-10-18 22:09:28 -04:00
43e8ddbc6d
Add docstrings to GC hooks
...
And correct grammar in a comment.
2019-10-18 22:09:28 -04:00
2f4ac32b0d
Load core-lib & refactor x-win advice
2019-10-18 22:09:28 -04:00
323e0adf45
Minor refactors & reformatting across the board
2019-10-17 01:47:58 -04:00
ddce674a6c
Minor refactors across the board
2019-10-07 16:10:33 -04:00
eae45e664b
doom-load-envvars-file: split-string->parse-colon-path
2019-10-05 13:00:06 -04:00
a3d79dcfa5
doom/core: avoid the litter of session.* files
...
When the x-window system commands emacs to quit, emacs saves a session in
`.emacs.d/session.*` by default. There is no easy way to change the save
path. This commit overwrites the function responsible for creating the session
file name. We set the session file to reside in `doom-cache-dir`.
2019-09-28 15:22:40 +02:00
45240699e0
Remove doom-elpa-dir variable
...
And just use package-user-dir. No need for two variable when one will
do.
2019-09-26 14:26:47 -04:00
280a2407ab
Fix doom-load-envvars-file
...
A former regexp consumed the first letter of each environment variable's
name.
2019-09-06 14:17:34 -04:00
29055ae6a3
Disable projectile-{ag,ripgrep}
...
Emit warnings for commands that won't work, as is, and that Doom
already provides a better alternative for.
2019-09-06 14:17:34 -04:00
3b7711420f
General comment revision & cleanup
2019-09-06 00:25:35 -04:00
cbe05e6df4
Soften formatting rules for envvar files
...
doom-load-envvar-file would fail if there weren't two newlines
indicating "the start of the envvar list", or if envvars were commented
out/were padded with whitespace. These rules have been relaxed.
2019-09-05 13:10:21 -04:00
62b089ba36
Refactor core & core-lib
...
And make their tests pass
2019-09-03 00:59:46 -04:00
4b736bef68
Introduce doom-interactive-mode
...
As soft inverse alias for noninteractive; this makes it easier to unit
test functionality that depends on the session type.
2019-09-03 00:37:30 -04:00
8766499b0d
Fix some file permissions errors
...
Occurs when deferred packages are loaded while in an unreadable or
non-existent directory.
2019-08-27 00:05:12 -04:00
8ac1e1a781
Refactor doom init process
...
- Refactors doom-initialize
- Moves doom-initialize-modules call to init.el, to more easily isolate
it during unit testing.
2019-08-27 00:05:12 -04:00
a7bdf6825a
Set default exec-path & shell-file-name
...
In case doom-load-envvars-file is called when these vars have local
bindings.
2019-08-15 18:42:26 -04:00
b29a7ba8fe
Fix 'doom compile'
...
Fixes `void-function define-key!` error.
2019-08-15 01:33:40 -04:00
48415edce3
Fix #1644 : --restore switch not recognized
2019-08-08 23:30:16 -04:00
3423974234
Minor refactors & tweaks across the board
2019-08-06 14:50:42 -04:00