Επαναλάβετε τη φόρτωση του τρέχοντος αρχείου στο Emacs

Epanalabete Te Phortose Tou Trechontos Archeiou Sto Emacs



Όταν εργάζεστε με ένα αρχείο Emacs, μπορείτε να κάνετε αλλαγές και να επιστρέψετε στην προηγούμενη κατάσταση. Μια τέτοια κατάσταση είναι αυτό που σημαίνει η επαναφόρτωση ενός αρχείου. Σας επιτρέπει να απορρίψετε όλες τις αλλαγές που κάνατε στο buffer σας και να έχετε την αρχική κατάσταση του buffer. Το επαναφορτωμένο αρχείο θα ανοίξει την έκδοση που είναι αποθηκευμένη στην απόρριψή σας.

Η επαναφόρτωση ενός αρχείου είναι ένας καλός τρόπος για να αναιρέσετε όλες τις αλλαγές που κάνατε στο αρχείο σας και το Emacs προσφέρει διαφορετικούς τρόπους επαναφόρτωσης του τρέχοντος αρχείου. Αυτή η ανάρτηση καλύπτει δύο μεθόδους για τον τρόπο επαναφόρτωσης του τρέχοντος αρχείου. Αρχικά, θα μιλήσουμε για μια μέθοδο επαναφοράς. Στη συνέχεια, θα δημιουργήσουμε μια συντόμευση για την υλοποίηση της εντολής “reload”. Ας αρχίσουμε!







Δύο μέθοδοι για να φορτώσετε ξανά το τρέχον αρχείο στο Emacs

Το Emacs αντιμετωπίζει την επαναφόρτωση του τρέχοντος αρχείου ως αίτημα απόρριψης όλων των μη αποθηκευμένων αλλαγών. Με αυτόν τον τρόπο ανακτάται η έκδοση του αρχείου που είναι αποθηκευμένη στο δίσκο και όλες οι αλλαγές θα απορριφθούν.



Το άνοιγμα ενός αρχείου στο Emacs συνεπάγεται τη φόρτωσή του σε ένα buffer Emacs. Όταν αλλάζετε το αρχείο, οι αλλαγές δεν θα επηρεάσουν την έκδοση που είναι αποθηκευμένη στο δίσκο μέχρι να αποθηκεύσετε το αρχείο.



Ωστόσο, εάν αλλάξετε γνώμη, μπορείτε πάντα να φορτώσετε ξανά το τρέχον αρχείο για να απορρίψετε τις αλλαγές και να χρησιμοποιήσετε την έκδοση που είναι αποθηκευμένη στο δίσκο. Το Emacs θα σας ζητήσει κατά την επαναφόρτωση του αρχείου να αποθηκεύσετε ή να απορρίψετε τις αλλαγές.





Μέθοδος 1: Χρήση της εντολής Reload

Το Emacs έχει την εντολή 'revert-buffer' στην οποία εκτελείτε κάθε φορά που θέλετε να φορτώσετε ξανά ένα αρχείο. Για αυτό το παράδειγμα, θα εργαστούμε με το ακόλουθο αρχείο. Το φορτώσαμε στο Emacs και προσθέσαμε μία γραμμή:




Ας υποθέσουμε ότι θέλουμε να απορρίψουμε τις αλλαγές και να αφαιρέσουμε τη γραμμή που προστέθηκε. Η επαναφόρτωση του αρχείου θα κάνει το κόλπο. Πατήστε 'M-x' (Alt + x) στο Emacs σας και πληκτρολογήστε 'revert-buffer' στη γραμμή εντολών.


Μόλις πατήσετε το πλήκτρο πληκτρολογίου RET/Enter, η εντολή θα εκτελεστεί και θα σας ζητηθεί να επιβεβαιώσετε ότι θέλετε να επαναφέρετε το buffer που απορρίπτει όλες τις μη αποθηκευμένες αλλαγές. Για να φορτώσετε ξανά το αρχείο, πληκτρολογήστε «ναι» και πατήστε το πλήκτρο RET.


Αμέσως αφού το κάνουμε, το αρχείο θα επαναφορτωθεί και όλες οι μη αποθηκευμένες αλλαγές που είχαμε θα απορριφθούν. Τώρα έχουμε το αρχείο που ήταν αποθηκευμένο στο δίσκο και δεν περιέχει την τελευταία γραμμή που προσθέσαμε νωρίτερα. Με αυτόν τον τρόπο απορρίπτετε γρήγορα τις αλλαγές στο αρχείο Emacs σας.


Μέθοδος 2: Δέσμευση της εντολής Reload

Αντί να πληκτρολογείτε την εντολή 'rever-buffer' κάθε φορά που θέλετε να φορτώσετε ξανά το τρέχον αρχείο, μπορείτε να συνδέσετε την εντολή σε ένα κλειδί. Με αυτόν τον τρόπο, το πάτημα του δεσμευμένου πλήκτρου κάνει την ίδια εργασία με την εντολή 'revert-buffer'.

Το πρώτο βήμα είναι να ανοίξετε το αρχείο διαμόρφωσης Emacs. Το αρχείο διαμόρφωσης μπορεί να είναι '.emacs' ή '.emacs.d/init.el'.

Μόλις το ανοίξετε, πρέπει να συνδέσουμε το κλειδί στην εντολή 'reload'. Χρησιμοποιήστε το χαρακτηριστικό 'global-set-key' και καθορίστε ποιο κλειδί θα δεσμευτεί και σε ποια εντολή. Χρησιμοποιούμε το κλειδί 'f8' για αυτήν την περίπτωση και η δήλωση bind είναι η εξής:


Αποθηκεύστε το αρχείο διαμόρφωσης πατώντας “c-x c-s”. Για να εφαρμόσετε τις αλλαγές μας, επανεκκινήστε το Emacs σας ή ανοίξτε το ξανά.

Τώρα, επιστρέφουμε στο αρχικό μας αρχείο που φορτώσαμε σε ένα buffer Emacs. Αντί να πληκτρολογήσουμε την εντολή 'rever-buffer' όπως στην πρώτη μέθοδο, πατάμε μόνο το πλήκτρο 'f8' εδώ. Με αυτόν τον τρόπο εμφανίζεται μια προτροπή για επιβεβαίωση ότι θέλουμε να φορτώσουμε ξανά το αρχείο και να απορρίψουμε όλες τις αλλαγές.


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

συμπέρασμα

Η επαναφόρτωση ενός αρχείου στο Emacs συνεπάγεται την επαναφορά στην έκδοση του αρχείου που είναι αποθηκευμένη στο δίσκο. Είναι ένας τρόπος απόρριψης όλων των μη αποθηκευμένων αλλαγών στο αρχείο που έχει φορτωθεί στο Emacs. Μπορείτε να φορτώσετε ξανά ένα αρχείο με δύο τρόπους. Η πρώτη μέθοδος χρησιμοποιεί την εντολή 'revert-buffer' και επιβεβαιώνει την προτροπή. Η δεύτερη μέθοδος είναι η σύνδεση της εντολής 'revers-buffer' σε ένα κλειδί και το πάτημα του πλήκτρου όποτε θέλετε να φορτώσετε ξανά το τρέχον αρχείο. Και οι δύο επιλογές συζητούνται σε αυτήν την ανάρτηση.