Tool.Yun
Χρήσιμα εργαλεία για προγραμματιστές
CSV σε JSON από αρχεία CSV σε JSON
JSON Flattener/Unflattener
JSON Linter
JSON για να αντιταχθεί
JSON για χρήση
JSON ελαχιστοποίηση
JSON σε .env
JSON σε C#
JSON σε CSV
JSON σε MessagePack
JSON σε TOML
JSON σε TS
JSON σε XML
JSON σε δεδομένα
JSON σε οντότητα Java
Json Escaper/Unescaper
Json σε PHP-Array
Json σε Python
Json σε SQL DDL
Json σε Σχήμα
ObjGen σε JSON
PHP-Array σε JSON
tools.json-patch.name
Αναλυτής μεγέθους Json
Διαφορά JSON
Δοκιμαστής Jq/JSONPath
Επεξεργαστής JSON
Ερώτημα Json
Κύριος ταξινόμηση JSON
Κώδικας Json σε PHP
Μετατροπέας JS σε JSON
Μετατροπέας JSON σε JS
Μετατροπέας JSON σε YAML
Μετατροπέας συμβολοσειρών Json
Ομορφοποίηση και μορφοποίηση JSON
Πακέτο μηνυμάτων σε JSON
Συγχώνευση JSON
HTML σε PDF
Έλεγχος υπογραφών PDF
Αποκρυπτογράφηση και ξεκλείδωμα PDF
Γραμμικοποίηση PDF/FastWeb
Εξαγωγέας κειμένου PDF
Εξαγωγέας σελίδων PDF
Κρυπτογράφηση PDF
Συμπιεστής PDF
Συνδετήρας PDF
ObjGen σε HTML
XML Linter
XML σε JSON
Δοκιμαστής XSLT
Ελεγκτής XPath
Μορφοποιητής XML
YAML Flattener/Unflattener
YAML σε TOML
Μετατροπέας YAML σε JSON
Ομορφοποίηση και μορφοποίηση YAML
Συγχώνευση YAML
Εργαλείο δημιουργίας εκφράσεων Cron
CSS/JS Prettify & Minify
Json προς Protobuf
Json σε Typescript
SQL Minifier
Stacktrace πιο όμορφο
Άνοιγμα γεννήτριας μεταδεδομένων γραφημάτων
Αποκρυπτογράφος Javascript
Αποσυμπιεστής/Αποσυσκευαστής Javascript
Γεννήτρια Favicon
Γεννήτρια GitIgnore
Γεννήτρια αλληλογραφίας
Γεννήτρια μυστικών Django
Γεννήτρια παραμέτρων SQL
Γεννήτρια πινάκων βάσης δεδομένων
Γεννήτρια σεναρίων δοκιμής φόρτωσης K6
Γεννήτρια χαρακτηριστικών Gitat
Δημιουργός δημιουργίας βάσεων δεδομένων
Διαφυγέας χορδών
Διαχωριστής αρχείων
Δοκιμές API
Δοκιμαστής Picomatch
Δοκιμαστής UI Swagger
Δοκιμαστής διαφυγής ANSI
Εισαγωγή από Json σε SQL
Επεξεργαστής εντολών Cli
Επισήμανση κώδικα/σεναρίων
Εργαλείο δημιουργίας συμβολοσειρών σύνδεσης βάσης δεδομένων
Μετατροπέας Προσφορών
Μετατροπέας αρχείων HEX
Μετατροπέας μπούκλας
Ομορφοποίηση και μορφοποίηση SQL
Παραποιητής Δεδομένων
Προγραμματιστής Javascript
Χρονοδιακόπτης Pomodoro
Γεννήτρια NanoIDs
Γεννήτρια UUID
Γεννήτρια Ταχυδρομικού Κώδικα
Γεννήτρια αριθμητικών ονομάτων
Γεννήτρια διακριτικών
Γεννήτρια κωδικών OTP
Γεννήτρια κωδικών πρόσβασης
Γεννήτρια κωδικών πρόσβασης BIP39
Γεννήτρια κωδικών πρόσβασης Diceware
Γεννήτρια τυχαίων αριθμών
Μετατροπέας UUID
tools.epc-qrcode-generator.name
Αναγνώστης γραμμωτού κώδικα
Αποκωδικοποιητής κωδικών QR
Γεννήτρια γραμμωτού κώδικα
Γεννήτρια κωδικών QR
Γεννήτρια κωδικών QR WiFi
Γεννήτρια πληροφοριών επικοινωνίας QR
Επικυρωτής GTIN
IPv4-6/IPRange/CIDR σε IPRange/CIDR/IPMask
tools.restic-command-generator.name
tools.url-redirection-checker.name
Έλεγχος DNSBL
Έλεγχος Whois
Ακέραιοι αριθμοί σε IPv4/IPv6
Αναζήτηση διεύθυνσης MAC
Αναλυτής ισχύος κωδικού πρόσβασης
Αποκωδικοποιητής ARPA
Αποκωδικοποιητής X-VR-SpamCause
Απολυμαντικό HAS
Αριθμοί θυρών
Αριθμομηχανή Chmod
Αριθμομηχανή σκληρού δίσκου
Βασική γεννήτρια εξουσιοδότησης
Γεννήτρια Apache LogRotate
Γεννήτρια Crontab
Γεννήτρια DNS BIMI
Γεννήτρια DNS DKIM
Γεννήτρια DNS DMARC
Γεννήτρια DNS PTR
Γεννήτρια FStab
Γεννήτρια HTAccess
Γεννήτρια Htpasswd/htaccess
Γεννήτρια IPv6 ULA
Γεννήτρια Iptables
Γεννήτρια Option43
Γεννήτρια Rsync
Γεννήτρια SPF DNS
Γεννήτρια WPA PSK
Γεννήτρια διευθύνσεων MAC
Γεννήτρια εντολών Curl
Γεννήτρια εντολών UFW
Γεννήτρια εντολών τερματισμού λειτουργίας
Γεννήτρια ρυθμίσεων Wireguard
Γεννήτρια τυχαίων θυρών
Γεωγραφική τοποθεσία IP
Γραμμικοποιητής εντολών κελύφους
Δοκιμή Websocket
Δοκιμαστής θύρας TCP/UDP
Δοκιμαστής μικροφώνου
Εξουσιοδότηση SIP
Επεκτατήρας εύρους IPv4
Ερωτήματα DNS
Ερωτήματα DNS/RDAP του Cloudflare
Η διεύθυνση IP μου
Ισχύς κωδικού πρόσβασης Zxcvbn
Λήψη πολλαπλών συνδέσμων
Λίστα υποδικτύων IPv4
Μετατροπέας Punycode
Μετατροπέας διευθύνσεων IPv4
Μετατροπέας διευθύνσεων IPv6
Μετατροπέας διευθύνσεων MAC
Μορφοποιητής Nginx
Μορφοποιητής εντολών κελύφους
Πινγκ
Υπολογιστής RAID
Υπολογιστής ZPOOL RAID
Υπολογιστής αξιοπιστίας RAID
Υπολογιστής εξαίρεσης υποδικτύων IP
Υπολογιστής εύρους IPv4/6 CIDR σε IP
Υπολογιστής εύρους IPv4/6 έως CIDR(s)
Υπολογιστής οπτικού υποδικτύου
Υπολογιστής ρυθμού μεταφοράς δεδομένων
Υπολογιστής υποδικτύου IPv4
Υπολογιστής υποδικτύου IPv6
Φύλλο οδηγιών χρήσης ZPool
γεννήτρια γραμμής εντολών firewalld
Έλεγχος πιστωτικών καρτών
Αναζήτηση ISO 639
Αναζήτηση Unicode
Αναζήτηση κωδικών χωρών ISO 3166
Αναλυτής και μορφοποιητής τηλεφώνου
Εξηγήστε την εντολή Shell
Επικυρωτής Luhn
Επικυρωτής Αριθμών ΦΠΑ
Επικυρωτής και αναλυτής IBAN
Επικυρωτής και αναλυτής ISBN
Ηλεκτρονικό Λεξικό
Μετατροπέας Κεφαλαίων RMB
Μετατροπέας ημερολογίου
Μετατροπέας νομισμάτων
Οδηγίες φωτισμού IES
Συμβατότητα με άδειες χρήσης λογισμικού
Υπολογιστής SLA
Υπολογιστής ΔΜΣ
Υπολογιστής Ρυθμού Τρεξίματος
Αναζήτηση ιδιοτήτων ActiveDirectory LDAP
Αναλυτής Cookies
Αναλυτής MSG του Outlook
Αναλυτής URL
Αναλυτής αναπήδησης email
Αναλυτής αναφορών DMARC
Αναλυτής ηλεκτρονικού ταχυδρομείου
Ανιχνευτής τύπου αρχείου
Ανιχνευτής/Αποκωδικοποιητής συνόλου χαρακτήρων κειμένου
Αποκρυπτογράφος ευαίσθητων δεδομένων
Αποκωδικοποιητής EMV TLV
Αποκωδικοποιητής Safelink του Outlook
Αποκωδικοποιητής URL κοινής χρήσης SharePoint
Αποκωδικοποιητής συναλλαγών ETH
Αρχεία παρκέ Reader
Γεννήτρια TCPDump
Δεκαεξαδικός κωδικοποιητής/αποκωδικοποιητής
Δημιουργός URL
Δημιουργός εντολών Nmap
Δοκιμαστής DNS
Δοκιμαστής HTTPS
Δοκιμαστής διάδοσης DNS
Δοκιμαστής νεκρών εικονοστοιχείων
Εξολκέας ταυτότητας Snowflake
Επεκτατήρας σύντομων URL
Κονσόλα σειριακής θύρας
Μετατροπέας GZip/Deflate
Μετατροπέας Middle-End
Μετατροπέας ObjectId MongoDB
Μετατροπέας SMART Raw
Μετατροπέας αριθμών κινητής υποδιαστολής
Μετατροπέας κωδικοποίησης MIME
Πληροφορίες κωδικού πρόσβασης
Υπολογιστής αντίστασης
Φυλλάδιο με οδηγίες για την καλωδίωση RJ45 Cat6
键盘测试器
GIF σε MP4
OCR εικόνας και PDF
Αλλαγή μεγέθους εικόνας
Αναγνώστης εικόνας EXIF/Μεταδεδομένα/GPS/JPEG ποιότητας
Αφαίρεση EXIF
Αφαίρεση φόντου εικόνας
Εικόνα σε SVG (προβολή εικόνας)
Κάμερα εγγραφής
Μετατροπέας HEIC
Μετατροπέας ICO/PNG
Μετατροπέας μορφών εικόνας
Μετατροπέας χρώματος εικόνας
Περικοπή εικόνας
Προεπισκόπηση SVG
Σύγκριση εικόνων
Υδατόσημο
Αναλυτής αρχείων ICAL
Αντίστροφη μέτρηση
Γεννήτρια ICAL
Μετατροπέας αριθμών εβδομάδων
Μετατροπέας ζώνης ώρας
Μετατροπέας ημερομηνίας-ώρας
Ξυπνητήρι ώρας
Ποια μέρα;
Συγχώνευση iCal
Συναγερμός Cron/Εβδομαδιαίας Ημέρας
Υπολογιστής ETA
Υπολογιστής TTL
Υπολογιστής Διάρκειας
Υπολογιστής Ημερομηνίας+Διάρκειας
Υπολογιστής ημερών
Χρονόμετρο
HTML Prettifier
HTML ελαχιστοποιητής
HTML σε XHTML
HTML σε δεδομένα
Έλεγχος αντίθεσης χρωμάτων
Αναλυτής παράγοντα χρήστη
Βελτιωτής CSS
Γεννήτρια URL UTM
Γεννήτρια placeholder SVG
Γεννήτρια διαβάθμισης CSS
Δημιουργός τμημάτων αναζήτησης κειμένου URL
Εικόνα σε CSS
Επεξεργαστής HTML WYSIWYG
Καθαριστικό HTML
Καθαριστικό URL
Καταγραφή URL
Κωδικοί κατάστασης HTTP
Κωδικοποίηση/αποκωδικοποίηση συμβολοσειρών με μορφοποίηση URL
Μετατροπέας CSS XPath
Μετατροπέας εικονοστοιχείων REM
Μετατροπέας μονάδων CSS
Μετατροπέας χρωμάτων
Οντότητες HTML διαφυγής
Πληροφορίες συσκευής
Συμβολοσειρά Slugify
Τροχός Χρωμάτων
Τύποι MIME
I και L Checker
JSON σε TOON
TOON σε JSON
Tab σε κενά διαστήματα
Unicode σε GSM-7
Έξυπνη αντικατάσταση κειμένου και αλλαγή γραμμής
Αναγνώστης RSVP
Αποκρυπτογράφος συμβολοσειρών
Γεια σου, γεννήτρια.
Γεννήτρια εντολών Sed
Γεννήτρια κειμένου τέχνης ASCII
Γεννήτρια παραπομπών
Γεννήτρια/Banner Zalgo
Διάγραμμα δομής φακέλου
Διαφορά κειμένου
Διαχωριστής προτροπών AI
Δοκιμαστής Regex
Εικόνα σε ASCII Art
Εκτιμητής διακριτικών GPT
Εξαγωγέας γοργόνας
Εξαγωγή κειμένου από HTML
Επιλογέας emoji
Επιλογέας Τυχαίων Γραμμών
Εύρεση διπλότυπων γραμμών
Κείμενο στο αλφάβητο του ΝΑΤΟ
Κοινή χρήση συνδέσμων κοινωνικής δικτύωσης
Κωδικοποιητής/Αποκωδικοποιητής διακριτικών GPT
Μετατροπέας διάταξης πληκτρολογίου
Μετατροπέας κώδικα Μορς
Μετατροπέας λίστας
Μετατροπέας πεζών-κεφαλαίων
Μετατροπέας ρούνων
Μεταφραστής κειμένου
Μορφοποιητής Unicode
Ξεχωριστές λέξεις
Ονόματα κειμένου σε Unicode
Στατιστικά κειμένου
Συσκευασία αρχείων για AI
Σύγκριση γραμματοσειρών
Σύγκριση λιστών
Υπολογιστής Levenshtein
Argon2 Hasher
Bcrypt
Niceware Bytes σε Passphrase
PGP keygen
Paseto/PASERK Δημόσιο/Ιδιωτικό
Paseto/PASERK Τοπικό
Αναλυτής JWT
Αναλυτής SAML
Αναλυτής πιστοποιητικών/κλειδιών
Αποκρυπτογράφηση κρυπτογράφησης θησαυροφυλάκιου Ansible
Αρχείο Hasher
Γεννήτρια Hmac
Γεννήτρια JWT
Γεννήτρια ΕΚΕ
Γεννήτρια ζεύγους κλειδιών ECDSA
Γεννήτρια ζεύγους κλειδιών Ed25519
Γεννήτρια ζεύγους κλειδιών RSA
Γεννήτρια πιστοποιητικών X509
Κείμενο κατακερματισμού
Κρυπτογράφηση / αποκρυπτογράφηση κειμένου
Κρυπτογράφηση PGP
Κρυπτογράφηση RSA
Κρυπτογράφηση αρχείων PGP
Κρυπτογράφηση συμβολοσειρών Jasypt
Κρυπτογραφία AGE
Κωδικοποιητής/Αποκωδικοποιητής Bech32
Μετατροπέας πιστοποιητικών SSL
Μυστική Κοινοποίηση του Shamir
Υπογράφων και Επαληθευτών RSA/DSA/ECDSA
Υπολογιστής CRC
Docker Compose σε Quadlets
Docker επιθεώρηση για εκτέλεση Docker
Γεννήτρια RBAC Kubernetes
Γεννήτρια ετικετών Dockerfile
Δημιουργός σύνθεσης Traefik Docker
Εκτέλεση Docker σε Quadlets
Επικυρωτής Docker Compose
Ετικέτες Docker Pangolin
Λήψη εικόνων Docker
Μετατροπέας Docker Compose σε Docker run
Μετατροπέας Docker που εκτελείται σε Docker compose
Μετατροπέας μορφής Docker Compose
Σύνθεση Docker σε kubernetes
Σύνταξη Docker σε αρχείο .env
Το Docker εκτελείται στο kubernetes
Δημιουργός σημείων αναφοράς
Υπολογιστής αναλογίας διαστάσεων
Υπολογιστής γεωγραφικής απόστασης
Υπολογιστής ποσοστού
Αξιολογητής μαθηματικών
Δυαδική Αριθμομηχανή
Μαθηματικά OCR
Μετατροπέας Μαθηματικών Μορφών
Οπτικοποιητής Τριγωνομετρικών/Εξισώσεων Καμπυλών
Υπολογιστής φιλοδωρήματος
CSV σε δεδομένα
Excel σε δεδομένα
Torrent σε Magnet
Γεννήτρια ULID
Κανονικοποιητής ηλεκτρονικού ταχυδρομείου
Κείμενο σε Unicode
Κείμενο σε δυαδικό UTF-8
Κωδικοποιητής/αποκωδικοποιητής δεκαεξαδικού πίνακα Base64
Κωδικοποιητής/αποκωδικοποιητής συμβολοσειρών Base64
Μετατροπέας dBm mW
Μετατροπέας Γεωγραφικών Συντεταγμένων
Μετατροπέας αρχείων Base64
Μετατροπέας βάσης ακεραίων αριθμών
Μετατροπέας ιδιοτήτων
Μετατροπέας μονάδων αποθήκευσης δεδομένων
Μετατροπέας μορφής μεταβλητών περιβάλλοντος
Μετατροπέας πολλών μονάδων
Μετατροπέας ρωμαϊκών αριθμών
Μετατροπέας χαρακτήρων Unicode σε οντότητες Java
Υπολογιστής Κατανάλωσης και Εξόδων Ενέργειας
Υπολογιστής Απόσβεσης
Αναποδογυριστής κερμάτων
Επιλογέας καρτών
Ρόλερ ζαριών
Τροχός της τύχης
TOML Linter
TOML σε JSON
TOML σε YAML
Μετατροπέας Ενέργειας Τροφίμων
Μετατροπέας Μονάδων Δύναμης
Μετατροπέας Μονάδων Εμβαδού
Μετατροπέας Μονάδων Ενέργειας
Μετατροπέας Μονάδων Μάζας
Μετατροπέας Φωτισμού
Μετατροπέας επιτάχυνσης
Μετατροπέας θερμοκρασίας
Μετατροπέας ισχύος
Μετατροπέας μονάδων γωνίας
Μετατροπέας μονάδων μήκους
Μετατροπέας μονάδων πίεσης
Μετατροπέας μονάδων όγκου
Μετατροπέας προθεμάτων SI
Μετατροπέας ρυθμού ροής όγκου
Μετατροπέας συχνότητας
Μετατροπέας ταχύτητας
Υπολογιστής γυμναστικής
Docker Cheatsheet
Git cheatsheet
Jq Cheatsheet
Κοινό Regex Cheatsheet
Νανο Φύλλο Εξαρτήσεων
Φυλλάδιο με συμβουλές για το K8s
Φύλλο ελέγχου Docker Compose
Φύλλο ελέγχου Docker SWARM
Φύλλο ελέγχου Dockerfile
Φύλλο ελέγχου Regex
Φύλλο ελέγχου Sed
Φύλλο ελέγχου επιλογέων CSS
Φύλλο με τσιπς Bash
Φύλλο οδηγιών για την εντολή chmod
Φύλλο οδηγιών για τις εντολές Tmux
Φύλλο οδηγιών εντολών οθόνης
Φύλλο οδηγιών σύνταξης JSONPath
Φύλλο οδηγιών σύνταξης XPath
Φύλλο οδηγιών χρήσης Nginx
Φύλλο οδηγιών χρήσης Powershell
Φύλλο οδηγιών χρήσης VIM
Φύλλο οδηγιών χρήσης σημασιολογικής υποβολής Git
Φύλλο οδηγιών χρήσης της εντολής Zellij
Φύλλο πληροφοριών Markdown
HTML σε markdown
Markdown Lorem Ipsum
tools.markdown-format-converter.name
Από Epub σε Markdown
Βελτιωτής πίνακα Markdown
Γεννήτρια toc markdown
Γεννήτρια πίνακα Markdown
Διαφορά Markdown
Επεξεργαστής Markdown
Επικόλληση ως Markdown
Μείωση σε DOCX
Μείωση σε HTML
Μείωση σε κείμενο
Μείωση στα δεδομένα
Προεπισκόπηση Markdown

