Conform keybinds to MacOS conventions for font resizing commands.
Also:
- Moves numbered workspace keybinds out of +evil-bindings.el so non-evil
users can enjoy them.
- Rebinds s-0 from +workspace/switch-to-final to doom/reset-font-size.
Fix: #8379
Amend: b70d137f1a
In 9f16efb these keys were moved from evil users, this commit mirrors
the changes for non-evil users.
I.e. Moves 'C-c o {u,U,l,L,i,I}' to 'C-c o s {u,U,l,L,i,I}'.
Amend: 9f16efbb4e
On MacOS, the convention for font size adjustments are s-- and s-+. This
conforms Doom to that convention (only on MacOS), and moves the
reset-font-size command to C-s-= (because s-= is too easy to fat-finger
while adjusting font-size incrementally).
Fix: #8379
A version of describe-char that, when given a prefix arg, will prompt
the user to click where to execute the command (so you can read
text-properties/overlay information for otherwise unselectable text, in
the minibuffer or special UIs).
This functionality falls under the umbrella of "better defaults" rather
than essential defaults, and so belongs in :config default.
Whats more, the naming convention (+emacs-...) was intentional, because
this function (and the :config default module) will be moved to :doom
emacs in the near future.
This also indirectly fixes#8373.
Fix: #8373
BREAKING CHANGE: Anyone used to realgud will find it missing as of this
commit. It's been replaced with Dape (see
https://github.com/svaante/dape).
This change was made because realgud's implementation was archaic and
over-complicated, dap-mode requires lsp-mode (and has a lot of moving
parts and points of failure), and dape is straight-forward by
comparison; to set up and use. Note that dap-mode and dap-ui is now
deprecated and will be removed in the future, but still remains behind
the +lsp flag for backwards compatibility, at least until v3.
This also adds a '<leader> d' prefix for debugger commands (except for
vanilla users, who already have dape's prefix on 'C-x C-a')
Assuming GPG is present and set up by default can be surprising for
beginners, so this commit makes GPG integration opt-in, behind a new
+gnupg flag in the :config default module. There'll be more added to
this later.
These commands were removed in an ongoing effort to slim down Doom and
its core. The `doom/goto-private-*-file` family of commands were
redundant with `doom/open-private-config` and
`doom/find-file-in-private-config`.
These optional dotfiles indicate the root of a module or module
group (:lang), and will later contain module metadata. They will also
serve as an alternative to packages.el and doctor.el, and will aide the
parts of the v3.0 module API concerned with resolving the current module
from a path (`doom-module-from-path`), which currently rely too heavily
on parsing path strings.
For now, however, they're simply placeholders.
drag-stuff was removed for evil users in 816db4a, but I forgot to stage
the removal of its use-package! block when I moved it, leaving defunct
keybinds in its wake.
Amend: 816db4a62a
BREAKING CHANGE: This makes the drag-stuff package and its keybinds only
available to non-evil users. This was done because the package doesn't
bring much value for evil users, where text-objects are more powerful.
Plus, drag-stuff doesn't interact well with visual block or line modes
in evil, rendering drag-stuff-{left,right} not useful enough to warrant
keeping.
Activates smerge-mode if the file contains merge conflict markers. Also
turns binds the localleader to `smerge-mode-map` when it's active.
Also removes an unused leader binding (which will never be set because
:ui hydra was removed in b08c2c7).
Amend: b08c2c745fClose: #5954
BREAKING CHANGE: This moves helpful.el out of core into :lang
emacs-lisp. Since most (all) people have this module enabled, this
shouldn't make a difference for most people, but if you're one of the
few that don't have :lang emacs-lisp enabled, Doom will revert to using
Emacs' built-in help.el and describe-* commands.
Others can also disable helpful with (package! helpful :disable t) if
they prefer Emacs' built-in help system, which wasn't possible before,
because it was a core package.
This was done as part of an ongoing effort to slim down Doom's core in
preparation for v3.
In vim/evil, C-n/C-p invokes dabbrev, so we're doing the same, but
powered by cape-dabbrev, falling back to corfu-next/corfu-prev is a
corfu popup is already open.
Close: #7748
Co-authored-by: 45mg <45mg@users.noreply.github.com>
Co-authored-by: LemonBreezes <LemonBreezes@users.noreply.github.com>
BREAKING CHANGE: Removes magit-todos from the magit module. I've always
thought my choice to include it as a 'reasonable default' in this module
was a bit dubious. Given how trivial the config is, I leave it to users
to install if they want it, instead.
For deleting saved workspaces (saved with `+workspace/save` or
`+workspace-save`).
Also binds `SPC TAB D` (for evil users) and `C-c w K` (for non-evil
users) to it.
Fix: #4399Close: #7869
Co-authored-by: sriramsk1999 <sriramsk1999@users.noreply.github.com>
The former command, magit-unstable-file, would prompt the user to select
a file to unstage, but the intention of this keybind was always to
"unstage *this* file". magit-unstage-buffer-file didn't exist at the
time this keybind was created, so I settled on magit-unstage-file as a
compromise, which is no longer necessary.
To be more consistent with other uses of the verb in the Emacs
ecosystem. Also done in preparation for a new +workspaces/delete command
for #7869.
Ref: #7869
BREAKING CHANGE: This removes the pcre2el package, which Doom was using
solely for one function to escape PCREs. In the interest of thinning out
Doom's core, I've hoisted a simpler version of the function into Doom's
stdlib so I can remove the dependency.
magit-stage-file prompts the user to select a file to stage, but the
intention for these two keys has always been to (un)stage the current
file (and without prompting). This ensures that is the case.
I've also tweaked their description to make that intention clearer.