with evil we have the inner or outer object for selecting inside or outside quote with ", `, ’
but I rather have everything hapenning in one go, using the q
letter for this. (lazyvim sems to have that setup by default which i seems to have got used to it)
It’s easy enough to redefine an object like this:
(define-key evil-outer-text-objects-map "q" 'evil-a-double-quote)
(define-key evil-inner-text-objects-map "q" 'evil-inner-double-quote)
which obviously only select the double quotes, anyone would know how to extend this to backquote ` or single quote ’
Try expand region package from elpa.
How does this work? Does the q become a new text object meaning “quoted” in normal mode?
So, can I do cq in normal mode and then “text” becomes “” with the cursor in the middle of the quotes with the mode being changed to insert?
There is evil-textobj-anyblock which does a similar thing (you can configure
evil-textobj-anyblock-blocks
to only use quotes, if you don’t like that by default it uses all kinds of blocks)