# Creating keyboard layout diagrams

I want to create cheat sheets similar to this one for vim:

http://www.viemu.com/a_vi_vim_graphical_cheat_sheet_tutorial.html

For example, I want to create one for Eclipse key bindings. But instead of laying out the text in traditional semi-structured text (lines, columns, text etc.) I want to present the information as a keyboard infographic for better mental encoding.

Is there a LaTeX package that can do it? If not, can you suggest other software that can create such diagrams?

-
If my answer helps you, can you mark the answer accordingly? –  Uwe Ziegenhagen Feb 14 at 20:36
Done, though I never tried it out. It seems like too much effort. –  Sridhar-Sarnobat Feb 14 at 23:08
Well, it's a one-time effort, manageable in a few hours. So if compared to manual drawing in Corel Draw, a semi-automatic TeX solution is well invested time I guess. –  Uwe Ziegenhagen Feb 15 at 4:20
Yes you are right about that. –  Sridhar-Sarnobat Feb 15 at 5:11

I don't know any dedicated package but a while ago I used some TikZ Code to create keys for my HP-12C. Maybe you can use this and align it in a keyboard layout style.

\documentclass[12pt]{scrartcl}
\usepackage[]{amsmath}
\usepackage{tikz}

\tikzstyle{abstract}=[rectangle, draw=black, rounded corners, fill=gray!20,drop   shadow, text centered,  text=black, text width=8mm]
\tikzstyle{fkey}=[rectangle, draw=black, rounded corners, fill=orange,drop shadow, text centered,  text=black, text width=8mm]
\tikzstyle{gkey}=[rectangle, draw=black, rounded corners, fill=blue!40,drop shadow, text centered,  text=black, text width=8mm]

\newcommand{\mykey}[2]{%
\begin{tikzpicture} \node (Item) [abstract, rectangle split, rectangle split parts=2]
{\textbf{\scriptsize{#1}} \nodepart{second}\textbf{\tiny{#2}}};%
\end{tikzpicture}}

\newcommand{\myfkey}{%
\begin{tikzpicture} \node (Item) [fkey, rectangle split, rectangle split parts=2]
{\textbf{\footnotesize{f}} \nodepart{second}};%
\end{tikzpicture}}

\newcommand{\mygkey}{%
\begin{tikzpicture} \node (Item) [gkey, rectangle split, rectangle split parts=2]
{\textbf{\footnotesize{g}} \nodepart{second}};%
\end{tikzpicture}}

\begin{document}
\mykey{n}{$12x$}
\mykey{SST}{$\Delta \text{DYS}$}

\myfkey

\mygkey

\mykey{Enter}{=}

\end{document}

-
Thanks for the suggestion. I wonder how much effort it is to create a keyboard layout like this. It looks doable I guess. –  Sridhar-Sarnobat Feb 14 '12 at 23:07
Yes, it will probably take just a few hours. –  Uwe Ziegenhagen Feb 15 '12 at 5:05