Πώς να αυξήσετε την παραγωγικότητα με τα αποσπάσματα Sublime Text


Με λίγα λόγια, πρόσφατα μου ανατέθηκε σε ένα έργο στη δουλειά μου όπου πρέπει να δημιουργήσω πολλά σενάρια bash. Είμαι από python υπόβαθρο και χρησιμοποιώ το Notebook Jupyter για όλες τις εργασίες ανάπτυξης μου. Το πρόβλημα με τα σενάρια bash για μένα είναι η μπερδεμένη χρήση αγκυλών και το επαναλαμβανόμενο μπλοκ κωδικών σε όλα τα σενάρια μου.

Μέχρι εκείνο το σημείο, χρησιμοποιούσα τον επεξεργαστή Nano για να δημιουργήσω σενάρια bash. Το Nano παρέχει ορισμένες βασικές δυνατότητες ως πρόγραμμα επεξεργασίας τερματικού, αλλά όχι πέρα από ένα σημείο. Έκανα λοιπόν την έρευνά μου και επέλεξα το "SUBLIME TEXT 3" ως το βασικό μου πρόγραμμα επεξεργασίας για το bash και άλλες γλώσσες προγραμματισμού. Δημιούργησα πολλά αποσπάσματα για επαναλαμβανόμενες συναρτήσεις, one-liners και μπλοκ ελέγχου για σενάρια bash που όχι μόνο εξοικονόμησαν χρόνο αλλά και βελτίωσαν την παραγωγικότητά μου.

Τι είναι το Snippet;

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

Για να παραθέσετε καθορισμένα αποσπάσματα σε Sublime Text

Από προεπιλογή το υψηλό κείμενο αποστέλλεται με ορισμένα προκαθορισμένα αποσπάσματα για το bash. Θα εμφανίσει έξυπνα τα αποσπάσματα με βάση το τρέχον αρχείο από το οποίο αναζητούμε το απόσπασμα. Βρίσκομαι μέσα σε ένα σενάριο φλοιού και όταν επικαλούμαι την εντολή pallet και πληκτρολογώ snippet, παρέχει αυτόματα μια λίστα με καθορισμένα αποσπάσματα για το bash.

Υπάρχουν δύο τρόποι με τους οποίους μπορείτε να αποκτήσετε πρόσβαση σε αποσπάσματα στο Sublime Text.

  1. ΟΔΗΓΟΜΕΝΟ ΜΕΝΟΥ ⇒ ΥΨΗΛΟ ΚΕΙΜΕΝΟ → ΕΡΓΑΛΕΙΑ → ΑΠΟσπασματικά
  2. ΠΑΛΕΤΑ ΕΝΤΟΛΩΝ ⇒ SUBLIME TEXT → COMMAND PALETTE (CTRL+SHIFT+P) → TYPE SNIPPETS

Δημιουργήστε ένα νέο αποσπάσματα σε Sublime Text

Το κείμενο Sublime παρέχει ένα προεπιλεγμένο πρότυπο σε μορφή XML όταν δημιουργούμε ένα νέο απόσπασμα. Για να δημιουργήσετε το πρότυπο πρέπει να επιλέξετε SUBLIME TEXT → TOOLS → DEVELOPER → NEW SNIPPET.

