LINUX.ORG.RU
ФорумTalks

Приглашение терминала в фиксированом месте

 , ,


0

2

Почему текущее приглашение терминала не пишут в какой-то статус панели сверху? Или внизу, так как терминал в основном доходит до низа экрана. А там где вводится команда не оставляют «$»?

Вижу пару причин, которые будут волновать только часть пользователей и только в отдельных случаях

1) Чтобы не ходить глазами туда-сюда

2) Чтобы видеть историю каталогов при выполнении предыдущих команд.

Цель - минимизация траты места при очень длинных каталогах. Меня убивает когда «$» находится очень далеко справа и все команды сразу переходят на новую строчку

★★★★★

Последнее исправление: vertexua (всего исправлений: 1)

export PS1="\\$ " не? Если не хочешь длинный путь к каталогу видеть замени в своем PS1 \w на \W. А путь к каталогу можно смотреть через pwd вообще, зачем оно внизу экрана? Тем более это надо будет каждый раз перерисовывать или встраивать в эмулятор терминала.

alozovskoy ★★★★★
()
Ответ на: комментарий от alozovskoy

Да вот по разному можно, думаю как удобнее. Через pwd просто прийдется часто смотреть. Может решается как-то на уровне tmux

vertexua ★★★★★
() автор топика
Ответ на: комментарий от vertexua

Мне кажется в tmux так не получится, но если найдешь решение кастани, пожалуйста (мне не каталог а некоторые другие данные бы вывести).

alozovskoy ★★★★★
()

Когда ты повзрослеешь, ты поймёшь что двустрочный промпт решает

zolden ★★★★★
()

Второе — чтобы видеть историю не только команд, но и их контекста. Мне для этого хватает относительного имени каталога, т.е. \W.

dumka ★★
()
Последнее исправление: dumka (всего исправлений: 2)

Вот кстати fish неплохо решает проблему, там сокращаются имена каталогов /u/s/linux например. Но я не знаю как у него с совместимостью

vertexua ★★★★★
() автор топика
Ответ на: комментарий от alozovskoy

Почитал и добавил себе в status-left #{pane_current_path} потестить, может ТСу это и надо.

Вообще есть #{pane_pid}, т.е. можно через /proc и #(shell command here) вывести другую информацию, но переменные не раскрываются внутри команды для оболочки. Т.е. нужно из скрипта получать от tmux PID процесса и лезть в /proc. Как это сделать сразу не нашлось, нужно в man'е искать получение переменной, что-то по типу echo.

xaizek ★★★★★
()

Меня убивает когда «$» находится очень далеко справа и все команды сразу переходят на новую строчку

Меня это тоже убивало, бро. А потом открыл для себя zsh, и мои волосы снова стали мягкими и шелковистыми.

iVS ★★★★★
()
Ответ на: комментарий от iVS

Запустил с дефолтными настройками, разницы с bash не заметил. Большой конфиг в придачу обязателен?

vertexua ★★★★★
() автор топика

1) Поместить путь в заголовок окна, из $PROMPT убрать.

2) Использовать $PROMPT_DIRTRIM в bash или сокращение в zsh.

3) Использовать RPROMPT в zsh (он автоматически прячется при столкновении со строкой команды).

Gotf ★★★
()

А это ничего, что терминал и сам шелл в разных процессах, и возможно в разных юзерах? А если процесс в терминале работает на другом хосте? А если декоратор с другого хоста работает? Программыная среда это вам не ил-люстрация, с бухты барахты не делается, тут голова думать надо.

no-dashi ★★★★★
()
Ответ на: комментарий от Gotf

Нифига не понял, где там готовые плагины, и нафига они мне вообще? Если не нужен .oh-my-zsh, что мешает просто вытащить код из нужной темы и плагина и вставить в .zshrc?

iVS ★★★★★
()
Ответ на: комментарий от iVS

Нифига не понял, где там готовые плагины, и нафига они мне вообще?

Ты про grml-zsh? Не знаю.

Если не нужен .oh-my-zsh, что мешает просто вытащить код из нужной темы и плагина и вставить в .zshrc?

Зачем, если проще сделать всё самому, чем копипастить чужие поделки?

Gotf ★★★
()
Ответ на: комментарий от Gotf

Зачем, если проще сделать всё самому, чем копипастить чужие поделки?

Сначала нужно оценить, что уже сделали, что из этого нужно, и как сделать лучше для себя. Готовые решения не решают задачу «идеального решения», но для целей знакомства с одними из лучших решений подойдут. grml-zsh я тоже смотрел, даже читал вроде бы пдфку, но не задело. А для oh-my-zsh куча тем со скринами и куча плагинов с описанием.

iVS ★★★★★
()
Последнее исправление: iVS (всего исправлений: 1)
while sleep 1 ; do echo -ne '\033]2;'`pwd`'\007'; done &

Будет писать путь в заголовке терминала. Работает в многих терминалах.

andrewzvn
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.