Starship to kompilacja typu cross-shell używająca języka rdzy. Jest to bardzo minimalny i niesamowicie szybki monit terminala. Głównym powodem jego popularności jest możliwość dostosowania. Możesz go łatwo dostosować za pomocą pliku konfiguracyjnego TOML. Jeśli przenosisz się na inne urządzenie lub inną powłokę, po prostu przenieś plik konfiguracyjny do odpowiedniej lokalizacji, a Twoja pięknie wyglądająca powłoka automatycznie stanie się gotowa.
Warunek wstępny
Przed użyciem Starship musisz zainstalować czcionkę nerd na swoim komputerze. Czcionka Nerd to piękne połączenie czcionki i ikon. Iść do Czcionki dla frajerów i pobierz swój ulubiony. Jeśli nie możesz się zdecydować, możesz również wyświetlić podgląd czcionek na programowaniefonts.org.
W moim przypadku podoba mi się „czcionka Fira Code Nerd”. Pobierz czcionkę i wyodrębnij jej zawartość. Otrzymasz folder o nazwie „FiraCode” i wszystkie wersje czcionki .otf i .ttf.
Aby zainstalować tę czcionkę, przejdź do terminala i uruchom następujące polecenie.
# Creating the local font directory in your system mkdir ~/.local/share/fonts # Moving the extracted fonts to local font directory mv FiraCode ~/.local/share/fonts/
Teraz czcionka FiraCode Nerd staje się dostępna w Twoim systemie. Możesz także zainstalować inne typy czcionek, postępując zgodnie z powyższym przewodnikiem.
Jeśli chcesz przeczytać szczegółowy przewodnik dotyczący instalacji czcionek na pulpicie systemu Linux, zapoznaj się z tym artykułem na temat instalowania czcionek w Ubuntu.
Zainstaluj statek kosmiczny
Aby zainstalować statek kosmiczny, przejdź do swojego katalogu domowego i uruchom następujące polecenie.
curl -sS https://starship.rs/install.sh | sh
To polecenie pobierze i zainstaluje plik binarny statku kosmicznego i doda go do twojej ścieżki.
Zainstaluj statek kosmiczny na swojej powłoce
Jeśli używasz powłoki bash, otwórz plik „~/.bashrc” i wklej ten wiersz kodu na końcu.
eval "$(starship init bash)"
Jeśli używasz Zsh, otwórz plik „~/.zshrc” i wklej powyższy wiersz kodu na jego końcu.
Teraz uruchom ponownie aplikację terminala. Zostaniesz przywitany przez domyślny komunikat dotyczący statku kosmicznego.

