Global
- :h[elp] λέξη-κλειδί - ανοίξτε τη βοήθεια για τη λέξη-κλειδί
- :sav[eas] αρχείο - αποθήκευση αρχείου ως
- :clo[se] - κλείστε το τρέχον παράθυρο
- :ter[minal] - ανοίξτε ένα παράθυρο τερματικού
- K - ανοίξτε τη σελίδα εγχευριδίου για την λέξη στον κέρσορα
Κίνηση κέρσορα
- h - μετακίνηση κέρσορα αριστερά
- j - μετακίνηση κέρσορα κάτω
- k - μετακίνηση κέρσορα επάνω
- l - μετακίνηση κέρσορα δεξιά
- gj - μετακίνηση κέρσορα κάτω (κείμενο πολλών γραμμών)
- gk - μετακίνηση κέρσορα επάνω (κείμενο πολλών γραμμών)
- H - μετακίνηση στην κορυφή της οθόνης
- M - μετακίνηση στη μέση της οθόνης
- L - μετακίνηση στο κάτω μέρος της οθόνης
- w - μεταβείτε προς τα εμπρός στην αρχή μιας λέξης
- W - μεταβείτε προς τα εμπρός στην αρχή μιας λέξης (οι λέξεις μπορούν να περιέχουν σημεία στίξης)
- e - μεταβείτε προς τα εμπρός στο τέλος μιας λέξης
- E - μεταβείτε προς τα εμπρός στο τέλος μιας λέξης (οι λέξεις μπορούν να περιέχουν σημεία στίξης)
- b - μεταβείτε προς τα πίσω στην αρχή μιας λέξης
- B - μεταβείτε προς τα πίσω στην αρχή μιας λέξης (οι λέξεις μπορούν να περιέχουν σημεία στίξης)
- ge - μεταβείτε προς τα πίσω στο τέλος μιας λέξης
- gE - μεταβείτε προς τα πίσω στο τέλος μιας λέξης (οι λέξεις μπορούν να περιέχουν σημεία στίξης)
-
% - μετακίνηση του κέρσορα στον αντίστοιχο χαρακτήρα (προεπιλεγμένα υποστηριζόμενα ζεύγη: '()', '{}', '[]' - χρησιμοποιήστε
:h matchpairs
στο vim για περισσότερες πληροφορίες) - 0 - μεταβείτε στην αρχή της γραμμής
- ^ - μεταβείτε στον πρώτο μη κενό χαρακτήρα της γραμμής
- $ - μεταβείτε στο τέλος της γραμμής
- g_ - μεταβείτε στον τελευταίο μη κενό χαρακτήρα της γραμμής
- gg - μεταβείτε στην πρώτη γραμμή του εγγράφου
- G - μεταβείτε στην τελευταία γραμμή του εγγράφου
- 5gg or 5G - μεταβείτε στη γραμμή 5
- gd - μεταβείτε στην τοπική δήλωση
- gD - μετάβαση σε παγκόσμια δήλωση
- fx - μεταβείτε στην επόμενη εμφάνιση του χαρακτήρα x
- tx - μετάβαση στο πριν από την επόμενη εμφάνιση του χαρακτήρα x
- Fx - μεταβείτε στην προηγούμενη εμφάνιση του χαρακτήρα x
- Tx - μετάβαση σε μετά από προηγούμενη εμφάνιση του χαρακτήρα x
- ; - επαναλάβετε την προηγούμενη κίνηση f, t, F ή T
- , - επαναλάβετε την προηγούμενη κίνηση f, t, F ή T, προς τα πίσω
- } - μετάβαση στην επόμενη παράγραφο (ή μεθοδο/μπλοκ, κατά την επεξεργασία του κώδικα)
- { - μετάβαση στην προηγούμενη παράγραφο (ή μεθοδο/μπλοκ, κατά την επεξεργασία κώδικα)
- zz - τοποθετηση δρομεα στο μέσο της οθόνης
- zt - τοποθετήστε τον κέρσορα στο πάνω μέρος της οθόνης
- zb - τοποθετήστε τον κέρσορα στο κάτω μέρος της οθόνης
- Ctrl + e - μετακίνηση της οθόνης κάτω μια γραμμή (χωρίς κίνηση του κέρσορα)
- Ctrl + y - μετακίνηση της οθόνης επάνω μια γραμμή (χωρίς κίνηση του κέρσορα)
- Ctrl + b - μετακίνηση της οθόνης επάνω μια σελίδα (κέρσορας στην τελευταία γραμμή)
- Ctrl + f - μετακίνηση της οθόνης κάτω μια σελίδα (κέρσορας στην πρώτη γραμμή)
- Ctrl + d - μετακίνηση του κέρσορα και της οθόνης κάτω 1/2 της σελίδας
- Ctrl + u - μετακίνηση του κέρσορα και της οθόνης επάνω 1/2 της σελίδας
Λειτουργία εισαγωγής - εισαγωγή/προσάρτηση κειμένου
- i - εισάγετε πριν από τον κέρσορα
- I - εισάγετε στην αρχή της γραμμής
- a - εισαγωγή (προσάρτηση) μετά τον κέρσορα
- A - εισάγετε (προσάρτηση) στο τέλος της γραμμής
- o - προσάρτηση (άνοιγμα) μιας νέας γραμμής κάτω από την τρέχουσα γραμμή
- O - προσάρτηση (άνοιγμα) μιας νέας γραμμής πάνω από την τρέχουσα γραμμή
- ea - εισάγετε (παράρτημα) στο τέλος της λέξης
- Ctrl + h - διαγράψτε τον χαρακτήρα πριν από τον κέρσορα κατά τη λειτουργία εισαγωγής
- Ctrl + w - διαγράψτε λέξη πριν από τον κέρσορα κατά τη λειτουργία εισαγωγής
- Ctrl + j - προσθέστε μια αλλαγή γραμμής στη θέση του κέρσορα κατά τη λειτουργία εισαγωγής
- Ctrl + t - εσοχή (μετακίνηση δεξιά) γραμμή κατά πλάτος μετατόπισης κατά τη λειτουργία εισαγωγής
- Ctrl + d - αφαίρεση εσοχής (μετακίνηση αριστερά) γραμμή κατά πλάτος μετατόπισης κατά τη λειτουργία εισαγωγής
- Ctrl + n - εισαγάγετε (αυτόματη συμπλήρωση) την επόμενη αντιστοίχιση πριν από τον κέρσορα κατά τη λειτουργία εισαγωγής
- Ctrl + p - εισαγωγή (αυτόματη συμπλήρωση) προηγούμενης αντιστοίχισης πριν από τον κέρσορα κατά τη λειτουργία εισαγωγής
- Ctrl + rx - εισάγετε τα περιεχόμενα του καταχωρητή x
- Ctrl + ox - εισαχθείτε προσωρινά σε κανονική λειτουργία για να εκδώσετε μία εντολή κανονικής λειτουργίας x.
- Esc or Ctrl + c - έξοδος από τη λειτουργία εισαγωγής
Επεξεργασία
- r - αντικαταστήστε έναν μεμονωμένο χαρακτήρα.
- R - αντικαταστήστε περισσότερους από έναν χαρακτήρες, μέχρι να πατήσετε ESC.
- J - ενώστε τη γραμμή παρακάτω με την τρέχουσα με ένα ενδιάμεσα κενό
- gJ - ενώστε τη γραμμή παρακάτω με την τρέχουσα χωρίς ενδιάμεσα κενό
- gwip - ανανεωμένη παράγραφος
- g~ - εναλλαγή χαρακτήρων σε κεφαλαια ή πεζά κατα την κίνηση
- gu - αλλαγή σε πεζούς χαρακτήρες κατα την κίνηση
- gU - αλλαγή σε κεφαλαίους χαρακτήρες κατα την κίνηση
- cc - αλλαξε (αντικατέστησε) ολόκληρη γραμμή
- c$ or C - αλλαξε (αντικατέστησε) ως το τέλος της γραμμής
- ciw - αλλαξε (αντικατέστησε) ολόκληρη λέξη
- cw or ce - αλλαξε (αντικατέστησε) ως το τελος της λέξης
- s - διέγραψε χαρακτήρα και αντικατάστασε το κειμένο (ίδιο με το cl)
- S - διέγραψε τη γραμμή και αντικατάστασε το κειμένο (ίδιο με cc)
- xp - μετέφερε δύο γραμμάτα (διαγραφή και επικόλληση)
- u - αναίρεση
- U - επανέφερε (αναίρεση) τελευταίας αλλαγής γραμμής
- Ctrl + r - επανάληψη
- . - επανάληψη τελευταιας εντολής
Επισήμανση κειμένου (οπτική λειτουργία)
- v - ξεκινήστε την οπτική λειτουργία, σημειώστε γραμμές και κάντε μια εντολή (όπως y-yank)
- V - εκκίνηση οπτικής λειτουργίας κατά γραμμή
- o - μετακινηθείτε στο άλλο άκρο της σημειωμένης περιοχής
- Ctrl + v - έναρξη λειτουργίας οπτικού μπλοκ
- O - μετακινηθείτε σε άλλη γωνία του μπλοκ
- aw - σημειώστε μια λέξη
- ab - ένα μπλοκ με ()
- aB - ένα μπλοκ με {}
- at - ένα μπλοκ με ετικέτες <>
- ib - εσωτερικό μπλοκ με ()
- iB - εσωτερικό μπλοκ με {}
- it - εσωτερικό μπλοκ με ετικέτες <>
- Esc or Ctrl + c - έξοδος από την οπτική λειτουργία
Οπτικές εντολές
- > - μετατόπιση κειμένου δεξιά
- < - μετατόπιση κειμένου left
- y - yank (αντίγραφή) σημειωμένο κείμενο
- d - διαγράψτε το επισημασμένο κείμενο
- ~ - αλλαγή κεφαλαίων/πεζών
- u - αλλάξτε το επισημασμένο κείμενο σε πεζά
- U - αλλάξτε το επισημασμένο κείμενο σε κεφαλαία
Καταχωρητές
- :reg[isters] - εμφανίσε το περιεχόμενο των καταχωρητών
- "xy - αντιγραφή στον καταχωρητή x
- "xp - επικόλληση περιεχομένου του καταχωρητή x
- "+y - αντιγραφή στον καταχωρητή του πρόχειρου του λειτουργικού συστήματος
- "+p - επικόλληση από τον καταχωρητή του πρόχειρου του λειτουργικού συστήματος
0 - τελευταία αντιγραφή
" - ανώνυμοι καταχωρητές, τελευταίοι διαγραφή ή αντιγραφή
% - τρέχον όνομα αρχείου
# - εναλλακτικό όνομα αρχείου
* - περιεχόμενα προχείρου (κύριο X11)
+ - περιεχόμενα προχείρου (πρόχειρο X11)
/ - τελευταίο μοτίβο αναζήτησης
: - τελευταία γραμμή εντολών
. - κείμενο που εισήχθη τελευταία
- - τελευταία μικρή (λιγότερη από μια γραμμή) διαγραφή
= - καταχωρητής εκφράσεων
_ - καταχωρητής μαύρη τρύπα
Σημεία και θέσεις
- :marks - λίστα σημείων
- ma - ορίστε την τρέχουσα θέση για το σήμα Α
- `a - μετάβαση στη θέση του σημείου Α
- y`a - αντιγραφή κειμένου στη θέση του σημείου Α
- `0 - μεταβείτε στη θέση από την οποία είχε βγει προηγουμένως ο Vim
- `" - μεταβείτε στη θέση κατά την τελευταία επεξεργασία αυτού του αρχείου
- `. - μεταβείτε στη θέση της τελευταίας αλλαγής σε αυτό το αρχείο
- `` - πηγαίνετε στη θέση πριν από το τελευταίο άλμα
- :ju[mps] - λίστα με άλματα
- Ctrl + i - μεταβείτε σε νεότερη θέση στη λίστα μετάβασης
- Ctrl + o - μεταβείτε σε παλαιότερη θέση στη λίστα άλματος
- :changes - λίστα αλλαγών
- g, - μεταβείτε σε νεότερη θέση στη λίστα αλλαγών
- g; - μεταβείτε σε παλαιότερη θέση στη λίστα αλλαγών
- Ctrl + ] - μεταβείτε στην ετικέτα κάτω από τον κέρσορα
Μακροεντολές
- qa - εγγραφή μακροεντολής a
- q - διακοπή εγγραφής μακροεντολής
- @a - εκτέλση μακροεντολής a
- @@ - επανεκτέλεση της τελευταίας μακροεντολής
Αποκοπή και επικόλληση
- yy - yank (αντιγραφή) μιας γραμμής
- 2yy - yank (αντιγραφή) 2 γραμμών
- yw - yank (αντιγραφή) τους χαρακτήρες της λέξης από τη θέση του κέρσορα μέχρι την αρχή της επόμενης λέξης
- yiw - yank (αντιγραφή) λέξη κάτω κάτω από τον κέρσορα
- yaw - yank (αντιγραφή) λέξη κάτω κάτω από τον κέρσορα και το διάστημα μετά ή πριν από αυτήν
- y$ or Y - yank (αντιγραφή) στο τέλος της γραμμής
- p - τοποθέτηση (επικόλληση) το πρόχειρο μετά τον κέρσορα
- P - τοποθέτηση (επικόλληση) πριν τον κέρσορα
- gp - τοποθέτηση (επικόλληση) το πρόχειρο μετά τον κέρσορα και μετακίνησε τον κέρσορα μετά το νέο κείμενο
- gP - τοποθέτηση (επικόλληση) πριν τον κέρσορα και μετακίνησε τον κέρσορα μετά το νέο κείμενο
- dd - διαγραφή (αποκοπή) μιας γραμμής
- 2dd - διαγραφή (αποκοπή) 2 γραμμών
- dw - διαγραφή (αποκοπή) των χαρακτήρων της λέξης από τη θέση του κέρσορα στην αρχή της επόμενης λέξης
- diw - διαγραφή (αποκοπή) της λέξης κάτω από τον κέρσορα
- daw - διαγραφή (αποκοπή) της λέξης κάτω απο τον κέρσορα και του κενου πριν ή μετά από αυτόν
- :3,5d - διαγραφή γραμμών από το 3 ως το 5
e.g.
:.,$d - Από την τρέχουσα γραμμή μέχρι το τέλος του αρχείου
:.,1d - Από την τρέχουσα γραμμή μέχρι την αρχή του αρχείου
:10,1d - From the 10th line to the beginning of the file
- :g/{pattern}/d - διαγραφή όλων των γραμμών που εμπεριέχουν ένα μοτίβο
- :g!/{pattern}/d - διαγραφή όλων των γραμμών που δεν εμπεριέχουν ενα μοτίβο
- d$ or D - διαγραφή (αποκοπή) ως το τέλος της γραμμής
- x - διαγραφή (αποκοπή) χαρακτήρα
Εσοχή κειμένου
- >> - εσοχή (μετακίνηση δεξιά) γραμμής βάσει του shiftwidth
- << - εξοχή (μετακίνηση αριστερά) γραμμής βάσει του shiftwidth
- >% - εσοχή ενός μπλοκ με () ή {} (κέρσορας σε αγκύλη)
- <% - εξοχή ενός μπλοκ με () ή {} (κέρσορας σε αγκύλη)
- >ib - εσοχή εσωτερικού μπλοκ με ()
- >at - εσοχή ενός μπλοκ με ετικέτες <>
- 3== - εκ νέου εσοχή 3 γραμμές
- =% - εκ νέου εσοχή ενός μπλοκ με () ή {} (κέρσορας σε αγκύλη)
- =iB - εκ νέου εσοχή εσωτερικού μπλοκ με {}
- gg=G - εκ νέου εσοχή όλοκληρου αρχείου
- ]p - επικολλήστε και προσαρμόστε την εσοχή στην τρέχουσα γραμμή
Εξόδος
- :w - γράψτε (αποθηκεύστε) το αρχείο, αλλά μην πραγματοποιήσετε έξοδο
- :w !sudo tee % - γράψτε το τρέχον αρχείο χρησιμοποιώντας sudo
- :wq or :x or ZZ - γράψτε (αποθήκευση) και τερματισμός
- :q - τερματισμός (αποτυχία εάν υπάρχουν μη αποθηκευμένες αλλαγές)
- :q! or ZQ - τερματισμός και απόρριψη μη αποθηκευμένων αλλαγών
- :wqa - γράψτε (αποθήκευση) και τερματίστε όλες τις καρτέλες
Αναζήτηση και αντικατάσταση
- /pattern - Αναζήτηση με μοτίβο
- ?pattern - Αντίστροφη αναζήτηση με μοτίβο
- \vpattern - «μαγικό» μοτίβο: οι μη αλφαριθμητικοί χαρακτήρες ερμηνεύονται ως ειδικά σύμβολα regex (δεν απαιτείται διαφυγή)
- n - επαναλάβετε την αναζήτηση προς την ίδια κατεύθυνση
- N - επαναλάβετε την αναζήτηση προς την αντίθετη κατεύθυνση
- :%s/old/new/g - αντικαταστήστε όλα τα παλιά με νέα σε όλο το αρχείο
- :%s/old/new/gc - αντικαταστήστε όλα τα παλιά με νέα σε όλο το αρχείο με επιβεβαιώσεις
- :noh[lsearch] - αφαιρέστε την επισήμανση των αντιστοιχίσεων αναζήτησης
Αναζήτηση σε πολλά αρχεία
- :vim[grep] /pattern/ {`{file}`} - αναζήτηση με μοτίβο σε πολλά αρχεία
- :cn[ext] - μετάβαση στον επόμενο match
- :cp[revious] - μετάβαση στο προηγούμενο match
- :cope[n] - ανοίξτε ένα παράθυρο το οποίο εμπεριέχει μια λίστα με matches
- :ccl[ose] - κλείστε το παράθυρο quickfix
Καρτέλες
- :tabnew or :tabnew {page.words.file} - ανοίξτε ένα αρχείο σε νέα καρτέλα
- Ctrl + wT - μετακινήστε το τρέχον παράθυρο διαχωρισμού στη δική του καρτέλα
- gt or :tabn[ext] - μεταβείτε στην επόμενη καρτέλα
- gT or :tabp[revious] - μεταβείτε στην προηγούμενη καρτέλα
- #gt - μετακίνηση στον αριθμό καρτέλας #
- :tabm[ove] # - μετακινήστε την τρέχουσα καρτέλα στην #η θέση (ξεκινόντας από το 0)
- :tabc[lose] - κλείστε την τρέχουσα καρτέλα και όλα τα παράθυρά της
- :tabo[nly] - κλείστε όλες τις καρτέλες εκτός από την τρέχουσα
-
:tabdo command - εκτελέστε την
εντολή
σε όλες τις καρτέλες (π.χ.:tabdo q
- κλείνει όλες τις ανοιχτές καρτέλες)
Εργασία με πολλά αρχεία
- :e[dit] αρχείο - επεξεργαστείτε ένα αρχείο σε ένα νέο buffer
- :bn[ext] - μεταβείτε στο επόμενο buffer
- :bp[revious] - μεταβείτε στο προηγούμενο buffer
- :bd[elete] - διαγραφή buffer (κλείσιμο αρχείου)
- :b[uffer]# - μεταβείτε σε ένα buffer με το δείκτη #
- :b[uffer] file - μεταβείτε σε ένα buffer ανά αρχείο
- :ls or :buffers - λίστα όλων των ανοιχτών buffer
- :sp[lit] αρχείο - ανοίξτε ένα αρχείο σε νέο buffer σε διαχωρισμένο το παράθυρο
- :vs[plit] αρχείο - ανοίξτε ένα αρχείο σε ένα νέο buffer σε κάθετα διαχωρισμένο παράθυρο
- :vert[ical] ba[ll] - επεξεργαστείτε όλα τα buffer ως κατακόρυφα παράθυρα
- :tab ba[ll] - επεξεργαστείτε όλα τα buffer ως καρτέλες
- Ctrl + ws - διαχωρίστε το παράθυρο
- Ctrl + wv - διαχωρίστε το παράθυρο κάθετα
- Ctrl + ww - εναλλαγή παραθύρων
- Ctrl + wq - τερματισμός παραθύρου
- Ctrl + wx - αντάλλαξε το τρέχον παράθυρο με το επόμενο
- Ctrl + w= - κάντε όλα τα παράθυρα να έχουν το ιδιο ύψος και πλάτος
- Ctrl + wh - μετακίνηση κέρσορα στα παράθυρο αριστερά (κάθετος διαχωρισμός)
- Ctrl + wl - μετακίνηση κέρσορα στο παράθυρο στα δεξία (κάθετος διαχωρισμός)
- Ctrl + wj - μετακίνηση κέρσορα στο παράθυρο κάτω (οριζόντιος διαχωρισμός)
- Ctrl + wk - μετακίνηση κέρσορα στο παράθυρο πάνω (οριζόντιος διαχωρισμός)
- Ctrl + wH - κάντε το τρέχον παράθυρο σε πλήρες ύψος στο αριστερό άκρο (αριστερό κάθετο παράθυρο)
- Ctrl + wL - κάντε το τρέχον παράθυρο σε πλήρες ύψος στα δεξιά (δεξιό κάθετο παράθυρο)
- Ctrl + wJ - κάντε το τρέχον παράθυρο πλήρους πλάτους στο κάτω μέρος (κάτω οριζόντιο παράθυρο)
- Ctrl + wK - κάντε το τρέχον παράθυρο σε πλήρες πλάτος στο επάνω μέρος (το επάνω οριζόντιο παράθυρο)
Διαφορά
- zf - ορίστε χειροκίνητα μια πτυχή επάνω στην κίνηση
- zd - διαγράψτε μια πτυχή κάτω από τον κέρσορα
- za - εναλλαγή πτυχής κάτω από τον κέρσορα
- zo - ανοίξτε την πτυχή κάτω από τον κέρσορα
- zc - κλείστε την πτυχή κάτω από τον κέρσορα
- zr - άνοιξε όλες τις πτυχές κατά ένα επίπεδο
- zm - διπλώστε περισσότερο (κλείστε) όλες τις πτυχές κατά ένα επίπεδο
- zi - εναλλαγή της λειτουργίας αναδίπλωσης
- ]c - μεταβείτε στην αρχή της επόμενης αλλαγής
- [c - μετάβαση στην αρχή της προηγούμενης αλλαγής
- do or :diffg[et] - λάβετε (πάρτε) τη διαφορά (από άλλο buffer)
- dp or :diffpu[t] - τοποθετήστε τη διαφορά (σε άλλο buffer)
- :diffthis - κάντε το τρέχον παράθυρο μέρος της διαφοράς
- :dif[fupdate] - ενημέρωση διαφορών
- :diffo[ff] - απενεργοποιήστε τη λειτουργία διαφοράς για το τρέχον παράθυρο