\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{Skabed} \pdfinfo{ /Title (vim-configuration.pdf) /Creator (Cheatography) /Author (Skabed) /Subject (Vim Configuration 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}{A3A3A3} \definecolor{LightBackground}{HTML}{F3F3F3} \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{Vim Configuration Cheat Sheet}}}} \\ \normalsize{by \textcolor{DarkBackground}{Skabed} via \textcolor{DarkBackground}{\uline{cheatography.com/19825/cs/2780/}}} \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}Skabed \\ \uline{cheatography.com/skabed} \\ \end{tabulary} \vfill \columnbreak \begin{tabulary}{5.8cm}{L} \SetRowColor{FootBackground} \mymulticolumn{1}{p{5.377cm}}{\bf\textcolor{white}{Cheat Sheet}} \\ \vspace{-2pt}Published 31st October, 2014.\\ Updated 11th May, 2016.\\ 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*}{2} \begin{tabularx}{8.4cm}{x{1.6 cm} x{6.4 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{8.4cm}}{\bf\textcolor{white}{Cursor Movements}} \tn % Row 0 \SetRowColor{LightBackground} h, j, k, l & left, up, down, right \tn % Row Count 2 (+ 2) % Row 1 \SetRowColor{white} Ctrl + U/D & move a bunch of lines up/down \tn % Row Count 4 (+ 2) % Row 2 \SetRowColor{LightBackground} w, W & jump forwards to the start of a word (can contain punctuation) \tn % Row Count 6 (+ 2) % Row 3 \SetRowColor{white} e, E & jump forwards to the end of a word (can contain punctuation) \tn % Row Count 8 (+ 2) % Row 4 \SetRowColor{LightBackground} b, B & jump backwards to the start of a word (can contain punctuation) \tn % Row Count 10 (+ 2) % Row 5 \SetRowColor{white} \textasciicircum{} & jump to first non-blank character of the line \tn % Row Count 12 (+ 2) % Row 6 \SetRowColor{LightBackground} 0, \$ & jump to start/end of line \tn % Row Count 13 (+ 1) % Row 7 \SetRowColor{white} gg, G & go to first/last line of the file \tn % Row Count 15 (+ 2) % Row 8 \SetRowColor{LightBackground} 5G & go to line 5 \tn % Row Count 16 (+ 1) \hhline{>{\arrayrulecolor{DarkBackground}}--} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{8.4cm}{p{0.8 cm} x{7.2 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{8.4cm}}{\bf\textcolor{white}{Inserting/Appending Text}} \tn % Row 0 \SetRowColor{LightBackground} i & insert before the cursor \tn % Row Count 1 (+ 1) % Row 1 \SetRowColor{white} I & insert at the beggining of the line \tn % Row Count 2 (+ 1) % Row 2 \SetRowColor{LightBackground} a & append text after cursor \tn % Row Count 3 (+ 1) % Row 3 \SetRowColor{white} A & append text at end of line \tn % Row Count 4 (+ 1) % Row 4 \SetRowColor{LightBackground} o & open a new line below current line \tn % Row Count 5 (+ 1) % Row 5 \SetRowColor{white} O & open a new line above current line \tn % Row Count 6 (+ 1) \hhline{>{\arrayrulecolor{DarkBackground}}--} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{8.4cm}{x{1.28 cm} x{6.72 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{8.4cm}}{\bf\textcolor{white}{Marking text - Visual mode}} \tn % Row 0 \SetRowColor{LightBackground} v & start visual mode \tn % Row Count 1 (+ 1) % Row 1 \SetRowColor{white} V & linewise visual mode \tn % Row Count 2 (+ 1) % Row 2 \SetRowColor{LightBackground} \seqsplit{Ctrl+v} & start visual block mode \tn % Row Count 3 (+ 1) % Row 3 \SetRowColor{white} o & move to the other end of marked area \tn % Row Count 5 (+ 2) % Row 4 \SetRowColor{LightBackground} O & move to other corner of block \tn % Row Count 6 (+ 1) % Row 5 \SetRowColor{white} ab / aB & mark a block with () / \{\} \tn % Row Count 8 (+ 2) % Row 6 \SetRowColor{LightBackground} ib / iB & mark inner block with () / \{\} \tn % Row Count 10 (+ 2) \hhline{>{\arrayrulecolor{DarkBackground}}--} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{8.4cm}{x{2.56 cm} x{5.44 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{8.4cm}}{\bf\textcolor{white}{Visual commands}} \tn % Row 0 \SetRowColor{LightBackground} Tab / S-Tab & shift text right / left \tn % Row Count 1 (+ 1) % Row 1 \SetRowColor{white} y & yank text (copy) \tn % Row Count 2 (+ 1) % Row 2 \SetRowColor{LightBackground} d & delete text \tn % Row Count 3 (+ 1) % Row 3 \SetRowColor{white} \textasciitilde{} & switch case \tn % Row Count 4 (+ 1) \hhline{>{\arrayrulecolor{DarkBackground}}--} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{8.4cm}{x{2.16 cm} x{5.84 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{8.4cm}}{\bf\textcolor{white}{Editing}} \tn % Row 0 \SetRowColor{LightBackground} r & replace a single character \tn % Row Count 1 (+ 1) % Row 1 \SetRowColor{white} J & join line below to current one \tn % Row Count 3 (+ 2) % Row 2 \SetRowColor{LightBackground} cc & change entire line \tn % Row Count 4 (+ 1) % Row 3 \SetRowColor{white} cw & change to end of the word \tn % Row Count 5 (+ 1) % Row 4 \SetRowColor{LightBackground} c\$ & change to end of line \tn % Row Count 6 (+ 1) % Row 5 \SetRowColor{white} cib/B & change inside () / \{\} \tn % Row Count 7 (+ 1) % Row 6 \SetRowColor{LightBackground} cab/B & change () / \{\} whole block \tn % Row Count 8 (+ 1) % Row 7 \SetRowColor{white} s & delete character and substitute text \tn % Row Count 10 (+ 2) % Row 8 \SetRowColor{LightBackground} S & same as cc \tn % Row Count 11 (+ 1) % Row 9 \SetRowColor{white} u / Ctrl-r & undo / redo \tn % Row Count 12 (+ 1) % Row 10 \SetRowColor{LightBackground} . & repeat last command \tn % Row Count 13 (+ 1) % Row 11 \SetRowColor{white} S-Up / S-Down & move current line up / down \tn % Row Count 15 (+ 2) \hhline{>{\arrayrulecolor{DarkBackground}}--} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{8.4cm}{p{1.2 cm} x{6.8 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{8.4cm}}{\bf\textcolor{white}{Cut and paste}} \tn % Row 0 \SetRowColor{LightBackground} yy & yank a line \tn % Row Count 1 (+ 1) % Row 1 \SetRowColor{white} yw & yank a word \tn % Row Count 2 (+ 1) % Row 2 \SetRowColor{LightBackground} y\$ & yank until end of line \tn % Row Count 3 (+ 1) % Row 3 \SetRowColor{white} p / P & paste after/before cursor \tn % Row Count 4 (+ 1) % Row 4 \SetRowColor{LightBackground} dd & delete a line \tn % Row Count 5 (+ 1) % Row 5 \SetRowColor{white} dw & delete a word \tn % Row Count 6 (+ 1) % Row 6 \SetRowColor{LightBackground} D & delete to the end of the line \tn % Row Count 7 (+ 1) % Row 7 \SetRowColor{white} x & delete single character \tn % Row Count 8 (+ 1) \hhline{>{\arrayrulecolor{DarkBackground}}--} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{8.4cm}{x{2.08 cm} x{5.92 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{8.4cm}}{\bf\textcolor{white}{Search and replace}} \tn % Row 0 \SetRowColor{LightBackground} /pattern & search pattern \tn % Row Count 1 (+ 1) % Row 1 \SetRowColor{white} ?pattern & search pattern backwards \tn % Row Count 2 (+ 1) % Row 2 \SetRowColor{LightBackground} n / N & repeat search in same / opposite direction \tn % Row Count 4 (+ 2) % Row 3 \SetRowColor{white} \textless{}Leader\textgreater{}h & clear search highlight \tn % Row Count 5 (+ 1) % Row 4 \SetRowColor{LightBackground} \seqsplit{:\%s/old/new/g} & replace \tn % Row Count 7 (+ 2) % Row 5 \SetRowColor{white} \seqsplit{:\%s/old/new/gc} & replace with confirmations \tn % Row Count 9 (+ 2) \hhline{>{\arrayrulecolor{DarkBackground}}--} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{8.4cm}{X} \SetRowColor{DarkBackground} \mymulticolumn{1}{x{8.4cm}}{\bf\textcolor{white}{next page}} \tn % Row 0 \SetRowColor{LightBackground} \mymulticolumn{1}{x{8.4cm}}{} \tn % Row Count 0 (+ 0) \hhline{>{\arrayrulecolor{DarkBackground}}-} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{8.4cm}{x{2.08 cm} x{5.92 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{8.4cm}}{\bf\textcolor{white}{Splits Management}} \tn % Row 0 \SetRowColor{LightBackground} Ctrl + i/j/k/l & move between splits \tn % Row Count 2 (+ 2) % Row 1 \SetRowColor{white} \textless{}Leader\textgreater{} +/- & increase / decrease current split vertical size \tn % Row Count 4 (+ 2) % Row 2 \SetRowColor{LightBackground} \textless{}Leader\textgreater{} \textless{}/\textgreater{} & decrease / increase current split horizontal size \tn % Row Count 6 (+ 2) % Row 3 \SetRowColor{white} \textless{}Leader\textgreater{} \textless{}\textless{} & set horizontal size to 85 (ideal for 80 characters long lines) \tn % Row Count 9 (+ 3) % Row 4 \SetRowColor{LightBackground} \textless{}Leader\textgreater{} mm & maximize current buffer vertically \tn % Row Count 11 (+ 2) % Row 5 \SetRowColor{white} Ctrl+w = & equalize sizes \tn % Row Count 12 (+ 1) % Row 6 \SetRowColor{LightBackground} :sp file/path & open file in new horizontal split \tn % Row Count 14 (+ 2) % Row 7 \SetRowColor{white} :vsp file/path & open file in new vertical split \tn % Row Count 16 (+ 2) \hhline{>{\arrayrulecolor{DarkBackground}}--} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{8.4cm}{p{0.88 cm} x{7.12 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{8.4cm}}{\bf\textcolor{white}{colon magic}} \tn % Row 0 \SetRowColor{LightBackground} , / ; & they input :, so we don't need to shift \tn % Row Count 2 (+ 2) \hhline{>{\arrayrulecolor{DarkBackground}}--} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{8.4cm}{x{2.64 cm} x{5.36 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{8.4cm}}{\bf\textcolor{white}{Navigating the docs}} \tn % Row 0 \SetRowColor{LightBackground} :h/:help Name & open docs about Name \tn % Row Count 1 (+ 1) % Row 1 \SetRowColor{white} Ctrl+5 & follow hyperlink \tn % Row Count 2 (+ 1) % Row 2 \SetRowColor{LightBackground} Ctrl+t & go back from hyperlink jump \tn % Row Count 4 (+ 2) \hhline{>{\arrayrulecolor{DarkBackground}}--} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{8.4cm}{x{1.36 cm} x{6.64 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{8.4cm}}{\bf\textcolor{white}{Folds}} \tn % Row 0 \SetRowColor{LightBackground} \seqsplit{zc/zo/za} & close/open/toggle fold \tn % Row Count 2 (+ 2) % Row 1 \SetRowColor{white} \seqsplit{zC/zO/zA} & close/open/toggle fold on all levels \tn % Row Count 4 (+ 2) % Row 2 \SetRowColor{LightBackground} zR & set fold level to 0 (unfold everything) \tn % Row Count 6 (+ 2) \hhline{>{\arrayrulecolor{DarkBackground}}--} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{8.4cm}{p{0.96 cm} x{7.04 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{8.4cm}}{\bf\textcolor{white}{Function Keys Mapping}} \tn % Row 0 \SetRowColor{LightBackground} F2 & pastetoggle \tn % Row Count 1 (+ 1) % Row 1 \SetRowColor{white} F3 & NERDTree toggle \tn % Row Count 2 (+ 1) % Row 2 \SetRowColor{LightBackground} F4 & SyntasticCheck \tn % Row Count 3 (+ 1) % Row 3 \SetRowColor{white} F5 & Gundo Toogle \tn % Row Count 4 (+ 1) % Row 4 \SetRowColor{LightBackground} F9 & Run script \tn % Row Count 5 (+ 1) \hhline{>{\arrayrulecolor{DarkBackground}}--} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{8.4cm}{x{1.76 cm} x{6.24 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{8.4cm}}{\bf\textcolor{white}{Registers}} \tn % Row 0 \SetRowColor{LightBackground} "\{regname\}y & yank into \{regname\} register. \{regname\} can be any letter. \tn % Row Count 2 (+ 2) % Row 1 \SetRowColor{white} "\{regname\}p & paste from \{regname\} register. \tn % Row Count 4 (+ 2) % Row 2 \SetRowColor{LightBackground} 0 \seqsplit{register} & only populated whenever you yank smth, not when you delete \tn % Row Count 6 (+ 2) \hhline{>{\arrayrulecolor{DarkBackground}}--} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{8.4cm}{x{2.16 cm} x{5.84 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{8.4cm}}{\bf\textcolor{white}{Tabs}} \tn % Row 0 \SetRowColor{LightBackground} :tabedit \{file\} & open file in new tab \tn % Row Count 2 (+ 2) % Row 1 \SetRowColor{white} :tabfind \{file\} & find file in current path and open it in a new tab \tn % Row Count 4 (+ 2) % Row 2 \SetRowColor{LightBackground} :tabclose & close current tab \tn % Row Count 5 (+ 1) % Row 3 \SetRowColor{white} :tabclose \{i\} & close ith tab \tn % Row Count 7 (+ 2) % Row 4 \SetRowColor{LightBackground} :tabonly & close all tabs except current one \tn % Row Count 9 (+ 2) % Row 5 \SetRowColor{white} gt / gT & go to next / previous tab \tn % Row Count 10 (+ 1) % Row 6 \SetRowColor{LightBackground} \{i\}gt & go to ith tab \tn % Row Count 11 (+ 1) % Row 7 \SetRowColor{white} :tabm \{i\} & move current tab to ith position \tn % Row Count 13 (+ 2) % Row 8 \SetRowColor{LightBackground} :tabs & list all tabs and the files they include \tn % Row Count 15 (+ 2) \hhline{>{\arrayrulecolor{DarkBackground}}--} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{8.4cm}{x{1.6 cm} x{6.4 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{8.4cm}}{\bf\textcolor{white}{Variable case manipulation}} \tn % Row 0 \SetRowColor{LightBackground} \textless{}Leader\textgreater{}kk & Change word under the cursor / visually selected variable from under\_score\_name to underScoreName \tn % Row Count 4 (+ 4) \hhline{>{\arrayrulecolor{DarkBackground}}--} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{8.4cm}{x{4 cm} x{4 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{8.4cm}}{\bf\textcolor{white}{UltiSnips}} \tn % Row 0 \SetRowColor{LightBackground} Ctrl-j & expand snippet \tn % Row Count 1 (+ 1) % Row 1 \SetRowColor{white} :UltiSnipsEdit & edit snipets \tn % Row Count 2 (+ 1) \hhline{>{\arrayrulecolor{DarkBackground}}--} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{8.4cm}{x{3.52 cm} x{4.48 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{8.4cm}}{\bf\textcolor{white}{Tabular (visual mode edits only selection)}} \tn % Row 0 \SetRowColor{LightBackground} :Tabularize /pattern & use pattern to align text \tn % Row Count 2 (+ 2) \hhline{>{\arrayrulecolor{DarkBackground}}--} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{8.4cm}{x{2.16 cm} x{5.84 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{8.4cm}}{\bf\textcolor{white}{CtrlP}} \tn % Row 0 \SetRowColor{LightBackground} Ctrl-p & enter fuzzy search mode \tn % Row Count 1 (+ 1) % Row 1 \SetRowColor{white} F5 & reload cache \tn % Row Count 2 (+ 1) % Row 2 \SetRowColor{LightBackground} Ctrl-d & switch to search filenames mode \tn % Row Count 4 (+ 2) % Row 3 \SetRowColor{white} Ctrl-r & switch to regex mode \tn % Row Count 5 (+ 1) % Row 4 \SetRowColor{LightBackground} Ctrl-j / Ctrl-k & navigate search results \tn % Row Count 7 (+ 2) % Row 5 \SetRowColor{white} Ctrl-t & open result in new tab \tn % Row Count 8 (+ 1) % Row 6 \SetRowColor{LightBackground} Ctrl-x / Ctrl-v & open result in horizontal / vertical split \tn % Row Count 10 (+ 2) % Row 7 \SetRowColor{white} Ctrl-f & change mode ('line' for searching inside files, 'dir' for searching directories) \tn % Row Count 13 (+ 3) \hhline{>{\arrayrulecolor{DarkBackground}}--} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{8.4cm}{x{2.72 cm} x{5.28 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{8.4cm}}{\bf\textcolor{white}{NerdTree}} \tn % Row 0 \SetRowColor{LightBackground} :NERDTree {[}directory{]} & open the directory tree \tn % Row Count 2 (+ 2) % Row 1 \SetRowColor{white} \seqsplit{:NERDTreeClose} & close it \tn % Row Count 4 (+ 2) % Row 2 \SetRowColor{LightBackground} {[}g{]}o & {[}leave cursor in tree{]} open files / directories \tn % Row Count 6 (+ 2) % Row 3 \SetRowColor{white} {[}g{]}i & {[}leave cursor in tree{]} open file in horizontal split \tn % Row Count 8 (+ 2) % Row 4 \SetRowColor{LightBackground} {[}g{]}s & {[}leave cursor in tree{]} open file in vertical split \tn % Row Count 10 (+ 2) % Row 5 \SetRowColor{white} e & edit current directory \tn % Row Count 11 (+ 1) % Row 6 \SetRowColor{LightBackground} P & jump to root node \tn % Row Count 12 (+ 1) % Row 7 \SetRowColor{white} p & jump to parent node \tn % Row Count 13 (+ 1) % Row 8 \SetRowColor{LightBackground} I & toggle display hidden files \tn % Row Count 15 (+ 2) % Row 9 \SetRowColor{white} m & open menu (create files/dirs, etc) \tn % Row Count 17 (+ 2) \hhline{>{\arrayrulecolor{DarkBackground}}--} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{8.4cm}{x{2.4 cm} x{5.6 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{8.4cm}}{\bf\textcolor{white}{NERDCommenter}} \tn % Row 0 \SetRowColor{LightBackground} \textless{}Leader\textgreater{}c\textless{}Leader\textgreater{} & toggle comment \tn % Row Count 2 (+ 2) % Row 1 \SetRowColor{white} \textless{}Leader\textgreater{}cc & force comment \tn % Row Count 3 (+ 1) % Row 2 \SetRowColor{LightBackground} \textless{}Leader\textgreater{}cA & add a comment at the end of the line \tn % Row Count 5 (+ 2) % Row 3 \SetRowColor{white} \textless{}Leader\textgreater{}c\$ & comment from cursor position to the end of line \tn % Row Count 7 (+ 2) \hhline{>{\arrayrulecolor{DarkBackground}}--} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{8.4cm}{x{2 cm} x{6 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{8.4cm}}{\bf\textcolor{white}{r-plugin}} \tn % Row 0 \SetRowColor{LightBackground} all shortcuts & \seqsplit{http://www.lepem.ufc.br/jaa/r-plugin.html\#r-plugin-use} \tn % Row Count 2 (+ 2) % Row 1 \SetRowColor{white} \textless{}LL\textgreater{}rf & start R \tn % Row Count 3 (+ 1) % Row 2 \SetRowColor{LightBackground} \textless{}LL\textgreater{}ss & send selection to R (quiet) \tn % Row Count 4 (+ 1) % Row 3 \SetRowColor{white} \textless{}LL\textgreater{}se & send selection to R (echo the code) \tn % Row Count 6 (+ 2) % Row 4 \SetRowColor{LightBackground} \textless{}LL\textgreater{}sa & send selection to R (echo it) and then move down \tn % Row Count 8 (+ 2) % Row 5 \SetRowColor{white} \textless{}LL\textgreater{}l & send line to R \tn % Row Count 9 (+ 1) % Row 6 \SetRowColor{LightBackground} \textless{}LL\textgreater{}d & send line to R and then move down \tn % Row Count 11 (+ 2) % Row 7 \SetRowColor{white} \textless{}LL\textgreater{}aa & send whole file to r \tn % Row Count 12 (+ 1) % Row 8 \SetRowColor{LightBackground} \textless{}LL\textgreater{}ae & send whole file to R (echo it) \tn % Row Count 13 (+ 1) % Row 9 \SetRowColor{white} \textless{}LL\textgreater{}ro & show/update object browser \tn % Row Count 14 (+ 1) \hhline{>{\arrayrulecolor{DarkBackground}}--} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{8.4cm}{x{3.2 cm} x{4.8 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{8.4cm}}{\bf\textcolor{white}{vim-session - reopens tabs/buffer configuration}} \tn % Row 0 \SetRowColor{LightBackground} :SessionSave \{name\} & saves session \tn % Row Count 2 (+ 2) % Row 1 \SetRowColor{white} :SessionOpen \{name\} & opens session (has tab completion) \tn % Row Count 4 (+ 2) % Row 2 \SetRowColor{LightBackground} :SessionClose & closes current opened session \tn % Row Count 6 (+ 2) % Row 3 \SetRowColor{white} :DeleteSession \{name\} & deletes a saved session \tn % Row Count 8 (+ 2) % Row 4 \SetRowColor{LightBackground} vim -{}-servername \{name\} & opens session on vim opening \tn % Row Count 10 (+ 2) \hhline{>{\arrayrulecolor{DarkBackground}}--} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{8.4cm}{x{1.52 cm} x{6.48 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{8.4cm}}{\bf\textcolor{white}{Closetag.vim}} \tn % Row 0 \SetRowColor{LightBackground} \textless{}Ctrl\textgreater{}\_ & close last opened html/xml tag \tn % Row Count 1 (+ 1) \hhline{>{\arrayrulecolor{DarkBackground}}--} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{8.4cm}{x{3.12 cm} x{4.88 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{8.4cm}}{\bf\textcolor{white}{django.vim - syntax htmldjango files}} \tn % Row 0 \SetRowColor{LightBackground} :setfiletype htmldjango & change current file syntax to django \tn % Row Count 2 (+ 2) \hhline{>{\arrayrulecolor{DarkBackground}}--} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{8.4cm}{x{1.6 cm} x{6.4 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{8.4cm}}{\bf\textcolor{white}{vim-exchange - text exchange operator}} \tn % Row 0 \SetRowColor{LightBackground} cx\{motion\} & On the first use, define the first \{motion\} to exchange. On the second use, define the second \{motion\} and perform the exchange. \tn % Row Count 4 (+ 4) % Row 1 \SetRowColor{white} X & cx for visual mode \tn % Row Count 5 (+ 1) % Row 2 \SetRowColor{LightBackground} cxc & clear current marked motion \tn % Row Count 6 (+ 1) % Row 3 \SetRowColor{white} . & Repeats first exchange \{motion\} \tn % Row Count 7 (+ 1) \hhline{>{\arrayrulecolor{DarkBackground}}--} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{8.4cm}{x{2.8 cm} x{5.2 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{8.4cm}}{\bf\textcolor{white}{vim-surround}} \tn % Row 0 \SetRowColor{LightBackground} cs\{symbol1\}\{symbol2\} & Change surroundings of current word from \{symbol1\} to \{symbol2\}. Ej: cs"', from "word" to 'word'. \tn % Row Count 4 (+ 4) % Row 1 \SetRowColor{white} ds\{symbol\} & Remove surrounding \{symbol\} from current word. Eg. ds" "word" -\textgreater{} word \tn % Row Count 7 (+ 3) % Row 2 \SetRowColor{LightBackground} ys\{textobject\}\{symbol\} & Surround word selected by \{textobject\} with \{symbol\}. Eg. ysiw" on Hel|lo world = "Hello" world \tn % Row Count 11 (+ 4) \hhline{>{\arrayrulecolor{DarkBackground}}--} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{8.4cm}{p{1.04 cm} x{6.96 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{8.4cm}}{\bf\textcolor{white}{vim-multiple-cursors}} \tn % Row 0 \SetRowColor{LightBackground} \seqsplit{ctrl+n} & place a cursor, repeat for placing another cursor to next occurrence of the word. In visual mode, place a cursor per line. \tn % Row Count 4 (+ 4) % Row 1 \SetRowColor{white} v & after using ctrl+n, insert commands to edit all cursors at the same time. Multiletter commands such as dw or ciw don't work. \tn % Row Count 8 (+ 4) \hhline{>{\arrayrulecolor{DarkBackground}}--} \end{tabularx} \par\addvspace{1.3em} % That's all folks \end{multicols*} \end{document}