Is there some sort of Vim plugin that would allow me to do something like this, given the code:
function something (arbitraryObject) {
arbitraryObject.something = doesNotMatter;
}
Then let’s say I just select the word arbitraryObject in the function body, I’d like an easy way to write a macro that, given a short key combination or command-mode command, could give me something like:
function something (arbitraryObject) {
arbitraryObject.something = doesNotMatter;
console.log(arbitraryObject);
}
or…
function something (arbitraryObject) {
arbitraryObject.something = doesNotMatter;
window.arbitraryObject = arbitraryObject;
}
Note that I’m not asking what this macro would actually look like, I’m curious if there are built-in tools or plugins that make the creation of things like this particularly easy.
I know that you aren’t asking for the specific macro, but it’s easiest to learn these types of things by example. The first one (console.log) can be achieved through this mapping:
Likewise, the second one could look like this:
Can you spot the similarities?
<leader>ilmeans that the command binds to the leader key (usually ,) followed by i followed by l. You can check what the following commands mean by using:help [key]in vim, but the mappings basically yank (copy) the selected text, enters a new line (Esc, o) and then appends some text followed by Ctrl+r and ", which inserts the yanked text.