Punctuation Symbols and Characters for Coders

The word punctuation means all the symbols and characters that we use in language that are not numbers and part of the alphabet. Coding uses a lot of them for syntax. The same character or symbol can mean something different in each language. Even a white space can mean something.

Thankfully most of the symbols are available on all keyboards without any fancy combinations other than the Shift key. Symbols that require Shift will show two fingers below.

💬 Doing these left to right from the top row forward.

Symbol Name Slang Finger Common Usage
` backtick backtick lp literal strings
~ tilde squiggle lp+rp $HOME, regex
! exclaimation bang lr+rp shell out, not
@ at sign at li+rp arrays, email, accounts
# octothorpe hashtag lm+rp comments, tags
$ dollar sign dollar lm+rp variable, regex
% percent percent li+rp modulo, maps, regex
^ caret caret ri+lp exponents, super, regex
& ampersand amp ri+lp and, deref
* asterix star rm+lp multiply, ref, glob, regex
( L paren L paren rm+lp groups, params, tuples
) R paren R paren rr+lp groups, params, tuples
- hyphen dash rr subtract, kebab, regex
_ underscore underscore rr+lp alpha space, snake
= equals sign equals rp assign, equals, arrows
+ plus sign plus rp+lp add, join, increment
Tab tab tab rp indenting, completing
{ L curly* L curly rp+lp block, map, regex
[ L square* L square rp array, list, range, group
} R curly* R curly rp+lp block, map, regex
] R square* R square rp array, list, range, group
| verticle bar bar, pipe rp+lp pipes, or, separate
\ backslash backwack rp escape
: colon colon rp+lp range, separate, names
; semicolon semicolon rp separate, end
" dbl quote dbl quote rp+lp string, text
' quote quote rp string, text, unescaped
< L angle* L angle rm+lp tags, less than
, comma comma rm separate, lists
> R angle* R angle rr+lp tags, less than
. period dot rr separate, join, dir
? qst mark qst mark rp+lp glob, regex, ternary
/ slash wack rp divide, path
Cmd command logo lr,lt system search
Ctrl control control lp copy, paste, quick keys
Alt alt alt rm,lt quick keys
Fn function function lr F1-12, pseudo-terms

* different types of brackets

Never Use a Gaming Keyboard

Using an international gaming keyboard for coding is one of the worst things an American can do. The keys are in entirely different places and it will seriously mess with your typing muscle memory.

“What about the Esc key?”

The Esc key is used a lot in Linux development and operations.

💢 There is perhaps no single example of Apple’s brain-dead stupidity than removing the Esc key and replacing it with a battery-draining useless touch bar. I believe that single decision sent the entire development community running screaming from Apple forever. Now with Microsoft announcing a new Windows version running on Linux it is just a matter of time before Apple completely dies.

Never Use the Actual Esc Key

Even without Apple’s stupid decision to remove the Esc key it has always been hard and painful to reach up to hit it with your pinky. Instead use the Ctrl + [ combination using both pinkies. This will take a lot of practice and training of those weak fingers but you will be so glad you did it. It will save you some nasty left pinky strain and possible arthritis.

Never Remap Esc to Something Else in Vim

Few things show how inexperienced you are than remapping Esc to something like kj in Vim. You might think you are clever but you are just proving to the world what a noob you are.

You need your fingers to learn what what will work with any vi editor.

You will not always have vim or your personal vimrc.

💢⚠️ Stop using vim-isms if you don’t need them! In fact, stop using VimScript as much as possible. All you are doing is locking yourself in.

💎 Instead create Bash functions loaded on login or compiled utilities (in Go, for example) that do what you need and master !!, !}, and !G so you can send the current line, section, or document to your functions and commands instead of some Vim-only macro. These will work on Vim and Vi. All those VimScript aliases and functions and macros — that force you to make them initial caps — won’t. They are objectively less efficient, less empowering, and just plain stupid.

Best Fingers to Use

These tricky punctuation keys can be very difficult to reach correctly when typing from home row — even for veterans who have been typing them all their lives. Because they are so far away you can manage to type them more than one finger but consistency will increase your coding typing speed — which is significantly different than your base typing speed.

💎 Don’t worry if you use the “wrong” finger for these tricky keys. Everyone has different fingers. Some have a longer ring finger than their index finger. In fact, You may find that your index finger can hit more of these keys more easily than all of your others that are the “correct” ones. The focus is on speed and ergonomics. The less distance your hand has to travel the better. That is the only thing that matters.

Finger Names

Finger Names

Abbreviation Finger
lp left pinky
lr left ring
lm left middle
li left index
lt left thumb
rp right pinky
rr right ring
rm right middle
ri right index
rt right thumb