> 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 надає базову інфраструктуру, щоб забезпечити встановлення пакетів які розширюють та модифікують зовнішній вигляд вашої оболонки. Він швидкий, розширюваний та легкий у використанні. > Also in  > 🇺🇸 > 🇨🇳 > 🇷🇺 > 🇧🇷
# Встановлення ```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](#Файли-конфигурації). #### `omf list` Список встановлених пакетів. #### `omf theme` _``_ Задіює тему. Для того щоб отримати список доступних тем, виконайте `omf theme`. Також ви можете попередньо проглянути усі [доступні теми](../Themes.md) перед встановленням. #### `omf remove` _``_ Видаляє тему або пакет. > Пакети, підписані на події `uninstall_`, повідомлюються перед тим, як пакет буде видалено, завдяки цьому може бути реалізоване кастомне очищення ресурсів. Читайте детальніше про [видалення](Packages.md#Видалення) пакетів в Oh My Fish. #### `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 файли. Із деталями можна ознайомитися у [FAQ](FAQ.md#Що саме робить Oh My Fish?). ## Файли конфігурації Каталог `$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 використовує сучасну та добре виділену архітектуру плагінів для спрощення їх розробки, включаючи події ініціалізації/видалення та функції автозавантаження. [Дивіться документацію](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