Ввод команды с новой строки в zsh

Использую классическую конфигурацию с плагином Oh My ZSH! и темой agnoster. Не могу понять, как сделать так, чтобы путь текущей директории был на одной строке, а ввод новой команды был с новой строки. Есть функция, где отображается только имя + путь, пробовал в ней эксперементировать, но ничего не вышло:

prompt_context() {
  if [[ "$USER" != "$DEFAULT_USER" || -n "$SSH_CLIENT" ]]; then
    prompt_segment black default "%(!.%{%F{yellow}%}.)$USER"
  fi
}

В таком формате хочется сделать:

~/data/repositories
_

где вторая строка с _ - ввод команды. В bash это выглядит примерно так, если выполнить:

export PS1="\[\033[38;5;245m\]\w \[\033[38;5;081m\]\n # \[\e[0m\]\"

Вот такое же хочется сделать, только в zsh.


Ответы (1 шт):

Автор решения: alexanderzhirov

Всё таки оказалось все не так сложно

В каталоге ~/.oh-my-zsh/themes/agnoster.zsh-theme по сути все функции описаны. Я скопировал нужные мне и вставил в ~/.zshrc:

prompt_context() {
  if [[ "$USER" != "$DEFAULT_USER" || -n "$SSH_CLIENT" ]]; then
#    Тут закомментирована строка со стандартным отображением пользователя и хоста
  fi
}

prompt_end() {
  if [[ -n $CURRENT_BG ]]; then
    echo -n " %{%k%F{$CURRENT_BG}%}$SEGMENT_SEPARATOR\n$"
  else
    echo -n "%{%k%}"
  fi
  echo -n "%{%f%}"
  CURRENT_BG=''
}

В итоге вот что вышло:

введите сюда описание изображения

→ Ссылка