Ας κατανοήσουμε τον ορισμό του προτύπου και ας τροποποιήσουμε τις παραμέτρους.

  • Το πραγματικό περιεχόμενο ή το μπλοκ κώδικα που θα εισαχθεί θα πρέπει να τοποθετηθεί στο . Θα δημιουργήσω ένα απόσπασμα για το "σχόλιο κεφαλίδας". Κάθε σενάριο που δημιουργείτε θα έχει ένα σχόλιο κεφαλίδας που καθορίζει τις πληροφορίες σχετικά με το σενάριο, όπως όνομα συγγραφέα, ημερομηνία δημιουργίας, αριθμό έκδοσης, ημερομηνία ανάπτυξης κ.λπ.
  • Tabtrigger (Προαιρετικό) που δεσμεύει ένα "TEXT" που λειτουργεί ως έναυσμα για το απόσπασμα. Όταν πληκτρολογήσετε το όνομα κανόνα ετικέτας και πατήσετε το "TAB", το απόσπασμα θα εισαχθεί. Σχολιάζεται από προεπιλογή, αφαιρέστε το σχόλιο και προσθέστε λίγο κείμενο για το έναυσμα. Επιλέξτε ένα περιγραφικό και σύντομο όνομα. Για παράδειγμα: Επιλέγω το "hcom " για την εισαγωγή σχολίων κεφαλίδας. Μπορεί να είναι οτιδήποτε της επιλογής σας.
  • Το Εύρος (Προαιρετικό) καθορίζει σε ποια γλώσσα συνδέονται τα αποσπάσματα. Μπορείτε να εργάζεστε με 2 ή 3 διαφορετικές γλώσσες προγραμματισμού κάθε φορά και μπορεί να χρησιμοποιείτε το ίδιο όνομα για διαφορετικά αποσπάσματα σε διαφορετικές γλώσσες προγραμματισμού. Σε αυτήν την περίπτωση, ελέγχει το εύρος της γλώσσας σε ποια γλώσσα θα πρέπει να εισαχθεί το απόσπασμα για να αποφευχθεί η σύγκρουση. Μπορείτε να λάβετε τη λίστα με τα πεδία από το Link. Εναλλακτικά, μπορείτε να μεταβείτε στο TOOLS → DEVELOPER → SOW SCOPE NAME ή να πατήσετε για να λάβετε το όνομα πεδίου της γλώσσας που χρησιμοποιείτε.
  • Η Περιγραφή (Προαιρετικό) δεν θα είναι διαθέσιμη στο προεπιλεγμένο πρότυπο, αλλά μπορείτε να τη χρησιμοποιήσετε για να ορίσετε κάποιο πλαίσιο σχετικά με το τι κάνει αυτό το απόσπασμα.

Τώρα έχουμε κάνει κάποια βασικά πράγματα. Έχουμε ορίσει ένα απόσπασμα που θα εισάγει ένα απλό σχόλιο κεφαλίδας που συνδέεται με την ενεργοποίηση της καρτέλας «hcom» και προέρχεται από το σενάριο φλοιού.

Τώρα ας ανοίξουμε ένα νέο αρχείο bash και "πληκτρολογήστε hcom". Αν κοιτάξετε την παρακάτω εικόνα όταν "πληκτρολογώ h", ο ορισμός του αποσπάσματος εμφανίζεται απλώς με την περιγραφή που δώσαμε. Το μόνο που έχω να κάνω είναι να πατήσω το πλήκτρο <tab> για να το αναπτύξω.

Πεδία

Τα πεδία σημειώνονται χρησιμοποιώντας $1, $2, $3 και ούτω καθεξής. Με τη βοήθεια του πεδίου, μπορείτε να μεταβείτε στη θέση όπου τοποθετείται ο δείκτης πεδίου πατώντας απλώς το πλήκτρο <tab>.

Αν ρίξετε μια ματιά στο απόσπασμά μου, έχω προσθέσει δύο δείκτες πεδίου $1 και $2, αυτό που κάνει είναι όταν εισάγω το απόσπασμά μου, ο δρομέας θα τοποθετηθεί στο $1 ώστε να μπορώ να πληκτρολογήσω κάτι σε αυτήν τη θέση.

