Compare commits

..

25 Commits

Author SHA1 Message Date
eea38195a1 Плагин https://github.com/unixorn/git-extra-commands 2025-06-28 09:15:11 +03:00
c7bb09d5bc zinit 3.14.0 2025-04-17 13:44:31 +03:00
0ab8f29d9e Версия fzf 2025-02-06 10:12:43 +03:00
ffb71f5600 Адрес загрузки плагинов для fzf 2025-02-06 10:10:38 +03:00
ee02aea5a7 Номер версии fzf 2025-02-06 10:07:57 +03:00
1df17fc702 Обработка номера версии fzf 2025-02-06 10:05:12 +03:00
62670c583c Загрузка плагинов для установленной версии fzf 2025-02-06 09:56:51 +03:00
faa5c5a550 fzf 2024-07-25 08:44:54 +03:00
4d8052da4b Плагин для редактирования истории команд 2024-07-04 11:53:35 +03:00
bb4f1bbb53 Правка работы с fzf 2024-07-04 10:36:03 +03:00
44111962f2 zinit 3.13.1 2024-01-29 15:15:38 +03:00
9c38804a6a zinit 3.12.1 2023-11-20 16:02:19 +03:00
6562cc7774 zinit 3.12.0 2023-09-08 06:05:48 +03:00
d8eb4a6049 Установка шрифто 2023-06-07 17:43:34 +03:00
0246176d38 zinit 3.11.0 2023-06-07 16:46:04 +03:00
6d35685e33 Восстановлен файл 2023-05-31 19:32:58 +03:00
312733c575 Merge branch 'master' of git.246060.ru:config/zsh 2023-05-31 19:30:41 +03:00
a7e2a48581 Обновление $ZDOTDIR 2023-05-12 23:58:28 +03:00
442480e151 При наличии gdu запускать вместо ncdu 2023-05-12 23:43:28 +03:00
b25739c78b Установка пакета со шрифтом Iosevka Prog Nerd 2023-05-08 11:34:57 +03:00
88efc82376 ycal 2023-05-06 19:15:33 +03:00
9e58e8e04f При наличии bat использовать его в качестве пейджера 2023-04-28 14:25:46 +03:00
c0c1920574 Замена wget на curl 2023-04-17 13:17:02 +03:00
842b64bfe1 Исправлено обновление конфигурации 2023-04-17 08:07:42 +03:00
484a4b943f Установка curl 2023-04-16 23:11:07 +03:00
9 changed files with 55 additions and 19 deletions

View File

@ -27,6 +27,8 @@ export XDG_STATE_HOME="$HOME/.local/state"
export ZSH_CACHE_DIR="$XDG_CACHE_HOME/zsh"
export ZSH_COMPDUMP="$ZSH_CACHE_DIR/zcompdump-${HOST/.*/}-$ZSH_VERSION"
typeset -g POWERLEVEL9K_INSTANT_PROMPT=off
# Короткое имя компьютера, обязательно нужно для ssh-agent.
# Часто используется в OhMyZsh.
export SHORT_HOST="${SHORT_HOST:-${(%):-%m}}"
@ -53,6 +55,11 @@ if [[ -n ${DISPLAY+set} ]]; then
fi
# }}}
if command -v bat >/dev/null; then
export PAGER=bat
export MANPAGER="sh -c 'col -bx | bat -l man -p'"
fi
# Uncrustify
export UNCRUSTIFY_CONFIG="${XDG_CONFIG_HOME}/uncrustify/uncrustify.cfg"
[ ! -r "${UNCRUSTIFY_CONFIG}" ] && unset UNCRUSTIFY_CONFIG

View File

@ -2,7 +2,7 @@
# vim: ft=sh
HISTFILE="$ZSH_CACHE_DIR/history"
HISTSIZE=100000
HISTSIZE=600000
SAVEHIST=500000
HISTDUP=erase

View File

