While Vim is my preferred editor of choice, I mostly only used the text editor with a few plugins and never really delved into scripting beyond editing my .vimrc.

After finding a few more useful Vim plugins that helped me out, I started searching for some plugins for Swift. I couldn’t find any beyond some syntax analysis and integration with SwiftLint via Syntastic, so I looked into writing my own plugin for building/testing Swift packages.

:help script and :help plugin are probably the definite resources in learning how to write Vim script. Also, I found an older IBM Developer tutorial and Learn Vimscript the Hard Way to be helpful.

Vim script isn’t too difficult to use and it has helped decipher some of the weird declarations in my .vimrc. For example, I found out why some variables start with g:some_var_name versus s:some_var_name; you can find out by doing :help internal-variables.

If you use Vim, I would seriously spend a day working on building a simple script since it helps explain a lot and can increase your Vim knowledge. Even if you’re not using Vim, I would look into how scriptable your text editor of choice is. For instance, Atom (or the fork VSCode) seems to be very scriptable as well.

I’ve started a swifty-vim plugin and it has made me appreciate how much further I can automate and simplify my workflow.