Ο κειμενογράφος vi (vim)

E-mail Εκτύπωση PDF
Αξιολόγηση Χρήστη: / 0
ΧείριστοΆριστο 

Όσο καλά και να μάθετε τις εντολές που διαχειρίζονται και επεξεργάζονται αρχεία, είτε κειμένου είτε δυαδικά, είναι σίγουρο ότι κάποια στιγμή θα θελήσετε να επεξεργαστείτε οι ίδιοι άμεσα τα περιεχόμενα κάποιου αρχείου. Πιθανότατα θα θελήσετε να τροποποιήσετε κάποιο αρχείο παραμετροποίησης (configuration file) κάποιου προγράμματος, να γράψετε μόνοι σας κάποιο σενάριο κελύφους, ή να φτιάξετε στα γρήγορα ένα αρχείο δεδομένων για κάποιο πρόγραμμα, ή ακόμη και να γράψετε το δικό σας πρόγραμμα σε κάποια γλώσσα προγραμματισμού (C, C++, FORTRAN, κλπ).

Για να πραγματοποιηθεί οποιοδήποτε από αυτά τα σενάρια, θα πρέπει να χρησιμοποιήσετε κάποιο πρόγραμμα επεξεργασίας κειμένου ή κειμενογράφο. Το Linux προσφέρει μια πληθώρα από τέτοια προγράμματα.

Εδώ θα αναφερθούμε στο κειμενογράφο vim. Ο vim είναι απόγονος του vi, του VIsual editor, που κυριαρχούσε στα παλιά συστήματα UNIX για πολλά χρόνια (αν και οι οπαδοί του Emacs θα αμφισβητήσουν το γεγονός αυτό...). Ο αρχικός vi γράφτηκε από το Bill Joey για το BSD UNIX και έκτοτε υιοθετήθηκε από όλα τα υπάρχοντα συστήματα UNIX, λόγω των πολλών δυνατοτήτων του καθώς και του μικρού μεγέθους και της μεταφερσιμότητάς (portability) σε άλλα συστήματα.

Με το πέρασμα του χρόνου, οι απαιτήσεις αυξήθηκαν και εμφανίστηκε ένας νέος διάδοχος για το θρόνο του “επίσημου” κειμενογράφου του UNIX. Ο vim, του οποίου τα αρχικά σημαίνουν Vi IMproved, γράφτηκε από το Bram Moolenaar και προσφέρει δεκάδες επιπλέον δυνατότητες στον αρχικό vi και πλήρη συμβατότητα με τις εντολές του αρχικού.

Ο χειρισμός του vim, ξεφεύγει από τους κοινούς κειμενογράφους που πιθανόν να έχετε συναντήσει. Αν και σκοπός του παρόντος οδηγού δεν είναι η ανάλυση της λειτουργίας του vim, θα αναφέρουμε ορισμένα βασικά χαρακτηριστικά για να μπορείτε να το χρησιμοποιείτε επαρκώς.

Ο vim, όπως και o αρχικός vi, δρα σε συγκεκριμένες κατάστασεις λειτουργίας, οι οποίες μπορεί να είναι:

  • Κατάσταση εντολών (command mode), στην οποία μπορείτε να δώσετε εντολές στο vi για να τροποποιήσετε τα περιεχόμενα του κειμένου, μέσω αυτοματοποιημένων μηχανισμών.

  • Κατάσταση Εισαγωγής (insert mode), στην οποία έχετε άμεσο έλεγχο και μπορείτε να εισάγετε ή να διαγράψετε κείμενο.

Αναφέρουμε εδώ ορισμένες από τις βασικές εντολές του vim:

 

Εντολές

Λειτουργία

						ESC


Ενεργοποιεί την κατάσταση εντολών.

						i


Ενεργοποιεί την κατάσταση εισαγωγής κειμένου στο σημείο που βρίσκεται ο δρομέας (cursor).

						:FILE


Φορτώνει το αρχείο FILE.

						:q


Έξοδος από το πρόγραμμα.

						:w


