> The Fishshell Framework [![MIT License](https://img.shields.io/badge/license-MIT-007EC7.svg?style=flat-square)](/LICENSE.md) [![Fish Shell Version](https://img.shields.io/badge/fish-v2.2.0-007EC7.svg?style=flat-square)](http://fishshell.com) [![Travis Build Status](http://img.shields.io/travis/oh-my-fish/oh-my-fish.svg?style=flat-square)](https://travis-ci.org/oh-my-fish/oh-my-fish) [![Slack Status](https://oh-my-fish-slack.herokuapp.com/badge.svg)](https://oh-my-fish-slack.herokuapp.com) Oh My Fish обеспечивает базовую инфраструктуру чтобы обеспечить установку пакетов которые расширяют и модифицируют внешний вид вашей оболочки. Он быстрый, расширяемый и легок в использовании.

English简体中文Русский

# Установка ```fish curl -L https://github.com/oh-my-fish/oh-my-fish/raw/master/bin/install | fish omf help ``` Или _скачайте_ и запустите сами: ```fish curl -L https://github.com/oh-my-fish/oh-my-fish/raw/master/bin/install > install fish install ``` # Туториал Oh My Fish содержит небольшую утилиту `omf` для загрузки и установки новых пакетов и тем. #### `omf update` Обновляет фреймворк и установленные пакеты. #### `omf install` _`[|]`_ Устанавливает один _или более_ пакетов. - Вы можете установить пакеты прямо по URL с помощью команды `omf install URL` - Когда вызывается без аргументов, устанавливает отсутствующие пакеты из [bundle](#dotfiles). #### `omf list` Список установленных пакетов. #### `omf theme` _``_ Применяет тему. Чтобы получить список доступных тем введите `omf theme`. Также вы можете предварительно посмотреть [доступные темы](./docs/Themes.md) перед установкой. #### `omf remove` _``_ Удаляет тему или пакет. > Пакеты, подписанные на событие `uninstall_` уведомляются перед тем как пакет будет удален, поэтому может быть выполнена кастомная очистка ресурсов. Смотрите [Удаление](/docs/Packages.md#uninstall) чтобы получить больше информации. #### `omf new pkg | theme` _``_ Генерирует новый пакет или тему. > Создает новый каталог в `$OMF_CONFIG/{pkg | themes}/` с шаблоном. #### `omf submit` _`pkg/`_ _`[]`_ Добавляет новый пакет. Чтобы добавить тему используйте `omf submit` _`themes/`_ _``_. Убедитесь что [отправили нам PR][omf-pulls-link] чтобы обновить реестр. #### `omf doctor` Используйте для устранения проблем перед [созданием нового issue][omf-issues-new]. #### `omf destroy` Удаляет Oh My Fish. # Продвинутый Установщик Oh My Fish помещает код для старта в вашем конфиг файле (`~/.config/fish/config.fish`). ## Стартап Каждый раз когда вы открываете новый shell стартап код инициализирует Oh My Fish путь установки и _конфиг_ путь (`~/.config/omf` по умолчанию), потом запускает [`init.fish`](init.fish) скрипт, который автоматически загружает пакеты, темы и ваши кастомные init файлы. Everytime you open a new shell the startup code initializes Oh My Fish installation path and the _config_ path (`~/.config/omf` by default), sourcing the [`init.fish`](init.fish) script afterwards, which autoload packages, themes and your custom init files. Чтобы получить больше информации смотрите [FAQ](docs/en-US/FAQ.md#what-does-oh-my-fish-do-exactly). ## Файлы конфигурации Директория `$OMF_CONFIG` представляет состояние пользователя Oh My Fish, и это превосходный кандидат для добавления в ваши dotfiles и/или добавлена в систему контроля версий. Это четыре важных файла: - __`theme`__ - Текущая тема - __`bundle`__ - Список установленных пакетов/тем - __`init.fish`__ - Кастомный скрипт, который запускается после запуска shell - __`before.init.fish`__ - Кастомный скрипт который запускается перед запуском shell Настоятельно рекомендуется добавлять свои стартап команды в файл `init.fish` вместо `~/.config/fish/config.fish`, так как это позволяет вам держать весь каталог `$OMF_CONFIG` в системе контроля версий. Если вам нужно запускать стартап команды *перед* тем как Oh My Fish начнет загружать плагины, поместите их в `before.init.fish`. Если вы не уверены, как правило, лучше поместить их в `init.fish`. ### О bundle Каждый раз когда пакет/тема устанавливается или удаляется, `bundle` файл обновляется. Также вы можете отредактировать его и потом запустить `omf install` чтобы зафиксировать изменения. Пожалуйста обратите внимание на то что если пакеты/темы добавлены в bundle, они автоматически установятся, в то время как пакеты/темы, удаленные из bundle файла не удалятся из пользовательской папки. ## Создание пакетов Oh My Fish использует продвинутую и хорошо определенную архитектуру плагинов для упрощения их разработки, включая события инициализации/удаления и функции автозагрузки. [Смотрите документацию](docs/en-US/Packages.md) чтобы получить больше информации. [fishshell]: http://fishshell.com [contributors]: https://github.com/oh-my-fish/oh-my-fish/graphs/contributors [omf-pulls-link]: https://github.com/oh-my-fish/oh-my-fish/pulls [omf-issues-new]: https://github.com/oh-my-fish/oh-my-fish/issues/new