Jeśli masz inne pociski niż powyższe, przejdź do dokumentacji statku kosmicznego i znajdź tam preferowany pocisk.
Dostosuj statek kosmiczny
Aby dostosować monit powłoki, utwórz plik „starship.toml” w katalogu konfiguracyjnym.
# Creating your .config directory if not existed mkdir -p ~/.config # Creating a new starship.toml file touch ~/.config/starship.toml
Możesz także zmienić domyślną lokalizację pliku konfiguracyjnego statku kosmicznego. Aby zmienić domyślną lokalizację pliku konfiguracyjnego statku kosmicznego, dodaj STARSHIP_CONFIG
zmienna środowiskowa na dole pliku „~/.bashrc”.
export STARSHIP_CONFIG=~/example/non/default/path/starship.toml
Pojęcie modułu i zmiennej
Moduł to składnik zachęty terminala, który dostarcza informacji kontekstowych o podstawowym systemie operacyjnym. Na przykład Nodejs to moduł w znaku zachęty statku kosmicznego. Kiedy dodamy ten moduł do pliku konfiguracyjnego, otrzymamy różne punkty danych dotyczące bieżącej instalacji Nodejs w Twoim środowisku.
Moduł podaje te informacje w postaci zmiennych. Zmienne to mniejsze podkomponenty, które zawierają informacje o module. Na przykład, version
jest zmienną „Nodejs”. Kiedy nazywamy $version
wewnątrz modułu Nodejs, daje nam aktualnie zainstalowaną wersję Nodejs w twoim systemie. Zmienne są poprzedzone $
symbol. Nazwa zmiennej może zawierać tylko litery, cyfry i „_”.
Grupy i style tekstu
Grupy tekstowe w statku kosmicznym składają się z 2 części. Pierwsza część znajduje się pod hasłem [ ]
symbol. Ta część nazywana jest ciągiem formatu. Możemy tutaj dodawać teksty, zmienne, a nawet zagnieżdżone grupy tekstowe.
Ta ostatnia część jest ujęta w ( )
i nazywa się to ciągiem stylu. Możesz nadać styl grupie tekstu za pomocą tego ciągu stylu.
Weźmy przykład.
[make_tech_easier](yellow bold)
wydrukuje ciąg „make_tech_easier” z pogrubionym tekstem i żółtym kolorem.[👍 All Done](green)
wyświetli „👍 Wszystko gotowe” w kolorze zielonym.[a [b](green) c](red)
To jest przykład zagnieżdżonych grup tekstowych. to drukuje a oraz c w kolorze czerwonym i b w zielonym.
Więcej ustawień stylu
- Dla grup tekstowych możemy ustawić różne plany i tła.
[ ](fg:red bg:blue)
ustaw kolor czcionki tekstu na czerwony, a tło na niebiesko. - Możemy również użyć kolorów ANSI w pliku konfiguracyjnym.
[ ](bold fg:27)
reprezentują pogrubiony tekst z kolorem ANSI 27 jako kolorem pierwszego planu. - Jeśli chcesz dodać swój kolor szesnastkowy, jest to również możliwe.
[ ](underline bg:#bf5700)
daje podkreślony tekst z jasnym pomarańczowym tłem.

Szybka personalizacja w Starship
Szybka personalizacja statku kosmicznego ma 4 opcje. Możemy zmienić te 4 opcje, aby dostosować styl monitu.
- format: Definiuje wygląd zachęty wewnątrz terminala. Możesz zdefiniować dowolny projekt jako monit.
- scan_timeout: Limit czasu dla statku kosmicznego na skanowanie plików.
- command_timeout: Limit czasu dla polecenia wykonanego przez statek kosmiczny.
- add_nowa linia: To jest wartość logiczna. Jeśli ustawione na true, dodaje pustą linię między wierszem zachęty powłoki.
Plik dostosowywania monitu demonstracyjnego wygląda tak.
# Use custom format format = """ [┌───────────────────>](bold green) [│](bold green)$directory$rust$package [└─>](bold green) """ # Wait 10 milliseconds for starship to check files under the current directory. scan_timeout = 10 # Disable the blank line at the start of the prompt add_newline = false
Dodaj żądany moduł
Teraz, gdy znasz już podstawy statku kosmicznego i wiesz, jak go dostosować, możesz bardzo łatwo dodać żądany moduł. Należy pamiętać, że każdy moduł będzie działał, jeśli pliki i foldery związane z tym modułem będą znajdować się w podanej ścieżce. Po prostu moduł Pythona będzie widoczny tylko wtedy, gdy jakikolwiek plik Pythona znajduje się w bieżącym katalogu roboczym.
Dodajmy moduł Pythona do naszej konfiguracji statku kosmicznego jako demo. otwórz plik starship.toml. Tam dodaj [python] w nowej linii, aby aktywować środowisko Pythona.
Moduł Pythona pokazuje informacje o instalacji Pythona w Twoim systemie operacyjnym lub o aktywowaniu dowolnego środowiska wirtualnego. Jeśli chcesz zmienić ikonę Pythona i chcesz wyświetlić nazwę virtualenv, plik konfiguracyjny wygląda tak.
[python] symbol = "🐍 " pyenv_version_name = true
Jeśli zainstalowałeś zarówno python2, jak i python3, możesz określić domyślny plik binarny Pythona za pomocą pliku konfiguracyjnego statku kosmicznego.
[python] # Only use the `python3` binary to get the version. python_binary = "python3"
Podobnie jak w tym przykładzie, możesz dodać dowolny moduł i dostosować go zgodnie z własną wyobraźnią.
Jak dodać ustawienia statku kosmicznego
Jeśli nie chcesz samodzielnie wykonywać wszystkich tych dostosowań, ale chcesz dobrze wyglądającego monitu terminala po wyjęciu z pudełka, możesz użyć ustawień wstępnych. Presety to po prostu pliki konfiguracyjne statku kosmicznego udostępniane przez innych użytkowników. Możesz zaimportować te ustawienia do swojego pliku konfiguracyjnego i za chwilę otrzymasz ładnie wyglądający monit terminala.

Możesz zapoznać się z oficjalnymi ustawieniami na tej stronie. Powyższy monit terminala jest przesyłany przez użytkownika i dostępny na stronie ustawień wstępnych. Teraz, aby monit terminala wyglądał tak, otwórz plik konfiguracyjny statku kosmicznego i dodaj tę konfigurację do swojego pliku.
format = """ [←](#9A348E)\ $username\ [→](bg:#DA627D fg:#9A348E)\ $directory\ [→](fg:#DA627D bg:#FCA17D)\ $git_branch\ $git_status\ [→](fg:#FCA17D bg:#86BBD8)\ $c\ $elixir\ $elm\ $golang\ $haskell\ $java\ $julia\ $nodejs\ $nim\ $rust\ [→](fg:#86BBD8 bg:#06969A)\ $docker_context\ [→](fg:#06969A bg:#33658A)\ $time\ [→ ](fg:#33658A)\ """ # Disable the blank line at the start of the prompt # add_newline = false # You can also replace your username with a neat symbol like to save some space [username] show_always = true style_user = "bg:#9A348E" style_root = "bg:#9A348E" format = '[$user ]($style)' [directory] style = "bg:#DA627D" format = "[ $path ]($style)" truncation_length = 3 truncation_symbol = "…/" # Here is how you can shorten some long paths by text replacement # similar to mapped_locations in Oh My Posh: [directory.substitutions] "Documents" = "📄 " "Downloads" = "📥 " "Music" = "🎜 " "Pictures" = "📷 " # Keep in mind that the order matters. For example: # "Important Documents" = " " # will not be replaced, because "Documents" was already substituted before. # So either put "Important Documents" before "Documents" or use the substituted version: # "Important " = " " [c] symbol = "© " style = "bg:#86BBD8" format = '[[ $symbol ($version) ](bg:#86BBD8)]($style)' [docker_context] symbol = "🐳 " style = "bg:#06969A" format = '[[ $symbol $context ](bg:#06969A)]($style) $path' [elixir] symbol = "💧 " style = "bg:#86BBD8" format = '[[ $symbol ($version) ](bg:#86BBD8)]($style)' [elm] symbol = "🌳 " style = "bg:#86BBD8" format = '[[ $symbol ($version) ](bg:#86BBD8)]($style)' [git_branch] symbol = "☊" style = "bg:#FCA17D" format = '[[ $symbol $branch ](bg:#FCA17D)]($style)' [git_status] style = "bg:#FCA17D" format = '[[($all_status$ahead_behind )](bg:#FCA17D)]($style)' [golang] symbol = "🐹 " style = "bg:#86BBD8" format = '[[ $symbol ($version) ](bg:#86BBD8)]($style)' [haskell] symbol = "λ " style = "bg:#86BBD8" format = '[[ $symbol ($version) ](bg:#86BBD8)]($style)' [java] symbol = "☕ " style = "bg:#86BBD8" format = '[[ $symbol ($version) ](bg:#86BBD8)]($style)' [julia] symbol = "ஃ " style = "bg:#86BBD8" format = '[[ $symbol ($version) ](bg:#86BBD8)]($style)' [nodejs] symbol = "🔷 " style = "bg:#86BBD8" format = '[[ $symbol ($version) ](bg:#86BBD8)]($style)' [nim] symbol = "👑 " style = "bg:#86BBD8" format = '[[ $symbol ($version) ](bg:#86BBD8)]($style)' [rust] symbol = "🦀" style = "bg:#86BBD8" format = '[[ $symbol ($version) ](bg:#86BBD8)]($style)' [time] disabled = false time_format = "%R" # Hour:Minute Format style = "bg:#33658A" format = '[[ 🤍 $time ](bg:#33658A)]($style)'
Uruchom ponownie terminal, a monit terminala wygląda dokładnie tak, jak monit na obrazie. Możesz wyszukać więcej ustawień wstępnych monitów terminala i wypróbować, które najbardziej Ci odpowiadają. W międzyczasie, jeśli chcesz wypróbować kilka wskazówek i trików dotyczących bash, ten artykuł powinien być dla Ciebie najbardziej odpowiedni.
Jak odinstalować statek kosmiczny?
Aby odinstalować statek kosmiczny, najpierw usuń plik konfiguracyjny statku kosmicznego.
rm ~/.config/starship.toml
Następnie usuń wiersz, który wkleiłeś podczas instalacji w pliku „~/.bashrc”.
Na koniec odinstaluj plik binarny statku kosmicznego ze swojego urządzenia.
sh -c 'rm "$(command -v 'starship')"'
Teraz uruchom ponownie terminal, a znak zachęty zostanie przywrócony do domyślnego stylu.
Często Zadawane Pytania
Jak zastosować mój obecny styl monitów terminala na innym urządzeniu?
To bardzo łatwe. Po prostu skopiuj plik konfiguracyjny statku kosmicznego znajdujący się w twoim ~/.config/starship.toml
do drugiego urządzenia. Zainstaluj statek kosmiczny, uruchom ponownie terminal i gotowe.
Jakie są alternatywy dla statku kosmicznego?
Istnieje wiele alternatyw dla statków kosmicznych, które można znaleźć w Internecie. W przypadku powłoki zsh bardzo popularnym narzędziem jest oh-my-zsh. Podobnie, w przypadku muszli ryb, oh-my-fish jest również dobrze znanym narzędziem, którego ludzie używają do dostosowywania monitu powłoki. Kolejny to statek kosmiczny. jest to konfigurowalny monit zsh. Niektóre inne popularne opcje to czysty oraz powłoka syntezatora.
Czy ten artykuł jest przydatny?
Zapisz się do naszego newslettera!
Nasze najnowsze samouczki dostarczane prosto do Twojej skrzynki odbiorczej