Στη συνέχεια, πρέπει να πατήσω το πλήκτρο <tab> για να μεταβώ στον επόμενο δείκτη $2 και να πληκτρολογήσω κάτι. Πρέπει να σημειωθεί ότι όταν έχετε οποιονδήποτε πανομοιότυπο δείκτη πείτε $1 σε αυτήν την περίπτωση σε 2 θέσεις, η ενημέρωση του πεδίου σε μία θέση θα ενημερώσει τα ίδια πεδία ($1).

  • Πλήκτρο <tab> → Μετάβαση στον επόμενο δείκτη πεδίου.
  • Πλήκτρο → Μετάβαση στον προηγούμενο δείκτη πεδίου.
  • Πλήκτρο → Διακοπή του κύκλου πεδίου.
  • $0 → Ελέγχει το σημείο εξόδου.

Κάτοχος θέσης

Οι κάτοχοι μέρους είναι σαν ένα ζεύγος κλειδιού-τιμής που ορίζεται σε σγουρά άγκιστρα $ {0:<Προεπιλεγμένη τιμή>}; ο δείκτης πεδίου θα επισημανθεί με μια προεπιλεγμένη τιμή. Μπορείτε είτε να αλλάξετε την τιμή είτε να την αφήσετε ως έχει. Όταν εισαχθεί το απόσπασμα και εάν πατήσετε την καρτέλα, ο κέρσορας θα τοποθετηθεί στην προεπιλεγμένη τιμή.

Τώρα το απόσπασμα εισάγεται με την προεπιλεγμένη τιμή και το ποντίκι τοποθετείται στο $1 που είναι v1 σε αυτήν την περίπτωση. Είτε μπορώ να τροποποιήσω την τιμή είτε απλώς να πατήσω το πλήκτρο <tab> για να μεταβώ στον επόμενο δείκτη.

Το μόνο μειονέκτημα με τα αποσπάσματα Sublime Text είναι ότι δεν μπορείτε να ομαδοποιήσετε όλα τα αποσπάσματα σε ένα μόνο αρχείο. Επιτρέπεται μόνο ένα απόσπασμα ανά αρχείο, το οποίο είναι επαχθές. Υπάρχουν όμως και άλλες επιλογές, όπως η δημιουργία αρχείων .sublime-completion. Για να μάθετε περισσότερα σχετικά με αυτό, ρίξτε μια ματιά στην τεκμηρίωση.

Πού αποθηκεύεται το αρχείο My Snippet;

Τα αρχεία αποσπάσματος θα πρέπει να αποθηκευτούν με το επίθημα .sublime-snippet. Μεταβείτε στις ΠΡΟΤΙΜΗΣΕΙΣΠΕΡΙΓΡΑΦΗ ΠΑΚΕΤΩΝ. Θα ανοίξει τον κατάλογο όπου αποθηκεύονται οι ρυθμίσεις που καθορίζονται από το χρήστη. Μεταβείτε στον κατάλογο "Χρήστης " όπου θα αποθηκευτεί το αρχείο του αποσπάσματός σας.

Snippet Generator

Η εφαρμογή Snippet-generator-app παρέχει αυτόματη δημιουργία αποσπασμάτων μέσω ιστού με βάση τα στοιχεία μας. Είναι διαθέσιμο για Sublime Text, Atom και VSCode. Πληκτρολογήστε την περιγραφή, την ενεργοποίηση της καρτέλας και το περιεχόμενο στην αριστερή πλευρά που θα δημιουργήσει ζωντανό κώδικα στη δεξιά πλευρά της σελίδας.

Δείγμα αποσπάσματος που θα λάβει το όνομα συμπλέγματος από το Ambari API.

Αυτά για σήμερα. Έχουμε δει τα πλεονεκτήματα της χρήσης αποσπασμάτων σε υψηλό κείμενο. Μόλις χρησιμοποίησα ένα απλό ψευδοκείμενο ως παράδειγμα για να δείξω τη δυνατότητα των αποσπασμάτων, αλλά υπάρχουν πολλά περισσότερα σε αυτό. Θα ήθελα επίσης να επισημάνω ότι αυτή η δυνατότητα είναι διαθέσιμη σε όλο το πρόγραμμα επεξεργασίας/IDE όπως Vim, Atom, Eclipse, Pycharm >, Vscode, κ.λπ.