There is also a variation for selecting only the inner content of the previous text objects (e.g., =ip= for the inner paragraph, =is= for inner sentence) with the whitespace removed.
Note that selecting with text objects is different from selecting with [[roam:Neovim motions]] where it refers to the current position up to the end of the next selection.
Meanwhile, text objects selection will select to the referred object as a whole no matter where the cursor position.
Aside from the built-in text objects, you can create your own.
Which also means others have created some custom text objects.
- [[https://github.com/nvim-treesitter/nvim-treesitter-textobjects][nvim-treesitter-textobjects]] add text objects support for selecting (and swapping, moving, and peeking) tree-sitter nodes.
(Assuming you have tree-sitter support enabled for Neovim.)