Wyszukiwanie w witrynie

Jak zwiększyć produktywność dzięki wysublimowanym fragmentom tekstu


Krótko mówiąc, ostatnio w mojej pracy przydzielono mnie do projektu, w którym muszę utworzyć wiele skryptów basha. Pochodzę z Pythona i do wszystkich prac programistycznych używam Jupyter Notebook. Dla mnie problemem ze skryptami bash jest mylące użycie nawiasów i powtarzalny blok kodów we wszystkich moich skryptach.

Do tego momentu używałem edytora Nano do tworzenia skryptów bash. Nano zapewnia kilka podstawowych funkcji jako edytor terminala, ale nie wykracza poza punkt. Zrobiłem więc research i wybrałem „SUBLIME TEXT 3” jako mój ulubiony edytor basha i innych języków programowania. Stworzyłem wiele fragmentów powtarzalnych funkcji, jednowierszowych i bloków kontrolnych dla skryptów basha, co nie tylko zaoszczędziło czas, ale także poprawiło moją produktywność.

Co to jest fragment?

Fragmenty to popularna funkcja/funkcja programistyczna dostarczana z wieloma nowoczesnymi edytorami tekstu lub edytorami IDE. Możesz myśleć o fragmentach jako o szablonie, który można ponownie wykorzystać w razie potrzeby. Fragmenty nie są ograniczone do określonych języków programowania. Możesz po prostu utworzyć nowy fragment, dodać dowolny tekst, który chcesz wstawić i przypisać słowo wyzwalające. Wszystkie te funkcje zobaczymy w nadchodzącej sekcji.

Aby wyświetlić zdefiniowane fragmenty w wysublimowanym tekście

Domyślnie wysublimowany tekst jest dostarczany z kilkoma predefiniowanymi fragmentami kodu basha. Inteligentnie wyświetli fragmenty na podstawie bieżącego pliku, z którego szukamy fragmentu. Jestem w skrypcie powłoki i kiedy wywołam polecenie pallet i wpiszę snippet, automatycznie wyświetli się lista zdefiniowanych fragmentów dla basha.

Istnieją dwa sposoby uzyskiwania dostępu do fragmentów w Sublime Text.

  1. OPRACOWANY Z MENU ⇒ WYsublimowany TEKST → NARZĘDZIA → FRAGMENTY
  2. PALETA POLECEŃ ⇒ TEKST SUBLIME → PALETA POLECEŃ (CTRL+SHIFT+P) → WPISZ FRAGMENTY

Utwórz nowe fragmenty w wysublimowanym tekście

Tekst Sublime zapewnia domyślny szablon w formacie XML, gdy tworzymy nowy fragment. Aby utworzyć szablon, przejdź do SUBLIME TEXT → NARZĘDZIA → DEVELOPER → NOWY SNIPPET.

Zapoznajmy się z definicją szablonu i zmodyfikujmy parametry.

  • Rzeczywista treść lub blok kodu, który ma zostać wstawiony, powinien zostać umieszczony w obrębie . Zamierzam utworzyć fragment „komentarza nagłówka”. Każdy utworzony skrypt będzie miał komentarz nagłówka określający informacje o skrypcie, takie jak imię i nazwisko autora, data utworzenia, numer wersji, data wdrożenia itp.
  • Tabtrigger (opcjonalny), który wiąże „TEKST”, który działa jako wyzwalacz fragmentu. Po wpisaniu nazwy wyzwalacza i naciśnięciu „TAB”, fragment zostanie wstawiony. Domyślnie jest komentowany, usuń komentarz i dodaj tekst dla wyzwalacza. Wybierz nazwę opisową i krótką. Na przykład: wybieram „hcom” do wstawiania komentarzy nagłówka. Może to być cokolwiek według własnego wyboru.
  • Zakres (opcjonalny) określa, z jakim językiem powiązane są Twoje fragmenty. Możesz pracować z 2 lub 3 różnymi językami programowania jednocześnie i możesz używać tej samej nazwy dla różnych fragmentów kodu w różnych językach programowania. W takim przypadku zakres kontroluje, do jakiego języka należy wstawić fragment, aby uniknąć kolizji. Listę zakresów można uzyskać z Link. Alternatywnie możesz przejść do NARZĘDZIA → PROGRAMISTA → POKAŻ NAZWĘ ZAKRESU lub nacisnąć , aby uzyskać nazwę zakresu języka, którego używasz.
  • Opis (opcjonalny) nie będzie dostępny w szablonie domyślnym, ale możesz go użyć do zdefiniowania kontekstu działania tego fragmentu.

