programmers text editor
Neon Absentius
absent at sdf.lonestar.org
Thu Oct 6 16:11:15 EEST 2005
On Thu, Oct 06, 2005 at 10:05:05AM +0300, Nick Demou (enLogic) wrote:
>
> Δεν ξέρω γιατί σκοτώνονται οι άλλοι εγώ πάντως δεν εψάχνα για τον μαγικό
> editor που θα με κάνει super-προγραμματιστή. Απλά είμαι πρωτάρης στο
> desktop linux και δεν ξέρω τι μπορώ να εγκαταστήσω που θα μου προσφέρει
> τα εξής επιπλέον χαρακτηριστικά σε σχέση με τους απολύτως βασικούς
> editor τύπου notepad:
>
> 1) θέλω να κάνω search & search-and-replace με υποστήριξη reg-exps και
> στο τρέχον κείμενο αλλά ΚΑΙ σε πολά αρχεία ταυτόχρονα
> 2) θέλω να έχω syntax highlighting (γιατί είμαι άνθρωπος και κάνω
> τυπογραφικά λάθη τα οποία χαρά μου είναι αν κατά μεγάλο ποσοστό τα
> καταλαβαίνω πριν το compile ή το debuging)
> 3) θέλω να κάνω compare (diff) κείμενα και να βλέπω το αποτέλεσμα και σε
> μορφή diff αλλά και σε μορφή νηπιαγωγίου "κόκινο χρωματάκι για τις
> διεγραμμένες γραμμούλες - πράσινο για τις νέες γραμμούλες" (γιατί μου
> αρκεί να βλέπω κώδικοποιημένα texts τις 8 ώρες τις ημέρας δεν θέλω άλλο.
> Είμαι και γέρος 35 χρονών, το μυαλό μου δεν τσουλάει όπως παλιά)
> 4) αν γίνετε όλα αυτά να είναι προσπελάσιμα ευκολα και απλά ακόμα
> καλύτερα - αν δεν γίνετε θα το αντέξω (εδώ άντεξα τόσα χρόνια να δουλεύω
> στο ανάπηρο command prompt του DOS και των windows 3,95,98,Me με
> documentation που απευθήνετε μόνο σε εκπεδευμένους πιθήκους)
>
> τώρα δοκιμάζω τον emacs - διάβασα το tutorial, σημείωσα μερικά keyboard
> shortcuts και μου φένεται ότι είναι Ο.Κ. αλλά ακόμα δεν είμαι σίγουρος
> αν καλύπτει και τις 4εις ανάγκες που ανέφερα.
>
Ο Emacs έχει όλες αυτές τις δυνατότητες (and much much more).
1) Κανένα πρόβλημα. Μπορείς να κάνεις search με regexps είτε
στατικά (δλδ χτυπάς όλη τη regexp και μετά σου δίχνει όλα τα
αποτελέσματα) είτε incrementally (δλδ γράφεις και ο Εμαξ σου
δίχνει τα matches καθώς πληκτολογείς). Έχει την εντολή
query-replace-regexp (default πλήκτρο το C-M-%) με την οποία σου
ζητάει επιβεβαίωση προτού κάνει την αντικατάσταση. Αν είσαι
σίγουρος ότι θέλεις όλες τις αλλαγές μπορείς να δώσεις την εντολή
replace-regexp και θα τις κάνει αυτόματα --no questions asked.
Αυτή η εντολή από default δεν αντιστοιχεί σε κάποιο πλήκτρο οπότε
πρέπει να δώσεις "M-x replace-regexp" αλλά εγώ την χρησιμοποιώ
πολύ συχνά και έτσι την έχω στο F6. Έχω την εξής γραμμή στο
.emacs
(global-set-key (kbd "<f6>") 'replace-regexp)
ΕΕΠ, τροποποιώντας αυτήν την γραμμή με λίγο ως πολύ προφανή τρόπο
μπορείς να αντιστοιχήσεις *οποιοδήποτε* πλήκτρο σε *οποιαδήποτε*
εντολή.
2) Ο Εμάξ έχει και απ' αυτό. Κάποιοι λένε ότι παραέχει. Δες το
σχετικό flame.
3) Υπάρχει σχετική εντολή στον Emacs. Δοκίμασε "M-x ediff".
Καταπληκτική ιντερφέις ΚΤΟΚΤΤΜΓ.
4) Υπάρχει μια αρχική δυσκολία αλλά δεν είναι και ανυπέρλητη. Το
θέμα είναι ότι ο Εμαξ έρχεται από πολύ παλιά. Είναι παλιότερος
από τις σύγχρονες (δήθεν) διαισθητικές ιντερφέις, είναι
παλιότερος ακόμα και από το Unix το ίδιο. Δεν ακολουθεί τις
εκάστοτε «μόδες» αλλά αντίθετα επιμένει στην δική του φιλοσοφία,
αλλάζοντας και ενσωματόνοντας νέα στοιχεία κυρίως για να αυξήσει
την λειτουργικότητά του και όχι για να είναι «τρέντυ». Για ποιο
λόγο να υιοθετήσει τα "cua keybindings, C-s, C-v" κτλπ, αν δεν
αυξάνουν την λειτουργικότητά του *μακροπρόθεσμα*; Κατά πάσα
πιθανότητα εξάλλου ο Εμαξ θα εξακολουθεί να υπάρχει και μετά που
κι αυτή η μόδα θα περάσει. That said, όπως είπα και σε κάποιο
προηγούμενο μήνυμα, αν θέλεις τα "cua bindings" ο Εμαξ μπορεί να
τα υιοθετήσει. Δοκίμασε "M-x cua-mode". (Είναι builtin στον
Emacs22 για νωρίτερες εκδόσεις πρέπει να το εγκαταστήσεις «με το
χέρι», αν ενδιαφέρεσαι και δεν ξέρεις πές).
Ένα επίσης βασικό advantage του Εμαξ, ΚΤΤΤΜΓ, είναι το online
documentation. Δοκίμασε "C-h i" και μετά "m emacs".
ΥΓ: Παρακαλώ ας λείπουν τα «δεν θέλω να αρχίσω flame αλλά» κλπ.
--
Everyone is so overwhelmed by the hospitality. And so many of the
people in the arena here, you know, were underprivileged anyway, so
this--this (she chuckles slightly) is working very well for them.
-- Barbara Bush, about the refugees from New Orleans.
More information about the Linux-greek-users
mailing list