fish este un shell de linie de comandă inteligent și ușor de utilizat pentru macOS, Linux și restul familiei. fish include caracteristici precum syntaxhighlighting, autosuggest-as-you-type și completări de tabulare fanteziste care funcționează pur și simplu, fără a fi nevoie de configurare.
Pentru mai multe informații despre filozofia de proiectare a lui fish, consultați designdocument.
- Quick Start
- Getting fish
- macOS
- Pachete pentru Linux
- Windows
- Construirea de la sursă
- Rularea fish
- Dependențe
- Trecerea la fish
- Construire
- Dependențe
- Construirea din sursă (toate platformele) – Makefile generator
- Construire din sursă (macOS) – Xcode
- Ajutor, nu s-a construit!
- Contribuirea modificărilor la cod
- Contactați-ne
Quick Start
fish funcționează în general ca și alte shell-uri, cum ar fi bash sau zsh. Câtevadiferențe importante pot fi găsite lahttps://fishshell.com/docs/current/tutorial.html căutând expresia magică „unlike other shells”.
Documentația detaliată a utilizatorului este disponibilă rulând help
în interiorul luifish, și, de asemenea, la https://fishshell.com/docs/current/index.html
Puteți să vă jucați rapid cu fish chiar în browserul dvs. făcând clic pe butonul de mai jos:
Getting fish
macOS
fish poate fi instalat:
- folosind Homebrew:
brew install fish
- folosind MacPorts:
sudo port install fish
- folosind programul de instalare de pe fishshell.com
- ca aplicație de sine stătătoare de pe fishshell.com
Pachete pentru Linux
Pachete pentru Debian, Fedora, openSUSE și Red Hat EnterpriseLinux/CentOS sunt disponibile la openSUSE BuildService.
Pachetele pentru Ubuntu sunt disponibile de la fishPPA,și pot fi instalate folosind următoarele comenzi:
sudo apt-add-repository ppa:fish-shell/release-3sudo apt-get updatesudo apt-get install fish
Instrucțiuni pentru alte distribuții pot fi găsite la fishshell.com.
Windows
- Pe Windows 10, fish poate fi instalat sub Subsistemul WSL Windowspentru Linux cu instrucțiunile pentru distribuția corespunzătoareenumerate mai sus la „Pachete pentru Linux”, sau de la sursă cuinstrucțiunile de mai jos.
- Fish poate fi, de asemenea, instalat pe toate versiunile de Windows folosindCygwin (din categoria Shells).
Construirea de la sursă
Dacă pachetele nu sunt disponibile pentru platforma dumneavoastră, sunt disponibile tarball-uri semnate GPG la fishshell.com șifish-shell peGitHub. Consultați secțiuneaBuilding pentru instrucțiuni.
Rularea fish
După ce a fost instalat, rulați fish
din shell-ul dvs. curent pentru a încerca fish!
Dependențe
Executarea lui fish necesită:
- curses sau ncurses (preinstalat pe majoritatea sistemelor *nix)
- unele utilități comune ale sistemului *nix (în prezent
mktemp
), în plus față de utilitățile de bază POSIX (cat
,cut
,dirname
,ls
,mkdir
,mkfifo
,rm
,sort
,tee
,tr
,uname
șised
cel puțin, dar este de preferat coreutils complet plusfind
șiawk
) - Librăria gettext, dacă este compilată cu suport pentru traducere
Următoarele caracteristici opționale au, de asemenea, cerințe specifice:
- comandațiile de compilare care au opțiunea
--help
sau imprimă mesaje de utilizare necesităul
și fienroff
, fiemandoc
pentru afișare - generarea automatizată a completărilor din paginile de manual necesită Python 3.5+
- instrumentul de configurare web
fish_config
necesită Python 3.5+ și un browser web - integrarea clipboard-ului de sistem (cu legăturile implicite Ctrl-V și Ctrl-X) necesită fie
xsel
, fiexclip
,wl-copy
/wl-paste
saupbcopy
/pbpaste
utilitarele - completările complete pentru
yarn
șinpm
necesită modululall-the-package-names
NPM
Trecerea la fish
Dacă doriți să utilizați fish ca shell implicit, utilizați următoareacomandă:
chsh -s /usr/local/bin/fish
chsh
vă va cere parola și vă va schimba shell-ul implicit. (Înlocuiți /usr/local/bin/fish
cu orice cale în care a fost instalat fish, dacă este diferită.) Deconectați-vă, apoi conectați-vă din nou pentru ca modificările să aibă efect.
Utilizați următoarea comandă dacă fish nu este deja adăugat la /etc/shells
pentru a permite ca fish să fie shell-ul dvs. de autentificare:
echo /usr/local/bin/fish | sudo tee -a /etc/shells
Pentru a vă schimba shell-ul implicit înapoi, puteți rula chsh -s /bin/bash
(înlocuind /bin/bash
cu /bin/tcsh
sau /bin/zsh
, după caz).
Construire
Dependențe
Compilarea lui fish necesită:
- un compilator C++11 (g++ 4.8 sau mai târziu, sau clang 3.3 sau mai târziu)
- CMake (versiunea 3.2 sau o versiune ulterioară)
- o implementare curses, cum ar fi ncurses (antete și biblioteci)
- PCRE2 (antete și biblioteci) – o copie este inclusă cu fish
- gettext (antete și biblioteci) – opțional, pentru suportul de traducere
Sphinx este, de asemenea, opțional necesar pentru a construi documentația din depozitul git aclonat.
În plus, rularea suitei de teste necesită Python 3.5+ și pachetul pexpect.
Construirea din sursă (toate platformele) – Makefile generator
Pentru a instala în /usr/local
, executați:
mkdir build; cd buildcmake ..makesudo make install
Directorul de instalare poate fi schimbat folosind parametrul-DCMAKE_INSTALL_PREFIX
pentru cmake
.
Construire din sursă (macOS) – Xcode
mkdir build; cd buildcmake .. -G Xcode
Un proiect Xcode va fi acum disponibil în subdirectorul build
. îl puteți deschide cu Xcode, sau executați următoarele pentru a construi și instala în/usr/local
:
xcodebuildxcodebuild -scheme install
Directorul de instalare poate fi schimbat folosind parametrul-DCMAKE_INSTALL_PREFIX
pentru cmake
.
Ajutor, nu s-a construit!
Dacă fish raportează că nu a putut găsi curses, încercați să instalați un pachet cursesdevelopment și construiți din nou.
Pe Debian sau Ubuntu doriți:
sudo apt-get install build-essential cmake ncurses-dev libncurses5-dev libpcre2-dev gettext
Pe RedHat, CentOS, sau Amazon EC2:
sudo yum install ncurses-devel
Contribuirea modificărilor la cod
Vezi Ghidul pentru dezvoltatori.
Contactați-ne
Întrebări, comentarii, vociferări și dezlănțuiri pot fi postate pe lista oficială fishmailing la https://lists.sourceforge.net/lists/listinfo/fish-usersor alăturați-vă nouă pe canalul nostru gitter.imchannel. Sau folosiți eticheta fishtag onStackoverflow pentruîntrebări legate de scriptul fish și eticheta fish tag onSuperuser pentru toate celelalte întrebări (de exemplu, personalizarea culorilor, schimbarea legăturilor de taste).
Ați găsit un bug? Aveți o idee nemaipomenită? Vă rugăm să deschideți unissue.