I am convinced that a separate tag text-objects
or text-object-select
is useful. Text objects can only be used in visual-mode or after an operator (:h text-objects
).
A possible misunderstanding can be the so-called text-object-motions
.
However, the description of the new tag should clarify this.
Text objects with tag [text-object] are
aw iw aW iW as is ap ip a] a[ i] i[ a) a( ab i) i( ib a> a< i> i< at it a} a{ aB i} i{ iB a" a' a` i" i' i`
(:h text-objects
or :h object-select
)
Plugins: vim-textobj-user
, targets.vim
, vim-sandwich
, vim-commentary
(e.g. dgc
), vim-matchup
(i%
, a%
)
Ftplugins: $VIMRUNTIME/ftplugin/ruby.vim
(im
,am
,iM
,aM
), vim-go
(ic
,ac
,if
,af
), python-mode
(iC
,aC
,iM
,aM
), vimtex
(ic
,ac
,id
,ad
,ie
,ae
,i$
,a$
,iP
,aP
), jdaddy.vim
(aj
), vim-gitgutter
(ic
, ac
)
Motions with tag [cursor-motions] including :h text-object-motions
are
` # $ % ^ * ( ) 0 _ - + w W e E t T I o O { } [[ [] ][ ]] [m [M ]m ]M [( ]) [{ ]} | A f F ge gE gg G g0 gm g^ g$ g_ g, g; gj gk gI h H j k l L ; ' z. z z- zz zt zb b B n N M , / ? zj zk
(:h left-right-motions
:h up-down-motions
:h word-motions
:h text-object-motions
)
Ftplugins with definitions for [[
[]
][
]]
[m
[M
]M
]m
(e.g. $VIMRUNTIME/ftplugin/ruby.vim
or $VIMRUNTIME/ftplugin/python.vim
)
UPDATE
List of questions question without the tag [cursor-motions] (#4):
- Change text between two $ symbols (only too general tag [normal-mode])
- New text object for LaTeX subscript or superscript (only tag [filetype-tex])
- Define text object that depends on the current operator (tags [key-bindings] [operator-map])
- Using Text Objects with vimtex (tags [key-bindings] [filetype-tex] [keymap])
IMHO tags [normal-mode], [key-bindings], [keymap] could be replaced by the tag [text-object] for these questions.
List of questions with the tag [cursor-motions] but are actually about [text-objects] (#14):
- How can I treat LaTeX quotes as a text object?
- Is there a text object for the entire buffer?
- Rectangular regions as text objects?
- How to keep a text object a" when it contains a breakline?
- Is there a text object for current line?
- textobj-user: must the patterns be different?
- cpoptions and parenthesis text objects
- Which text object defines text enclosed in space?
- Why is block selection characterwise?
- Vim operation - creating a new text object selector for entire file [IMHO duplicate: but usually duplicates are not deleted]
- Delete from cursor position to end of text object
- How to select/delete/yank the contents of only the current fold?
- Key binding to select the current paragraph
- change inner backslashed quotes
Questions where both tags should apply (#5):
- Why can ci" be outside of quoted area and ci( only works inside parentheses?
- How can I specify the movement direction for text objects?
- Highlight everything inside (, [, and { and expand outwards
- Replace a word in a stream of words separated with underscore
- Find based on text objects
These are 23 questions. This means the tag [text-object(-select)] would be more often applied than most tags with a typical count of 14 or less (https://vi.stackexchange.com/tags?page=5&tab=popular page 5 of 10).
ci"
will make it jump to the quoted area" ... You might want to find better examples.Is there any command that I can use e.g. y[movement] to copy the entire buffer without moving the cursor?
And here should in square brackets stand[text-object]
. If the cursor moves due to the operation, this is something that vim has decided due to the change (in case of yanking unnecessarily). See third example where I can agree that both tags should apply.I would prefer to be able to use something along the lines of ciq ("change in quotes"), just like I can do ciw, ca), ci", ca', etc.
These are all change commands. The title is clear, just the motivational text mentions movement. The intention of the OP is clearly about how to apply the change operator. I think you did not look close enough. You also just ignored my arguments and just referred to the selected question. I agree: we won't find any agreement. First bad encounter for me here on vi.stackexchange.com.