We often come across a situation where we have a multi-line text somewhere and we want to copy it into our code to initialize an array of array. Most of the time we do this:
Write the array declaration;
copy the contents into parentheses (roughly the length of the text below)
Then add ' at the beginning of the line, ', at the end of the line, and repeat until the last line (imagine 50 lines of text).
With Vim, you don't have to do this, just press 17gg and follow the instructions for the selected line.
constmyArray= [Ctrl-vtoenterblockoperation,$totheendoftheline,jtothenextline (doit!).PressjtothenextlineTherearemanylinesbelow,solet's jump a few more lines with 4jhttps://www.yahaha.nethttps://www.yahaha.netLookatthelinenumberlaterandjump!NowpressAtoinsert,thenenter<singlequote><comma><Esc> to complete the first step.// Oops... Jump too much, no problem, press k to go back to the previous line];
Now that you've completed the first step, you still need to add the leading ', press 17gg to go back to that line and do it again, but this time there are three things to change:
press 0 instead of $ on the first line, because this time you want to insert at the beginning of the line;
when pressing A at the end of the last line, press I instead, because in block operations A inserts after the character and I inserts before the character;
press <single quote><Esc> at the end.
Finally, to finish up, 22gg$x deletes , at the end of the last line, and then 17gg7== indents the code a bit.
Done!
Note: Selecting the beginning and end of a line can also be done after selecting what to work with, i.e. Ctrl-v jjj$A',<Esc>