I've omitted docs/*.org from this merge, as there is still work left to
do there, but I am pushing the module docs early so folks can benefit
from the new docs sooner.
* module: add :input bidi
Co-authored-by: Yoav Marco <yoavm448@gmail.com>
* docs(bidi): flesh out README.org
Co-authored-by: Itai Y. Efrat <itai3397@gmail.com>
* feat(bidi): add +bidi-global-mode
* docs(bidi): improve font setting instructions
* feat(bidi): add +bidi-(hebrew|arabic)-font
Since the Hebrew and Arabic unicode blocks cover the vast majority of
RTL languages used today, we provide these fonts so end users don't have
to bother with setting up the hooks themselves.
* feat(bidi): add smart fontify
Adds support for using the bidi fonts on surrounding whitespace and
punctuation through. On by default, customizable through
+bidi-want-smart-fontify and +bidi-smart-fontify-keywords.
Also adds face versions of the bidi fonts.
* docs(bidi): recommend known good nastaliq fonts
* fix(bidi): re-set bidi faces after changing fonts
* feat(bidi): add +bidi-paragraph-direction
This allows users to choose what bidi-paragraph-direction is set to when
+bidi-mode is on, so they can choose if they want per paragraph
alignment (the default) or to force everything to be aligned RTL
* docs(bidi): conform to verbatim/code conventions
* docs(bidi): add font overview to Features
* docs(bidi): warn on rtl forced alignment footgun
+bidi-paragraph-direction is a nice variable to have if you primarily
use +bidi-mode for rtl text buffers, but it shouldn't be used in
conjunction with +bidi-global-mode since it messes up English buffers.
Co-authored-by: Yoav Marco <yoavm448@gmail.com>
BREAKING CHANGE: Ctrl-* keys are back to default meaning in insert mode
Changing the signification of Ctrl-* keys in insert mode seems
unnecessary and ends up confusing because it is not necessarily the same
bindings as in normal mode.
Fewer links means less confusion.
- Merge doom-issue and doom-commit links into doom-ref (for auto-linking
Issue/PR/commit references).
- Merge doom-module-source and doom-docs-source links into doom-source.
- Rename doom-report-issue to doom-report.
- Use '!' as the icon for module issues link.
- Remove doom-repo (replaced with "doom:*" in :lang org module).
- Add doomdir and emacsdir links to :lang org module.
Just as magit took control of 's' after "key rotation", magit (at least
when unpinned) takes control of 't' and we need to manually unmap the
key so that 't' goes down one line when the cursor is on a magit section
header
- Rename module from `:completion selectrum` to `:completion vertico`
- Rename all files involved
- Do *not* yet rename all the functions, as that messes up git's rename
detection.
`W` was used to emulate `C-w C-w`, which is useful to quickly change windows
most of the time. But this currently conflicts with edebug evil-collection bindings.
(gives `Key sequence W W starts with non-prefix key W`).
Better to leave the key alone, avoid error messages altogether, and let users redefine
the binding if they want to.
* fix(input layout bepo): remap visual-line-mode-map
Fixes#5002
* TO SQUASH: map visual-line-mode-map
See comment for rationale. This is the only way to make the remapping work correctly.
`j` and `k` aren't remapped because `t` and `s` had no meaning at all on
`visual-line-mode-map` in `motion` state.
* TO SQUASH: sharpquote and align
After the refactor, the main function to call to fix small inconsistencies went from a raw evil-collection-setup-hook
function to a proper helper function with a more logical signature.
This fixes the calls to the new function, so that the custom fixes are properly applied
To conform the module to Doom's naming and style conventions.
This introduces two breaking changes:
+ doom-bepo-cr-rotation-style was renamed +layout-bepo-cr-rotation-style
+ Replaces the doom-bepo- prefix for this module's bepo library with
+layout-bepo-
And the following fixes:
+ Corrects the file path in file header comments.
+ input/layout/autoload/bepo.el is no longer compiled/indexed if +bepo
isn't activated.
For some reason, using only the `map!` call did not work, the reason is
still unclear but calling the evilem-default-keybdings function worked
so going with that.
- Run `doom-bepo--evil-collection-hook` on all minibuffer maps. This
allows all bindings in <insert-state> to be remapped in minibuffer
contexts
- Unmap `swiper-C-s`
WIP:
- Add fixme for evil-org remaps
Misc changes:
- Remove notmuch-search binding
(Unmap the bare "s" keymap from notmuch)
- Remap [] evil-org bindings to ()
- Fix org-capture not finalizing with C-c
- Remap evilem-map
- Add more triggers to minibuffer rotations
- Unmap C-c and C-r from evil-org
Meta:
- Specify bepo layout in maintainer status
- Add basic troubleshooting
In the remapping functions:
- Add operator maps
- Remap C- and M- bindings in normal mode
Respect evil-org-movement-bindings:
This allow non-qwerty users to keep the correct bindings. The additional
let-binding is done to force evaluation of the concatenations and avoid
`void-variable concat` when the map! gets evaluated
Avoid double rotation on magit maps
- Reorder properly magit-mode-map like done on notmuch
(evil-collection PR#428)
evil-collection function for key translation actually keeps doing the
smart thing of deferring the actual call to the point where the keymaps
are defined. Therefore we avoid all the `(void-variable *-map)` errors
and the code is more robust/in line with evil-collection