Compare commits
27 Commits
ce3d65d15b
...
master
Author | SHA1 | Date | |
---|---|---|---|
eea38195a1 | |||
c7bb09d5bc | |||
0ab8f29d9e | |||
ffb71f5600 | |||
ee02aea5a7 | |||
1df17fc702 | |||
62670c583c | |||
faa5c5a550 | |||
4d8052da4b | |||
bb4f1bbb53 | |||
44111962f2 | |||
9c38804a6a | |||
6562cc7774 | |||
d8eb4a6049 | |||
0246176d38 | |||
6d35685e33 | |||
312733c575 | |||
a7e2a48581 | |||
442480e151 | |||
b25739c78b | |||
88efc82376 | |||
9e58e8e04f | |||
c0c1920574 | |||
842b64bfe1 | |||
484a4b943f | |||
a288ff89ed | |||
48902750b9 |
7
.zshenv
7
.zshenv
@ -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
|
||||
|
@ -2,7 +2,7 @@
|
||||
# vim: ft=sh
|
||||
|
||||
HISTFILE="$ZSH_CACHE_DIR/history"
|
||||
HISTSIZE=100000
|
||||
HISTSIZE=600000
|
||||
SAVEHIST=500000
|
||||
HISTDUP=erase
|
||||
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
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"
|
||||
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
|
||||
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
|
||||
|
@ -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
|
||||
}
|
||||
|
@ -1,9 +1,6 @@
|
||||
# shellcheck shell=bash
|
||||
# vim: ft=sh
|
||||
|
||||
# Dotdrop
|
||||
alias dotdrop="$HOME/etc/dotdrop.sh" --cfg="$HOME/etc/config.yaml"
|
||||
|
||||
# zmv
|
||||
alias zcp='zmv -C'
|
||||
alias zln='zmv -L'
|
||||
@ -70,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'
|
||||
|
18
README.md
18
README.md
@ -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 или есть только старая версия, можно установить статически
|
||||
@ -31,7 +32,7 @@ sudo apt-get install command-not-found grc grepcidr kitty-terminfo wmctrl xdotoo
|
||||
Клонировать репозиторий с настройками Zsh в каталог `~/.config/zsh`:
|
||||
|
||||
```sh
|
||||
git clone https://git.246060.ru/f1x1t/zshrc ~/.config/zsh
|
||||
git clone https://git.246060.ru/config/zsh ~/.config/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` на системах, где недоступно
|
||||
его описание, можно выполнить команду:
|
||||
|
||||
|
@ -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
|
||||
}
|
||||
|
||||
|
18
install.sh
18
install.sh
@ -2,17 +2,19 @@
|
||||
|
||||
set -e
|
||||
|
||||
sudo apt-get install git zsh
|
||||
git clone https://git.246060.ru/f1x1t/zshrc $HOME/.config/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
|
||||
|
||||
|
Reference in New Issue
Block a user