BREAKING CHANGE: break the global nature of the tree sitter
module by adding a +tree-sitter flag to every applicable module
In the background this hooks turn-on-tree-sitter-mode
to the major-mode-hook of the language.
This may also solve the eager loading of tree sitter
Some how for some reason tree-sitter-langs managed to load. If if put
its require in the block of a lazy loaded package. it would load.
If i were to set its use-package call to load it after a lazy loaded
package. it would load.
a hook (and disabling it) were the only reliable ways to get it to lazy
load
Move tree-sitter-langs into its own use-package call
This is to reflect an accepted code pattern seen in the rest of doom's
code.
This does not cause any user facing changes
Changes:
- Bind `F` to the function call text object
- Add the text object to the table
- Realign table so it looks right to people who don't hide emphasis
markers
- Add two feature subsections discussing with links to
- languages that have parsers
- languages that have highlighting support
- languages that have text object support and what text objects they
- have support for
- Fix capitalisation
where ts stands for tree sitter
Only install 'evil-textobj-treesitter' if :editor evil +everywhere is
enabled
Also Comment which text objs are not currently not working
This module installs 'tree-sitter' and 'tree-sitter-langs' as well as
the 'evil-textobj-treesitter' and configures them.
This module is based on the prototype module that @hlissner has started
and I am just fleshing out that work.
It also comes with a README file
Fix: #4151
org-roam-get-keyword performs some file IO to read file keywords from
all nodes. This can be slow with long node lists. With
org-roam/org-roam#1963, file title is baked into the schema, so we don't
need to do this work anymore.
Ref: org-roam/org-roam#1963
Fix: #6382
Defining `*-any-quote` objects via the exiting `*-block` helpers leads
to incorrect behaviour, where the trailing boundary is also included as
part of the selection (cursor on `|`, selection between `|`):
```
start: "te|st"
v i q: "|test"|
```
The expected behaviour is the same as `v i "`:
```
start: "te|st"
v i q: "|test|"
```
Fix: #5698
* 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>
pip-requirements-mode fetches the pypi.org package list via HTTP
request, which blocks. This can sometimes take unbearably long in cases
where the user has a slow or no internet connection.
This fix defers this behavior until the first time completion is
invoked.
Fix: #5998
BREAKING CHANGE: `embark-collect-snapshot` has been renamed upstream to
`embark-collect`. Since the `C-s` mnemonic doesn't really make sense
anymore, I've moved the binding to `C-c C-l`, which has the nice bonus
of being next to the similar `C-c C-;`, and being nicer.
Caused when you have :lang web disabled, but :lang javascript enabled.
This is a stopgap until I decide what to do with typescript-tsx-mode.
Fix: #6243
`counsel-describe-symbol-function' still doesn't use `helpful-symbol'
because `helpful-symbol' throws up a prompt when the symbol refers to
both a function and a variable.