\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{Atomicsupergeek} \pdfinfo{ /Title (tmux.pdf) /Creator (Cheatography) /Author (Atomicsupergeek) /Subject (Tmux 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}{0B39A3} \definecolor{LightBackground}{HTML}{EFF2F9} \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{Tmux Cheat Sheet}}}} \\ \normalsize{by \textcolor{DarkBackground}{Atomicsupergeek} via \textcolor{DarkBackground}{\uline{cheatography.com/57751/cs/15291/}}} \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}Atomicsupergeek \\ \uline{cheatography.com/atomicsupergeek} \\ \end{tabulary} \vfill \columnbreak \begin{tabulary}{5.8cm}{L} \SetRowColor{FootBackground} \mymulticolumn{1}{p{5.377cm}}{\bf\textcolor{white}{Cheat Sheet}} \\ \vspace{-2pt}Published 27th March, 2018.\\ Updated 27th March, 2018.\\ 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{3.52 cm} x{4.48 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{8.4cm}}{\bf\textcolor{white}{Session Management}} \tn % Row 0 \SetRowColor{LightBackground} New session & tmux new \tn % Row Count 1 (+ 1) % Row 1 \SetRowColor{white} New session with name & tmux new -s sessionname \tn % Row Count 3 (+ 2) % Row 2 \SetRowColor{LightBackground} List sessions & tmux ls \tn % Row Count 4 (+ 1) % Row 3 \SetRowColor{white} Attach to session by name & tmux attach -t sessionname \tn % Row Count 6 (+ 2) % Row 4 \SetRowColor{LightBackground} Attach to last session & tmux attach \tn % Row Count 8 (+ 2) % Row 5 \SetRowColor{white} Kill a session & tmux kill-session -t sessionname \tn % Row Count 10 (+ 2) % Row 6 \SetRowColor{LightBackground} Switch to next session & Ctrl+b ) \tn % Row Count 12 (+ 2) % Row 7 \SetRowColor{white} Switch to last session & Ctrl+b ( \tn % Row Count 14 (+ 2) % Row 8 \SetRowColor{LightBackground} Detach from session & Ctrl+b d \tn % Row Count 16 (+ 2) % Row 9 \SetRowColor{white} Rename session & Ctrl+b \$ \tn % Row Count 17 (+ 1) \hhline{>{\arrayrulecolor{DarkBackground}}--} \SetRowColor{LightBackground} \mymulticolumn{2}{x{8.4cm}}{Note: commands are case sensitive. There are some parts of commands where there are also shortcuts you might see in some documentation. \newline \newline Note: Keystroke commands start with holding the ctrl key down and pressing the b key. Then release the ctrl key and press the next key. So for example to detach you hold the ctrl while pressing b then release both keys and press d. \newline \newline Note: If you only have a single window and then exit out of that terminal session tmux will end session.} \tn \hhline{>{\arrayrulecolor{DarkBackground}}--} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{8.4cm}{x{5.12 cm} x{2.88 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{8.4cm}}{\bf\textcolor{white}{Vertical Split Screen}} \tn % Row 0 \SetRowColor{LightBackground} Create vertical split & Ctrl+b \% \tn % Row Count 1 (+ 1) % Row 1 \SetRowColor{white} Go to next pane & Ctrl+b o \tn % Row Count 2 (+ 1) % Row 2 \SetRowColor{LightBackground} Go to previous pane & Ctrl+b ; \tn % Row Count 3 (+ 1) % Row 3 \SetRowColor{white} Move active pane to the right & Ctrl+b \} \tn % Row Count 5 (+ 2) % Row 4 \SetRowColor{LightBackground} Move active pane to the left & Ctrl+b \{ \tn % Row Count 7 (+ 2) % Row 5 \SetRowColor{white} Move edge of pane right (resize) & Ctrl+b right arrow \tn % Row Count 9 (+ 2) % Row 6 \SetRowColor{LightBackground} Move edge of pane left (resize) & Ctrl+b left arrow \tn % Row Count 11 (+ 2) % Row 7 \SetRowColor{white} Convert pane to window & Ctrl+b ! \tn % Row Count 12 (+ 1) % Row 8 \SetRowColor{LightBackground} Kill pane & Ctrl+b x \tn % Row Count 13 (+ 1) \hhline{>{\arrayrulecolor{DarkBackground}}--} \SetRowColor{LightBackground} \mymulticolumn{2}{x{8.4cm}}{Note: When you create a vertical split screen it will create two (or more) independent terminal window screens on the same tmux window. It will not create a new window in the windows listing or rotation. \newline \newline Note: When you move a pane to the right if you issue command when pane is all the way to the end it will move around to the far left spot. If you are all the way to the left and issue the command to move left it will move around to the right most spot.} \tn \hhline{>{\arrayrulecolor{DarkBackground}}--} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{8.4cm}{x{4.32 cm} x{3.68 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{8.4cm}}{\bf\textcolor{white}{Tmux window management}} \tn % Row 0 \SetRowColor{LightBackground} Create a new window & Ctrl+b c \tn % Row Count 1 (+ 1) % Row 1 \SetRowColor{white} Move to next window & Ctrl+b n \tn % Row Count 2 (+ 1) % Row 2 \SetRowColor{LightBackground} Move to previous window & Ctrl+b p \tn % Row Count 4 (+ 2) % Row 3 \SetRowColor{white} Change window name & Ctrl+b , (comma) \tn % Row Count 5 (+ 1) % Row 4 \SetRowColor{LightBackground} Select window by number & Ctrl+b num \tn % Row Count 7 (+ 2) % Row 5 \SetRowColor{white} List windows & Ctrl+b w \tn % Row Count 8 (+ 1) % Row 6 \SetRowColor{LightBackground} Select window by name & Ctrl+b ' (apostrophe) \tn % Row Count 10 (+ 2) % Row 7 \SetRowColor{white} Kill window & Ctrl+b \& \tn % Row Count 11 (+ 1) % Row 8 \SetRowColor{LightBackground} Change to last used window & Ctrl+b l \tn % Row Count 13 (+ 2) \hhline{>{\arrayrulecolor{DarkBackground}}--} \SetRowColor{LightBackground} \mymulticolumn{2}{x{8.4cm}}{Note: It is useful to list the windows prior to issuing command to switch to window by name so you have the list of windows on screen to reference when typing in the window name \newline \newline Note: If you listed out window names and switched windows you will see the list when you return. Simply press Esc to clear the window list and get back to terminal prompt.} \tn \hhline{>{\arrayrulecolor{DarkBackground}}--} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{8.4cm}{x{5.2 cm} x{2.8 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{8.4cm}}{\bf\textcolor{white}{Horizontal Split Screen}} \tn % Row 0 \SetRowColor{LightBackground} Create horizontal split & Ctrl+b " \tn % Row Count 1 (+ 1) % Row 1 \SetRowColor{white} Go to next pane & Ctrl+b o \tn % Row Count 2 (+ 1) % Row 2 \SetRowColor{LightBackground} Go to previous pane & Ctrl+b ; \tn % Row Count 3 (+ 1) % Row 3 \SetRowColor{white} Move active pane down & Ctrl+b \} \tn % Row Count 4 (+ 1) % Row 4 \SetRowColor{LightBackground} Move active pane up & Ctrl+b \{ \tn % Row Count 5 (+ 1) % Row 5 \SetRowColor{white} Move edge of pane up (resize) & Ctrl+b+up arrow \tn % Row Count 7 (+ 2) % Row 6 \SetRowColor{LightBackground} Move edge of pane down (resize) & Ctrl+b+left arrow \tn % Row Count 9 (+ 2) % Row 7 \SetRowColor{white} Convert pane to window & Ctrl+b ! \tn % Row Count 10 (+ 1) % Row 8 \SetRowColor{LightBackground} Kill pane & Ctrl+b x \tn % Row Count 11 (+ 1) \hhline{>{\arrayrulecolor{DarkBackground}}--} \SetRowColor{LightBackground} \mymulticolumn{2}{x{8.4cm}}{Note: When you create a vertical split screen it will create two (or more) independent terminal window screens on the same tmux window. It will not create a new window in the windows listing or rotation. \newline \newline Note: When you move a pane down if you issue command when pane is all the way to the bottom it will move around to the top spot. If you are all the way to the top and issue the command to move up it will move around to the bottom most spot.} \tn \hhline{>{\arrayrulecolor{DarkBackground}}--} \end{tabularx} \par\addvspace{1.3em} % That's all folks \end{multicols*} \end{document}