Scurtă poveste scurtă, Recent am fost repartizat într-un proiect în munca mea în care trebuie să creez o mulțime de scripturi bash. Sunt dintr-un fundal python și folosesc Notebook Jupyter pentru toată munca mea de dezvoltare. Problema cu scripturile bash pentru mine este utilizarea confuză a parantezelor și blocul de coduri repetitive în toate scripturile mele.
Până în acel moment, îl foloseam Nano editor pentru a crea scripturi bash. Nano oferă câteva caracteristici de bază ca editor de terminal, dar nu dincolo de un punct. Așa că am făcut cercetările mele și am selectat „TEXTUL SUBLIME 3”Ca editor de acces la bash și alte limbaje de programare. Am creat o mulțime de fragmente pentru funcții repetitive, one-liners și blocuri de control pentru scripturile bash care nu numai că au economisit timp, ci și mi-au îmbunătățit productivitatea.
Fragmentele sunt o caracteristică / funcționalitate de programare populară care este livrată cu multe modele moderne editori de text sau
Editori IDE. Vă puteți gândi la fragmente ca la un șablon care poate fi reutilizat ori de câte ori este necesar. Fragmentele nu sunt limitate la anumite limbaje de programare. Puteți pur și simplu să creați un fragment nou, să adăugați orice text doriți să fie inserat și să atribuiți un cuvânt declanșator. Vom vedea toate aceste caracteristici în următoarea secțiune.NOTĂ: Folosesc Sublime Text 3 cu Ubuntu 20.04 ca sistem de operare de bază.
În mod implicit text sublim nave cu câteva fragmente predefinite pentru bash. Va afișa inteligent fragmentele pe baza fișierului curent din care căutăm fragmentul. Sunt în interiorul unui script shell și când invoc comanda palet și tastați fragment, oferă automat o listă de fragmente definite pentru bash.
Există două moduri în care puteți accesa fragmente în Sublime Text.
Sublim textul oferă un șablon implicit în format XML atunci când creăm un fragment nou. Pentru a crea șablonul trebuie să TEXT SUBLIME → INSTRUMENTE → DEVELOPER → SNIPPET NOU.
Să înțelegem definiția șablonului și să modificăm parametrii.
Acum am făcut câteva lucruri de bază. Am definit un fragment care va insera un simplu comentariu de antet care se leagă de „hcom”Declanșator de filă și derivat din scriptul shell.
Acum să deschidem un nou fișier bash și „tastați hcom“. Dacă te uiți la imaginea de mai jos când „tip h”Definiția fragmentului meu apare doar cu descrierea pe care am dat-o. Tot ce trebuie să fac este să apăs pe tasta pentru ao extinde.
Câmpurile sunt notate folosind $1
, $2
, $3
și așa mai departe. Cu ajutorul câmpului, puteți sări în poziția în care este plasat marcatorul de câmp, prin simpla lovire cheie.
Dacă aruncați o privire asupra fragmentului meu, am adăugat două markere de câmp $1
și $2
, ceea ce face este atunci când îmi introduc fragmentul, cursorul va fi plasat la $1
așa că pot scrie ceva în această poziție.
Apoi trebuie să apăs pe tasta pentru a trece la următorul marker $2
și tastați ceva. Este de observat că atunci când aveți un marker identic spuneți $1
în acest caz la 2 poziții, actualizarea câmpului la o poziție va actualiza câmpurile identice ($1)
.
$0
→ Controlează punctul de ieșire.Suporturile de locuri sunt ca o pereche cheie-valoare definită în paranteze ${0:
marcatorul de câmp va fi etichetat cu o valoare implicită. Puteți fie să schimbați valoarea, fie să o lăsați așa cum este. Când fragmentul este introdus și dacă apăsați fila, cursorul va fi plasat la valoarea implicită.
Acum fragmentul este inserat cu valoarea implicită și mouse-ul este plasat la $1
care este v1
în acest caz. Fie pot modifica valoarea, fie doar să apăs tasta pentru a trece la următorul marker.
Singurul dezavantaj cu Text sublim fragmentele sunt, nu puteți grupa toate fragmentele într-un singur fișier. Este permis un singur fragment pentru fiecare fișier, care este greoi. Dar există și alte opțiuni precum crearea .completare sublimă
fișiere. Pentru a afla mai multe despre acest lucru, aruncați o privire la documentație.
Fișierele cu fragmente trebuie salvate cu sufixul .sublime-snippet
. Mergi la PREFERINȚE → RASCURI PACHETE. Se va deschide directorul în care sunt stocate setările definite de utilizator. Accesați directorul „Utilizator”Unde va fi salvat fișierul fragmentului dvs.
Snippet-generator-app furnizează generarea automată de fragmente pe web pe baza informațiilor noastre. Este disponibil pentru Text sublim, Atom, și Cod VSC. Tastați descrierea, declanșatorul filei și conținutul din partea stângă, care va genera cod live în partea dreaptă a paginii.
Exemplu de fragment care va primi numele clusterului din API-ul Ambari.
Asta e tot pentru astăzi. Am văzut avantajele utilizării fragmente în text sublim. Tocmai am folosit un pseudo text simplu ca exemplu pentru a demonstra funcția de fragmente, dar este mult mai mult. Aș dori, de asemenea, să subliniez că această caracteristică este disponibilă în tot editorul / IDE Vim, Atom, Eclipsă, Pycharm, Vscode, etc.