Φύλλο οδηγιών χρήσης VIM

Εντολές επεξεργασίας κειμένου Vim

Vim is a modal editor: keys mean different things depending on the mode you are in. Most commands compose as count + operator + motion — 3dw deletes three words, d$ deletes to the end of the line — so learning a new motion instantly upgrades every operator you already know.

💡 New to Vim? Run vimtutor in a terminal — 30 minutes, and the rest of this sheet starts making sense.

🚦 Modes

ModeEnter withLeave withFor
NormalEsc (or Ctrl-[)—Moving and running commands
Inserti a o I A OEscTyping text
Visualv V Ctrl-vEscSelecting text
Command-line: / ?Enter or EscEx commands and searches
ReplaceREscOvertyping

🧭 Cursor Movement

KeyMoves to
h j k lLeft, down, up, right
w / WStart of the next word / WORD (WORD ignores punctuation)
e / EEnd of the next word / WORD
b / BStart of the previous word / WORD
ge / gEEnd of the previous word / WORD
0First column of the line
^First non-blank character
$End of the line
g_Last non-blank character
f<char> / F<char>Next / previous occurrence of a character on the line
t<char> / T<char>Just before the next / after the previous occurrence
; / ,Repeat the last f/t forwards / backwards
} / {Next / previous paragraph
) / (Next / previous sentence
gg / GFirst / last line of the file
<n>G or :<n>Line n
H M LTop, middle, bottom of the screen
Ctrl-d / Ctrl-uHalf a page down / up
Ctrl-f / Ctrl-bA full page down / up
zz zt zbScroll so the cursor line is centred / at the top / at the bottom
%The matching bracket, brace or parenthesis
Ctrl-o / Ctrl-iBack / forward through the jump list
g; / g,Back / forward through the change list
'' / ``Back to where the last jump started

✏️ Entering Insert Mode

KeyStarts typing
i / IBefore the cursor / at the first non-blank character
a / AAfter the cursor / at the end of the line
o / OOn a new line below / above
s / SDeleting the character / the whole line first
ccReplacing the whole line
CReplacing from the cursor to the end of the line
giWhere you last left insert mode
Ctrl-oRun one normal-mode command, then return to insert

🔧 Operators & Text Objects

An operator waits for a motion or a text object. Doubling the operator (dd, yy, >>) applies it to the whole line.

OperatorDoes
dDelete (into a register)
cChange — delete, then insert
yYank (copy)
> / <Indent / unindent
=Re-indent
gu / gU / g~Lower-case / upper-case / toggle case
gqReformat to textwidth
Text objectSelects
iw / awInner word / a word plus its trailing space
is / asSentence
ip / apParagraph
i" a"Inside / including the double quotes
i' a'Inside / including the single quotes
i( a(Inside / including the parentheses (also ib, ab)
i{ a{Inside / including the braces (also iB, aB)
i[ a[Inside / including the brackets
i< a<Inside / including the angle brackets
it / atInside / including an HTML or XML tag
ciw     change the word under the cursor
ci"     change everything inside the quotes
da(     delete the parentheses and their contents
yi{     yank the body of a block
2dd     delete two lines
d3w     delete three words
>ap     indent the whole paragraph

✂️ Editing

KeyDoes
x / XDelete the character under / before the cursor
r<char>Replace one character, staying in normal mode
ROvertype until Esc
~Toggle the case of one character
J / gJJoin the next line, with / without a space
u / Ctrl-rUndo / redo
UUndo every change on the current line
.Repeat the last change — the most valuable key in Vim
Ctrl-a / Ctrl-xIncrement / decrement the number under the cursor
>> / <<Indent / unindent the line
==Re-indent the line
:earlier 10m / :later 5mMove through the undo tree by time

📋 Copy, Paste & Registers

KeyDoes
yy (or Y)Yank the line
y<motion>Yank what the motion covers
p / PPaste after / before the cursor
]pPaste and match the current indentation
dd / DDelete the line / to the end of the line
"ayy / "apYank into and paste from register a
"+y / "+pYank to and paste from the system clipboard
"0pPaste the last yank (never overwritten by deletes)
:registersShow every register
xp / ddpSwap two characters / two lines

⚠️ In Vim, deleting also yanks — dd overwrites the unnamed register. Use "0p to paste what you last copied, or yank into a named register first.

🔍 Search & Replace

CommandDoes
/pattern / ?patternSearch forwards / backwards
n / NNext / previous match
* / #Search for the word under the cursor, forwards / backwards
:nohClear the search highlighting
:s/old/new/Replace the first match on the line
:s/old/new/gReplace every match on the line
:%s/old/new/gReplace throughout the file
:%s/old/new/gc…asking for confirmation on each
:%s/old/new/gi…ignoring case
:'<,'>s/old/new/gOnly inside the visual selection
:%s/\<word\>/new/gWhole words only
&Repeat the last substitution on this line

The global command

:g runs an Ex command on every line matching a pattern — the power tool of Vim.

:g/TODO/d           delete every line containing TODO
:v/keep/d           delete every line NOT containing 'keep' (:v is :g!)
:g/^$/d             delete all blank lines
:g/error/normal A;  append a semicolon to every matching line
:g/pattern/t$       copy matching lines to the end of the file
:g/pattern/m0       move matching lines to the top (reverses their order)

🎨 Visual Mode

KeyDoes
vCharacter-wise selection
VLine-wise selection
Ctrl-vBlock (column) selection
gvReselect the previous selection
oJump to the other end of the selection
d / y / cDelete, yank or change the selection
> / <Indent / unindent the selection
u / U / ~Lower-case, upper-case, toggle
:'<,'>Run an Ex command over the selection
Ctrl-v, select lines, I, type, Esc     insert the same text on every line
Ctrl-v, select lines, $, A, type, Esc  append at the end of every line
Ctrl-v, select, d                      delete a rectangular block

🔖 Marks & Jumps

KeyDoes
m<a-z>Set a mark in this file
m<A-Z>Set a global mark, across files
`aJump to mark a, exact position
'aJump to the start of the line holding mark a
`.Jump to the position of the last edit
:marksList every mark
:delmarks aDelete a mark

🎬 Macros

KeyDoes
q<a-z>Start recording into a register
qStop recording
@aPlay the macro back
@@Replay the last macro
10@aRun it ten times
:%normal @aRun it on every line of the file

📂 Files, Buffers, Windows & Tabs

CommandDoes
:e <file>Open a file
:e!Reload, discarding changes
:w / :w <file>Save / save as
:waSave every changed buffer
:q / :q!Quit / quit without saving
:wq or :x or ZZSave and quit
ZQQuit without saving
:ls / :buffersList the open buffers
:b <n> / :b <name>Switch to a buffer
:bn / :bp / :bdNext / previous / delete buffer
:sp / :vspSplit horizontally / vertically
Ctrl-w h j k lMove to the window in that direction
Ctrl-w wCycle through the windows
Ctrl-w q / Ctrl-w oClose this window / close all the others
Ctrl-w =Make all windows the same size
Ctrl-w + / - / < / >Resize the window
:tabnew <file>Open a new tab
gt / gTNext / previous tab
:tabc / :taboClose this tab / close all the others
:r <file> / :r !cmdRead a file, or a command’s output, into the buffer
:!<cmd>Run a shell command
:%!<cmd>Filter the whole buffer through a command
:w !sudo tee %Save a file you opened without permission

📑 Folding

KeyDoes
zf<motion>Create a fold
za / zAToggle this fold / recursively
zo / zcOpen / close this fold
zR / zMOpen / close every fold
zj / zkMove to the next / previous fold

🧩 Completion & Spelling

KeyDoes
Ctrl-n / Ctrl-pComplete a word from the open buffers
Ctrl-x Ctrl-fComplete a file path
Ctrl-x Ctrl-lComplete a whole line
Ctrl-x Ctrl-oOmni-completion (language-aware)
:set spell spelllang=en_usTurn spell checking on
]s / [sNext / previous misspelling
z=Suggestions for the word under the cursor
zg / zwAdd to the dictionary / mark as wrong

🧵 Quickfix & Diff

CommandDoes
:make / :grep <pat>Fill the quickfix list
:copen / :ccloseOpen / close the quickfix window
:cn / :cpJump to the next / previous entry
:cfirst / :clastFirst / last entry
vimdiff a bOpen two files in diff mode
]c / [cNext / previous difference
do / dpObtain / put the change under the cursor
:diffupdateRefresh the diff

⚙️ Handy :set Options

OptionEffect
:set nu / :set nonuShow / hide line numbers
:set rnuRelative line numbers — makes 5j obvious
:set ic / :set noicIgnore case when searching
:set is / :set hlsIncremental search / highlight matches
:set wrap / :set nowrapSoft-wrap long lines
:set listShow tabs and trailing whitespace
:set pasteStop auto-indent mangling pasted text
:set ft=<type>Force a file type
:set sw=4 ts=4 etFour-space indentation, spaces not tabs
:syntax onSyntax highlighting

📄 A Starting ~/.vimrc

set nocompatible
syntax on
filetype plugin indent on

set number relativenumber
set incsearch hlsearch ignorecase smartcase
set expandtab shiftwidth=2 tabstop=2
set scrolloff=5
set hidden
set undofile
set clipboard=unnamedplus

" a leader key, and a few mappings that pay for themselves
let mapleader = " "
nnoremap <leader>w :w<CR>
nnoremap <leader>/ :nohlsearch<CR>
nnoremap <C-h> <C-w>h
nnoremap <C-j> <C-w>j
nnoremap <C-k> <C-w>k
nnoremap <C-l> <C-w>l

ℹ️ Mappings that start with <leader> are your configuration, not built-in Vim. If a leader shortcut on someone else’s cheat sheet does nothing, that is why.

📚 Resources

  • vimtutor — the built-in 30-minute tutorial
  • :help <topic> — Vim’s own documentation, and it is excellent
  • Vim documentation
  • Vim Adventures — learn by playing
  • Practical Vim (book)