\documentclass[10pt,a4paper]{article}

% Packages
\usepackage{fancyhdr}           % For header and footer
\usepackage{multicol}           % Allows multicols in tables
\usepackage{tabularx}           % Intelligent column widths
\usepackage{tabulary}           % Used in header and footer
\usepackage{hhline}             % Border under tables
\usepackage{graphicx}           % For images
\usepackage{xcolor}             % For hex colours
%\usepackage[utf8x]{inputenc}    % For unicode character support
\usepackage[T1]{fontenc}        % Without this we get weird character replacements
\usepackage{colortbl}           % For coloured tables
\usepackage{setspace}           % For line height
\usepackage{lastpage}           % Needed for total page number
\usepackage{seqsplit}           % Splits long words.
%\usepackage{opensans}          % Can't make this work so far. Shame. Would be lovely.
\usepackage[normalem]{ulem}     % For underlining links
% Most of the following are not required for the majority
% of cheat sheets but are needed for some symbol support.
\usepackage{amsmath}            % Symbols
\usepackage{MnSymbol}           % Symbols
\usepackage{wasysym}            % Symbols
%\usepackage[english,german,french,spanish,italian]{babel}              % Languages

% Document Info
\author{brennanmeadowcroft}
\pdfinfo{
  /Title (personal-vim.pdf)
  /Creator (Cheatography)
  /Author (brennanmeadowcroft)
  /Subject (Personal Vim Cheat Sheet)
}

% Lengths and widths
\addtolength{\textwidth}{6cm}
\addtolength{\textheight}{-1cm}
\addtolength{\hoffset}{-3cm}
\addtolength{\voffset}{-2cm}
\setlength{\tabcolsep}{0.2cm} % Space between columns
\setlength{\headsep}{-12pt} % Reduce space between header and content
\setlength{\headheight}{85pt} % If less, LaTeX automatically increases it
\renewcommand{\footrulewidth}{0pt} % Remove footer line
\renewcommand{\headrulewidth}{0pt} % Remove header line
\renewcommand{\seqinsert}{\ifmmode\allowbreak\else\-\fi} % Hyphens in seqsplit
% This two commands together give roughly
% the right line height in the tables
\renewcommand{\arraystretch}{1.3}
\onehalfspacing