@ -2,7 +2,7 @@
# vim: ft=sh
declare -A ZINIT
ZINIT[VERSION]="3.10.0"
ZINIT[VERSION]="3.14.0"
ZINIT[HOME_DIR]="$ZSH_CACHE_DIR/zinit-${ZINIT[VERSION]}"
ZINIT[PLUGINS_DIR]="$ZSH_CACHE_DIR/plugins"
ZINIT[SNIPPETS_DIR]="$ZSH_CACHE_DIR/snippets"
@ -10,7 +10,7 @@ ZINIT[ZCOMPDUMP_PATH]="$ZSH_CACHE_DIR/zcompdump"
ZPFX="$ZSH_CACHE_DIR/polaris"
if [ ! -d "${ZINIT[HOME_DIR]}" ]; then
wget -q -O - "https://github.com/zdharma-continuum/zinit/archive/refs/tags/v${ZINIT[VERSION]}.tar.gz" | tar zxf - -C "$ZSH_CACHE_DIR"
curl -sL "https://github.com/zdharma-continuum/zinit/archive/refs/tags/v${ZINIT[VERSION]}.tar.gz" | tar zxf - -C "$ZSH_CACHE_DIR"
sed -i 's/.*zinit-self-update -q//' "${ZINIT[HOME_DIR]}/zinit-autoload.zsh"
zcompile "${ZINIT[HOME_DIR]}/zinit.zsh"
fi

View File

@ -23,6 +23,8 @@ zinit snippet OMZL::clipboard.zsh
zinit snippet OMZL::key-bindings.zsh
zinit snippet OMZL::termsupport.zsh
zinit light marlonrichert/zsh-hist
if [ -x /usr/lib/command-not-found ]; then
zinit snippet OMZP::command-not-found
fi
@ -54,10 +56,14 @@ if command -v fzf > /dev/null 2>&1; then
FZF_CTRL_T_COMMAND="$FZF_DEFAULT_COMMAND"
FZF_ALT_C_COMMAND="fd --type d"
fi
if is-at-least "0.34" "$(fzf --version | awk '{ print $1; }')"; then
zinit ice lucid wait'0' mv"completion.zsh -> _fzf" pick"_fzf" as"completion"
zinit snippet https://github.com/junegunn/fzf/blob/master/shell/completion.zsh
zinit snippet https://github.com/junegunn/fzf/blob/master/shell/key-bindings.zsh
FZF_VERSION="$(fzf --version | sed -r 's/([0-9]+\.[0-9]+).*/\1/' )"
zinit ice lucid wait'0' mv"completion.zsh -> _fzf" pick"_fzf" as"completion"
if is-at-least "0.54" "$FZF_VERSION"; then
zinit snippet "https://raw.githubusercontent.com/junegunn/fzf/refs/tags/v${FZF_VERSION}.0/shell/completion.zsh"
zinit snippet "https://raw.githubusercontent.com/junegunn/fzf/refs/tags/v${FZF_VERSION}.0/shell/key-bindings.zsh"
else
zinit snippet "https://raw.githubusercontent.com/junegunn/fzf/refs/tags/${FZF_VERSION}.0/shell/completion.zsh"
zinit snippet "https://raw.githubusercontent.com/junegunn/fzf/refs/tags/${FZF_VERSION}.0/shell/key-bindings.zsh"
fi
fi
@ -68,6 +74,7 @@ if command -v git > /dev/null 2>&1; then
zinit snippet OMZP::git-extras
zinit snippet OMZP::github
[ -z ${SSH_CONNECTION+set} ] && zinit snippet OMZP::git-auto-fetch
zinit light unixorn/git-extra-commands
fi
if command -v psql > /dev/null 2>&1; then

View File

@ -3,6 +3,7 @@
# Обновление конфигурации zsh, менеджера zinit и плагинов
zu() {
git -C $ZDOTDIR rev-parse 2>/dev/null && git -C $ZDOTDIR pull
zinit update --parallel --all
exec zsh
}

View File

@ -67,6 +67,11 @@ alias gur="git pull --recurse-submodules"
alias gsui="git submodule update --recursive --init"
alias gsur="git submodule update --recursive --init --remote"
alias ycal="ncal $(date +%Y)"
# gdu вместо ncdu
command -v gdu > /dev/null 2>&1 && alias ncdu=gdu
# Фильтры (H,T,G,L определены в common-aliases)
alias -g N1='1>/dev/null'
alias -g N2='2>/dev/null'

View File

