Modern CLI tool wrappers for zsh — no-override approach
- Shell 100%
- modern-tools.zsh: bat/fd aliases, eza ll/la/lt, http/https via xh fallback, jless jl(), tldr te(), fzf fcd/fe/fkill/frg with dynamic command resolution - git-tools.zsh: fuzzy git helpers glog/gbr/gadd/gst via fzf - README: usage, dependencies, http/xh decision table |
||
|---|---|---|
| git-tools.zsh | ||
| modern-tools.zsh | ||
| README.md | ||
zsh-tools
Обёртки и алиасы для современных CLI-инструментов.
Принцип: не переопределять POSIX-команды. grep, find, cat, ls, curl остаются нетронутыми везде — в скриптах, subshell-ах, sudo.
Файлы
| Файл | Описание |
|---|---|
modern-tools.zsh |
Короткие имена, eza-алиасы, HTTP, jless, fzf-функции |
git-tools.zsh |
Fuzzy git-хелперы: glog, gbr, gadd, gst |
Подключение
# ~/.zshrc — ПОСЛЕ source $ZSH/oh-my-zsh.sh
source ~/structure/avallon.labs/claude./zsh-tools/modern-tools.zsh
source ~/structure/avallon.labs/claude./zsh-tools/git-tools.zsh
Требуемые OMZ плагины (добавить в plugins=(...) до source omz):
fzf httpie colored-man-pages sudo tldr
Что добавляется (без override)
| Алиас/функция | Что делает |
|---|---|
bat |
короткое имя для batcat (только если bat не существует) |
fd |
короткое имя для fdfind (только если fd не существует) |
ll |
eza -lh --group-directories-first --git |
la |
eza -lah --group-directories-first --git |
lt |
eza --tree --group-directories-first |
lt2 / lt3 |
дерево с глубиной 2 / 3 |
http / https |
xh / xh --https — только если httpie не установлен |
jl [файл] |
открыть JSON в jless из файла или stdin |
te <cmd> |
tldr-справка, fallback на man |
fcd |
fuzzy cd с превью дерева (fzf + fdfind + eza) |
fkill |
fuzzy kill процесса (fzf + ps) |
fe |
fuzzy открыть файл в $EDITOR с batcat-превью |
frg <паттерн> |
fuzzy поиск rg по содержимому, переход в редактор |
git-tools.zsh
| Функция | Описание |
|---|---|
glog |
fuzzy история коммитов с превью, Enter → git show |
gbr |
fuzzy checkout ветки (локальные + remote) |
gadd |
fuzzy git add с diff-превью, multi-select |
gst |
fuzzy применить stash с превью |
HTTP: httpie vs xh
- httpie установлен → используй
http/httpsнапрямую, OMZ httpie plugin добавляет completion - только xh → алиасы
http/httpsсоздаются автоматически - оба → httpie приоритетнее, xh доступен под своим именем
xh
delta (git diff)
Настроен в ~/.gitconfig, не в shell. Активируется автоматически для всех git-команд:
git diff # diff с подсветкой синтаксиса
git log -p # история с delta
git show # коммит через delta
git stash show -p # stash diff через delta
Зависимости
ripgrep fdfind batcat eza xh delta fzf jless tldr
Проверить установленное:
for cmd in rg fdfind batcat eza xh delta fzf jless tldr; do
(( $+commands[$cmd] )) && echo "OK $cmd" || echo "--- $cmd"
done