269 lines
12 KiB
TeX
269 lines
12 KiB
TeX
|
%%=====================================================================================
|
||
|
%%
|
||
|
%% File: bash-hotkeys.tex
|
||
|
%%
|
||
|
%% Description: bash-support.vim : Key mappings for Bash with/without GUI.
|
||
|
%%
|
||
|
%% Author: Dr.-Ing. Fritz Mehner
|
||
|
%% Email: mehner.fritz@fh-swf.de
|
||
|
%% Copyright: Copyright (C) 2013-2014 Dr.-Ing. Fritz Mehner (mehner.fritz@fh-swf.de)
|
||
|
%% Version: see \Pluginversion
|
||
|
%% Created: 20.05.2013
|
||
|
%%
|
||
|
%%=====================================================================================
|
||
|
|
||
|
%%======================================================================
|
||
|
%% LaTeX settings [[[1
|
||
|
%%======================================================================
|
||
|
|
||
|
\documentclass[oneside,11pt,landscape,DIV16]{scrartcl}
|
||
|
|
||
|
\usepackage[english]{babel}
|
||
|
\usepackage[utf8]{inputenc}
|
||
|
\usepackage[T1]{fontenc}
|
||
|
\usepackage{times}
|
||
|
\usepackage{lastpage}
|
||
|
\usepackage{multicol}
|
||
|
\usepackage{fancyhdr}
|
||
|
|
||
|
\setlength\parindent{0pt}
|
||
|
|
||
|
\newcommand{\Pluginversion}{4.2.1}
|
||
|
\newcommand{\ReleaseDate}{\today}
|
||
|
\newcommand{\Rep}{{\scriptsize{[n]}}}
|
||
|
|
||
|
%%----------------------------------------------------------------------
|
||
|
%% fancyhdr
|
||
|
%%----------------------------------------------------------------------
|
||
|
\pagestyle{fancyplain}
|
||
|
\fancyhf{}
|
||
|
\fancyfoot[L]{\small \ReleaseDate}
|
||
|
\fancyfoot[C]{\small bash-support.vim}
|
||
|
\fancyfoot[R]{\small \textbf{Page \thepage{} / \pageref{LastPage}}}
|
||
|
\renewcommand{\headrulewidth}{0.0pt}
|
||
|
|
||
|
%%----------------------------------------------------------------------
|
||
|
%% luximono : Type1-font
|
||
|
%% Makes keyword stand out by using semibold letters.
|
||
|
%%----------------------------------------------------------------------
|
||
|
\usepackage[scaled]{luximono}
|
||
|
|
||
|
%%----------------------------------------------------------------------
|
||
|
%% hyperref
|
||
|
%%----------------------------------------------------------------------
|
||
|
\usepackage[ps2pdf]{hyperref}
|
||
|
\hypersetup{pdfauthor={Dr.-Ing. Fritz Mehner, FH Südwestfalen, Iserlohn, Germany}}
|
||
|
\hypersetup{pdfkeywords={Vim, Perl}}
|
||
|
\hypersetup{pdfsubject={Vim-plug-in, bash-support.vim, hot keys}}
|
||
|
\hypersetup{pdftitle={Vim-plug-in, bash-support.vim, hot keys}}
|
||
|
|
||
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||
|
%% START OF DOCUMENT
|
||
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||
|
\begin{document}%
|
||
|
|
||
|
\begin{multicols}{3}
|
||
|
%
|
||
|
\begin{center}
|
||
|
%
|
||
|
%%======================================================================
|
||
|
%% title [[[1
|
||
|
%%======================================================================
|
||
|
\textbf{\textsc{\small{Vim-Plug-in}}}\\
|
||
|
\textbf{\LARGE{bash-support.vim}}\\
|
||
|
\textbf{\textsc{\small{Version \Pluginversion}}}\\
|
||
|
\vspace{5mm}%
|
||
|
\textbf{\textsc{\Huge{Hot keys}}}\\
|
||
|
\vspace{5mm}%
|
||
|
Key mappings for Vim and gVim.\\
|
||
|
Plug-in: http://vim.sourceforge.net\\
|
||
|
Fritz Mehner (mehner.fritz@fh-swf.de)\\
|
||
|
\vspace{1.0mm}
|
||
|
{\normalsize (i)} insert mode, {\normalsize (n)} normal mode, {\normalsize (v)} visual mode\\
|
||
|
\vspace{4.0mm}
|
||
|
|
||
|
%%======================================================================
|
||
|
%% table, left part [[[1
|
||
|
%%======================================================================
|
||
|
%%----------------------------------------------------------------------
|
||
|
%% main menu [[[2
|
||
|
%%----------------------------------------------------------------------
|
||
|
%%~~~~~ TABULAR : begin ~~~~~~~~~~
|
||
|
\begin{tabular}[]{|p{11mm}|p{60mm}|}
|
||
|
\hline
|
||
|
\multicolumn{2}{|r|}{\textsl{\textbf{B}ash}}\\[1.0ex]
|
||
|
\hline \verb'\bps' & \textbf{p}arameter \textbf{s}ubstitution (list) \hfill (n, i)\\
|
||
|
\hline \verb'\bsp' & \textbf{s}pecial \textbf{p}arameters (list) \hfill (n, i)\\
|
||
|
\hline \verb'\ben' & \textbf{en}vironment (list) \hfill (n, i)\\
|
||
|
\hline \verb'\bbu' & \textbf{bu}iltins (list) \hfill (n, i)\\
|
||
|
\hline \verb'\bse' & \textbf{se}t options (list) \hfill (n, i)\\
|
||
|
\hline \verb'\bso' & \textbf{s}h\textbf{o}pts (list) \hfill (n, i)\\
|
||
|
\hline
|
||
|
%%----------------------------------------------------------------------
|
||
|
%% menu Comments [[[2
|
||
|
%%----------------------------------------------------------------------
|
||
|
\hline
|
||
|
\multicolumn{2}{|r|}{\textsl{\textbf{C}omments}} \\[1.0ex]
|
||
|
\hline \Rep\verb'\cl' & end-of-line comment \hfill (n, i, v)\\
|
||
|
\hline \Rep\verb'\cj' & adjust end-of-line comments \hfill (n, i, v)\\
|
||
|
\hline \verb'\cs' & set end-of-line comment col. \hfill (n)\\
|
||
|
%
|
||
|
\hline \Rep\verb'\cc' & code $\rightarrow$ comment \hfill (n, i, v)\\
|
||
|
\hline \Rep\verb'\cu' & uncomment code \hfill (n, i, v)\\
|
||
|
%
|
||
|
\hline \verb'\cfr' & frame comment \hfill (n, i)\\
|
||
|
\hline \verb'\cfu' & function description \hfill (n, i)\\
|
||
|
\hline \verb'\ch' & file header \hfill (n, i)\\
|
||
|
\hline \verb'\cd' & date \hfill (n, i)\\
|
||
|
\hline \verb'\ct' & date \& time \hfill (n, i)\\
|
||
|
\hline \verb'\css' & script sections \hfill (n, i)\\
|
||
|
\hline \verb'\ckc' & keyword comments \hfill (n, i)\\
|
||
|
\hline \verb'\cma' & plug-in macros \hfill (n, i)\\
|
||
|
%
|
||
|
\hline \verb'\ce' & \texttt{echo} "\textsl{actual line}" \hfill (n, i)\\
|
||
|
\hline \verb'\cr' & remove \texttt{echo} from actual line \hfill (n, i)\\
|
||
|
\hline
|
||
|
\end{tabular}\\
|
||
|
%%~~~~~ TABULAR : end ~~~~~~~~~~
|
||
|
%
|
||
|
%%======================================================================
|
||
|
%% table, middle part [[[1
|
||
|
%%======================================================================
|
||
|
%%----------------------------------------------------------------------
|
||
|
%% menu Statements [[[2
|
||
|
%%----------------------------------------------------------------------
|
||
|
%%~~~~~ TABULAR : begin ~~~~~~~~~~
|
||
|
\begin{tabular}[]{|p{11mm}|p{60mm}|}
|
||
|
\hline
|
||
|
\multicolumn{2}{|r|}{\textsl{\textbf{S}tatements}} \\[1.0ex]
|
||
|
\hline \verb'\sc' & \verb'case in ... esac' \hfill (n, i)\\
|
||
|
\hline \verb'\sei' & \verb'elif then' \hfill (n, i)\\
|
||
|
\hline \verb'\sf' & \verb'for in do done' \hfill (n, i, v)\\
|
||
|
\hline \verb'\sfo' & \verb'for ((...)) do done' \hfill (n, i, v)\\
|
||
|
\hline \verb'\si' & \verb'if then fi' \hfill (n, i, v)\\
|
||
|
\hline \verb'\sie' & \verb'if then else fi' \hfill (n, i, v)\\
|
||
|
\hline \verb'\ss' & \verb'select in do done' \hfill (n, i, v)\\
|
||
|
\hline \verb'\su' & \verb'until do done' \hfill (n, i, v)\\
|
||
|
\hline \verb'\sw' & \verb'while do done' \hfill (n, i, v)\\
|
||
|
\hline \verb'\sfu' & \verb'function' \hfill (n, i, v)\\
|
||
|
%
|
||
|
\hline \verb'\se' & \verb'echo -e ""' \hfill (n, i, v)\\
|
||
|
\hline \verb'\sp' & \verb'printf "%s"' \hfill (n, i, v)\\
|
||
|
%
|
||
|
\hline \verb'\sae' & array element\ \ \ \verb'${.[.]}' \hfill (n, i, v)\\
|
||
|
\hline \verb'\saa' & arr. elem.s (all) \ \verb'${.[@]}' \hfill (n, i, v)\\
|
||
|
\hline \verb'\sas' & arr. elem.s (1 word) \ \verb'${.[*]}' \hfill (n, i, v)\\
|
||
|
\hline \verb'\ssa' & subarray \ \verb'${.[@]::}' \hfill (n, i, v)\\
|
||
|
\hline \verb'\san' & no. of arr. elem.s \ \verb'${.[@]}' \hfill (n, i, v)\\
|
||
|
\hline \verb'\sai' & list of indices \ \verb'${.[*]}' \hfill (n, i, v)\\
|
||
|
\hline
|
||
|
%%
|
||
|
%%----------------------------------------------------------------------
|
||
|
%% menu Tests [[[2
|
||
|
%%----------------------------------------------------------------------
|
||
|
\hline
|
||
|
\multicolumn{2}{|r|}{\textsl{\textbf{T}ests}} \\[1.0ex]
|
||
|
\hline \verb'\ta' & arithmetic tests \hfill (n, i)\\
|
||
|
\hline \verb'\tfp' & file permissions \hfill (n, i)\\
|
||
|
\hline \verb'\tft' & file types \hfill (n, i)\\
|
||
|
\hline \verb'\tfc' & file characteristics \hfill (n, i)\\
|
||
|
\hline \verb'\ts' & string comparisons \hfill (n, i)\\
|
||
|
\hline \verb'\toe' & option is enabled \hfill (n, i)\\
|
||
|
\hline \verb'\tvs' & variables has been set \hfill (n, i)\\
|
||
|
\hline \verb'\tfd' & file descr. refers to a terminal \hfill (n, i)\\
|
||
|
\hline \verb'\tm' & string matches regexp \hfill (n, i)\\
|
||
|
\hline
|
||
|
%%
|
||
|
%%----------------------------------------------------------------------
|
||
|
%% menu IO-Redirection [[[2
|
||
|
%%----------------------------------------------------------------------
|
||
|
\hline
|
||
|
\multicolumn{2}{|r|}{\textsl{\textbf{I}O-Redirection}} \\[1.0ex]
|
||
|
\hline \verb'\ior' & IO-redirections (list) \hfill (n, i)\\
|
||
|
\hline \verb'\ioh' & here-document \hfill (n, i)\\
|
||
|
\hline
|
||
|
%
|
||
|
\end{tabular}\\
|
||
|
%%~~~~~ TABULAR : end ~~~~~~~~~~
|
||
|
%
|
||
|
%%======================================================================
|
||
|
%% table, right part [[[1
|
||
|
%%======================================================================
|
||
|
%%----------------------------------------------------------------------
|
||
|
%% menu Pattern Matching [[[2
|
||
|
%%----------------------------------------------------------------------
|
||
|
%%~~~~~ TABULAR : begin ~~~~~~~~~~
|
||
|
\begin{tabular}[]{|p{11mm}|p{62mm}|}
|
||
|
\hline
|
||
|
\multicolumn{2}{|r|}{\textsl{\textbf{P}attern Matching}} \\[1.0ex]
|
||
|
\hline \verb'pzo' & zero or one, \verb' ?( | )' \hfill (n, i)\\
|
||
|
\hline \verb'pzm' & zero or more, \verb' *( | )' \hfill (n, i)\\
|
||
|
\hline \verb'pom' & one or more, \verb' +( | )' \hfill (n, i)\\
|
||
|
\hline \verb'peo' & exactly one, \verb' @( | )' \hfill (n, i)\\
|
||
|
\hline \verb'pae' & anything except, \verb' !( | )' \hfill (n, i)\\
|
||
|
\hline \verb'ppc' & POSIX classes \hfill (n, i)\\
|
||
|
\hline \verb'pbr' & \verb'${BASH_REMATCH[0'$\ldots$\verb'3]}' \hfill (n, i)\\
|
||
|
\hline
|
||
|
%
|
||
|
%%----------------------------------------------------------------------
|
||
|
%% menu Snippet [[[2
|
||
|
%%----------------------------------------------------------------------
|
||
|
\hline
|
||
|
\multicolumn{2}{|r|}{\textsl{S\textbf{n}ippets}} \\[1.0ex]
|
||
|
\hline \verb'\nr' & read code snippet \hfill (n, i)\\
|
||
|
\hline \verb'\nv' & view code snippet \hfill (n, i)\\
|
||
|
\hline \verb'\nw' & write code snippet \hfill (n, i, v)\\
|
||
|
\hline \verb'\ne' & edit code snippet \hfill (n, i)\\
|
||
|
\hline \verb'\ntl' & edit templates \hfill (n, i)\\
|
||
|
\hline \verb'\ntr' & reread templates \hfill (n, i)\\
|
||
|
\hline \verb'\nts' & choose style \hfill (n, i)\\
|
||
|
\hline
|
||
|
%%----------------------------------------------------------------------
|
||
|
%% menu Run [[[2
|
||
|
%%----------------------------------------------------------------------
|
||
|
\hline
|
||
|
\multicolumn{2}{|r|}{\textsl{\textbf{R}un}} \\[1.0ex]
|
||
|
\hline \verb'\rr' & update file, run script \hfill (n, i, v$^1$)\\
|
||
|
\hline \verb'\ra' & set script cmd. line arguments \hfill (n, i)\\
|
||
|
\hline \verb'\rba' & set Bash cmd. line arguments \hfill (n, i)\\
|
||
|
\hline \verb'\rc' & update file, check syntax \hfill (n, i)\\
|
||
|
\hline \verb'\rco' & syntax check options \hfill (n, i)\\
|
||
|
\hline \verb'\rd' & start debugger$^1$ \hfill (n, i)\\
|
||
|
\hline \verb'\re' & make script executable/not exec.$^1$ \hfill (n, i)\\
|
||
|
\hline \verb'\rh' & hardcopy buffer \hfill (n, i, v)\\
|
||
|
\hline \verb'\rs' & plug-in settings \hfill (n, i)\\
|
||
|
\hline \verb'\rx' & set xterm size$^{1,2}$ \hfill (n, i)\\
|
||
|
\hline \verb'\ro' & change output destination \hfill (n, i)\\
|
||
|
\hline
|
||
|
%%----------------------------------------------------------------------
|
||
|
%% menu Help [[[2
|
||
|
%%----------------------------------------------------------------------
|
||
|
\hline
|
||
|
\multicolumn{2}{|r|}{\textsl{\textbf{H}elp}}\\[1.0ex]
|
||
|
\hline \verb'\hb' & display the Bash manual \hfill (n,i)\\
|
||
|
\hline \verb'\hh' & help (Bash builtins) \hfill (n,i)\\
|
||
|
\hline \verb'\hm' & show manual (cmd. line utilities) \hfill (n,i)\\
|
||
|
\hline \verb'\hp' & help (plug-in) \hfill (n,i)\\
|
||
|
\hline
|
||
|
\end{tabular}\\
|
||
|
%%~~~~~ TABULAR : end ~~~~~~~~~~
|
||
|
%
|
||
|
\vfill
|
||
|
%
|
||
|
\begin{minipage}[b]{75mm}%
|
||
|
\scriptsize{%
|
||
|
\vspace{2mm}
|
||
|
%\hrulefill\\
|
||
|
$^1$ {Linux/U**x only}\\
|
||
|
$^2$ {GUI only}
|
||
|
}%
|
||
|
\end{minipage}\\
|
||
|
%
|
||
|
%
|
||
|
\end{center}%
|
||
|
\end{multicols}%
|
||
|
%
|
||
|
%%----- TABBING : end ----------
|
||
|
\end{document}
|
||
|
% vim: foldmethod=marker foldmarker=[[[,]]]
|