@ -1,6 +1,7 @@
# Быстрая установка
```sh
sudo apt-get install curl
sh -c "$(curl -fsSL https://git.246060.ru/config/zsh/raw/branch/master/install.sh)"
```
@ -9,7 +10,7 @@ sh -c "$(curl -fsSL https://git.246060.ru/config/zsh/raw/branch/master/install.s
Установить оболочку [Zsh](https://www.zsh.org) и git:
```sh
sudo apt-get install git zsh
sudo apt-get install git zsh curl
```
На системах, где нет пакета Zsh или есть только старая версия, можно установить статически
@ -53,9 +54,9 @@ sudo usermod -s /usr/bin/zsh username
# Установка шрифтов
```sh
mkdir -p ~/.local/share/fonts
curl -fSL -o "$HOME/.local/share/fonts/Anonymice Nerd Font Complete.ttf" https://github.com/ryanoasis/nerd-fonts/raw/master/patched-fonts/AnonymousPro/complete/Anonymice%20Nerd%20Font%20Complete.ttf
curl -fSL -o "$HOME/.local/share/fonts/Anonymice Nerd Font Complete Mono.ttf" https://github.com/ryanoasis/nerd-fonts/raw/master/patched-fonts/AnonymousPro/complete/Anonymice%20Nerd%20Font%20Complete%20Mono.ttf
wget -A ".deb" -c -q -np -nd -r -l 1 https://deb.246060.ru/bin/fonts/pool/main/f/fonts-iosevka-prog/
wget -A ".deb" -c -q -np -nd -r -l 1 https://deb.246060.ru/bin/fonts/pool/main/f/fonts-iosevka-prog-nerd/
sudo dpkg -i fonts*deb
```
# Настройка агентов
@ -183,6 +184,13 @@ zu
source $HOME/.config/zsh/fixes.zsh
```
Если в системе установлена программа `fzf` версии ниже `0.53.0`, то может
не работать поиск по истории, файлам и автодополнение. Исправление:
```
fix-update-fzf
```
Для обеспечения поддержки терминала `kitty` на системах, где недоступно
его описание, можно выполнить команду:

View File

@ -4,7 +4,7 @@
# где отсутствует пакет kitty-terminfo
fix-kitty-terminal-support() {
mkdir -p $HOME/.terminfo/x
wget -qO - https://github.com/kovidgoyal/kitty/raw/master/terminfo/x/xterm-kitty > $HOME/.terminfo/x/xterm-kitty
curl -fsSL https://github.com/kovidgoyal/kitty/raw/master/terminfo/x/xterm-kitty > $HOME/.terminfo/x/xterm-kitty
}
# Настройка mc для работы в терминале kitty
@ -24,3 +24,9 @@ fix-mc-kitty-support() {
fi
}
# Новые версии плагинов для поиска используют функционал fzf версии 0.54.1.
fix-update-fzf() {
mkdir -p $HOME/bin
wget -O- https://github.com/junegunn/fzf/releases/download/v0.54.1/fzf-0.54.1-linux_amd64.tar.gz | tar -zxf - -C $HOME/bin
}

View File

@ -2,17 +2,19 @@
set -e
sudo apt-get install git zsh
sudo apt-get install git zsh curl wget
git clone https://git.246060.ru/config/zsh $HOME/.config/zsh
cat <<EOF > $HOME/.zshenv
# Загрузка конфигурации из каталога $ZDOTDIR
export ZDOTDIR=$HOME/.config/zsh
source $ZDOTDIR/.zshenv
# Загрузка конфигурации из каталога \$ZDOTDIR
export ZDOTDIR=\$HOME/.config/zsh
source \$ZDOTDIR/.zshenv
EOF
sudo usermod -s $(which zsh) $(whoami)
mkdir -p ~/.local/share/fonts
curl -fSL -o "$HOME/.local/share/fonts/Anonymice Nerd Font Complete.ttf" https://github.com/ryanoasis/nerd-fonts/raw/master/patched-fonts/AnonymousPro/complete/Anonymice%20Nerd%20Font%20Complete.ttf
curl -fSL -o "$HOME/.local/share/fonts/Anonymice Nerd Font Complete Mono.ttf" https://github.com/ryanoasis/nerd-fonts/raw/master/patched-fonts/AnonymousPro/complete/Anonymice%20Nerd%20Font%20Complete%20Mono.ttf
TEMP="${XDG_RUNTIME_DIR:-/tmp}"
wget -P "$TEMP" -c -r -nd --no-parent -A "fonts-iosevka-prog-nerd_*_all.deb" https://deb.246060.ru/bin/fonts/pool/main/f/fonts-iosevka-prog-nerd/
sudo dpkg -i "$TEMP"/fonts-iosevka-prog-nerd_*_all.deb
rm -f "$TEMP"/fonts-iosevka-prog-nerd_*_all.deb