fish jest inteligentną i przyjazną dla użytkownika powłoką wiersza poleceń dla macOS, Linuksa i reszty rodziny. fish zawiera funkcje takie jak podświetlanie składni, autosugestie i wymyślne uzupełnienia tabulatorów, które po prostu działają, bez konieczności konfiguracji.
Więcej na temat filozofii projektowania fish, zobacz designdocument.
- Szybki start
- Pobieranie fish
- macOS
- Pakiety dla Linuksa
- Windows
- Budowanie ze źródła
- Uruchamianie fish
- Zależności
- Przełączanie na fish
- Budowanie
- Zależności
- Budowanie ze źródła (wszystkie platformy) – generator Makefile
- Budowanie ze źródła (macOS) – Xcode
- Help, it didn’t build!
- Wprowadzanie zmian do kodu
- Skontaktuj się z nami
Szybki start
fish generalnie działa jak inne powłoki, takie jak bash czy zsh. Kilka istotnych różnic można znaleźć na stroniehttps://fishshell.com/docs/current/tutorial.html, szukając magicznej frazy „unlike other shells”.
Szczegółowa dokumentacja użytkownika jest dostępna po uruchomieniu help
w obrębie fish, a także pod adresem https://fishshell.com/docs/current/index.html
Możesz szybko pobawić się z fish bezpośrednio w przeglądarce, klikając poniższy przycisk:
Pobieranie fish
macOS
fish można zainstalować:
- używając Homebrew:
brew install fish
- używając MacPorts:
sudo port install fish
- używając instalatora z fishshell.com
- jako samodzielną aplikację z fishshell.com
Pakiety dla Linuksa
Pakiety dla Debiana, Fedory, openSUSE i Red Hat EnterpriseLinux/CentOS są dostępne z openSUSE BuildService.
Pakiety dla Ubuntu są dostępne z fishPPA i mogą być zainstalowane za pomocą następujących poleceń:
sudo apt-add-repository ppa:fish-shell/release-3sudo apt-get updatesudo apt-get install fish
Instrukcje dla innych dystrybucji można znaleźć na stronie fishshell.com.
Windows
- Na Windows 10, fish może być zainstalowany w WSL Windows Subsystem for Linux z instrukcjami dla odpowiedniej dystrybucji wymienionej powyżej w „Packages for Linux”, lub ze źródła z poniższymi instrukcjami.
- Fish może być również zainstalowany na wszystkich wersjach Windows przy użyciuCygwin (z kategorii Shells).
Budowanie ze źródła
Jeśli pakiety nie są dostępne dla twojej platformy, kulki tar z podpisem GPG są dostępne na fishshell.com ifish-shell naGitHub. Zobacz sekcjęBuilding, aby uzyskać instrukcje.
Uruchamianie fish
Po zainstalowaniu, uruchom fish
z bieżącej powłoki, aby wypróbować fish!
Zależności
Uruchomienie fish wymaga:
- curses lub ncurses (preinstalowane w większości systemów *nix)
- niektórych popularnych narzędzi systemowych *nix (obecnie
mktemp
), oprócz podstawowych narzędzi POSIX (cat
,cut
,dirname
,ls
,mkdir
,mkfifo
,rm
,sort
,tee
,tr
,uname
ised
co najmniej, ale preferowane jest pełne coreutils plusfind
iawk
) - Biblioteka gettext, jeśli skompilowana z obsługą translacji
Następujące opcjonalne funkcje również mają określone wymagania:
- polecenia wbudowane, które mają opcję
--help
lub drukują komunikaty usagemessages, wymagająul
i albonroff
albomandoc
fordisplay - automatyczne generowanie uzupełnień ze stron podręcznika wymaga Pythona 3.5+
- narzędzie
fish_config
do konfiguracji sieciowej wymaga Pythona 3.5+ i przeglądarki internetowej - integracja schowka systemowego (z domyślnymi przypisaniami Ctrl-V i Ctrl-X) wymaga modułów
xsel
,xclip
,wl-copy
/wl-paste
lubpbcopy
/pbpaste
narzędzi - pełne uzupełnienia dla
yarn
inpm
wymagają modułuall-the-package-names
NPM
Przełączanie na fish
Jeśli chcesz używać fish jako domyślnej powłoki, użyj następującego polecenia:
chsh -s /usr/local/bin/fish
chsh
spowoduje wyświetlenie monitu o podanie hasła i zmianę domyślnej powłoki. (Zastąp /usr/local/bin/fish
ścieżką, do której zainstalowano fish, jeśli się różni.) Wyloguj się, a następnie zaloguj się ponownie, aby zmiany zaczęły obowiązywać.
Użyj następującego polecenia, jeśli fish nie jest jeszcze dodane do /etc/shells
, aby zezwolić fish na bycie twoją powłoką logowania:
echo /usr/local/bin/fish | sudo tee -a /etc/shells
Aby przełączyć domyślną powłokę z powrotem, możesz uruchomić chsh -s /bin/bash
(zastępując /bin/bash
przez /bin/tcsh
lub /bin/zsh
odpowiednio).
Budowanie
Zależności
Kompilacja fish wymaga:
- kompilatora C++11 (g++ 4.8 lub nowszy, lub clang 3.3 lub nowszy)
- CMake (wersja 3.2 lub nowsza)
- a implementacja curses, taka jak ncurses (nagłówki i biblioteki)
- PCRE2 (nagłówki i biblioteki) – kopia jest dołączona do fish
- gettext (nagłówki i biblioteki) – opcjonalnie, dla wsparcia tłumaczenia
Sphinx jest również opcjonalnie wymagany do budowania dokumentacji z dołączonego repozytorium git.
Dodatkowo, uruchomienie zestawu testów wymaga Pythona 3.5+ i pakietu pexpect.
Budowanie ze źródła (wszystkie platformy) – generator Makefile
Aby zainstalować w /usr/local
, uruchom:
mkdir build; cd buildcmake ..makesudo make install
Katalog instalacyjny można zmienić za pomocą parametru-DCMAKE_INSTALL_PREFIX
dla cmake
.
Budowanie ze źródła (macOS) – Xcode
mkdir build; cd buildcmake .. -G Xcode
Projekt Xcode będzie teraz dostępny w podkatalogu build
.Można go otworzyć za pomocą Xcode lub uruchomić poniższe polecenie, aby zbudować i zainstalować w/usr/local
:
xcodebuildxcodebuild -scheme install
Katalog instalacyjny można zmienić za pomocą-DCMAKE_INSTALL_PREFIX
parametru dla cmake
.
Help, it didn’t build!
Jeśli fish zgłasza, że nie może znaleźć curses, spróbuj zainstalować pakiet cursesdevelopment i zbuduj ponownie.
Na Debianie lub Ubuntu chcesz:
sudo apt-get install build-essential cmake ncurses-dev libncurses5-dev libpcre2-dev gettext
Na RedHat, CentOS, lub Amazon EC2:
sudo yum install ncurses-devel
Wprowadzanie zmian do kodu
Zobacz Przewodnik dla programistów.
Skontaktuj się z nami
Pytania, komentarze, gawędy i złorzeczenia można wysyłać na oficjalną listę fishmailingową pod adresem https://lists.sourceforge.net/lists/listinfo/fish-usersor dołącz do nas na naszym kanale gitter.imchannel. Możesz też użyć tagu fishtag onStackoverflow dla pytań związanych ze skryptem fish oraz tagu fish onSuperuser dla wszystkich innych pytań (np. dostosowywanie kolorów, zmiana przypisań klawiszy).
Znalazłeś błąd? Masz świetny pomysł? Proszę otworzyć temat.