[slack-link]: https://fisherman-wharf.herokuapp.com/ [slack-badge]: https://fisherman-wharf.herokuapp.com/badge.svg [travis-link]: https://travis-ci.org/fisherman/fisherman [travis-badge]: https://img.shields.io/travis/fisherman/fisherman.svg [fish]: https://github.com/fish-shell/fish-shell [fisherman]: https://github.com/fisherman.sh [fishfile]: #6-Что-такое-fishfile-и-как-я-могу-его-использовать [организации]: https://github.com/fisherman [онлайн]: http://fisherman.sh/#search [![Build Status][travis-badge]][travis-link] [![Slack][slack-badge]][slack-link] # [fisherman] fisherman это параллельный менеджер плагинов для [fish]. ## Установка Используя curl: ```sh curl -Lo ~/.config/fish/functions/fisher.fish --create-dirs git.io/fisherman ``` ## Использование Установка отдельного плагина. ``` fisher real ``` Установка из нескольких источников. ``` fisher z fzf edc/bass omf/thefuck ``` Установка по ссылке URL. ``` fisher https://github.com/edc/bass ``` Установка из gist. ``` fisher https://gist.github.com/username/1f40e1c6e0551b2666b2 ``` Установка из локального каталога. ```sh fisher ~/plugin ``` Отредактируйте [fishfile] и запустите `fisher`, чтобы изменения вступили в силу. ```sh $EDITOR fishfile # добавьте плагины fisher ``` Список установленных плагинов. ```ApacheConf fisher ls @ plugin # этот плагин представляет собой локальный каталог * real # этот плагин является текущим оформлением командной строки bass fzf grc thefuck z ``` Список доступных плагинов. ``` fisher ls-remote ``` Обновление всего сразу. ``` fisher up ``` Обновление отдельных плагинов. ``` fisher up bass z fzf thefuck ``` Удаление плагинов. ``` fisher rm thefuck ``` Удаление всех плагинов. ``` fisher ls | fisher rm ``` Справка по плагину. ``` fisher help z ``` ## Часто задаваемые вопросы ### Какая версия fish необходима? fisherman был разработан для fish >= 2.3.0. Если вы используете 2.2.0, добавьте следующий код в ваш `~/.config/fish/config.fish` для поддержки [cниппетов](#8-Что-такое-плагин). ```fish for file in ~/.config/fish/conf.d/*.fish source $file end ``` ### Как сделать fish основной командной оболочкой? Добавьте fish в список командных оболочек */etc/shells* и сделайте её оболочкой по умолчанию. ```sh echo "/usr/local/bin/fish" | sudo tee -a /etc/shells chsh -s /usr/local/bin/fish ``` ### Как мне удалить fisherman? ```fish fisher self-uninstall ``` ### Совместим ли fisherman с темами и плагинами oh my fish? Да. ### Где fisherman хранит данные? Скрипт fisherman находится в *~/.config/fish/functions/fisher.fish*. Кэш и настройки плагинов создаются в *~/.cache/fisherman* и *~/.config/fisherman* соответственно. fishfile сохраняется в *~/.config/fish/fishfile*. ### Что такое fishfile и как я могу его использовать? В *~/.config/fish/fishfile* хранится список всех установленных плагинов. fisherman обновляет этот файл автоматически, но вы также можете добавить плагины в список вручную и запустить `fisher`, чтобы эти изменения вступили в силу. ``` fisherman/real fisherman/z omf/thefuck omf/grc ``` Этот механизм только устанавливает плагины и отсутствующие зависимости. Чтобы удалить плагин, используйте `fisher rm`. ### Где я могу найти список плагинов для fish? Используйте поиск по Github [организации] или [онлайн] поиск на сайте. ### Что такое плагин? Плагином является: 1. каталог или git репозиторий с файлом *.fish* либо на корневом уровне проекта, либо в директории *functions* 2. тема или оформление командной строки, т.е. *fish_prompt.fish*, *fish_right_prompt.fish* или оба файла 3. сниппет, т.е. один или несколько *.fish* файлов в директории *conf.d*, которые загружаются при запуске fish ### Как я могу объявить зависимости моего плагина? Создайте новый *fishfile* в корне вашего проекта со списком зависимостей. ```fish owner/repo https://github.com/owner/repo https://gist.github.com/owner/c256586044fea832e62f02bc6f6daf32 ```