Finding Room for Keybindings in Emacs
There are so many commands that I want to bind to keys in Emacs, but the keyboard is crowded already. In the Key Binding Conventions section in the GNU Emacs Lisp Reference Manual, it says that C-c followed by a letter as well as F5 through F9 are reserved for users. However, I, just like any sane Emacs user would do, tries to put groups of related commands under prefixes, which means that such a commmand needs at least three keystrokes to invoke (the C-c, the letter prefix, and the keybinding in the prefix). This is anti-productive.
Luckily, there are some keybindings in Emacs that are not that useful for me (and maybe others as well), so I can repurpose them for my own use. The following are some of such keybindings. Note that many of these are useless for me because they are more relevant to terminal Emacs, while I almost always use Emacs in a graphical environment, so YMMV.
C-z: By default, this is bound tosuspend-frame, which could be replaced by the window manager's own shortcut for minimizing windows on most systems. It may still be useful on terminal Emacs though.C-t: This is bound totranspose-chars, which turnsa|bcintoba|c(where|is the cursor). Does anyone really use this? I never do. (But I do find other transpose commands useful.)M-`: This is bound totmm-menubar, which shows a text-based menu bar, which is not very useful in graphical Emacs.C-iandC-m: Due to historical reasons, these are, by default, recognized asTABandRETrespectively. This is still relevant in terminal Emacs, since some terminals may not be able to distinguish them. But in graphical Emacs, it is possible to distinguish these control characters fromTABandRET, see these relevant discussions on Emacs Stack Exchange.
That gives me at least five more prefixes to use for my own keybindings, which saves me a lot of keystrokes, and I hope it helps you as well. Happy hacking!