Commit Graph

8822 Commits

Author SHA1 Message Date
Henrik Lissner
f934f38627
ui/doom-dashboard: general refactor
Hopefully addresses #1170
2019-04-08 22:58:10 -04:00
Henrik Lissner
5f09c9c634
Fix map! tests wrt 1fab389d 2019-04-08 15:27:20 -04:00
Henrik Lissner
4a2d0bf955
Add :lang org +protocol to init.example.el 2019-04-08 14:34:01 -04:00
Henrik Lissner
3b352143c0
Fix commandp errors on {local,}leader keys
General would read (function ...) forms unevaluated, as a list, rather
than a function symbol.
2019-04-08 14:06:18 -04:00
Henrik Lissner
af4ca974a3
lang/org: add +protocol module #257
Adds lazy-loaded support for org-protocol as a basis for features to
come.
2019-04-07 17:28:46 -04:00
Henrik Lissner
ffe297bc7f
lang/haskell: rewrite README + minor refactor
- Documents lsp-haskell
- Use hie-wrapper on MacOS
- Update tools/lsp README to include :lang haskell
- Mention cabal-new-repl setting (#1140)
2019-04-07 16:46:59 -04:00
Henrik Lissner
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
Henrik Lissner
3b2befe161
Move evil helpful keybinds to +evil-bindings 2019-04-07 15:56:30 -04:00
Henrik Lissner
00bb00649b
Fix #1065: add +ivy-buffer-unreal-face option 2019-04-07 15:55:45 -04:00
Henrik Lissner
e60b44d255
Fix #1311: remove project check in ivy transformer
Also: minor refactor of `cond` fallback blocks
2019-04-07 15:55:45 -04:00
Henrik Lissner
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
Henrik Lissner
182ab918b6
Enable xterm-mouse-mode in tty Emacs 2019-04-06 11:13:28 -04:00
Henrik Lissner
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
Henrik Lissner
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
Henrik Lissner
fa95984427
tools/lsp: add basic README 2019-04-06 01:37:11 -04:00
Henrik Lissner
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
Henrik Lissner
cfb3a6d137
feature/evil: autoload evil-commentary-yank-line
Relevant to #1308
2019-04-06 00:41:34 -04:00
Henrik Lissner
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
Henrik Lissner
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
Henrik Lissner
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
Henrik Lissner
45c9fb982d
Add docstring to switch-{buffer,window,frame} hooks 2019-04-05 22:50:09 -04:00
Henrik Lissner
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
Henrik Lissner
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
Henrik Lissner
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
Henrik Lissner
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
Henrik Lissner
9d65619d3e
Fix keybinds to keymaps being ignored 2019-04-05 03:43:27 -04:00
Henrik Lissner
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
Henrik Lissner
cb5abcea0e
Add tools/direnv module 2019-04-05 03:16:37 -04:00
Henrik Lissner
dfc21e1157
tools/editorconfig: fix syntax error
Typo introduced in 8cd0a31a
2019-04-05 03:14:13 -04:00
Henrik Lissner
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
Henrik Lissner
038e0196c7
Merge pull request #1283 from aiverson/develop
Add Module for terralang
2019-04-05 02:19:24 -04:00
Henrik Lissner
8cd0a31aef
Register terra-indent-level with editorconfig 2019-04-05 02:18:16 -04:00
Henrik Lissner
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
Henrik Lissner
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
Andrew Whatson
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
Henrik Lissner
e83a6cbaa1
Turn comment headings into outline-mode headers
Also reformats a few keybinds with incorrect indentation.
2019-04-05 01:24:55 -04:00
Henrik Lissner
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
Henrik Lissner
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
Henrik Lissner
31ca94f5b0
lang/org: remove unnecessary alias 2019-04-04 19:00:56 -04:00
Henrik Lissner
348ba8f7d0
Correct type in bin/doom help 2019-04-04 18:54:27 -04:00
Henrik Lissner
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
Henrik Lissner
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
Henrik Lissner
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
Henrik Lissner
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
Henrik Lissner
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
Henrik Lissner
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
Henrik Lissner
4b631f07ef
Apply smartparens config to all users
Not just evil users.
2019-04-03 19:15:02 -04:00
Henrik Lissner
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
Henrik Lissner
9648af6f30
Fix keybinds to reflex helm-occur changes upstream
See emacs-helm/helm@f0f17413
2019-04-03 01:40:58 -04:00
Henrik Lissner
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