You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I would like to do more or less the opposite of #36, i.e. use Neoformat as formatexpr, such that when I select some text and press gq it gets formatted as if I issued :Neoformat, but without a custom mapping.
I'd need a function to invoke, possibly passing parameters available to formatexpr:
The v:lnum variable holds the first line to be formatted.
The v:count variable holds the number of lines to be formatted.
The v:char variable holds the character that is going to be
inserted if the expression is being evaluated due to
automatic formatting. This can be empty. Don't insert
it yet!
I believe it should be possible just setting formatexpr in my configurations, but I'm not familiar with Neoformat internals, that's why I'm asking for help.
But :Neoformat is already able to format a visual selection. What is available to the command that would not be available while invoking through formatexpr.
For the time being, I just mapped gQ on :Neoformat (with the effect of shadowing Ex mode on Neovim), but now I have two formatters, and in most situations I'd only need a single one.
Activity
sbdchd commentedon Jan 11, 2023
Hmm I think it's tricky because a lot of the underlying formatters don't support that sort of thing
alecandido commentedon Jan 11, 2023
But
:Neoformatis already able to format a visual selection. What is available to the command that would not be available while invoking throughformatexpr.For the time being, I just mapped
gQon:Neoformat(with the effect of shadowing Ex mode on Neovim), but now I have two formatters, and in most situations I'd only need a single one.iamFIREcracker commentedon Jan 11, 2023
@alecandido: you can give the following a try (I have been using it for months without much problem):
PS. to enable it, just run
setl formatexpr=NeoformatExpr()inside the filetype specific autogroup.alecandido commentedon Jan 11, 2023
Thanks, that is exactly what I had in mind (the concept, I was completely missing the implementation)