I&#x27;ve played around with vimscript and my .vimrc many many times, and always found it very unwieldy. I&#x27;ve started using a new and very different approach, which involves using the amoffat&#x2F;snake library to write my new .vimrc functions in python. This is definitely not for everyone, but I&#x27;ve been able to do some pretty cool stuff with it, like creating a function for writing trace like debug statements, or sending the currently selected vim lines to a shell via the window manager&#x2F;os level, rather than a terminal multiplexer like screen. If anyone else is interested, an example can be found at gist.github.com&#x2F;sac2171&#x2F;ce7b086421e8387193fd