your terminal emulator has two main jobs
- turn your actions (typing & clicking) into bytes and send them
- receive bytes and display them visually
Illustration of a terminal emulator, with a winking cursor face, and a program, represented by a box with a smiley face. The program has a heart above it, and there are arrows going back and forth between them labelled “bytes”
a little bit of history
it’s called an “emulator” because in the 80s a “terminal” was a separate machine from the computer
Illustration of a bulky old monitor, with a keyboard attached with a spiral cord, and a wire running to a panl of buttons and displays, labelld “mainframe”. There are arrows going back and forth between them labelled “bytes”
We still use the same 80s protocol!
what are these “bytes”?
the bytes are either:
- text (like cat blah.txt)
- escape codes (for example to tell the terminal what colour to display the text in)
- control characters example Ctrl+C is the byte 3)
it’s in charge of copy and paste
your terminal emulator lets you select text and copy/paste it (usually with Ctrl+Shift+C (Linux) or Cmd+C (Mac))
(copy & paste tips on page 18!)
it manages colours and fonts!
some terminal emulators come with a big theme library of different colourschemes!
if yours doesn’t, this site has colourschemes for many terminal emulators: iterm2colorschemes.com
fun fact: how Ctrl-X gets translated to bytes
Ctrl-A => 1 Ctrl-B => 2 ... Ctrl-Z => 26Ctrl is the only modifier key I trust in the terminal, all of the others can work differently depending on the situation
.png)

