Commit Graph

8484 Commits

Author SHA1 Message Date
50de8a07dd Reduce company+evil keymap conflicts #903
company-active-map and company-search-map were losing to global evil
state keymaps, causing an odd issue with the insert keybind for C-j was
overriding C-j (company-select-next) when company was active and
completing.
2019-03-02 02:04:28 -05:00
ce22e21853 Refactor helm commands 2019-03-02 02:04:11 -05:00
7b2e80c711 Remove bash, zsh, fish from eshell-visual-commands
It would affect non-interactive shell scripts run through these
shells (like homebrew).
2019-03-02 02:04:11 -05:00
8a57d9b5fd lang/org: RET on TOC will now refresh the TOC 2019-03-02 02:04:11 -05:00
9ed9daa79f No longer disable line numbers in org-mode
Now that doom-themes no longer imposes variable height heading fonts.
However, if you use them yourself, you may want to disable line numbers
there yourself via

  (add-hook 'org-mode-hook #'doom|disable-line-numbers)
2019-03-02 02:04:11 -05:00
7c9e96da87 General module refactor 2019-03-02 02:04:11 -05:00
0bd576673c Refactor lang/cc
+ Fix ffap integration
+ Code reduction for irony, rtags and lsp init hooks
+ Use c-add-style instead of unless+push
+ Log that irony server isn't installed
2019-03-02 01:51:51 -05:00
e11ea611cf Move company-dict-dir to DOOMDIR/dicts 2019-03-02 01:38:54 -05:00
6a8b968807 Autopair HTML <!-- --> more conservatively 2019-03-02 01:38:18 -05:00
6d3df42352 More conservative electric-indent-local-mode
Prevent them from propagating to derived modes (I'm looking at you c
modes!)
2019-03-02 01:36:53 -05:00
da9c4802eb Fix wrong-number-of-args from +markdown/insert-del 2019-03-02 01:35:00 -05:00
eb3c569e1d Replace +lsp|init with lsp! autodef 2019-03-02 01:34:19 -05:00
d46bb287ae General refactor of Doom core
- Code reduction and refactor across the board (cull unneeded minor
  advise, hooks and hacks or update them)
- Revise outdated comments and docstrings
- Reorganize core autoload libraries
- Remove large file check (Emacs already has a built-in one, which we
  augment to be even more performant when it does kick in)
- helpful.el can now be disabled completely through package!
2019-03-02 01:34:19 -05:00
687496167a Fix void-function projectile-relevant-known-projects
Thrown when using doom/find-file-in-other-project and
doom/browse-in-other-project too soon.
2019-03-02 01:34:19 -05:00
8a90f29c91 Make session persistence module agnostic
They've been removed from feature/workspaces and moved into
core/autoload/sessions, which falls back to desktop.el if persp-mode
isn't present. This also offers a substantial speed up to
restart+restoring and restoring sessions in general.

Also fixes #1210, where the newly spawned frame after doom/restart
wasn't focused.

Introduces the following commands:

- doom/restart
- doom/restart-and-restore
- doom/quickload-session
- doom/quicksave-session
- doom/load-session
- doom/save-session
- +workspace/restore-last-session (alias for doom/quickload-session)

And removes

- +workspace/load-session
- +workspace/save-session
- +workspace/load-last-session (renamed to +workspace/restore-last-session)
- +workspace/restart-emacs-then-restore (replaced by doom/restart-and-restore)
- :ss (ex command)
- :sl (ex command)
2019-03-02 01:34:19 -05:00
735ec58b36 ui/doom-dashboard: show command at point in echo-area 2019-03-02 01:34:15 -05:00
21e01189b9 Properly keep cursor out of minibuffer prompt
The prompt in the minibuffer is read-only. You are able to move the
cursor into it before this fix.

This also more effectively silences echo-area output when deleting text
in the minibuffer. No more "Text is read-only" blocking what you're
typing.
2019-03-02 01:34:14 -05:00
fb57f367e7 Enable delete-selection-mode & shift-select-mode
This makes text insertion behave more like traditional editors.

Delete-selection-mode allows selections to be replaced when yanking or
inserting. This enables it by default for non-evil users and in insert
mode for evil users. Also enables selecting text with shift.
2019-03-02 01:34:14 -05:00
8903eebdc4 Change purpose of autodef cookie argument
;;;###autodef FORM

FORM was used as a predicate for inclusion as an autodef. Now it is used
as the replacement sexp in case the module is disabled.

Oh, you don't know what autdefs are? Well let me explain (thanks for
asking, by the way). An autdef'ed function, macro, or function alias is
always available to be called, anywhere in Doom, even if its containing
module is disabled. For instance:

  ;;;###autodef
  (defun say-hello! (name)  ; the trailing ! denotes an autodef
    (message "Hello %s" name))

