Commit graph

340 commits

Author SHA1 Message Date
Andrew Whatson
7b4afa32e4 Improvements to apropos and describe-symbol
Patch the apropos button types so they call helpful instead of the
built-in describe functions.  Also add some bindings to apropos-mode-map
so it behaves like other help modes.

Add `doom/describe-symbol` function, which shows documentation for
callable and variable symbols.  If a symbol is both a variable and a
callable, it dispatches to apropos.  This gives a better workflow than
`helpful-symbol`, which annoyingly prompts the user.

Remap `describe-symbol` to `doom/describe-symbol`, and update
`+emacs-lisp-lookup-documentation` to call it also.
2019-03-12 18:52:24 +10:00
Henrik Lissner
8392c9dcf6
Add new :ui indent-guides module
Replaces old highlight-indentation-mode with new highlight-indent-guides
plugin.
2019-03-11 12:39:38 -04:00
Henrik Lissner
b0bc1d925f
Minor refactors; revise docstrings+comments 2019-03-09 19:56:47 -05:00
Henrik Lissner
66d75936fc
config/default: split into evil/emacs files
Done to better facilitate a non-evil config.

- Adds winum (and enables support for it in doom-modeline)
- Adds expand-region (#1231)
- Uses default smartparens config for non-evil users (WIP)
2019-03-09 03:43:14 -05:00
Henrik Lissner
1a6f0c2f1d
💥 Redesign vanilla Emacs keybind scheme
The leader keys have been redesigned a) for consistency, b) to reduce
collisions with packages, and c) to improve command coverage. However,
much of it still comes from a vim user, so it needs more testing.
2019-03-09 03:42:55 -05:00
Henrik Lissner
54d1c0dd56
Minor, general refactors 2019-03-09 03:42:55 -05:00
Henrik Lissner
442bd7cfb9
Only apply prefix arg fix to evil leaders 2019-03-09 02:42:32 -05:00
Henrik Lissner
d5ba685817
Don't overwrite C-i in GUI Emacs 2019-03-09 02:42:31 -05:00
Henrik Lissner
9758aae389
config/default: move help keybinds out of +bindings
These ought to be available to all users, whether or not they want the
rest of Doom's keybinds.
2019-03-09 02:42:31 -05:00
Henrik Lissner
f2b8280b2a
Add +default/search-from-cwd & +default/search-project 2019-03-08 04:25:45 -05:00
Henrik Lissner
748b197676
Minor, general refactors 2019-03-08 04:25:45 -05:00
Henrik Lissner
1f23eecdc8
(Try to) homogenize TAB/RET/ESC keybinds
Map them to \t/^M/^[, rather than [tab], [return] and [escape].
2019-03-08 04:25:45 -05:00
Henrik Lissner
44de995ca5
config/default: change SPC h keymaps
SPC h now maps to help-map to reduce redundancy. Some adjustments and
additions were made to this map so all users (evil and vanilla) can
benefit from Doom's extra help commands.
2019-03-08 02:37:33 -05:00
Henrik Lissner
4fbf7a2687
Remove expand-region package
It was unused, and is redundant with evil's text object expansion keys.
2019-03-08 02:34:26 -05:00
Henrik Lissner
4d649333a6
Add keybind: SPC h C-k -> describe-key-briefly 2019-03-07 18:26:41 -05:00
Henrik Lissner
c1beb39c5b
Rename doom/describe-setters -> doom/describe-autodefs 2019-03-05 01:55:40 -05:00
Henrik Lissner
cfa97470fc
Add links to config files in describe-packages
Also dims packages that aren't installed.
2019-03-05 01:55:40 -05:00
Henrik Lissner
fbcb4e6973
Minor refactor across the board 2019-03-04 20:47:26 -05:00
Henrik Lissner
b054190820
New doom/describe-packages command
Replaces describe-packages and adds Doom module awareness to package
documentation.
2019-03-04 20:47:25 -05:00
Henrik Lissner
6a8b968807
Autopair HTML <!-- --> more conservatively 2019-03-02 01:38:18 -05:00
Henrik Lissner
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
Henrik Lissner
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
Henrik Lissner
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
Henrik Lissner
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
Henrik Lissner
aa9c4f63ed
Fix :cd #1208 2019-02-27 14:43:24 -05:00
Henrik Lissner
609e577ce7
Refactor evil keybinds; remove SPC {],[} prefixes
These were redundant with the ],[ motion keys.
2019-02-26 22:59:40 -05:00
Henrik Lissner
594df64913
Smarter RET in normal mode over flyspell regions
Will now trigger flyspell-correct-word-generic
2019-02-26 16:55:29 -05:00
Henrik Lissner
1b43ea50f0
Revise SPC f keybinds
- SPC f . -> counsel-file-jump or find-file
- SPC f > -> doom/browse-in-other-projects
- SPC f / -> projectile-find-file
- SPC f ? -> doom/find-file-in-other-project
- Moved doom/sudo-find-file to SPC f S

This change was made to accommodate the new
doom/browse-in-other-projects and doom/find-file-in-other-project
commands, which make it easy to jump to files in other known projects.
2019-02-26 13:21:16 -05:00
Andrew Whatson
6e4e11ebb8 Remove C/C++ tab-always-indent override 2019-02-26 20:30:00 +10:00
Andrew Whatson
faa4367636 Improved switch-to-buffer-other-window for ivy 2019-02-25 22:29:41 +10:00
Luigy Leon
2e3cf80ffc Bind C-l to ivy-done in counsel-ag-map
to make it more consistent with ivy-minibuffer-map
2019-02-24 18:49:40 -05:00
Andrew Whatson
a39f366f6a Fix wrong function name for non-evil repl 2019-02-24 22:07:23 +10:00
Andrew Whatson
e479e83534 Fix wrong function names in non-evil yas-keymap 2019-02-23 23:53:45 +10:00
Henrik Lissner
acddf6a047
Move delete-backward-char & newline-and-indent advice
To config/default; the only place it is used.
2019-02-22 00:25:30 -05:00
Henrik Lissner
69ed1a4a99
feature/{syntax-checker,spellcheck} -> tools/fly{check,spell} 2019-02-22 00:25:30 -05:00
Henrik Lissner
88f50bbdec
Merge pull request #1144 from SteamedFish/develop
Add vterm layer
2019-02-21 20:16:57 -05:00
Henrik Lissner
afae6e4f1d
Remove doom/toggle-comment-region-or-line
Replaced with simpler keybinds.
2019-02-21 19:13:36 -05:00
Henrik Lissner
9567b1f97f
Move ESC keybind for transient to tools/magit 2019-02-20 14:45:18 -05:00
Henrik Lissner
8e1010a2ba
Fix C-a/C-b in evil-ex minibuffer 2019-02-20 00:25:03 -05:00
Henrik Lissner
bacf4c7a6a
Fix C-SPC fold toggling keybind
+evil/fold-toggle was replaced with +fold/toggle
2019-02-19 18:06:28 -05:00
Henrik Lissner
f1c13337cc
Fix snippet expansion on TAB in visual mode
Overzealous dispatcher was overriding yas-insert-snippet.
2019-02-19 18:05:56 -05:00
Henrik Lissner
cfe54f1d77
Merge pull request #1178 from luigy/transient-quit-evil-bindings
Add transient quit evil-bindings
2019-02-19 15:52:03 -05:00
Henrik Lissner
002914c912
Update SPC o t/T keybind predicate
Since :emacs vterm was moved to :tools
2019-02-18 18:50:02 -05:00
Henrik Lissner
ed0a4bc5ca
lang/csharp: add electric/autopairing behavior 2019-02-18 15:38:26 -05:00
Henrik Lissner
9dd88e5924
Move c electric disabler to config/default
Because it is tied to the smartparens config, and we'll want this
behavior to extend to all C-derived modes (like csharp and php modes).
2019-02-18 15:36:44 -05:00
Luigy Leon
5e0385ed6b Add transient quit bindings
this adds back the dismiss behavior of "popups" that was lost from the
magit-popup -> transient update
2019-02-18 11:38:55 -05:00
Henrik Lissner
94b16cba6c
Standardize REPL commands & improve SPC o r
- SPC o r now prompts for a REPL to open when none was found for the
  current buffer.
- REPL handlers must now follow the naming convention "*/open*-repl".
  e.g. +python/open-ipython-repl, +emacs-lisp/open-repl, etc.
- +eval/open-repl has been split in two:
  - +eval/open-repl-other-window
  - +eval/open-repl-same-window
2019-02-18 01:59:56 -05:00
Henrik Lissner
7d0caf3efd
New editor/fold module
Extracted from feature/evil and emacs/hideshow.
2019-02-18 00:47:46 -05:00
Henrik Lissner
a72a0e6a62
Replace magithub with forge
Should also fix void-function/void-variable errors caused by evil-magit
depending on the newer version of magit (#1174).

Also introduces a redesign of the SPC g prefix.
2019-02-16 18:26:17 -05:00
Henrik Lissner
9f96e3eae8
Merge pull request #1076 from filalex77/magit-forge
[tools/magit] Add magit-forge
2019-02-12 15:33:48 -05:00