Vim plugins for powerful terminal writing
What is Vim?
Vim is Vi improved.
So, what’s Vi? Instead of trying to explain to you in my own words what
Vi is, I’ll do us both the favour of consulting Vim itself. By hitting
the Escape key to return to
-- NORMAL -- mode, I enter
:help vim_diff.txt and I’m given a detailed scrollable overview of the differences between
Vi and Vim. Some of its more interesting features include:
- Multiple windows and buffers
- Syntax highlighting
- Visual mode
- Help system
- … The list goes on.
But what if you don’t care about all that? What if you’re someone who prefers convenience over granular control, customisation and a learning curve. Then Vim may not be for you. If you’re looking for a minimal, distraction-free editor / word processor available for GNU/Linux, which can be customised in just a few clicks, then I’d recommend this.
I use Vim BTW
In case you haven’t already guessed, I’m writing this post in Vim. As I type, the only other detail visible on screen is
-- INSERT -- in the bottom-left corner, which tells me I’m currently making changes to my file.
I’ve used GNU/Linux as my operating system for a few years now, and in all that time I associated the more advanced uses of Vim with the initiated few who could dance their fingers over keyboards, navigating buffers quick as thought, leaving mice in the dust. (Here’s where I’d add one of the many Vim memes if I didn’t prefer not to use images in my posts.)
For me, Vim was always just the built-in text editor I preferred
to Nano. Sure, I’ve been slowed down by the infamous beginner’s
conundrum that is
quit, and I’m still trying to get used to using
h,j,k,l instead of the arrow keys, yet I always found it more intuitive than
Nano as an occasional, lightweight editor. (It’s right about here that a
new battle in the ‘editor wars’ would begin if you found yourself in
certain places online. Let’s not go there.)
You don’t need a certain type of editor to write well digitally, nor do you need a certain type of pen to write well by hand. It’s become clear to me now that the reason many people out there use Vim as their ‘daily driver’ for writing is because of its modular nature. You saw earlier that one of Vim’s key features is its plugins. I just tried to find out how many plugins are available so I could enlighten you. Who doesn’t love the occasional stat? But there doesn’t seem to be an estimate floating around online. If there is, I couldn’t find it amongst the usual suspects:
- 15 Best Vim Plugins for Programmers and Developers
- Top five Vim plugins for sysadmins
- 21 Best Vim Plugins
- 10 essential Vim plugins
Maybe that shouldn’t come as too much of a surprise. After all, we’re seeing free open source software development and collaboration at its finest here. Most developers likely host their code on popular git sites, but some may choose not to, so it’s always going to be difficult to get a clear idea of how many plugins are out there. Lucky for us, though, some of the best plugins are easy to find and well documented.
Plugins I’m using right now
Goyo removes all of the visual clutter surrounding your point of focus when writing: the words.
Line numbers, highlighted rows and columns, and status lines are great
(we’ll get to them in just a minute), but when it comes to
distraction-free writing, you’re better off getting rid of everything
that isn’t necessary; anything that might distract you. And if you want
to automatically enable Goyo every time you open a .txt or .md file?
You’re just an
autocmd away from easily achieving that and more.
If you’ve ever used FocusWriter or iA Writer, you’re probably familiar with one of their best features: highlighting only the paragraph you’re currently working on. Everything that comes before or after this paragraph is reduced in opacity, further aiding focus. This is exactly what Limelight sets out to do, and it does it well. While Limelight can only highlight paragraphs, the community appears to have made some progress with single-line/sentence highlighting.
I suppose Wordy is the Grammarly of Vim. Allow me to sacrifice my own words to serve a demonstration, using just one of Wordy’s command arguments:
:Wordy weak. The words in this paragraph which are highlighted are those Wordy considers ‘weak’. (As you can see, it’s not entirely accurate.)
There are so many plugins out there. I’ve only scratched the surface in this post, but even if you only try those I’ve mentioned above, you’ll be off to a great start writing notes, poems or your next novel in Vim.
Check out the links below to learn more, and feel free to use my .vimrc file to get started with your own Vim setup.