Commit Graph

8816 Commits

Author SHA1 Message Date
a4283427f5 Fix autoloaded hydras
They weren't marked as interactive, making them unavailable for `M-x` or
keybinds.
2019-04-07 16:06:52 -04:00
3b2befe161 Move evil helpful keybinds to +evil-bindings 2019-04-07 15:56:30 -04:00
00bb00649b Fix #1065: add +ivy-buffer-unreal-face option 2019-04-07 15:55:45 -04:00
e60b44d255 Fix #1311: remove project check in ivy transformer
Also: minor refactor of `cond` fallback blocks
2019-04-07 15:55:45 -04:00
1fab389d9e Fix #1310: use internal macro for leader binds
Creates a separate doom--define-leader-key macro for internal use (in
map!). define-leader-key! will continue to exist as a convenience macro
for users who want a general.el interface to defining leader keys.

Possibly relevant to: #1309
2019-04-07 15:55:16 -04:00
182ab918b6 Enable xterm-mouse-mode in tty Emacs 2019-04-06 11:13:28 -04:00
43bc14d38e Undo noop'ed leader binds for missing commands
This was too magical and caused more confusion than the void-function
and commandp errors before it.

Addresses #1309, #1308
Relevant to #1217
2019-04-06 11:13:17 -04:00
2514b7476e completion/ivy: refactor transformers
- Mode icons will now fall back to fundamental-mode icon, rather than
  the blank file icon (whose irregular width ruins ivy's formatting)
- Fixes project-based buffer name highlighting in switch-to-buffer
- Fixes a void-variable ivy-rich--ivy-switch-buffer-transformer error

Relevant to #1159
2019-04-06 01:37:11 -04:00
fa95984427 tools/lsp: add basic README 2019-04-06 01:37:11 -04:00
72fb5603e7 Minor, general refactor & reformatting
Also swaps C-o and M-o in ivy

And use new ;;;###package cookie (not used yet)
2019-04-06 01:36:46 -04:00
cfb3a6d137 feature/evil: autoload evil-commentary-yank-line
Relevant to #1308
2019-04-06 00:41:34 -04:00
53e0ebb700 Merge pull request #1050 from rschmukler/rschmukler/fix-ivy-buffer-icons
fix: restore +ivy-buffer-icons config var
2019-04-06 00:14:58 -04:00
2b7c215aee Refactor byte-compile dispatchers
And don't implicitly compile ~/.emacs.d/init.el unless :core (or no
args) are passed.
2019-04-06 00:11:32 -04:00
337c16cb68 Dear byte-compiler, you drive me to drink,
About Emacs Lisp that I have to rethink.
The world could end,
And humanity transcend,
But you'd still be here raising a stink.
2019-04-05 23:52:29 -04:00
45c9fb982d Add docstring to switch-{buffer,window,frame} hooks 2019-04-05 22:50:09 -04:00
df748e6cee tools/editorconfig: remove extra indent vars
They were merged upstream in editorconfig/editorconfig-emacs#196

Relevant to: #1283, #1289
2019-04-05 14:23:28 -04:00
b7585e37aa Fix missing persp-switch-to-buffer keybind
Because persp-mode hasn't been loaded by bind-time, nor was
persp-switch-to-buffer autoloaded.
2019-04-05 05:26:54 -04:00
d947e15472 lang/org: add SPC m . and / keybinds for org-goto
And remove imenu remaps, they weren't behaving correctly.
2019-04-05 04:33:26 -04:00
035a0a50e6 lang/org: change many org localleader keybinds
- Moves `SPC m s' to `SPC m b'
- Adds many new org-clock and org-goto keybinds
- Replaces imenu/imenu-anywhere with goto and goto-all
- Adds SPC m s -> org-schedule
- Move SPC m b -> SPC m , (org-switchb)
2019-04-05 04:12:56 -04:00
9d65619d3e Fix keybinds to keymaps being ignored 2019-04-05 03:43:27 -04:00
5be0e2be4a Omit private module on doom compile
The private module won't be byte-compiled implicitly anymore, as it can
cause unexpected problems with stale code and config portability.

doom compile          -> only compiles ~/.emacs.d
doom compile :core    -> ~/.emacs.d/core
doom compile :plugins -> ~/.emacs.d/.local/packages/elpa
doom compile :private -> ~/.doom.d
2019-04-05 03:19:38 -04:00
cb5abcea0e Add tools/direnv module 2019-04-05 03:16:37 -04:00
dfc21e1157 tools/editorconfig: fix syntax error
Typo introduced in 8cd0a31a
2019-04-05 03:14:13 -04:00
d6c9520d93 Don't bind missing commands to leader keys
I don't want to litter config/default/+evil-bindings.el with conditions
for every keybind whose module may or may not be enabled. It impacts its
readability and is relatively expensive (due to the internals of map!
and general).

So instead, we no-op keybinds for commands that don't exist (and aren't
autoloaded), so you don't see missing function errors when using these
keys.
2019-04-05 02:52:49 -04:00
038e0196c7 Merge pull request #1283 from aiverson/develop
Add Module for terralang
2019-04-05 02:19:24 -04:00
8cd0a31aef Register terra-indent-level with editorconfig 2019-04-05 02:18:16 -04:00
3ba364a0a9 Remove unnecessary config
- smartparens-terra doesn't exist
- terra-indent-level has a sensible initial value, so it doesn't need to be reset
2019-04-05 02:15:23 -04:00
14e7e1b590 Merge pull request #1271 from flatwhatson/kill-project
* Add doom/kill-project-buffers command

Prompts for an open project and kills all its buffers.  This is useful
for closing `.emacs.d` in an effort to get some *billable* work done.

