Kako povećati produktivnost uz Sublime Text Snippets


Ukratko, nedavno mi je dodijeljen projekt na poslu gdje moram izraditi mnogo bash skripti. Poznajem python i koristim Jupyter Notebook za sav svoj rad na razvoju. Problem s bash skriptama za mene je njihova zbunjujuća upotreba zagrada i ponavljajući blok kodova u svim mojim skriptama.

Do tog sam trenutka koristio Nano editor za izradu bash skripti. Nano pruža neke osnovne značajke kao uređivač terminala, ali ne dalje od točke. Stoga sam istražio i odabrao "SUBLIME TEXT 3" kao svoj glavni urednik za bash i druge programske jezike. Napravio sam puno isječaka za funkcije koje se ponavljaju, jednolinijske zapise i kontrolne blokove za bash skripte što ne samo da je uštedjelo vrijeme, već je i poboljšalo moju produktivnost.

Što je Snippet?

Isječci su popularna programska značajka/funkcionalnost koja se isporučuje s mnogim modernim uređivačima teksta ili IDE uređivačima. Isječke možete zamisliti kao predložak koji se može ponovno upotrijebiti kad god je potrebno. Isječci nisu ograničeni na određene programske jezike. Možete jednostavno izraditi novi isječak, dodati tekst koji želite umetnuti i dodijeliti riječ okidača. Sve te značajke vidjet ćemo u sljedećem odjeljku.

Za popis definiranih isječaka u Sublime Text

Prema zadanim postavkama sublime text isporučuje se s nekim unaprijed definiranim isječcima za bash. Pametno će prikazati isječke na temelju trenutne datoteke iz koje tražimo isječak. Nalazim se unutar skripte ljuske i kada pozovem naredbu pallet i upišem snippet, ona automatski pruža popis definiranih isječaka za bash.

Postoje dva načina na koje možete pristupiti isječcima u Sublime Textu.

  1. VOĐENO IZBORNIKOM ⇒ UZVIŠENI TEKST → ALATI → ISJEČCI
  2. PALETA NAREDBI ⇒ UZVIŠENI TEKST → PALETA NAREDBI (CTRL+SHIFT+P) → ISJEČCI VRSTE

Stvorite nove isječke u Sublime Textu

Sublime tekst daje zadani predložak u XML formatu kada stvaramo novi isječak. Za izradu predloška idite na UZVIŠENI TEKST → ALATI → RAZVOJ → NOVI ISJEČAK.

Razumimo definiciju predloška i promijenimo parametre.

  • Stvarni sadržaj ili blok koda koji treba umetnuti treba biti smješten unutar . Napravit ću isječak za “komentar zaglavlja“. Svaka skripta koju izradite imat će komentar u zaglavlju koji definira informacije o skripti poput imena autora, datuma izrade, broja verzije, datuma postavljanja itd.
  • Okidač kartice (izborno) koji veže “TEKST” koji djeluje kao okidač za isječak. Kada se upiše naziv okidača i pritisnete “TAB“, isječak će biti umetnut. Prema zadanim je postavkama komentiran, uklonite komentar i dodajte nešto teksta za okidač. Odaberite opisno i kratko ime. Na primjer: odabirem “hcom” za umetanje komentara u zaglavlju. Može biti bilo što po vašem izboru.
  • Opseg (neobavezno) definira za koji jezik su vaši isječci vezani. Možete raditi s 2 ili 3 različita programska jezika istovremeno i možete koristiti isti naziv za različite isječke u različitim programskim jezicima. U tom slučaju opseg kontrolira na koji jezik treba umetnuti isječak kako bi se izbjegla kolizija. Popis opsega možete dobiti na Linku. Alternativno, možete otići na ALATI → RAZVOJNI PROGRAMI → PRIKAŽI NAZIV OPSEGA ili pritisnuti da biste dobili naziv opsega jezika koji koristite.
  • Opis (izborno) neće biti dostupan u zadanom predlošku, ali ga možete koristiti za definiranje određenog konteksta onoga što ovaj isječak radi.

Sada smo napravili neke osnovne stvari. Definirali smo isječak koji će umetnuti jednostavan komentar zaglavlja koji se veže s okidačem kartice “hcom” i izvorom je skripta ljuske.

Sada otvorimo novu bash datoteku i “upišite hcom“. Ako pogledate donju sliku kada “upišem h”, moja definicija isječka jednostavno iskoči s opisom koji smo dali. Sve što trebam učiniti je pritisnuti tipku <tab> da je proširim.

Polja

Polja su označena pomoću $1, $2, $3 i tako dalje. Uz pomoć polja možete skočiti na poziciju na kojoj se nalazi oznaka polja jednostavnim pritiskom tipke <tab>.

Ako pogledate moj isječak, dodao sam dva markera polja $1 i $2, ono što radi je da kada umetnem svoj isječak, kursor će biti postavljen na $1 tako da mogu upisati nešto na tom mjestu.

Zatim moram pritisnuti tipku <tab> da skočim na sljedeći marker $2 i upišem nešto. Treba primijetiti da kada imate bilo koji identični marker, recimo $1 u ovom slučaju na 2 pozicije, ažuriranje polja na jednoj poziciji će ažurirati identična polja ($1).

  • Tipka <tab> → Skok na sljedeću oznaku polja.
  • Tipka → Skoči na oznaku prethodnog polja.
  • Tipka → Izlaz iz ciklusa polja.
  • $0 → Kontrolira izlaznu točku.

Rezerviranog mjesta

Držači mjesta su poput para ključ-vrijednost definiranog unutar vitičastih zagrada $ {0:}; oznaka polja bit će označena zadanom vrijednošću. Možete promijeniti vrijednost ili je ostaviti kakva jest. Kada je isječak umetnut i ako pritisnete karticu, pokazivač će se postaviti na zadanu vrijednost.

Sada je isječak umetnut sa zadanom vrijednošću i miš je postavljen na $1 što je u ovom slučaju v1. Ili mogu promijeniti vrijednost ili jednostavno pritisnuti tipku <tab> za pomak na sljedeći marker.

Jedina mana s isječcima Sublime Text je što ne možete grupirati sve isječke u jednu datoteku. Dopušten je samo jedan isječak po datoteci, što je glomazno. Ali postoje i druge opcije poput stvaranja datoteka .sublime-completion. Kako biste saznali više o tome, pogledajte dokumentaciju.

Gdje je pohranjena moja isječka datoteka?

Datoteke s isječcima trebaju biti spremljene sa sufiksom .sublime-nippet. Idite na PREFERENCIJEPREGLED PAKETA. Otvorit će se direktorij u kojem su pohranjene korisnički definirane postavke. Idite u direktorij “Korisnik” gdje će biti spremljena datoteka isječka.

Generator isječaka

Snippet-generator-app omogućuje automatsko generiranje isječaka na webu na temelju našeg unosa. Dostupan je za Sublime Text, Atom i VSCode. Upišite opis, okidač kartice i sadržaj na lijevoj strani koji će generirati živi kod na desnoj strani stranice.

Ogledni isječak koji će dobiti naziv klastera iz Ambari API-ja.

To je sve za danas. Vidjeli smo prednosti korištenja isječaka u uzvišenom tekstu. Upravo sam upotrijebio jednostavan pseudotekst kao primjer za demonstraciju značajke isječaka, ali tu ima puno više. Također bih istaknuo da je ova značajka dostupna u svim editorima/IDE-ima kao što su Vim, Atom, Eclipse, Pycharm , Vscode, itd.