Commit graph

111 commits

Author SHA1 Message Date
Henrik Lissner
c3d48e286b
Add nix-mode file template 2019-06-27 21:35:53 +02:00
Henrik Lissner
9a02bd8ac8
Minor refactors across the board
- when-let* -> when-let
- Fix projectile-locate-dominating-file for connected remote files
2019-06-26 14:31:06 +02:00
Henrik Lissner
168c1d5e61
Disable evil-snipe in calc-mode 2019-06-26 14:28:40 +02:00
Henrik Lissner
8434ae619d
Enable evil-escape in term-mode
It was formerly escaped because of general bugginess, particularly when
bind -v was used in zsh. It's still too buggy to enable in vterm-mode,
however.
2019-06-26 14:28:33 +02:00
Henrik Lissner
c0bffd4268
editor/file-templates: general refactor 2019-06-18 00:29:05 +02:00
Henrik Lissner
21cf1c2da6
editor/file-templates: fix #1401
org-capture, when used on a target that doesn't exist, will invisibly
expand a file template, leaving a hang yasnippet active. After
org-capture initializes, the yasnippet will attempt to operate on
overlays that don't exist, throwing overlayp errors.
2019-06-18 00:21:26 +02:00
Henrik Lissner
855ff34e2c
Port more next/previous motions from vim
They are:

]m, [m
  Jump to next/previous beginning of method/function.
]M, [M
  Jump to next/previous end of method/function
]#, [#
  Jump to next/previous preprocessor directive (only supports C-style
  directives for now)
]*, [* (or ]\, [\)
  Jump to next/previous comment
2019-06-17 12:37:19 +02:00
Henrik Lissner
61502d7e31
Reformat editor/evil/autoload/evil library 2019-06-17 12:05:54 +02:00
Henrik Lissner
72fd61e07b
Ensure order of after-change-major-mode-hook hooks
Reduces the likeliness of load order issues.
2019-06-16 19:16:23 +02:00
Henrik Lissner
9bba39bd3a
Prevent unsaved prompts when formatting #1498
The fix for #1489 (in 13f5a762) gives the temp buffer (where formatting
is performed) a real buffer-file-name, which causes it to prompt to save
it when it is killed.
2019-06-16 19:16:22 +02:00
Henrik Lissner
0b1ecb8105
editor/evil: port vim-unimpaired keybinds
Adds these keys, inspired by tpope/vim-unimpaired:

[ SPC, ] SPC (or [o, ]o)
  Add COUNT blank lines above/below the cursor
[f, ]f
  Visit previous/next file in current folder, alphabetically
[u, ]u
  Url encode/decode operators
[y, ]y
  C-string-style escaping/unescaping operators (escapes quotes,
  backslashes and control characters)
[x, ]x
  XML entity encoding/decoding operators (only if :lang web is enabled)
[F, ]F
  Focus previous/next frame (decided this is better than ]t/[t which is
  being used by hl-todo-{next,previous})

We already had gp and ]b/[b (buffers).

We're not going to port ]e/[e because it is redundant with ddp/ddP or gx
(evil-exchange). I also think these keybinds are better suited to
{next,previous}-error.
2019-06-16 19:16:22 +02:00
Henrik Lissner
20f66b7560
editor/format: use format-all-mode
Allows uses to disable format-on-save by disabling format-all-mode.

Supersedes #1441
2019-06-14 11:10:23 +02:00
Henrik Lissner
84fd744e3f
Minor, general refactor & comment revision 2019-06-14 11:08:59 +02:00
Henrik Lissner
33ae889e39
Enable evil-collection-ivy 2019-06-14 11:05:54 +02:00
Henrik Lissner
13f5a76278
Fix formatters unable to find project root #1489 2019-06-13 18:01:45 +02:00
Henrik Lissner
5d94f048b6
editor/evil: remove evil-matchit
Its bugginess doesn't justify the "intelligence" it offers for block
keywords.
2019-06-10 09:38:57 +02:00
Henrik Lissner
dcdebdb283
Convert +snippets/expand-on-region to advice
It's meant to be corrective, not alternative behavior.
2019-06-10 09:38:51 +02:00
argo
12233811a8 fix: format-all upstream definitions
Upstream renamed definitions in
f3ed09c430 .
2019-06-08 17:45:42 +02:00
UndeadKernel
2f910fb91f objed: add a manual actiation flag
Setting the flag `+manual` of the `objed` module makes the user
responsible for calling `objed-activate` when needed. The binding
`M-SPC` is set in the default Emacs bindings.
2019-06-01 13:30:18 +02:00
Siddharth Shekar
aa64cf9426 Replace kill-this-buffer with kill-current-buffer
As per the documentation for kill-this-buffer, it should only be invoked
from the menu and behaves unpredictably when invoked programmatically.
2019-05-30 18:54:58 -07:00
Henrik Lissner
0c743afcfd
editor/format: remove utf-8 conversion on Windows #914 2019-05-30 14:11:53 -04:00
Henrik Lissner
6ea000393f
Use superior evil-numbers fork
And rebind its keys from C-a/C-S-a to g= and g-. This is because the old
narrow/widen commands aren't nearly as useful (and have a number of
alternative keybinds).

As much as I'd like to us C-a/C-x (as it is in Vim), C-x is an essential
keybind for Emacs.

Also, in visual mode, each number will be affected incrementally (ala g
C-a and g C-x in vim).
2019-05-30 13:56:06 -04:00
Henrik Lissner
563dfac8fa
Conform editor/objed README to conventions 2019-05-30 13:03:56 -04:00
Andrew Whatson
9e8517c59e Add :editor objed module
Integrates `objed` with Doom Emacs to provide text-object manipulation
for non-evil users.