Added `doom-fixup-windows` and `doom-kill-buffer(s)-fixup-windows`
helper functions for leaving affected windows on a real buffer or the
fallback buffer.

Fixed `doom/kill-this-buffer-in-all-windows` to properly "fixup"
windows.

* Code review (squash)

* Code review (squash)
2019-04-05 02:06:29 -04:00
fe6dfb08b6 Add doom/kill-project-buffers command
Prompts for an open project and kills all its buffers.  This is useful
for closing `.emacs.d` in an effort to get some *billable* work done.

Added `doom-fixup-windows` and `doom-kill-buffer(s)-fixup-windows`
helper functions for leaving affected windows on a real buffer or the
fallback buffer.

Fixed `doom/kill-this-buffer-in-all-windows` to properly "fixup"
windows.
2019-04-05 16:04:26 +10:00
e83a6cbaa1 Turn comment headings into outline-mode headers
Also reformats a few keybinds with incorrect indentation.
2019-04-05 01:24:55 -04:00
ea3d9e2957 Refactor & optimize define-leader-key!
- Provides a 10-30% boost in startup time
- which-key advice is no longer needed
2019-04-05 01:24:16 -04:00
5cdb96888f config/default: refactor/reformat help keybinds
Reduce internal usage of map! and improve readability of comments for
help-map binds.
2019-04-04 22:38:46 -04:00
31ca94f5b0 lang/org: remove unnecessary alias 2019-04-04 19:00:56 -04:00
348ba8f7d0 Correct type in bin/doom help 2019-04-04 18:54:27 -04:00
5a50820cd9 Bind z= -> flyspell-correct-word-generic
z= is a vim default. `flyspell-correct-word-generic` is superior to the
original command bound to z= (ispell-word).
2019-04-04 18:53:04 -04:00
6084b774b8 lang/org: refactor and add keybinds for org tables
This update focuses on improving the key UX of org tables.

- Adds new table localleader keys under `SPC m s'
- Adds new localleader keybinds
  - New `s` prefix for table commands
  - New `f`/`F` keybinds for footnotes
  - New `'` keybind for `org-edit-special`
  - New `r` keybind for `org-refile`
- Bind localleader keys for both evil and non-evil users
- Refactors org table API
- For evil users:
  - Adds `zi` to toggle inline images
  - Finalize insert-mode keybind scheme for evil users (ala excel/gdocs)
    - C-{h,j,k,l} = move cursor between cells
    - C-M-{h,j,k,l} = insert cells in direction
    - C-M-S-{h,j,k,l} = swap cells in direction
2019-04-04 18:52:25 -04:00
3a47c27dd6 lang/org: fix C-S-{h,l} in tables
Supposed to create new column on the left and right, respectively.
Instead, always created columns on the right.
2019-04-04 17:15:58 -04:00
d3784a0074 lang/markdown: remove opinionated formatting
Don't adjust line-spacing or fill-column, this interferes with global
defaults as is too opinionated.
2019-04-04 16:47:52 -04:00
23467374f5 Fix doom/forward-to-last-non-comment-or-eol #1306
This command would no-op if used in major modes with "fake" comments.
i.e. modes where "comments" are merely highlighted as comments, but have
no comment entry in its syntax table. e.g. text-mode + git-commit-mode.
2019-04-04 15:13:48 -04:00
bf2aedc510 lang/org: rethink flyspell keybinds
- Remove ]s/[s keybinds in org-mode (rebound to ]c/[c); they overwrote
  next/prev flyspell error commands (which are vim defaults)
- Remove ]S/[S because z= already exists
- Remove redundant ]s/[s global keybinds (already bound by evil)
- Mention missing and evil's flyspell keybinds in a comment
2019-04-04 13:50:44 -04:00
4b631f07ef Apply smartparens config to all users
Not just evil users.
2019-04-03 19:15:02 -04:00
2a079e2733 Load env even in tty Emacs
Even if it matches the current shell (or doesn't), the env file should
be the authority.
2019-04-03 01:53:20 -04:00
9648af6f30 Fix keybinds to reflex helm-occur changes upstream
See emacs-helm/helm@f0f17413
2019-04-03 01:40:58 -04:00
700cda370b Refactor doom env
- Limits process-environment during scraping
- Add `doom-env-executable` and `doom-env-switches` variables
- Announce what commands were run to produce your env var within env var
  file header
2019-04-03 00:09:22 -04:00
34e3985409 Remove doom/open-env
This file shouldn't be edited by hand anyway.
2019-04-02 20:09:44 -04:00
ea857aa553 feature/eval: improve REPL error handling
Emit more informative error messages depending on the problem.
2019-04-02 18:22:01 -04:00
a49a9fee3a lang/haskell: fix +haskell/open-repl
REPL handlers must return a buffer but display-buffer returns a window.
2019-04-02 18:21:34 -04:00
2c81ee4d98 tools/flyspell: minor refactor
- Allow flyspell-correct-* packages to be disabled by the end-user
  without breaking errors.
- Tie proselint detection to flycheck (which is what uses it)
2019-04-02 15:47:09 -04:00
ca32f7b7d1 app/rss: improve entry readability
By not using variable-pitch fonts in the SHR-converted output and
allowing images to be larger than 60% of the window's width.

Also corrects the docstring for +rss|elfeed-wrap, promising to use
`visual-fill-column-mode` when it doesn't (and never did).

Also changes `=rss` to an alias.
2019-04-02 15:47:09 -04:00
3310f9dfe2 tools/gist: open gists in non-popups
- Removes +gist/kill-cache (gist-list and gist-list-user with a
  universal argument already does this).
- Removes +gist/open-current. No longer necessary when gists aren't
  opened in popups.
- Makes keybinds more consistent with other "porcelains", like elfeed's
  or magit.
2019-04-02 15:47:09 -04:00