Αποθήκευση του αρχείου.

						:x


Αποθήκευση του αρχείου και άμεση έξοδος από το πρόγραμμα. Ισοδύναμο με τη wq.

						x


Διαγραφή του χαρακτήρα στον οποίο βρίσκεται ο δρομέας.

						d


Διαγραφή της τρέχουσας γραμμής κειμένου.

						yy


Αντιγραφή της τρέχουσας γραμμής στο πρόχειρο (clipboard yanking).

						p


Αντιγραφή του κειμένου που βρίσκεται στο πρόχειρο (clipboard) στην τρέχουσα θέση του δρομέα.

Ο κειμενογράφος vim παρέχει την δυνατότητα διαφορετικού χρωματισμού του κειμένου, κάτι το οποίο είναι ιδιαίτερα χρήσιμο ειδικά όταν γράφετε ή τροποποιείτε κώδικα, σενάρια κελύφους ή αρχεία παραμετροποίησης προγραμμάτων. Η επιλογή του syntax highlighting, όπως λέγεται, δεν είναι ενεργοποιημένη εξαρχής αλλά μπορείτε πολύ εύκολα να την ενεργοποιήσετε ως εξής:

# vi /etc/vim/vimrc

ή

# vi /etc/vimrc

αναλόγως με το ποια έκδοση του vim έχετε εγκατεστημένη. Αναζητήστε τις γραμμές κειμένου:

" Vim5 and later versions support syntax highlighting. Uncommenting the next

" line enables syntax highlighting by default.

" syntax on

Κατόπιν, αφαιρέστε το χαρακτήρα " πρίν από την γραμμή syntax on. Δηλαδή θα πρέπει το κείμενο να μεταβληθεί στο ακόλουθο:

" Vim5 and later versions support syntax highlighting. Uncommenting the next

" line enables syntax highlighting by default.

syntax on

Τέλος, αποθηκεύστε το αρχείο: πατήστε [ESC] και δώστε :wq στη γραμμή εντολών του vim. Έχετε ενεργοποιήσει το συντακτικό χρωματισμό του vim.




Μοιραστείτε αυτό το άρθρο
Reddit! Del.icio.us! Mixx! Free and Open Source Software News Google! Live! Facebook! StumbleUpon! Yahoo! Dig Me Joomla Free PHP

Σχόλια
Προσθήκη νέου Αναζήτηση RSS
Γράψτε σχόλιο
Όνομα:
Email:
 
Τίτλος:
 
Please input the anti-spam code that you can read in the image.
 

Seach By Google

Translate this website :

Επιλογές


Warning: Parameter 1 to modMainMenuHelper::buildXML() expected to be a reference, value given in /home/flakgr/public_html/libraries/joomla/cache/handler/callback.php on line 99

Programming


Warning: Parameter 1 to modMainMenuHelper::buildXML() expected to be a reference, value given in /home/flakgr/public_html/libraries/joomla/cache/handler/callback.php on line 99

Fedora


Warning: Parameter 1 to modMainMenuHelper::buildXML() expected to be a reference, value given in /home/flakgr/public_html/libraries/joomla/cache/handler/callback.php on line 99

CentOS


Warning: Parameter 1 to modMainMenuHelper::buildXML() expected to be a reference, value given in /home/flakgr/public_html/libraries/joomla/cache/handler/callback.php on line 99

Linux


Warning: Parameter 1 to modMainMenuHelper::buildXML() expected to be a reference, value given in /home/flakgr/public_html/libraries/joomla/cache/handler/callback.php on line 99

Ubuntu


Warning: Parameter 1 to modMainMenuHelper::buildXML() expected to be a reference, value given in /home/flakgr/public_html/libraries/joomla/cache/handler/callback.php on line 99

Debian


Warning: Parameter 1 to modMainMenuHelper::buildXML() expected to be a reference, value given in /home/flakgr/public_html/libraries/joomla/cache/handler/callback.php on line 99


Τελευταία Σχόλια