See https://github.com/clemera/objed
2019-05-30 22:35:27 +10:00
Henrik Lissner
892f0164af
Add :h[elp] ex command 2019-05-19 02:17:58 -04:00
Henrik Lissner
f7b75a7d68
editor/evil: use evil-set-cursor-color
set-cursor-color causes an expensive redraw. Plugins like treemacs may
silently change window focus, triggering these calls and causing
freezing. We use evil-set-cursor-color instead, which avoids
set-cursor-color unless the cursor's color has changed.
2019-05-17 21:02:24 -04:00
Henrik Lissner
507fb50ff2
Warn us if evil-collection module loads too early 2019-05-17 20:23:52 -04:00
Henrik Lissner
4e80ca7d23
editor/fold: add hs support for nxml-mode 2019-05-16 01:22:50 -04:00
Henrik Lissner
fa664f4e28
editor/fold: refactor & fix zm
This fixes an issue where zm wasn't auto-loading hideshow and
hs-minor-mode, preventing it from working.

Also reveals +fold/* commands to non-evil users (but as of yet, there
are still no non-evil keybinds for it).
2019-05-15 16:09:53 -04:00
Henrik Lissner
4c65ce4c71
Start help-with-tutorial in emacs state 2019-05-14 22:26:56 -04:00
Henrik Lissner
b82e152898
Fix 9024d831 2019-05-14 20:15:13 -04:00
Henrik Lissner
9024d831f8
Fix void-variable error in yaml-mode when folding 2019-05-14 15:04:11 -04:00
Henrik Lissner
00f88a509f
editor/evil: evil-want-C-i-jump = t in daemon
Since we can't predict what kind of frames the user will open, we assume
they're graphical. Terminal+daemon users will have to undo this in
`~/.emacs.d/init.el`.
2019-05-12 01:43:45 -04:00
Henrik Lissner
e5d566ea2a
Prevent non-prefix key errors on doom//refresh
May also help doom/reload
2019-05-12 01:43:22 -04:00
Henrik Lissner
0f06b7702e
Remove which-key dependency from +evil/easymotion 2019-05-12 00:56:17 -04:00
Henrik Lissner
ca8202c224
Standardize the READMEs of various modules 2019-05-09 21:31:23 -04:00
Henrik Lissner
78cff4ef97
editor/snippets: yas-triggers-in-field = nil
Made TAB (move to next field) unpredictably expand sub-snippets.
2019-05-05 14:20:52 -04:00
Henrik Lissner
414d340567
Correct typo in editor/evil/README.org #1361 2019-04-29 20:57:48 -04:00
Henrik Lissner
ba94ab09d3
editor/evil: disable C-i keybind for tty users #1367 2019-04-26 17:29:54 -04:00
Henrik Lissner
a4f9eb6f6c
Enable read-only-mode for built-in snippets
Because they shouldn't be edited out of ~/.emacs.d/.local -- if a
snippet in ~/.doom.d/snippets has the same name, built-in snippets will
be ignored.
2019-04-24 18:16:05 -04:00
Henrik Lissner
a4c5396558
Add better-jumper
Replaces evil's jumplist; makes its functionality available for non evil
users.
2019-04-24 18:16:04 -04:00
Henrik Lissner
77e4cc4d58
💥 Remove :feature category
:feature was a "catch-all" category. Many of its modules fit better in
other categories, so they've been moved:

- feature/debugger -> tools/debugger
- feature/evil -> editor/evil
- feature/eval -> tools/eval
- feature/lookup -> tools/lookup
- feature/snippets -> editor/snippets
- feature/file-templates -> editor/file-templates
- feature/workspaces -> ui/workspaces

More potential changes in the future:

- A new :term category for terminal emulation modules (eshell, term and
  vterm).
- A new :os category for modules dedicated to os-specific functionality.
  The :tools macos module would fit here, but so would modules for nixos
  and arch.
- A new :services category for web-service integration, like wakatime,
  twitter, elfeed, gist and pastebin services.
2019-04-24 18:16:04 -04:00
Henrik Lissner
5c3188afd5
editor/format: fix +format/region-or-buffer
The `r` interactive spec barfs an error if no mark is active, preventing
this function from ever calling `+format/buffer`.

Reported by @amosbird
2019-04-02 00:52:10 -04:00
yuhan0
b89f7e1127 Disable evil-mc bar cursor on Mac OS and Windows 2019-03-16 14:15:19 +08:00
Andrew Whatson
99a5ff2025 Fix loading of multiple-cursors configuration
The package is split in a way that `multiple-cursors.el` is normally not
required when autoloading from commands; `multiple-cursors-core.el` is
always loaded.

Unfortunately the `mc/list-file` location is still not being set
properly, a fix has been submitted: magnars/multiple-cursors.el#355
2019-03-13 14:24:20 +10:00
Henrik Lissner
b9a036a96c
editor/fold: check outline-mode folds before hs
b/c hideshow fold checks produce more false positives.
2019-03-08 04:25:45 -05:00
Henrik Lissner
f6cc2644b0
New doom-log macro for debug-time logging
doom-log won't interfere with the minibuffer if it's in use, and will
report the originating module.

Addresses #1215
2019-03-04 18:38:25 -05:00
Henrik Lissner
6956525f79
I silenced the byte compiler, what happened next will blow your mind
Top 10 incredible ways to silence the byte compiler

The byte compiler just wouldn't shut up. You wouldn't believe what
happened next.

40 hot singles in your area are waiting for the byte compiler to shut
up.

20 INSANE life hacks to put an end to the byte compiler's tyranny.

(DEFINITELY NOT CLICKBAIT)
2019-02-18 01:05:26 -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
99fd8b4e1b
O'byte-compiler
Who forbade the obsolete,
Hooks, functions; adieu.

(And an unused argument too)
2019-02-03 18:42:09 -05:00