Teraz zrobiliśmy kilka podstawowych rzeczy. Zdefiniowaliśmy fragment, który wstawi prosty komentarz nagłówka, który jest powiązany z wyzwalaczem karty „hcom” i pochodzi ze skryptu powłoki.

Otwórzmy teraz nowy plik bash i „wpiszmy hcom”. Jeśli spojrzysz na poniższy obrazek, gdy „piszę h”, pojawi się moja definicja fragmentu wraz z podanym przez nas opisem. Wystarczy, że wcisnę klawisz <tab>, żeby go rozwinąć.

Pola

Pola są oznaczone za pomocą $1, $2, $3 i tak dalej. Za pomocą pola możesz przejść do pozycji, w której znajduje się znacznik pola, po prostu naciskając klawisz <tab>.

Jeśli spojrzysz na mój fragment, dodałem dwa znaczniki pól $1 i $2. Kiedy wstawię mój fragment, kursor zostanie umieszczony w $1, więc mogę wpisać coś w tej pozycji.

Następnie muszę nacisnąć klawisz <tab>, aby przejść do następnego znacznika $2 i coś wpisać. Należy zauważyć, że jeśli masz identyczny znacznik, powiedzmy $1 w tym przypadku na 2 pozycjach, aktualizacja pola w jednej pozycji spowoduje aktualizację identycznych pól ($1).

  • Klawisz <tab> → Skok do kolejnego znacznika pola.
  • Klawisz → Przejdź do poprzedniego znacznika pola.
  • Klawisz → Wyjście z cyklu pola.
  • $0 → Kontroluje punkt wyjścia.

Uchwyt miejsca

Elementy zastępcze przypominają parę klucz-wartość zdefiniowaną w nawiasach klamrowych &36 {0:}; znacznik pola zostanie oznaczony wartością domyślną. Możesz zmienić tę wartość lub pozostawić ją bez zmian. Po wstawieniu fragmentu i naciśnięciu klawisza Tab kursor zostanie umieszczony na wartości domyślnej.

Teraz wstawiany jest fragment kodu z wartością domyślną, a mysz jest umieszczana w $1, czyli w tym przypadku v1. Albo mogę zmodyfikować wartość, albo po prostu naciśnij klawisz <tab>, aby przejść do następnego znacznika.

Jedyną wadą fragmentów Sublime Text jest to, że nie można zgrupować wszystkich fragmentów w jednym pliku. Dozwolony jest tylko jeden fragment na plik, co jest kłopotliwe. Istnieją jednak inne opcje, takie jak tworzenie plików .sublime-completion. Aby dowiedzieć się więcej na ten temat, zapoznaj się z dokumentacją.

Gdzie jest przechowywany mój plik fragmentu?

Pliki fragmentów należy zapisać z przyrostkiem .sublime-snippet. Przejdź do PreferencjePrzeglądaj pakiety. Otworzy się katalog, w którym przechowywane są ustawienia zdefiniowane przez użytkownika. Przejdź do katalogu „Użytkownik”, w którym zostanie zapisany plik fragmentu kodu.

Generator fragmentów

Aplikacja-generator fragmentów umożliwia automatyczne generowanie fragmentów kodu w oparciu o Internet na podstawie naszych danych wejściowych. Jest dostępny dla Sublime Text, Atom i VSCode. Wpisz opis, wyzwalacz zakładki i treść po lewej stronie, co wygeneruje aktywny kod po prawej stronie.

Przykładowy fragment kodu, który pobierze nazwę klastra z interfejsu API Ambari.

To wszystko na dzisiaj. Widzieliśmy zalety używania fragmentów w wysublimowanym tekście. Właśnie użyłem prostego pseudotekstu jako przykładu, aby zademonstrować funkcję fragmentów, ale jest w niej o wiele więcej. Chciałbym również zaznaczyć, że ta funkcja jest dostępna we wszystkich edytorach/IDE, takich jak Vim, Atom, Eclipse, Pycharm , Vscode itp.