This makes it safe to call `do-something` without a check whether it
exists (or if its module is enabled). When the module is enabled, an
autoload entry is added to the Doom autoloads file:

  (autoload 'do-something "path/to/some/modules/autoloads")

And it is autoloaded as normal when it is first used. However, if the
module is disabled, then this is inserted instead:

  (defmacro do-something (&rest _))

This no-ops; it does nothing and doesn't evaluate its arguments. If FORM
above was provided, that is used instead of a noop macro.

It's a little smarter than simple substitution, but that's the gist of
it.
2019-03-02 01:34:14 -05:00
8832737671 Adopt seagle0128/doom-modeline for :ui modeline
And remove obsolete :ui doom-modeline module.

Relevant to: #136, #921
2019-03-02 01:34:14 -05:00
868bd15abe Fix undeferred flycheck-posframe
Accidentally eager-loaded it. Whoops!
2019-03-01 14:25:18 -05:00
1f3c41a8ac Revert ab797994 #226
These were merged into evil-collection-mu4e.
2019-03-01 03:56:10 -05:00
cedadb3233 Enable magit by default #1052
Co-authored-by: Aria Edmonds <ar1a@users.noreply.github.com>
2019-03-01 00:44:45 -05:00
5f5874c1fc Fix evil-embrace race condition at startup #345
The previous config would wait for evil-surround to load before adding
evil-embrace's hooks.
2019-02-28 18:26:13 -05:00
ad837e6d13 Move evil ex commands to feature/evil
These commands aren't used by config/default anyway, and
+default:multi-{next,previous}-line were moved to my private config.

Also fixes #1208 (:cd without args will now CD to $HOME).
2019-02-28 14:31:16 -05:00
cf07bac383 Fix persisted workspace storing broken posframes #1017
Not confident this is the best solution, but it will work for now.
2019-02-28 14:19:05 -05:00
ab79799407 app/email: add :keep-visual prop on mu4e commands #975 2019-02-28 14:01:22 -05:00
94a57f695e Fix LSP restart prompt when killing Emacs 2019-02-28 13:50:59 -05:00
b871d400e5 tools/flycheck: simplify popup-tip advice
Relevant to #1209
2019-02-28 13:50:48 -05:00
812c834970 lang/python: fix ipython repl & change args type
+python-ipython-repl-args and +python-jupyter-repl-args are now lists,
rather than strings.
2019-02-28 04:10:35 -05:00
fbce94cd20 Remove select-enable-{clipboard,primary} #1008
select-enable-clipboard is already `t` by default and
select-enable-primary disturbs non-evil yanking behavior.
2019-02-28 03:21:40 -05:00
eb4450e99c lang/java: remove finished TODO 2019-02-27 21:49:11 -05:00
99904c0e05 Recenter window after lookup commands 2019-02-27 18:39:04 -05:00
6fc7b8c1c4 Better electric-indent uninhibiter
Will now work in C modes as well as Csharp, Java and Python; possibly
others that forcibly set electric-indent-inhibit.
2019-02-27 18:38:28 -05:00
aa9c4f63ed Fix :cd #1208 2019-02-27 14:43:24 -05:00
d0533fe99c Fix lookup commands erroring when successful
Because message returns non-nil, and +lookup--jump-to needs to return
nil when it fails.
2019-02-27 03:14:47 -05:00
574dae1426 Isolate builtin org at compile time
Attempts to address the elusive "invalid-function
org-preserve-local-variables" error mentioned in: #1116 #1169, and

This error is otherwise avoided by running `bin/doom compile :plugins`
2019-02-27 03:14:47 -05:00
733eb962ac Merge pull request #1207 from shanavas786/use-config-names
Use configured variables for rtags binary names
2019-02-27 03:13:46 -05:00
c3a6d38da4 Fix void-variable rtags-rdm-binary-name error 2019-02-27 03:13:11 -05:00
1f63358947 Use configured variables for rtags binary names 2019-02-27 12:53:03 +05:30
c85565cfef ui/modeline: add multiple cursors segment 2019-02-26 23:02:13 -05:00
609e577ce7 Refactor evil keybinds; remove SPC {],[} prefixes
These were redundant with the ],[ motion keys.
2019-02-26 22:59:40 -05:00
80d62aaaef Fix electric indentation in c modes #510 #1206 2019-02-26 22:58:47 -05:00
5ee4f03ce7 tools/lsp: no prompt for project root & autokill servers 2019-02-26 22:57:34 -05:00
9b7d95f43a Remove doom-cleanup-hook & doom/cleanup-session
These weren't reliable, often times buggy or overzealous about killing
buffers and processes. Best to do it manually or come up with a better
solution.
2019-02-26 22:57:02 -05:00
3e85981695 Add process-menu-mode-map keybinds for evil 2019-02-26 22:55:09 -05:00
7361e05582 tools/flycheck: refactor popup-tip minor mode
Less code, fewer problems.
2019-02-26 19:32:35 -05:00
11a528be04 Fix infinite recursion in +flycheck|disable-popup-mode-for-lsp 2019-02-26 18:05:48 -05:00
4c35618044 Improve version check for line-numbers polyfill
Since there are early versions of Emacs [26.0, 26.1) that don't have the
new line numbers library.
2019-02-26 17:29:40 -05:00
de4b18a2dc feature/lookup: refactor backend dispatcher
Hopefully improves compatibility with async handlers. Still a WIP.
2019-02-26 16:57:14 -05:00