Commit fa7a3a33 authored by Justin Hileman's avatar Justin Hileman

Merge pull request #289 from demidovakatya/master

Improve grammar and punctuation for docs/RU
parents 74439cc1 f73002d9
...@@ -16,57 +16,57 @@ ...@@ -16,57 +16,57 @@
# FAQ # FAQ
Спасибо что нашли время прочитать этот FAQ. Не стесняйтесь создавать новый Issue если вы не нашли тут ответ на свой вопрос. Спасибо, что нашли время прочитать этот FAQ. Не стесняйтесь создавать новый Issue, если вы не нашли тут ответ на свой вопрос.
## Что такое Oh My Fish и зачем он мне нужен? ## Что такое Oh My Fish и зачем он мне нужен?
Oh My Fish это _фреймворк_ для [Fishshell](http://fishshell.com/). Он помогает Вам управлять Вашими настройками, темами и пакетами. Oh My Fish это _фреймворк_ для [Fishshell](http://fishshell.com/). Он помогает вам управлять Вашими настройками, темами и пакетами.
## Что мне нужно знать чтобы использовать Oh My Fish? ## Что мне нужно знать, чтобы использовать Oh My Fish?
_Ничего_. Вы можете установить Oh My Fish и продолжать использовать Fish как обычно. Когда Вы захотите узнать больше просто наберите `omf help`. _Ничего_. Вы можете установить Oh My Fish и продолжать использовать Fish как обычно. Когда вы захотите узнать больше, просто наберите `omf help`.
## Что такое пакеты в Oh My Fish? ## Что такое пакеты в Oh My Fish?
Пакеты в Oh My Fish - это темы и плагины, написанные на fish которые наследуют базовую функциональность Shell, запускают код во время инициализации, добавляют автодополнение к известным утилитам и тд. Пакеты в Oh My Fish - это темы и плагины, написанные на fish, которые наследуют базовую функциональность Shell, запускают код во время инициализации, добавляют автодополнение к известным утилитам и тд.
## Какие типы пакетов существуют в Oh My Fish? ## Какие типы пакетов существуют в Oh My Fish?
Существует 3 основных вида пакетов: Существует 3 основных вида пакетов:
1. Конфигурационные утилиты. Например [`pkg-pyenv`](https://github.com/oh-my-fish/pkg-pyenv) проверяет существует ли `pyenv` в Вашей системе и запускает `(pyenv init - | psub)` для Вас при запуске Fish. 1. Конфигурационные утилиты. Например, [`pkg-pyenv`](https://github.com/oh-my-fish/pkg-pyenv) проверяет, существует ли `pyenv` в вашей системе и запускает `(pyenv init - | psub)` для вас при запуске Fish.
2. Темы. Ознакомьтесь с [темами](https://github.com/oh-my-fish). 2. Темы. Ознакомьтесь с [темами](https://github.com/oh-my-fish).
3. Традиционные утилиты оболочки. Например [`pkg-copy`](https://github.com/oh-my-fish/pkg-copy), утилита буфера обмена, совместимая с Linux и OSX. 3. Традиционные утилиты оболочки. Например, [`pkg-copy`](https://github.com/oh-my-fish/pkg-copy) утилита буфера обмена, совместимая с Linux и OSX.
## Что именно делает Oh My Fish? ## Что именно делает Oh My Fish?
+ Запускает `$OMF_CONFIG/before.init.fish` если доступно. + Запускает `$OMF_CONFIG/before.init.fish`, если доступно.
+ Автозагрузка установленных пакетов и тем из `$OMF_PATH/`. + Автозагрузка установленных пакетов и тем из `$OMF_PATH/`.
+ Автозагрузка пути к Вашему конфигу. `~/.config/omf` по умолчанию, но конфигурируемый через `$OMF_CONFIG`. + Автозагрузка пути к вашему конфигу. По умолчанию это `~/.config/omf` по умолчанию, но его можно настроить через `$OMF_CONFIG`.
+ Автозагрузка любых `функций` из `$OMF_PATH` и `$OMF_CONFIG` + Автозагрузка любых `функций` из `$OMF_PATH` и `$OMF_CONFIG`
+ Запускает `$OMF_CONFIG/init.fish` если доступно. + Запускает `$OMF_CONFIG/init.fish`, если доступно.
## Как я могу обновить текущую версию Oh My Fish? ## Как я могу обновить текущую версию Oh My Fish?
> :предупреждение: Не забудьте сперва сделать резервную копию Ваших dotfiles и других важных данных. > :warning: Не забудьте сперва сделать резервную копию ваших dotfiles и других важных данных.
``` ```
curl -L github.com/oh-my-fish/oh-my-fish/raw/master/bin/install | sh curl -L github.com/oh-my-fish/oh-my-fish/raw/master/bin/install | sh
``` ```
Теперь Вы можете безопасно удалить `$fish_path`. Теперь вы можете безопасно удалить `$fish_path`.
```fish ```fish
rm -rf "$fish_path" rm -rf "$fish_path"
...@@ -81,14 +81,14 @@ rm -rf "$fish_path" ...@@ -81,14 +81,14 @@ rm -rf "$fish_path"
echo "/usr/local/bin/fish" | sudo tee -a /etc/shells echo "/usr/local/bin/fish" | sudo tee -a /etc/shells
``` ```
Сделайте Fish Вашей оболочкой по умолчанию: Сделайте Fish вашей оболочкой по умолчанию:
```sh ```sh
chsh -s /usr/local/bin/fish chsh -s /usr/local/bin/fish
``` ```
Чтобы обратно переключиться на оболочку по умолчанию: Чтобы обратно переключиться на оболочку по умолчанию:
> Вышедший на замену `/bin/bash` с `/bin/tcsh` или `/bin/zsh` в соответствующих случаях. > Замените `/bin/bash` с `/bin/tcsh` или `/bin/zsh` в соответствующих случаях.
```sh ```sh
chsh -s /bin/bash chsh -s /bin/bash
......
...@@ -14,9 +14,9 @@ ...@@ -14,9 +14,9 @@
# Создание # Создание
Чтобы научиться создавать пакеты давайте создадим новый пакет который будет выводить команду `hello_world` для Вашей оболочки. Имена пакетов могут содержать только символы нижнего регистра и символ подчеркивания для разделения слов. Чтобы научиться создавать пакеты, давайте создадим новый пакет, который будет выводить команду `hello_world` для вашей оболочки. Имена пакетов могут содержать только символы нижнего регистра и символ подчеркивания для разделения слов.
Oh My Fish может сгенерировать структуру пакета для Вас. Используйте команду `omf new`: Oh My Fish может сгенерировать структуру пакета для вас. Используйте команду `omf new`:
```fish ```fish
$ omf new pkg hello_world $ omf new pkg hello_world
...@@ -24,7 +24,7 @@ $ omf new pkg hello_world ...@@ -24,7 +24,7 @@ $ omf new pkg hello_world
> Используйте `omf new theme my_theme_name` для тем. > Используйте `omf new theme my_theme_name` для тем.
Утилита изменяет текущий каталог на только что созданыый пакет: Утилита изменяет текущий каталог на только что созданный пакет:
``` ```
$ ls -l $ ls -l
...@@ -33,7 +33,7 @@ $ ls -l ...@@ -33,7 +33,7 @@ $ ls -l
completions/hello_world.fish completions/hello_world.fish
``` ```
Всегда описывайте как работает ваш пакет в `README.md`. Также прочитайте больше об [автодополнении](http://fishshell.com/docs/current/commands.html#complete) а также позаботьтесь о том чтобы предоставить его для ваших утилит, когда это возможно. Всегда описывайте, как работает ваш пакет в `README.md`. Также прочитайте больше об [автодополнении](http://fishshell.com/docs/current/commands.html#complete) и позаботьтесь о том, чтобы предоставить его для ваших утилит, когда это возможно.
`hello_world.fish` определяет одну функцию: `hello_world.fish` определяет одну функцию:
...@@ -43,18 +43,18 @@ function hello_world -d "Prints hello world" ...@@ -43,18 +43,18 @@ function hello_world -d "Prints hello world"
end end
``` ```
Каждая функция в Вашем пакете должна быть объявлена в своем собственном файле. Это требование механизма автозагрузки fish, который загружает функции по запросу, избегая загрузки ненужных функций. Каждая функция в вашем пакете должна быть объявлена в своем собственном файле. Это требование механизма автозагрузки fish, который загружает функции по запросу, избегая загрузки ненужных функций.
Имейте в виду что fish не имеет приватной области видимости, поэтому если Вам необходимо разделить Ваш пакет на функции, добавьте префикс к Вашим функциям как здесь: Имейте в виду, что fish не имеет приватной области видимости, поэтому если вам необходимо разделить пакет на функции, добавьте такой префикс к функциям:
`__hello_world.my_extra_function`, чтобы избежать совпадения имен и загрязнения глобального пространства имен. `__hello_world.my_extra_function`. Это поможет избежать совпадения имен и загрязнения глобального пространства имен.
# События # События
Пакеты были спроектированы так, чтобы использовать преимущества событий fish. На данный момент существует два события которые Oh My Fish будет передавать Вашему пакету: Пакеты были спроектированы так, чтобы использовать преимущества событий fish. На данный момент существует два события которые Oh My Fish будет передавать вашему пакету:
## Инициализация ## Инициализация
Если вы хотите быть [уведомлены](http://fishshell.com/docs/current/commands.html#emit) когда Ваш пакет загружается, объявите следующую функцию в Вашем `hello_world.fish`: Если вы хотите быть [уведомлены](http://fishshell.com/docs/current/commands.html#emit) когда ваш пакет загружается, объявите следующую функцию в вашем `hello_world.fish`:
```fish ```fish
function init -a path --on-event init_hello_world function init -a path --on-event init_hello_world
...@@ -62,11 +62,11 @@ function init -a path --on-event init_hello_world ...@@ -62,11 +62,11 @@ function init -a path --on-event init_hello_world
end end
``` ```
Используйте это событие чтобы модифицировать окружение, загружать ресурсы, автоматически загружать функции и тд. Если Ваш пакет не экспортирует никаких функций, Вы все равно можете использовать это событие чтобы добавить функциональность в Ваш пакет. Используйте это событие, чтобы модифицировать окружение, загружать ресурсы, автоматически загружать функции и т.д. Если ваш пакет не экспортирует никаких функций, вы все равно можете использовать это событие для увеличения функциональности пакета.
## Удаление ## Удаление
Oh My Fish генерирует `uninstall_<pkg>` события перед тем как пакет удален с помощью команды `omf remove <pkg>`. Подписчики могут использовать это событие чтобы очистить кастомные ресурсы и тд. Oh My Fish генерирует событие `uninstall_<pkg>` перед удалением пакета с помощью команды `omf remove <pkg>`. Подписчики могут использовать это событие, чтобы очистить кастомные ресурсы и т.д.
```fish ```fish
function uninstall --on-event uninstall_hello_world function uninstall --on-event uninstall_hello_world
...@@ -78,18 +78,17 @@ end ...@@ -78,18 +78,17 @@ end
Oh My Fish хранит реестр публичных пакетов в `$OMF_PATH/db/`. Oh My Fish хранит реестр публичных пакетов в `$OMF_PATH/db/`.
Чтобы добавить Ваш пакет в реестр вам необходимо: Чтобы добавить ваш пакет в реестр, введите в консоли:
To add your package to the registry you need to:
```fish ```fish
# Для пакетов: # Для пакетов:
omf submit pkg/hello_world .../hello_world.git omf submit pkg/hello_world .../hello_world.git
# Для тем # Для тем:
omf submit theme/my_theme .../my_theme_name.git omf submit theme/my_theme .../my_theme_name.git
``` ```
Это добавит новую сущность в ваш локальный реестр. Теперь Вам просто надо [отправить нам PR][omf-pulls-link] чтобы обновить глобальный реестр. Это добавит новую сущность в ваш локальный реестр. Теперь вам просто надо [отправить нам PR][omf-pulls-link], чтобы обновить глобальный реестр.
[omf-pulls-link]: https://github.com/oh-my-fish/oh-my-fish/pulls [omf-pulls-link]: https://github.com/oh-my-fish/oh-my-fish/pulls
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
[![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) [![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 обеспечивает базовую инфраструктуру чтобы обеспечить установку пакетов которые расширяют и модифицируют внешний вид вашей оболочки. Он быстрый, расширяемый и легок в использовании. Oh My Fish обеспечивает базовую инфраструктуру, чтобы обеспечить установку пакетов которые расширяют и модифицируют внешний вид вашей оболочки. Он быстрый, расширяемый и легкий в использовании.
<br><br> <br><br>
...@@ -43,7 +43,7 @@ Oh My Fish содержит небольшую утилиту `omf` для за ...@@ -43,7 +43,7 @@ Oh My Fish содержит небольшую утилиту `omf` для за
Устанавливает один _или более_ пакетов. Устанавливает один _или более_ пакетов.
- Вы можете установить пакеты прямо по URL с помощью команды `omf install URL` - Вы можете установить пакеты прямо по URL с помощью команды `omf install URL`
- Когда вызывается без аргументов, устанавливает отсутствующие пакеты из [bundle](#файлы конфигурации). - Когда вызывается без аргументов, устанавливает отсутствующие пакеты из [bundle](#Файлы-конфигурации).
#### `omf list` #### `omf list`
...@@ -51,13 +51,13 @@ Oh My Fish содержит небольшую утилиту `omf` для за ...@@ -51,13 +51,13 @@ Oh My Fish содержит небольшую утилиту `omf` для за
#### `omf theme` _`<theme>`_ #### `omf theme` _`<theme>`_
Применяет тему. Чтобы получить список доступных тем введите `omf theme`. Также вы можете предварительно посмотреть [доступные темы](../docs/Themes.md) перед установкой. Применяет тему. Чтобы получить список доступных тем, введите `omf theme`. Также вы можете предварительно посмотреть [доступные темы](../Themes.md) перед установкой.
#### `omf remove` _`<name>`_ #### `omf remove` _`<name>`_
Удаляет тему или пакет. Удаляет тему или пакет.
> Пакеты, подписанные на событие `uninstall_<pkg>` уведомляются перед тем как пакет будет удален, поэтому может быть выполнена кастомная очистка ресурсов. Смотрите [Удаление](Packages.md#Удаление) чтобы получить больше информации. > Пакеты, подписанные на событие `uninstall_<pkg>`, уведомляются перед тем, как пакет будет удален, поэтому может быть выполнена кастомная очистка ресурсов. Читайте подробнее про [удаление](Packages.md#Удаление) пакетов в Oh My Fish.
#### `omf new pkg | theme` _`<name>`_ #### `omf new pkg | theme` _`<name>`_
...@@ -67,9 +67,9 @@ Oh My Fish содержит небольшую утилиту `omf` для за ...@@ -67,9 +67,9 @@ Oh My Fish содержит небольшую утилиту `omf` для за
#### `omf submit` _`pkg/<name>`_ _`[<url>]`_ #### `omf submit` _`pkg/<name>`_ _`[<url>]`_
Добавляет новый пакет. Чтобы добавить тему используйте `omf submit` _`themes/<name>`_ _`<url>`_. Добавляет новый пакет. Чтобы добавить тему, используйте `omf submit` _`themes/<name>`_ _`<url>`_.
Убедитесь что [отправили нам PR][omf-pulls-link] чтобы обновить реестр. Убедитесь что [отправили нам PR][omf-pulls-link], чтобы обновить реестр.
#### `omf doctor` #### `omf doctor`
...@@ -85,29 +85,30 @@ Oh My Fish содержит небольшую утилиту `omf` для за ...@@ -85,29 +85,30 @@ Oh My Fish содержит небольшую утилиту `omf` для за
## Стартап ## Стартап
Каждый раз когда вы открываете новый shell стартап код инициализирует Oh My Fish путь установки и _конфиг_ путь (`~/.config/omf` по умолчанию), потом запускает [`init.fish`](../../init.fish) скрипт, который автоматически загружает пакеты, темы и ваши кастомные init файлы. Чтобы узнать больше информации смотрите [FAQ](FAQ.md#что именно делает Oh My Fish?). Каждый раз, когда вы открываете новый shell, стартап код инициализирует Oh My Fish путь установки и _конфиг_ путь (`~/.config/omf` по умолчанию), потом запускает [`init.fish`](../../init.fish) скрипт, который автоматически загружает пакеты, темы и ваши кастомные init файлы. С подробностями ознакомьтесь в [FAQ](FAQ.md#что именно делает Oh My Fish?).
## Файлы конфигурации ## Файлы конфигурации
Директория `$OMF_CONFIG` представляет состояние пользователя Oh My Fish, и это превосходный кандидат для добавления в ваши dotfiles и/или добавлена в систему контроля версий. Это четыре важных файла: Директория `$OMF_CONFIG` представляет состояние пользователя Oh My Fish, и это превосходный кандидат для добавления в ваши dotfiles и/или в систему контроля версий. Это четыре важных файла:
- __`theme`__ - Текущая тема - __`theme`__ - Текущая тема
- __`bundle`__ - Список установленных пакетов/тем - __`bundle`__ - Список установленных пакетов/тем
- __`init.fish`__ - Кастомный скрипт, который запускается после запуска shell - __`init.fish`__ - Кастомный скрипт, который запускается после запуска shell
- __`before.init.fish`__ - Кастомный скрипт который запускается перед запуском shell - __`before.init.fish`__ - Кастомный скрипт, который запускается перед запуском shell
Настоятельно рекомендуется добавлять свои стартап команды в файл `init.fish` вместо `~/.config/fish/config.fish`, так как это позволяет вам держать весь каталог `$OMF_CONFIG` в системе контроля версий. Настоятельно рекомендуется добавлять свои стартап команды в файл `init.fish` вместо `~/.config/fish/config.fish`, так как это позволяет вам держать весь каталог `$OMF_CONFIG` в системе контроля версий.
Если вам нужно запускать стартап команды *перед* тем как Oh My Fish начнет загружать плагины, поместите их в `before.init.fish`. Если вы не уверены, как правило, лучше поместить их в `init.fish`. Если вам нужно запускать стартап команды *перед* тем, как Oh My Fish начнет загружать плагины, поместите их в `before.init.fish`. Если вы не уверены, как правило, лучше поместить их в `init.fish`.
### О bundle ### О `bundle`
Каждый раз когда пакет/тема устанавливается или удаляется, `bundle` файл обновляется. Также вы можете отредактировать его и потом запустить `omf install` чтобы зафиксировать изменения. Пожалуйста обратите внимание на то что если пакеты/темы добавлены в bundle, они автоматически установятся, в то время как пакеты/темы, удаленные из bundle файла не удалятся из пользовательской папки. Каждый раз, когда пакет/тема устанавливается или удаляется, `bundle` файл обновляется. Также вы можете отредактировать его и потом запустить `omf install` чтобы зафиксировать изменения. Пожалуйста, обратите внимание: если пакеты/темы добавлены в `bundle`, они автоматически установятся, в то время как пакеты/темы, удаленные из `bundle` файла, не удалятся из пользовательской папки.
## Создание пакетов ## Создание пакетов
Oh My Fish использует продвинутую и хорошо определенную архитектуру плагинов для упрощения их разработки, включая события инициализации/удаления и функции автозагрузки. Oh My Fish использует продвинутую и хорошо определенную архитектуру плагинов для упрощения их разработки, включая события инициализации/удаления и функции автозагрузки.
[Смотрите документацию](Packages.md) чтобы узнать больше информации.
[Смотрите документацию](Packages.md), чтобы узнать подробнее.
[fishshell]: http://fishshell.com [fishshell]: http://fishshell.com
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment