mirror of
https://github.com/arcan1s/arcanis.me.git
synced 2025-07-23 09:29:55 +00:00
more pretty md files
This commit is contained in:
@ -7,7 +7,11 @@ tags: zshrc, настройка, linux
|
||||
title: О zshrc
|
||||
short: about-zshrc
|
||||
---
|
||||
Это моя первая статья в блоге (я думаю, мне нужно что-нибудь для тестов =)). Существует множество похожих статей и, я думаю, не буду отличаться от большинства. Я просто хочу показать мой `.zshrc` и объяснить, что в нем есть и зачем оно нужно. Также, любые комментарии или дополнения приветствуются. [Оригинал](//archlinux.org.ru/forum/topic/12752/ "Тема на форуме") статьи.
|
||||
Это моя первая статья в блоге (я думаю, мне нужно что-нибудь для тестов =)).
|
||||
Существует множество похожих статей и, я думаю, не буду отличаться от большинства.
|
||||
Я просто хочу показать мой `.zshrc` и объяснить, что в нем есть и зачем оно нужно.
|
||||
Также, любые комментарии или дополнения приветствуются. [Оригинал]
|
||||
(//archlinux.org.ru/forum/topic/12752/ "Тема на форуме") статьи.
|
||||
|
||||
<!--more-->
|
||||
|
||||
@ -19,13 +23,17 @@ short: about-zshrc
|
||||
pacman -Sy pkgfile zsh zsh-completions zsh-syntax-highlighting
|
||||
```
|
||||
|
||||
[pkgfile](//www.archlinux.org/packages/pkgfile/ "Пакет Archlinux") очень полезная утилита. Данная команда также установит шелл, дополнения к нему и подсветку синтаксиса.
|
||||
[pkgfile](//www.archlinux.org/packages/pkgfile/ "Пакет Archlinux") очень полезная
|
||||
утилита. Данная команда также установит шелл, дополнения к нему и подсветку
|
||||
синтаксиса.
|
||||
|
||||
## <a href="#configuration" class="anchor" id="configuration"><span class="octicon octicon-link"></span></a>Настройка шелла
|
||||
|
||||
Все доступные опции приведены [здесь](//zsh.sourceforge.net/Doc/Release/Options.html "Документация zsh").
|
||||
Все доступные опции приведены [здесь](//zsh.sourceforge.net/Doc/Release/Options.html
|
||||
"Документация zsh").
|
||||
|
||||
Указываем файл с историей, число команд хранящихся в кэше текущего сеанса и число команд, хранящихся в файле:
|
||||
Указываем файл с историей, число команд хранящихся в кэше текущего сеанса и
|
||||
число команд, хранящихся в файле:
|
||||
|
||||
```bash
|
||||
# history
|
||||
@ -34,7 +42,8 @@ HISTSIZE=500000
|
||||
SAVEHIST=500000
|
||||
```
|
||||
|
||||
Я не могу запомнить все комбинации `Ctrl+`, поэтому я назначаю клавиши на их стандартное использование:
|
||||
Я не могу запомнить все комбинации `Ctrl+`, поэтому я назначаю клавиши на их
|
||||
стандартное использование:
|
||||
|
||||
```bash
|
||||
# bindkeys
|
||||
@ -48,7 +57,9 @@ bindkey '\e[5~' up-line-or-history # page-up
|
||||
bindkey '\e[6~' down-line-or-history # page-down
|
||||
```
|
||||
|
||||
Но здесь важно, что стрелки `вверх`/`вниз` служат для навигации по истории с учетом **уже введенной части** команды. А `PgUp`/`PgDown` **проигнорируют** уже введенную часть команды.
|
||||
Но здесь важно, что стрелки `вверх`/`вниз` служат для навигации по истории с
|
||||
учетом **уже введенной части** команды. А `PgUp`/`PgDown` **проигнорируют** уже
|
||||
введенную часть команды.
|
||||
|
||||
Автодополнение команд:
|
||||
|
||||
@ -60,7 +71,9 @@ zstyle ':completion:*' insert-tab false
|
||||
zstyle ':completion:*' max-errors 2
|
||||
```
|
||||
|
||||
Подключается полное автодополнение команд. `insert-tab false` включит автодополнение для **невведенной** команды (не знаю, зачем). `max-errors` устанавливает максимальное число опечаток, которые могут быть исправлены.
|
||||
Подключается полное автодополнение команд. `insert-tab false` включит
|
||||
автодополнение для **невведенной** команды (не знаю, зачем). `max-errors`
|
||||
устанавливает максимальное число опечаток, которые могут быть исправлены.
|
||||
|
||||
Приглашение:
|
||||
|
||||
@ -192,7 +205,10 @@ ZSH_HIGHLIGHT_STYLES[double-quoted-argument]='fg=yellow' # конс
|
||||
#ZSH_HIGHLIGHT_STYLES[root]='bg=red'
|
||||
```
|
||||
|
||||
В первой строке включаем подсветку. Затем включаем основную подсветку, а также подсветку скобок и шаблонов. Шаблоны указываются ниже (`rm -rf *` в примере). Также может быть включена подсветка команд от `root` и курсора `cursor`. Синтаксис настроек понятен, `fg` цвет шрифта, `bg` цвет фона.
|
||||
В первой строке включаем подсветку. Затем включаем основную подсветку, а также
|
||||
подсветку скобок и шаблонов. Шаблоны указываются ниже (`rm -rf *` в примере).
|
||||
Также может быть включена подсветка команд от `root` и курсора `cursor`.
|
||||
Синтаксис настроек понятен, `fg` цвет шрифта, `bg` цвет фона.
|
||||
|
||||
## <a href="#prompt" class="anchor" id="prompt"><span class="octicon octicon-link"></span></a>$PROMPT и $RPROMPT
|
||||
|
||||
@ -219,7 +235,9 @@ else
|
||||
fi
|
||||
```
|
||||
|
||||
`fg` цвет шрифта, `bg` цвет фона. `_bold` и `_no_bold` регулируют оттенок. Команды должны быть обрамлены в `%{ ... %}`, чтобы не показывались. Доступные цвета:
|
||||
`fg` цвет шрифта, `bg` цвет фона. `_bold` и `_no_bold` регулируют оттенок.
|
||||
Команды должны быть обрамлены в `%{ ... %}`, чтобы не показывались. Доступные
|
||||
цвета:
|
||||
|
||||
```bash
|
||||
black
|
||||
@ -276,11 +294,15 @@ $returncode\
|
||||
"%{$fg_bold[white]%}]%{$reset_color%}"
|
||||
```
|
||||
|
||||
Мой RPROMPT показывает текущее время, заряд батареи и код возврата последнего приложения. `precmd()` необходимо для автоматического обновления. Конструкция `$(if.true.false)` является условным оператором в `zsh`.
|
||||
Мой RPROMPT показывает текущее время, заряд батареи и код возврата последнего
|
||||
приложения. `precmd()` необходимо для автоматического обновления. Конструкция
|
||||
`$(if.true.false)` является условным оператором в `zsh`.
|
||||
|
||||
## <a href="#aliases" class="anchor" id="aliases"><span class="octicon octicon-link"></span></a>Аллиасы
|
||||
|
||||
**Копируйте только те аллиасы, которые Вам необходимы.** Если какой-либо аллиас использует приложение, которое не установлено, это приведет к сбою загрузки конфигурационного файла.
|
||||
**Копируйте только те аллиасы, которые Вам необходимы.** Если какой-либо аллиас
|
||||
использует приложение, которое не установлено, это приведет к сбою загрузки
|
||||
конфигурационного файла.
|
||||
|
||||
Полезная (или не очень) функция:
|
||||
|
||||
@ -360,7 +382,8 @@ else
|
||||
fi
|
||||
```
|
||||
|
||||
Некоторые глобальные аллиасы. Если они включены, команда `cat foo g bar` будет эквивалентна `cat foo | grep bar`:
|
||||
Некоторые глобальные аллиасы. Если они включены, команда `cat foo g bar` будет
|
||||
эквивалентна `cat foo | grep bar`:
|
||||
|
||||
```bash
|
||||
# global alias
|
||||
@ -398,7 +421,8 @@ projctl () {
|
||||
}
|
||||
```
|
||||
|
||||
К сожалению, я не могу запомнить флаги `tar`, поэтому я использую специальные функции:
|
||||
К сожалению, я не могу запомнить флаги `tar`, поэтому я использую специальные
|
||||
функции:
|
||||
|
||||
```bash
|
||||
# function to extract archives
|
||||
@ -471,7 +495,9 @@ su () {
|
||||
}
|
||||
```
|
||||
|
||||
Функция, которая заменяет оригиналькую команду `rm`. Если Вы наберете `rm`, это будет эквивалентно перемещению в корзину, также, Вы можете легко восстановить удаленный файл:
|
||||
Функция, которая заменяет оригиналькую команду `rm`. Если Вы наберете `rm`, это
|
||||
будет эквивалентно перемещению в корзину, также, Вы можете легко восстановить
|
||||
удаленный файл:
|
||||
|
||||
```bash
|
||||
rm () {
|
||||
|
Reference in New Issue
Block a user