Приветствую. Захотел попробовать zsh, для того чтобы составить какое-то свое мнение, но столкнулся с тем что везде рекомендуют использовать Oh My Zsh или менеджеры плагинов. При установке ohmyzsh, в чистом виде, начинаются задержки в выполнении команд и запуске оболочки.
Из более быстрых аналогов ohmyzsh попался zimfw, но пока не пробовал.
Мне стало интересно, а как другие используют zsh, настраивая его как bash(т.е через файл .zshrc) или нет?
Возможно я не с той стороны начал настройку.
Как вы используете ZSH? (С фреймворками или без)
Модератор: Bizdelnick
-
UnixNoob
- Сообщения: 1490
- ОС: Slackware
Как вы используете ZSH? (С фреймворками или без)
"Однажды один очень мудрый человек… ничего не сказал. Времена были опасные, да и собеседники ненадёжные"
-
Bizdelnick
- Модератор
- Сообщения: 21366
- Статус: nulla salus bello
- ОС: Debian GNU/Linux
Re: Как вы используете ZSH? (С фреймворками или без)
Вот ещё фреймворков для шелла не хватало… Настроил через zsh-newuser-install и забыл.
Пишите правильно:
| в консоли вку́пе (с чем-либо) в общем вообще | в течение (часа) новичок нюанс по умолчанию | приемлемо проблема пробовать трафик |
-
UnixNoob
- Сообщения: 1490
- ОС: Slackware
Re: Как вы используете ZSH? (С фреймворками или без)
Кто-то пошутил что "ему не нравится, что оболочка пытается продавать ему футболки" (На страницу OhMyZsh есть их продажа)
Не используете ни алиасы, ни плагины на автодополнения, подсветку синтаксиса, строку ввода не меняли? Совсем базовый терминал?
"Однажды один очень мудрый человек… ничего не сказал. Времена были опасные, да и собеседники ненадёжные"
-
Bizdelnick
- Модератор
- Сообщения: 21366
- Статус: nulla salus bello
- ОС: Debian GNU/Linux
Re: Как вы используете ZSH? (С фреймворками или без)
Алиасов немножко досыпал потом, но вообще мало ими пользуюсь. Про автодополнение забыл, да: есть строчки, добавленные compinstall; я почему-то решил, что его тот же zsh-newuser-install запускает. Но плагинов нет. Строка ввода из стандартных:
Код: Выделить всё
autoload -Uz promptinit
promptinit
prompt adam1Пишите правильно:
| в консоли вку́пе (с чем-либо) в общем вообще | в течение (часа) новичок нюанс по умолчанию | приемлемо проблема пробовать трафик |
Спасибо сказали:
-
UnixNoob
- Сообщения: 1490
- ОС: Slackware
Re: Как вы используете ZSH? (С фреймворками или без)
В итоге на просторах попалось пару функций, которые для меня заменили навороченные фреймворки, которые я просто подключил к конфигу zsh. Выглядят они так:
Ну и соответственно теперь я просто, подключив файл где содержатся эти функции, могу дописать в .zshrc:
И при старте терминала они загрузятся. Хоть и это может показаться лишним, но хотелось попробовать эти плагины.
Код: Выделить всё
# Function to source files if they exist
function zsh_add_file() {
[ -f "$ZDOTDIR/$1" ] && source "$ZDOTDIR/$1"
}
function zsh_add_plugin() {
PLUGIN_NAME=$(echo $1 | cut -d "/" -f 2)
if [ -d "$ZDOTDIR/plugins/$PLUGIN_NAME" ]; then
# For plugins
zsh_add_file "plugins/$PLUGIN_NAME/$PLUGIN_NAME.plugin.zsh" || \
zsh_add_file "plugins/$PLUGIN_NAME/$PLUGIN_NAME.zsh"
else
git clone "https://github.com/$1.git" "$ZDOTDIR/plugins/$PLUGIN_NAME"
fi
}
Код: Выделить всё
zsh_add_plugin "zsh-users/zsh-autosuggestions"
zsh_add_plugin "zsh-users/zsh-syntax-highlighting"
zsh_add_plugin "hlissner/zsh-autopair"
zsh_add_plugin "jeffreytse/zsh-vi-mode"
"Однажды один очень мудрый человек… ничего не сказал. Времена были опасные, да и собеседники ненадёжные"
-
MiK13
- Сообщения: 1283
- ОС: Linux Debian
Re: Как вы используете ZSH? (С фреймворками или без)
А чем вообще хорош zsh? В чём его преимущество перед bash?
-
UnixNoob
- Сообщения: 1490
- ОС: Slackware
Re: Как вы используете ZSH? (С фреймворками или без)
Понятие преимущество очень относительно. Весь софт это как инструмент для плотника или вам подходит или нет.
Первая версия bash была выпущена в 89, а zsh в 91 году. А почему вы выбрали bash? Это было осознанно?
Я решил просто попробовать, сравнить, чтобы составить какое-то свое мнение. В особенностях часто упоминают автодополнение, которое в зависимости от контекста предлагает разные варианты, ну и возможность кратко набирать пути в консоли, которые будут развернуты в полные.
Немножко можно тут посмотреть. Но я не думаю, как в статьяъ, что zsh однозначно лучше bash, т.к не совсем понимаю критерии отбора. Люди все очень разные, смотря что вы в командной строке делаете. Один мастер шелла, который все умеет и знает, а второй как я, который учится и использует наверно 5%, если не меньше возможностей.
"Однажды один очень мудрый человек… ничего не сказал. Времена были опасные, да и собеседники ненадёжные"
-
MiK13
- Сообщения: 1283
- ОС: Linux Debian
Re: Как вы используете ZSH? (С фреймворками или без)
Это точно :-)
Я довольно мало использую возможности bash'а. И те, что есть мне пока хватает.
Несколько раз сталкивался с ситуацией, когда отработанные куски вдруг переставали работать в другом скрипте. Оказывалось, что там в начале стояло #! /bin/sh, а sh в /bin в Debian почему-то ссылается на dash (хотелось бы узнать его достоинства)
А интерактивные возможности bash я почти не использую.
Лет 30, если не больше, назад, когда на PC был только DOS, кто-то привёз из-за границы 4DOS. Я его попробовал и больше почти не мог работать, если стоял COMMAND.COM, Потом, при работе в NT (и появлением 4NT) я всегда устанавливал COMSPEC в 4NT.EXE. И потом при переходе на Linux мне часто казалось, что bash по возможностям и удобству уступает 4NT. Потом, правда, понял, что bash в целом всё-таки мощнее. Но некоторых возможностей 4NT мне всё-таки иногда не хватает. В 4NT можно:
Последовательно выбирать файлы по маске, вставляя их в командную строку
Команда select. Можно было указать маску файлов для какой-то команды, на экран выводился список этих файлов, можно было отметить те, которые надо обработать, и потом команда исполнялась с каждым из выделенных файлов.
Можно было вывести на экране в отдельном "окне" историю команды, выбрать её и выполнить.
Ещё там была возможность "читать текст" с экрана. То есть какая-то предыдущая программа что-то вывела на экран, и можно было указать позицию (в том числи и относительную) и прочитать этот вывод в переменную.
Кое что из этого реализовано в mc. Хотя и немного по-другому.