→ From Coder to Shipper
From Coder to Shipper · Foundations

Text Editors — nano, vim & helix

You'll spend more time editing files than writing code from scratch. Meet the three editors you'll actually use: nano, vim, and the modern helix.

← / → to navigate · EN/VI switch below

Big picture

Why a text editor is core

Almost everything you'll do as a shipper is editing a file by hand.

Config files everywhere

nginx.conf, .env, docker-compose.yml — all edited by hand.

Code files too

Every fix you ship starts as a few lines changed in a file.

AI writes, you review

AI can generate the code, but you're the one who opens the file, reads it, tweaks it.

Three tools to know

nano (simple), vim (powerful), and helix (modern, zero-config) cover 99% of real work.

01
Part 1

nano — the gentle option

Arrows to move, type to edit, three key combos to finish. Zero curve.

nano · what it looks like

nano, open on a real file

The whole UI is text — and everything you'll ever need is printed on those two green bars: ^O Write Out saves, ^X Exit closes.

you@vps — nano /etc/nginx/nginx.conf
server { listen 80; server_name app.example.com; root /var/www/app; location / { try_files $uri $uri/ =404;█ } }
^G Get Help   ^O Write Out   ^W Where Is   ^K Cut   ^U Paste   ^X Exit
^T Execute   ^C Location   F3 Find   F4 Replace   M-U Undo
nano

The only keys you need

That's the entire nano skillset. Memorize the four Ctrl combos, forget the rest.

Move: arrow keys

Nothing else to learn. Home/End jump to line start/end.

Type: just type

Edit like any normal text field.

Ctrl-O: save

Writes the file, asks for the name — press Enter.

Ctrl-X: exit

Closes nano. If there are unsaved changes, it asks first.

Ctrl-K: cut a line

Cuts the current line into nano's tiny clipboard.

Ctrl-U: paste

Pastes the last cut line at the cursor.

02
Part 2

vim — the editor with modes

One idea unlocks everything: vim has modes. Learn that first; the rest is lookup.

vim · the core idea

Three modes, one home button

Esc is your home button — from anywhere it returns you to Normal mode.

Normal — the default

You always start here. Move around, act on the text, run commands.

Insert — press i

Now you type text like in a normal editor. That's the only 'typing' mode.

Visual — press v

Select a chunk of text, then act on the whole selection at once.

vim · what it looks like

Same file, two modes

The ~ lines mark the empty space past the end of the file. The blue bar is the status line — filename and state. That's the entire look of vim.

Normal mode — where you always start

Moving & acting with keys — no typing. The cursor sits on a character.

server: app-2
port: 8080
~
~
~
config.yml[Modified] 2L,23C

Insert mode — after pressing i

Now you type like in a normal editor. The -- INSERT -- line is the only clue you're in vim.

server: app-2█
port: 8080
~
~
~
config.yml[Modified] 2L,23C
-- INSERT --

No menus, no buttons, no mouse needed — the entire interface is text.

vim · the minimum session

A complete vim session, 6 lines

This exact sequence is 90% of every vim session you'll ever have.

vim-session
$ vim config.yml

i                     ← enter insert mode
  server: app-2       ← the one-line edit
<Esc>                 ← back to normal mode
:wq                   ← save & quit

# :q = quit · :q! = quit WITHOUT saving

Open → i → edit → Esc → :wq. Memorize that dance and vim stops being scary.

vim · Normal mode

Motions that do 90% of the work

You'll forget these the moment you close the tab — that's normal. They're a lookup list, not a test.

KeyWhat it does
h / j / k / lleft · down · up · right — arrow keys in disguise
w / bjump to next word / previous word
0 / $start of line / end of line
gg / Gtop of file / bottom of file
/termsearch — /term + Enter jumps to the match, n = next hit
vim · act on text

Copy, paste & find

Once you can move and type, these three verbs finish the toolkit.

y — yank (copy)

yy copies the current line. Vim just remembers it — no clipboard jargon.

p — put (paste)

Press p to drop the copied line right after the cursor. That's it.

/word — search

Find a word instantly. n jumps to the next hit, N back to the previous.

The whole toolkit

Move (hjkl, w, 0, gg) + act (i, y, p, /) covers nearly everything you'll do.

Choosing

Which editor, when

Rule of thumb: nano for quick fixes, vim when the server demands it, helix on your own box where you control what's installed.

nano — quick one-offs

Open, fix one line, done. No muscle memory needed. Best for beginners and tiny edits.

vim — power & ubiquity

It's on every server. Once normal mode clicks, you edit at full speed without touching the mouse.

03
Part 3

helix — the modern option

A new-generation editor: no modes, built-in LSP, and the feel of a modern IDE in your terminal.

HELIX

Why it exists

The problem with vim

Modes are powerful but confusing. You need a separate plugin for autocomplete, another for formatting, another for diagnostics. Setup is a project in itself.

What helix does differently

One binary. No plugins. LSP, tree-sitter syntax, multiple cursors, and auto-format are built in. You type, it works. Install it and you're editing.

helix · essentials

The five keys that unlock everything

No modes to remember. Just type to edit. These five cover 95% of daily work.

Esc — back to select

Stops typing, returns to selection mode. The only 'mode switch' you need.

j / k — move lines

Down and up. You'll spend more time moving than typing.

c — change (delete + insert)

Deletes the current line and puts you in insert mode. The workhorse key.

d + motion — delete

dd = delete line, dw = delete word. Fast surgical removal.

:w / :q — save / quit

Type a colon, the command appears. :w saves, :q quits. :wq does both.

helix · in practice

Your first helix session

ops@vps — zsh
$ helix nginx.conf
# you're editing — just type
Esc → selection mode (cursor becomes a bar)
dd # delete this line
i # insert before cursor — type your text
Esc → :w Enter # save
Esc → :q Enter # quit
If a server only has vim, you use vim. But on your own VPS? Install helix and never think about editor setup again.
— the pragmatic take
The real skill is: open a file, change one line, save, close. That's 90% of what you'll ever need.
— the whole lesson in one sentence

Open. Edit. Save. Close.

Now go fix that config file — nano, vim, or helix, you have all the tools you need.