% Commands
\newcommand{\SetRowColor}[1]{\noalign{\gdef\RowColorName{#1}}\rowcolor{\RowColorName}} % Shortcut for row colour
\newcommand{\mymulticolumn}[3]{\multicolumn{#1}{>{\columncolor{\RowColorName}}#2}{#3}} % For coloured multi-cols
\newcolumntype{x}[1]{>{\raggedright}p{#1}} % New column types for ragged-right paragraph columns
\newcommand{\tn}{\tabularnewline} % Required as custom column type in use

% Font and Colours
\definecolor{HeadBackground}{HTML}{333333}
\definecolor{FootBackground}{HTML}{666666}
\definecolor{TextColor}{HTML}{333333}
\definecolor{DarkBackground}{HTML}{090083}
\definecolor{LightBackground}{HTML}{F7F7FB}
\renewcommand{\familydefault}{\sfdefault}
\color{TextColor}

% Header and Footer
\pagestyle{fancy}
\fancyhead{} % Set header to blank
\fancyfoot{} % Set footer to blank
\fancyhead[L]{
\noindent
\begin{multicols}{3}
\begin{tabulary}{5.8cm}{C}
    \SetRowColor{DarkBackground}
    \vspace{-7pt}
    {\parbox{\dimexpr\textwidth-2\fboxsep\relax}{\noindent
        \hspace*{-6pt}\includegraphics[width=5.8cm]{/web/www.cheatography.com/public/images/cheatography_logo.pdf}}
    }
\end{tabulary}
\columnbreak
\begin{tabulary}{11cm}{L}
    \vspace{-2pt}\large{\bf{\textcolor{DarkBackground}{\textrm{Personal Vim Cheat Sheet}}}} \\
    \normalsize{by \textcolor{DarkBackground}{brennanmeadowcroft} via \textcolor{DarkBackground}{\uline{cheatography.com/33942/cs/10613/}}}
\end{tabulary}
\end{multicols}}

\fancyfoot[L]{ \footnotesize
\noindent
\begin{multicols}{3}
\begin{tabulary}{5.8cm}{LL}
  \SetRowColor{FootBackground}
  \mymulticolumn{2}{p{5.377cm}}{\bf\textcolor{white}{Cheatographer}}  \\
  \vspace{-2pt}brennanmeadowcroft \\
  \uline{cheatography.com/brennanmeadowcroft} \\
  \end{tabulary}
\vfill
\columnbreak
\begin{tabulary}{5.8cm}{L}
  \SetRowColor{FootBackground}
  \mymulticolumn{1}{p{5.377cm}}{\bf\textcolor{white}{Cheat Sheet}}  \\
   \vspace{-2pt}Published 21st January, 2017.\\
   Updated 21st January, 2017.\\
   Page {\thepage} of \pageref{LastPage}.
\end{tabulary}
\vfill
\columnbreak
\begin{tabulary}{5.8cm}{L}
  \SetRowColor{FootBackground}
  \mymulticolumn{1}{p{5.377cm}}{\bf\textcolor{white}{Sponsor}}  \\
  \SetRowColor{white}
  \vspace{-5pt}
  %\includegraphics[width=48px,height=48px]{dave.jpeg}
  Measure your website readability!\\
  www.readability-score.com
\end{tabulary}
\end{multicols}}




\begin{document}
\raggedright
\raggedcolumns

% Set font size to small. Switch to any value
% from this page to resize cheat sheet text:
% www.emerson.emory.edu/services/latex/latex_169.html
\footnotesize % Small font.

\begin{multicols*}{3}

\begin{tabularx}{5.377cm}{x{1.29402 cm} x{3.68298 cm} }
\SetRowColor{DarkBackground}
\mymulticolumn{2}{x{5.377cm}}{\bf\textcolor{white}{Notes}}  \tn
% Row 0
\SetRowColor{LightBackground}
\{\{fa-plug\}\} & Command derived from plugin \tn 
% Row Count 2 (+ 2)
% Row 1
\SetRowColor{white}
\{\{fa-user\}\} & Command derived from preferences \tn 
% Row Count 4 (+ 2)
\hhline{>{\arrayrulecolor{DarkBackground}}--}
\SetRowColor{LightBackground}
\mymulticolumn{2}{x{5.377cm}}{`.vimrc` for this cheatsheet available on Github \{\{fa-github\}\}\{\{link="https://github.com/brennanmeadowcroft/dotfiles/tree/master/active/vim"\}\}brennanmeadowcroft/dotfiles\{\{/link\}\}}  \tn 
\hhline{>{\arrayrulecolor{DarkBackground}}--}
\end{tabularx}
\par\addvspace{1.3em}

\begin{tabularx}{5.377cm}{x{2.33919 cm} x{2.63781 cm} }
\SetRowColor{DarkBackground}
\mymulticolumn{2}{x{5.377cm}}{\bf\textcolor{white}{Global}}  \tn
% Row 0
\SetRowColor{LightBackground}
\{\{nobreak\}\}`:help \textless{}keyword\textgreater{}` & Open help for a keyword \tn 
% Row Count 2 (+ 2)
% Row 1
\SetRowColor{white}
`:o \textless{}file\textgreater{}` & Open file \tn 
% Row Count 3 (+ 1)
% Row 2
\SetRowColor{LightBackground}
`:saveas \textless{}file\textgreater{}` & Save file as \tn 
% Row Count 4 (+ 1)
% Row 3
\SetRowColor{white}
`:close` & Close current pane \tn 
% Row Count 5 (+ 1)
% Row 4
\SetRowColor{LightBackground}
`\textless{}n\textgreater{}\textless{}command\textgreater{}` & Do {\emph{n}} of {\emph{command}} (e.g. `5dd`) \tn 
% Row Count 7 (+ 2)
% Row 5
\SetRowColor{white}
`\textless{}Esc\textgreater{}` & Change to normal mode \tn 
% Row Count 8 (+ 1)
\hhline{>{\arrayrulecolor{DarkBackground}}--}
\SetRowColor{LightBackground}
\mymulticolumn{2}{x{5.377cm}}{\{\{fa-info-circle\}\} `\textless{}Leader\textgreater{}` is `,`}  \tn 
\hhline{>{\arrayrulecolor{DarkBackground}}--}
\end{tabularx}
\par\addvspace{1.3em}

\begin{tabularx}{5.377cm}{x{1.69218 cm} x{3.28482 cm} }
\SetRowColor{DarkBackground}
\mymulticolumn{2}{x{5.377cm}}{\bf\textcolor{white}{Exiting}}  \tn
% Row 0
\SetRowColor{LightBackground}
`:w` & Write (save) current file but don't exit \tn 
% Row Count 2 (+ 2)
% Row 1
\SetRowColor{white}
`:Q` & Quit {\emph{ALL}} buffers (fails if unsaved changes) \{\{fa-user\}\} \tn 
% Row Count 5 (+ 3)
% Row 2
\SetRowColor{LightBackground}
`:q` & Quit current buffer (fails if unsaved changes) \tn 
% Row Count 7 (+ 2)
% Row 3
\SetRowColor{white}
`:q!` & Force quit \tn 
% Row Count 8 (+ 1)
% Row 4
\SetRowColor{LightBackground}
\{\{nobreak\}\}`:wq`/`:x` & Write (save) and quit \tn 
% Row Count 10 (+ 2)
\hhline{>{\arrayrulecolor{DarkBackground}}--}
\end{tabularx}
\par\addvspace{1.3em}

\begin{tabularx}{5.377cm}{x{1.44333 cm} x{3.53367 cm} }
\SetRowColor{DarkBackground}
\mymulticolumn{2}{x{5.377cm}}{\bf\textcolor{white}{Macros}}  \tn
% Row 0
\SetRowColor{LightBackground}
`qa` & Record macro `a` \tn 
% Row Count 1 (+ 1)
% Row 1
\SetRowColor{white}
`qq` & Stop recording macro \tn 
% Row Count 2 (+ 1)
% Row 2
\SetRowColor{LightBackground}
`@@` & Rerun last macro \tn 
% Row Count 3 (+ 1)
% Row 3
\SetRowColor{white}
`{\bf{\_n\_}}@a` & Run macro `a` {\bf{\_n\_}} times \tn 
% Row Count 4 (+ 1)
\hhline{>{\arrayrulecolor{DarkBackground}}--}
\end{tabularx}
\par\addvspace{1.3em}

\begin{tabularx}{5.377cm}{x{1.09494 cm} x{3.88206 cm} }
\SetRowColor{DarkBackground}
\mymulticolumn{2}{x{5.377cm}}{\bf\textcolor{white}{Visual Mode}}  \tn
% Row 0
\SetRowColor{LightBackground}
\mymulticolumn{2}{x{5.377cm}}{\{\{nl\}\}\{\{bb\}\}\{\{ac\}\}{\bf{Marking Text}}} \tn 
% Row Count 1 (+ 1)
% Row 1
\SetRowColor{white}
`v` & start visual mode \tn 
% Row Count 2 (+ 1)
% Row 2
\SetRowColor{LightBackground}
`V` & start linewise visual mode \tn 
% Row Count 3 (+ 1)
% Row 3
\SetRowColor{white}
\seqsplit{`Ctrl+v`} & Start visual block mode \tn 
% Row Count 4 (+ 1)
% Row 4
\SetRowColor{LightBackground}
`aw` & Mark a {\emph{WORD}} \tn 
% Row Count 5 (+ 1)
% Row 5
\SetRowColor{white}
`ab` & Mark {\emph{AROUND}} block of () \tn 
% Row Count 6 (+ 1)
% Row 6
\SetRowColor{LightBackground}
`aB` & Mark {\emph{AROUND}} block with \{\} \tn 
% Row Count 7 (+ 1)
% Row 7
\SetRowColor{white}
`ib` & Mark {\emph{INSIDE}} block with () \tn 
% Row Count 8 (+ 1)
% Row 8
\SetRowColor{LightBackground}
`iB` & Mark {\emph{INSIDE}} block with \{\} \tn 
% Row Count 9 (+ 1)
% Row 9
\SetRowColor{white}
\mymulticolumn{2}{x{5.377cm}}{\{\{nl\}\}\{\{bb\}\}\{\{ac\}\}{\bf{Visual Commands}}} \tn 
% Row Count 10 (+ 1)
% Row 10
\SetRowColor{LightBackground}
`\textgreater{}` & Shift highlighted lines right \tn 
% Row Count 11 (+ 1)
% Row 11
\SetRowColor{white}
`\textless{}` & Shift highlighted lines left \tn 
% Row Count 12 (+ 1)
% Row 12
\SetRowColor{LightBackground}
`y` & Yank (copy) marked text \tn 
% Row Count 13 (+ 1)
% Row 13
\SetRowColor{white}
`d` & Delete marked text \tn 
% Row Count 14 (+ 1)
% Row 14
\SetRowColor{LightBackground}
`\textasciitilde{}` & Switch case of marked text \tn 
% Row Count 15 (+ 1)
\hhline{>{\arrayrulecolor{DarkBackground}}--}
\end{tabularx}
\par\addvspace{1.3em}

\begin{tabularx}{5.377cm}{x{0.84609 cm} x{4.13091 cm} }
\SetRowColor{DarkBackground}
\mymulticolumn{2}{x{5.377cm}}{\bf\textcolor{white}{Insert Mode}}  \tn
% Row 0
\SetRowColor{LightBackground}
`A` & Append to end of line \tn 
% Row Count 1 (+ 1)
% Row 1
\SetRowColor{white}
`a` & Start inserting after cursor \tn 
% Row Count 2 (+ 1)
% Row 2
\SetRowColor{LightBackground}
`i` & Start inserting before cursor \tn 
% Row Count 3 (+ 1)
% Row 3
\SetRowColor{white}
\mymulticolumn{2}{x{5.377cm}}{\{\{nl\}\}\{\{bb\}\}\{\{ac\}\}{\bf{Keyword Completion}}} \tn 
% Row Count 4 (+ 1)
% Row 4
\SetRowColor{LightBackground}
\seqsplit{`Ctrl+n`} & Keyword completion (e.g. variable names) \tn 
% Row Count 6 (+ 2)
% Row 5
\SetRowColor{white}
`Tab` & Keyword completion \{\{fa-plug\}\} \tn 
% Row Count 7 (+ 1)
% Row 6
\SetRowColor{LightBackground}
\seqsplit{`Ctrl+n`} & Move {\emph{DOWN}} in autocomplete window \tn 
% Row Count 9 (+ 2)
% Row 7
\SetRowColor{white}
\seqsplit{`Ctrl+p`} & Move {\emph{UP}} in autocomplete window \tn 
% Row Count 11 (+ 2)
\hhline{>{\arrayrulecolor{DarkBackground}}--}
\end{tabularx}
\par\addvspace{1.3em}

\begin{tabularx}{5.377cm}{p{0.4977 cm} x{4.4793 cm} }
\SetRowColor{DarkBackground}
\mymulticolumn{2}{x{5.377cm}}{\bf\textcolor{white}{Normal Mode - Inserting Text}}  \tn
% Row 0
\SetRowColor{LightBackground}
`i` & Insert {\emph{BEFORE}} cursor \tn 
% Row Count 1 (+ 1)
% Row 1
\SetRowColor{white}
`I` & Insert at beginning of line \tn 
% Row Count 2 (+ 1)
% Row 2
\SetRowColor{LightBackground}
`a` & Insert {\emph{AFTER}} cursor \tn 
% Row Count 3 (+ 1)
% Row 3
\SetRowColor{white}
`A` & Insert at end of line \tn 
% Row Count 4 (+ 1)
% Row 4
\SetRowColor{LightBackground}
`o` & Insert new line {\emph{BELOW}} current line \tn 
% Row Count 5 (+ 1)
% Row 5
\SetRowColor{white}
`O` & Insert new line {\emph{ABOVE}} current line \tn 
% Row Count 6 (+ 1)
% Row 6
\SetRowColor{LightBackground}
`ea` & Insert at end of the word \tn 
% Row Count 7 (+ 1)
\hhline{>{\arrayrulecolor{DarkBackground}}--}
\end{tabularx}
\par\addvspace{1.3em}

\begin{tabularx}{5.377cm}{X}
\SetRowColor{DarkBackground}
\mymulticolumn{1}{x{5.377cm}}{\bf\textcolor{white}{\{\{fa-columns\}\}}}  \tn
% Row 0
\SetRowColor{LightBackground}
\mymulticolumn{1}{x{5.377cm}}{} \tn 
% Row Count 0 (+ 0)
\hhline{>{\arrayrulecolor{DarkBackground}}-}
\end{tabularx}
\par\addvspace{1.3em}

\begin{tabularx}{5.377cm}{x{1.14471 cm} x{3.83229 cm} }
\SetRowColor{DarkBackground}
\mymulticolumn{2}{x{5.377cm}}{\bf\textcolor{white}{Normal Mode - Cursor Movement}}  \tn
% Row 0
\SetRowColor{LightBackground}
`h` & Move cursor left \tn 
% Row Count 1 (+ 1)
% Row 1
\SetRowColor{white}
`j` & Move cursor down \tn 
% Row Count 2 (+ 1)
% Row 2
\SetRowColor{LightBackground}
`k` & Move cursor up \tn 
% Row Count 3 (+ 1)
% Row 3
\SetRowColor{white}
`l` & Move cursor right \tn 
% Row Count 4 (+ 1)
% Row 4
\SetRowColor{LightBackground}
`H` & Move cursor to {\emph{TOP}} of screen \tn 
% Row Count 5 (+ 1)
% Row 5
\SetRowColor{white}
`M` & Move cursor to {\emph{MIDDLE}} of screen \tn 
% Row Count 7 (+ 2)
% Row 6
\SetRowColor{LightBackground}
`L` & Move cursor to {\emph{BOTTOM}} of screen \tn 
% Row Count 9 (+ 2)
% Row 7
\SetRowColor{white}
`w` & Jump forward to {\emph{START}} of word \tn 
% Row Count 11 (+ 2)
% Row 8
\SetRowColor{LightBackground}
`e` & Jump forward to {\emph{END}} of word \tn 
% Row Count 12 (+ 1)
% Row 9
\SetRowColor{white}
`\textasciicircum{}` & Jump to first non-blank character of line \tn 
% Row Count 14 (+ 2)
% Row 10
\SetRowColor{LightBackground}
`\$` & Jump to end of the line \tn 
% Row Count 15 (+ 1)
% Row 11
\SetRowColor{white}
`O` & Jump to start of the line \tn 
% Row Count 16 (+ 1)
% Row 12
\SetRowColor{LightBackground}
`Ctrl+b` & Page Up \tn 
% Row Count 17 (+ 1)
% Row 13
\SetRowColor{white}
`Ctrl+f` & Page Down \tn 
% Row Count 18 (+ 1)
% Row 14
\SetRowColor{LightBackground}
`{\bf{{\emph{\_n\_}}}}G` & Go to line {\bf{\_n\_}} \tn 
% Row Count 20 (+ 2)
% Row 15
\SetRowColor{white}
`gg` & Go to the first line of the document \tn 
% Row Count 22 (+ 2)
% Row 16
\SetRowColor{LightBackground}
`G` & Go to the last line of the document \tn 
% Row Count 24 (+ 2)
% Row 17
\SetRowColor{white}
`\}` & Jump to next paragraph (or function/block) \tn 
% Row Count 26 (+ 2)
% Row 18
\SetRowColor{LightBackground}
`\{` & Jump to previous paragraph (or function/block) \tn 
% Row Count 28 (+ 2)
% Row 19
\SetRowColor{white}
`Ctrl+y` & Scroll up without moving cursor \tn 
% Row Count 30 (+ 2)
\end{tabularx}
\par\addvspace{1.3em}

\vfill
\columnbreak
\begin{tabularx}{5.377cm}{x{1.14471 cm} x{3.83229 cm} }
\SetRowColor{DarkBackground}
\mymulticolumn{2}{x{5.377cm}}{\bf\textcolor{white}{Normal Mode - Cursor Movement (cont)}}  \tn
% Row 20
\SetRowColor{LightBackground}
`Ctrl+e` & Scroll down without moving cursor \tn 
% Row Count 2 (+ 2)
\hhline{>{\arrayrulecolor{DarkBackground}}--}
\end{tabularx}
\par\addvspace{1.3em}

\begin{tabularx}{5.377cm}{x{2.4885 cm} x{2.4885 cm} }
\SetRowColor{DarkBackground}
\mymulticolumn{2}{x{5.377cm}}{\bf\textcolor{white}{Normal Mode - Search \& Replace}}  \tn
% Row 0
\SetRowColor{LightBackground}
\mymulticolumn{2}{x{5.377cm}}{\{\{nl\}\}\{\{bb\}\}\{\{ac\}\}{\bf{Within Buffer}}} \tn 
% Row Count 1 (+ 1)
% Row 1
\SetRowColor{white}
\{\{nobreak\}\}`/{\bf{{\emph{\_keyword\_}}}}` & Search buffer for {\bf{\_keyword\_}} \tn 
% Row Count 3 (+ 2)
% Row 2
\SetRowColor{LightBackground}
`n` & Move {\emph{DOWN}} to next instance \tn 
% Row Count 5 (+ 2)
% Row 3
\SetRowColor{white}
`N` & Move {\emph{UP}} to next instance \tn 
% Row Count 7 (+ 2)
% Row 4
\SetRowColor{LightBackground}
`*` & Search buffer for word under cursor \tn 
% Row Count 9 (+ 2)
% Row 5
\SetRowColor{white}
\mymulticolumn{2}{x{5.377cm}}{\{\{nl\}\}\{\{bb\}\}\{\{ac\}\}{\bf{Within Working Directory}}} \tn 
% Row Count 10 (+ 1)
% Row 6
\SetRowColor{LightBackground}
`\textless{}Leader\textgreater{}+a` & Search (ack) {\emph{INSIDE}} files in working directory \{\{fa-plug\}\} \{\{fa-user\}\} \tn 
% Row Count 14 (+ 4)
% Row 7
\SetRowColor{white}
`v` & Open file from search (ack) in {\emph{VERTICAL}} split \{\{fa-plug\}\} \tn 
% Row Count 17 (+ 3)
% Row 8
\SetRowColor{LightBackground}
`h` & Open file from search (ack) in {\emph{HORIZONTAL}} split \{\{fa-plug\}\} \tn 
% Row Count 21 (+ 4)
% Row 9
\SetRowColor{white}
\mymulticolumn{2}{x{5.377cm}}{\{\{nl\}\}\{\{bb\}\}\{\{ac\}\}{\bf{Replace}}} \tn 
% Row Count 22 (+ 1)
% Row 10
\SetRowColor{LightBackground}
\{\{nobreak\}\}`:\%s/{\bf{{\emph{\_old\_}}}}/{\bf{{\emph{\_new\_}}}}/g` & Replace all {\bf{\_old\_}} throughout file with {\bf{\_new\_}} \tn 
% Row Count 25 (+ 3)
% Row 11
\SetRowColor{white}
\{\{nobreak\}\}`:\%s/{\bf{{\emph{\_old\_}}}}/{\bf{{\emph{\_new\_}}}}/gc` & Replace {\bf{\_old\_}} with {\bf{\_new\_}} {\emph{WITH CONFIRMATIONS}} \tn 
% Row Count 28 (+ 3)
\hhline{>{\arrayrulecolor{DarkBackground}}--}
\end{tabularx}
\par\addvspace{1.3em}

\begin{tabularx}{5.377cm}{x{0.9954 cm} x{3.9816 cm} }
\SetRowColor{DarkBackground}
\mymulticolumn{2}{x{5.377cm}}{\bf\textcolor{white}{Marks/Registers}}  \tn
% Row 0
\SetRowColor{LightBackground}
\mymulticolumn{2}{x{5.377cm}}{\{\{nl\}\}\{\{bb\}\}\{\{ac\}\}{\bf{Marks}}} \tn 
% Row Count 1 (+ 1)
% Row 1
\SetRowColor{white}
\seqsplit{`:marks`} & List of marks \tn 
% Row Count 2 (+ 1)
% Row 2
\SetRowColor{LightBackground}
`ma` & Set current position for mark `a` \tn 
% Row Count 4 (+ 2)
% Row 3
\SetRowColor{white}
`\textbackslash{}`a` & Jump to position of mark `a` \tn 
% Row Count 5 (+ 1)
% Row 4
\SetRowColor{LightBackground}
\mymulticolumn{2}{x{5.377cm}}{\{\{nl\}\}\{\{bb\}\}\{\{ac\}\}{\bf{Registers}}} \tn 
% Row Count 6 (+ 1)
% Row 5
\SetRowColor{white}
`:reg` & Show registers content \tn 
% Row Count 7 (+ 1)
% Row 6
\SetRowColor{LightBackground}
`"xy` & yank into register `x` \tn 
% Row Count 8 (+ 1)
% Row 7
\SetRowColor{white}
`"0p` & Paste contents of register x \tn 
% Row Count 9 (+ 1)
\hhline{>{\arrayrulecolor{DarkBackground}}--}
\SetRowColor{LightBackground}
\mymulticolumn{2}{x{5.377cm}}{\{\{fa-info-circle\}\} Unsure what these do... calling them out for research}  \tn 
\hhline{>{\arrayrulecolor{DarkBackground}}--}
\end{tabularx}
\par\addvspace{1.3em}

\begin{tabularx}{5.377cm}{X}
\SetRowColor{DarkBackground}
\mymulticolumn{1}{x{5.377cm}}{\bf\textcolor{white}{\{\{fa-columns\}\}}}  \tn
% Row 0
\SetRowColor{LightBackground}
\mymulticolumn{1}{x{5.377cm}}{} \tn 
% Row Count 0 (+ 0)
\hhline{>{\arrayrulecolor{DarkBackground}}-}
\end{tabularx}
\par\addvspace{1.3em}

\begin{tabularx}{5.377cm}{x{1.9908 cm} x{2.9862 cm} }
\SetRowColor{DarkBackground}
\mymulticolumn{2}{x{5.377cm}}{\bf\textcolor{white}{Normal Mode - Editing}}  \tn
% Row 0
\SetRowColor{LightBackground}
`J` & Join line below to current one \tn 
% Row Count 2 (+ 2)
% Row 1
\SetRowColor{white}
`cc` & change (replace) entire line \tn 
% Row Count 4 (+ 2)
% Row 2
\SetRowColor{LightBackground}
`cw` & change (replace) to end of word \tn 
% Row Count 6 (+ 2)
% Row 3
\SetRowColor{white}
`c\$` & change (replace) to end of line \tn 
% Row Count 8 (+ 2)
% Row 4
\SetRowColor{LightBackground}
`s` & delete character and substitute text \tn 
% Row Count 10 (+ 2)
% Row 5
\SetRowColor{white}
`xp` & transpose two letters \tn 
% Row Count 11 (+ 1)
% Row 6
\SetRowColor{LightBackground}
`u` & undo \tn 
% Row Count 12 (+ 1)
% Row 7
\SetRowColor{white}
`Ctrl+r` & redo \tn 
% Row Count 13 (+ 1)
% Row 8
\SetRowColor{LightBackground}
`.` & Repeat last action \tn 
% Row Count 14 (+ 1)
% Row 9
\SetRowColor{white}
\{\{nobreak\}\}`ci{\bf{{\emph{\_char\_}}}}` & Change {\emph{INSIDE}} {\bf{\_char\_}} (e.g. `ci"`) \tn 
% Row Count 16 (+ 2)
% Row 10
\SetRowColor{LightBackground}
`ca{\bf{{\emph{\_char\_}}}}` & Change {\emph{AROUND}} (including) {\bf{\_char\_}} (e.g. `ca"`) \tn 
% Row Count 19 (+ 3)
\hhline{>{\arrayrulecolor{DarkBackground}}--}
\end{tabularx}
\par\addvspace{1.3em}

\begin{tabularx}{5.377cm}{p{0.64701 cm} x{4.32999 cm} }
\SetRowColor{DarkBackground}
\mymulticolumn{2}{x{5.377cm}}{\bf\textcolor{white}{Normal Mode - Code Folding}}  \tn
% Row 0
\SetRowColor{LightBackground}
`zc` & Close a fold \tn 
% Row Count 1 (+ 1)
% Row 1
\SetRowColor{white}
`zo` & Open a fold \tn 
% Row Count 2 (+ 1)
% Row 2
\SetRowColor{LightBackground}
`zA` & Toggle all folds \tn 
% Row Count 3 (+ 1)
% Row 3
\SetRowColor{white}
`za` & Toggle single fold \tn 
% Row Count 4 (+ 1)
% Row 4
\SetRowColor{LightBackground}
`zM` & Close {\emph{ALL}} folds in buffer \tn 
% Row Count 5 (+ 1)
\hhline{>{\arrayrulecolor{DarkBackground}}--}
\end{tabularx}
\par\addvspace{1.3em}

\begin{tabularx}{5.377cm}{x{1.29402 cm} x{3.68298 cm} }
\SetRowColor{DarkBackground}
\mymulticolumn{2}{x{5.377cm}}{\bf\textcolor{white}{Normal Mode - Buffers}}  \tn
% Row 0
\SetRowColor{LightBackground}
`:ls` & List all buffers \tn 
% Row Count 1 (+ 1)
% Row 1
\SetRowColor{white}
`:bd` & Close the current buffer \tn 
% Row Count 2 (+ 1)
% Row 2
\SetRowColor{LightBackground}
`:bd{\bf{{\emph{\_n\_}}}}` & Close {\emph{\_n\_}} buffer \tn 
% Row Count 4 (+ 2)
% Row 3
\SetRowColor{white}
`:bn` & Navigate to next buffer \tn 
% Row Count 5 (+ 1)
% Row 4
\SetRowColor{LightBackground}
`:bp` & Navigate to previous buffer \tn 
% Row Count 6 (+ 1)
% Row 5
\SetRowColor{white}
`Ctrl+c` & Close the current buffer \{\{fa-plug\}\} \tn 
% Row Count 8 (+ 2)
% Row 6
\SetRowColor{LightBackground}
`Ctrl+h` & Navigate to previous buffer \{\{fa-plug\}\} \tn 
% Row Count 10 (+ 2)
% Row 7
\SetRowColor{white}
`Ctrl+l` & Navigate to next buffer \{\{fa-plug\}\} \tn 
% Row Count 12 (+ 2)
\hhline{>{\arrayrulecolor{DarkBackground}}--}
\end{tabularx}
\par\addvspace{1.3em}

\begin{tabularx}{5.377cm}{x{0.89586 cm} x{4.08114 cm} }
\SetRowColor{DarkBackground}
\mymulticolumn{2}{x{5.377cm}}{\bf\textcolor{white}{Normal Mode - Splits}}  \tn
% Row 0
\SetRowColor{LightBackground}
\seqsplit{`Ctrl+ws`} & Split current window {\emph{horizontally}} \tn 
% Row Count 2 (+ 2)
% Row 1
\SetRowColor{white}
\seqsplit{`Ctrl+wv`} & Split window {\emph{vertically}} \tn 
% Row Count 4 (+ 2)
% Row 2
\SetRowColor{LightBackground}
\seqsplit{`Ctrl+wq`} & Quit a window \tn 
% Row Count 6 (+ 2)
% Row 3
\SetRowColor{white}
\mymulticolumn{2}{x{5.377cm}}{\{\{nl\}\}\{\{bb\}\}\{\{ac\}\}{\bf{Navigating Splits}}} \tn 
% Row Count 7 (+ 1)
% Row 4
\SetRowColor{LightBackground}
\seqsplit{`Ctrl+ww`} & Move to next split \tn 
% Row Count 9 (+ 2)
% Row 5
\SetRowColor{white}
\seqsplit{`Ctrl+wh`} & Move to split located {\emph{LEFT}} of current \tn 
% Row Count 11 (+ 2)
% Row 6
\SetRowColor{LightBackground}
\seqsplit{`Ctrl+wl`} & Move to split located {\emph{RIGHT}} of current \tn 
% Row Count 13 (+ 2)
% Row 7
\SetRowColor{white}
\seqsplit{`Ctrl+wj`} & Move to split located {\emph{BELOW}} current \tn 
% Row Count 15 (+ 2)
% Row 8
\SetRowColor{LightBackground}
\seqsplit{`Ctrl+wk`} & Move to split located {\emph{ABOVE}} current \tn 
% Row Count 17 (+ 2)
\hhline{>{\arrayrulecolor{DarkBackground}}--}
\end{tabularx}
\par\addvspace{1.3em}

\begin{tabularx}{5.377cm}{p{0.59724 cm} x{4.37976 cm} }
\SetRowColor{DarkBackground}
\mymulticolumn{2}{x{5.377cm}}{\bf\textcolor{white}{Normal Mode - Cut/Paste}}  \tn
% Row 0
\SetRowColor{LightBackground}
`yy` & Yank (copy) a line \tn 
% Row Count 1 (+ 1)
% Row 1
\SetRowColor{white}
`yw` & Yank (copy) a word \tn 
% Row Count 2 (+ 1)
% Row 2
\SetRowColor{LightBackground}
`y\$` & Yank (copy) to end of line \tn 
% Row Count 3 (+ 1)
% Row 3
\SetRowColor{white}
`p` & Paste {\emph{BEFORE}} cursor \tn 
% Row Count 4 (+ 1)
% Row 4
\SetRowColor{LightBackground}
`P` & Paste {\emph{AFTER}} cursor \tn 
% Row Count 5 (+ 1)
% Row 5
\SetRowColor{white}
`dd` & Delete (cut) a line \tn 
% Row Count 6 (+ 1)
% Row 6
\SetRowColor{LightBackground}
`dw` & Delete (cut) a word \tn 
% Row Count 7 (+ 1)
% Row 7
\SetRowColor{white}
`d\$` & Delete (cut) to end of line \tn 
% Row Count 8 (+ 1)
% Row 8
\SetRowColor{LightBackground}
`x` & Delete (cut) single character \tn 
% Row Count 9 (+ 1)
\hhline{>{\arrayrulecolor{DarkBackground}}--}
\SetRowColor{LightBackground}
\mymulticolumn{2}{x{5.377cm}}{\{\{fa-exclamation-triangle\}\} Deleting is basically cutting; anything deleted will be on clipboard.}  \tn 
\hhline{>{\arrayrulecolor{DarkBackground}}--}
\end{tabularx}
\par\addvspace{1.3em}

\begin{tabularx}{5.377cm}{X}
\SetRowColor{DarkBackground}
\mymulticolumn{1}{x{5.377cm}}{\bf\textcolor{white}{\{\{fa-file\}\}}}  \tn
% Row 0
\SetRowColor{LightBackground}
\mymulticolumn{1}{x{5.377cm}}{} \tn 
% Row Count 0 (+ 0)
\hhline{>{\arrayrulecolor{DarkBackground}}-}
\end{tabularx}
\par\addvspace{1.3em}

\begin{tabularx}{5.377cm}{x{1.64241 cm} x{3.33459 cm} }
\SetRowColor{DarkBackground}
\mymulticolumn{2}{x{5.377cm}}{\bf\textcolor{white}{\{\{fa-plug\}\} Ctrl-P}}  \tn
% Row 0
\SetRowColor{LightBackground}
`Ctrl+p` & Start Ctrl-P to search for files \tn 
% Row Count 2 (+ 2)
% Row 1
\SetRowColor{white}
\{\{nobreak\}\}`\textless{}enter\textgreater{}` & Open file in new buffer \tn 
% Row Count 4 (+ 2)
% Row 2
\SetRowColor{LightBackground}
`Ctrl+k` & Navigate {\emph{UP}} in file list \tn 
% Row Count 5 (+ 1)
% Row 3
\SetRowColor{white}
`Ctrl+j` & Navigate {\emph{DOWN}} in file list \tn 
% Row Count 7 (+ 2)
% Row 4
\SetRowColor{LightBackground}
`Ctrl+f` & Move {\emph{FORWARD}} in search locations (files, buffers, most recent files) \tn 
% Row Count 10 (+ 3)
% Row 5
\SetRowColor{white}
`Ctrl+b` & Move {\emph{BACKWARD}} in search locations \tn 
% Row Count 12 (+ 2)
\hhline{>{\arrayrulecolor{DarkBackground}}--}
\end{tabularx}
\par\addvspace{1.3em}

\begin{tabularx}{5.377cm}{x{1.84149 cm} x{3.13551 cm} }
\SetRowColor{DarkBackground}
\mymulticolumn{2}{x{5.377cm}}{\bf\textcolor{white}{\{\{fa-plug\}\} Ack.vim}}  \tn
% Row 0
\SetRowColor{LightBackground}
`v` & Open highlighted file in {\emph{VERTICAL}} split \tn 
% Row Count 2 (+ 2)
% Row 1
\SetRowColor{white}
`h` & Open highlighted file in {\emph{HORIZONTAL}} split \tn 
% Row Count 4 (+ 2)
% Row 2
\SetRowColor{LightBackground}
\{\{nobreak\}\}`\textless{}enter\textgreater{}` & Open highlighted file in new buffer \tn 
% Row Count 6 (+ 2)
% Row 3
\SetRowColor{white}
\{\{nobreak\}\}`\textless{}leader\textgreater{}+a` & Open ack.vim for searching \{\{fa-user\}\} \tn 
% Row Count 8 (+ 2)
% Row 4
\SetRowColor{LightBackground}
`q` & Close search results window \tn 
% Row Count 10 (+ 2)
\hhline{>{\arrayrulecolor{DarkBackground}}--}
\end{tabularx}
\par\addvspace{1.3em}

\begin{tabularx}{5.377cm}{X}
\SetRowColor{DarkBackground}
\mymulticolumn{1}{x{5.377cm}}{\bf\textcolor{white}{\{\{fa-columns\}\}}}  \tn
% Row 0
\SetRowColor{LightBackground}
\mymulticolumn{1}{x{5.377cm}}{} \tn 
% Row Count 0 (+ 0)
\hhline{>{\arrayrulecolor{DarkBackground}}-}
\end{tabularx}
\par\addvspace{1.3em}

\begin{tabularx}{5.377cm}{x{1.9908 cm} x{2.9862 cm} }
\SetRowColor{DarkBackground}
\mymulticolumn{2}{x{5.377cm}}{\bf\textcolor{white}{\{\{fa-plug\}\} NerdTree}}  \tn
% Row 0
\SetRowColor{LightBackground}
\{\{nobreak\}\}`\textless{}Leader\textgreater{}+n` & Toggle NerdTree \tn 
% Row Count 2 (+ 2)
% Row 1
\SetRowColor{white}
`P` & Move to {\emph{ROOT}} of working directory \tn 
% Row Count 4 (+ 2)
% Row 2
\SetRowColor{LightBackground}
`p` & Move to parent folder above cursor \tn 
% Row Count 6 (+ 2)
\hhline{>{\arrayrulecolor{DarkBackground}}--}
\end{tabularx}
\par\addvspace{1.3em}

\begin{tabularx}{5.377cm}{x{3.38436 cm} x{1.59264 cm} }
\SetRowColor{DarkBackground}
\mymulticolumn{2}{x{5.377cm}}{\bf\textcolor{white}{\{\{fa-plug\}\} NerdComment}}  \tn
% Row 0
\SetRowColor{LightBackground}
\{\{nobreak\}\}`\textless{}leader\textgreater{}+c\textless{}space\textgreater{}` & Toggle comment \tn 
% Row Count 2 (+ 2)
% Row 1
\SetRowColor{white}
`\textless{}leader\textgreater{}+cl` & Line comment \tn 
% Row Count 3 (+ 1)
% Row 2
\SetRowColor{LightBackground}
`\textless{}leader\textgreater{}+cu` & Uncomment \tn 
% Row Count 4 (+ 1)
\hhline{>{\arrayrulecolor{DarkBackground}}--}
\end{tabularx}
\par\addvspace{1.3em}

\begin{tabularx}{5.377cm}{x{0.84609 cm} x{4.13091 cm} }
\SetRowColor{DarkBackground}
\mymulticolumn{2}{x{5.377cm}}{\bf\textcolor{white}{\{\{fa-plug\}\} Buffergator}}  \tn
% Row 0
\SetRowColor{LightBackground}
\seqsplit{`Ctrl+c`} & Close the current buffer \{\{fa-plug\}\} \tn 
% Row Count 2 (+ 2)
% Row 1
\SetRowColor{white}
\seqsplit{`Ctrl+h`} & Navigate to previous buffer \{\{fa-plug\}\} \tn 
% Row Count 4 (+ 2)
% Row 2
\SetRowColor{LightBackground}
\seqsplit{`Ctrl+l`} & Navigate to next buffer \{\{fa-plug\}\} \tn 
% Row Count 6 (+ 2)
\hhline{>{\arrayrulecolor{DarkBackground}}--}
\end{tabularx}
\par\addvspace{1.3em}

\begin{tabularx}{5.377cm}{X}
\SetRowColor{DarkBackground}
\mymulticolumn{1}{x{5.377cm}}{\bf\textcolor{white}{\{\{fa-columns\}\}}}  \tn
% Row 0
\SetRowColor{LightBackground}
\mymulticolumn{1}{x{5.377cm}}{} \tn 
% Row Count 0 (+ 0)
\hhline{>{\arrayrulecolor{DarkBackground}}-}
\end{tabularx}
\par\addvspace{1.3em}

\begin{tabularx}{5.377cm}{X}
\SetRowColor{DarkBackground}
\mymulticolumn{1}{x{5.377cm}}{\bf\textcolor{white}{\{\{fa-plug\}\} Vimdiff - Layout}}  \tn
\SetRowColor{LightBackground}
\mymulticolumn{1}{p{5.377cm}}{\vspace{1px}\centerline{\includegraphics[width=5.1cm]{/web/www.cheatography.com/public/uploads/brennanmeadowcroft_1485024090_vimdiff.png}}} \tn 
\hhline{>{\arrayrulecolor{DarkBackground}}-}
\SetRowColor{LightBackground}
\mymulticolumn{1}{x{5.377cm}}{\{\{fa-info-circle\}\} Access vimdiff for a branch with `git mergetool` from bash}  \tn 
\hhline{>{\arrayrulecolor{DarkBackground}}-}
\end{tabularx}
\par\addvspace{1.3em}

\begin{tabularx}{5.377cm}{x{2.18988 cm} x{2.78712 cm} }
\SetRowColor{DarkBackground}
\mymulticolumn{2}{x{5.377cm}}{\bf\textcolor{white}{\{\{fa-plug\}\} VimDiff - Commands}}  \tn
% Row 0
\SetRowColor{LightBackground}
\{\{nobreak\}\}`:diffget lo` & Use local version \tn 
% Row Count 2 (+ 2)
% Row 1
\SetRowColor{white}
\{\{nobreak\}\}`:diffget ba` & Use base version \tn 
% Row Count 4 (+ 2)
% Row 2
\SetRowColor{LightBackground}
\{\{nobreak\}\}`:diffget re` & Use remote version \tn 
% Row Count 6 (+ 2)
% Row 3
\SetRowColor{white}
`{[}c` & Navigate to {\emph{PREVIOUS}} conflict \tn 
% Row Count 8 (+ 2)
% Row 4
\SetRowColor{LightBackground}
`{]}c` & Navigate to {\emph{NEXT}} conflict \tn 
% Row Count 10 (+ 2)
\hhline{>{\arrayrulecolor{DarkBackground}}--}
\SetRowColor{LightBackground}
\mymulticolumn{2}{x{5.377cm}}{\{\{fa-info-circle\}\} It is possible to edit the code in the merged pane directly if none of the options (local, base, remote) are preferable.}  \tn 
\hhline{>{\arrayrulecolor{DarkBackground}}--}
\end{tabularx}
\par\addvspace{1.3em}


% That's all folks
\end{multicols*}

\end{document}