Vim Mastery

There's a reason why, after decades, countless developers still prefer Vim as their code editor of choice. That many people can't be wrong, right? In this series, I'll teach you how to master the most flexible editor on the planet.

Vim Mastery

There's a reason why, after decades, countless developers still prefer Vim as their code editor of choice. That many people can't be wrong, right? In this series, I'll teach you how to master the most flexible editor on the planet.

Are you intrigued by all those fancy Vim tricks? Are you considering a switch, but are overwhelmed by the steep learning curve? If so, why don't you come along with me, and I'll show you everything I know about this incredible editor.

A neat feature of Vim is its ability to create any arrangement of split windows. In this episode, you'll learn how this works, and will then move on to configuring their default keybindings, accordingly.

You'll frequently need to browse your project's file structure, so it's important that we build a good workflow. In this lesson, we'll first learn how to improve Vim's default netrw file browser with Tim Pope's excellent Vinegar.vim. Next, for a more traditional experience, we'll pull in NERDTree. As you'll find, when we use Vundle for dependency management, downloading and installing any plugin is a cinch!

Before we move ahead to working with c-tags, let's first make a handful of configuration tweaks. First, we'll fix a conflict between NERDTree and netrw. Next, we'll enable fancy symbols for our Fira Code font. And finally, we'll finish up by improving MacVim's awkward tabs, and switching our Ctrl + P keyboard shortcut over to the more familiar Command + P.

Imagine that you need to find a particular method in your project. The traditional way is to hunt around the project tree in your sidebar, find the file, click on it, and scroll the page until you find the method. Ehh, we can do way better than that. In this lesson, you'll learn how to instantly browse to any symbol in your project. It's lightning fast!

Let's switch back to how we browse files. It's crucial that you find a workflow you enjoy. Another option you have is a GUI app, called PeepOpen. If you enjoy the Sublime-Text form of "Command + p", you might find that you prefer this option.

As you write code in Vim, try to keep a mental record of all the tasks that take longer than you'd like. Even an extra two seconds adds up, trust me. In this lesson, I'll show you a handful of mappings that you might consider, when working in a Laravel app.

Tim Pope's excellent Surround plugin is a stable in every Vim user's tool belt. Need to quickly change single quotes to double quotes? Or do you want to instantly delete a surrounding HTML tag, or update it to a new one all together? With this plugin, it's all a cinch.

We've yet to figure out how to handle auto-completion. As such, in this episode, we'll take a first step. The goal is to type a sequence of characters, hit "tab", and then see all relevant results from nearby buffers. As always though, throughout the video, we'll discuss a number of other helpful Vim tricks.

Unfortunately, when it comes to managing tabs, indents, and spacing, well - Vim can get pretty confusing. That's okay; learn how to configure them once, and then feel free to expel all this junk from your brain.

A macro is nothing more than a recording that can be played back at any time. An excellent candidate for a macro is any piece of workflow that you find yourself repeating over and over. As an example, in this video, we'll record a macro to take a constructor argument, and then automatically initialize and assign it, as a property.

Are you manually writing out your doc-blocks in Vim? Annoying, right? Luckily, there's a much simpler way. In this episode, we'll pull in the PHP Documentor plugin, while also fetching UltiSnips, which is similar (even a replacement) to SnipMate.