Доброго времени суток!
Не получается настроить tmux так, как мне хотелось бы. Первая проблема: в правой части статус-панели отображается путь к текущему каталогу и время, в конфиге:
set -g status-right '#(pwd) %R %d/%m/%g'
разумеется, pwd пишет полностью переменную $HOME. я бы хотел, чтобы вместо этого там было
~/
. Когда мне это понадобилось в заголовке окна терминала, была найдена функция, которая была в .bashrc и хорошо работала:
function directory_to_titlebar {
local pwd_length=42
local dir="$PWD"
if [[ "$HOME" == ${dir:0:${#HOME}} ]] ; then
dir="~${dir:${#HOME}}"
fi
if [[ ${dir:${#dir}-1} != "/" ]] ; then
dir="$dir/"
fi
if [[ "$dir" =~ (~){0,1}/.*(.{${pwd_length}}) ]] ; then
local tilde=${BASH_REMATCH[1]}
local directory=${BASH_REMATCH[2]}
if [[ "$directory" =~ [^/]*(.*) ]] ; then
directory=${BASH_REMATCH[1]}
fi
dir="$tilde/...$directory"
fi
printf "\033]0;%s\007" "$dir"
}
PROMPT_COMMAND='echo -ne "\033]0;${directory_to_titlebar}\007"'
и я не могу понять, как бы мне это использовать для статус панели в tmux. Хотя может есть и более изящный вариант, не откажусь.
Второе. В конфиге описано, что нужно запустить при старте tmux, вот:
new -n rss newsbeuter
neww -n mutt mutt
neww -n mocp mocp
neww -n bash
selectw -t 4
Ситуация такова, что если запустить просто tmux, то откроется то, что запланировано и скроется сразу же, а мне откроется другая сессия с одним окошком, как дефолт. Чтобы этого избежать нужно сразу же писать
tmux attach
, но это несколько неудобно.
Так же, если закрыть одно из запущенных приложений, например mutt, то и окошко с ним закрывается и не помогает в этом случае remain-on-exit on
, только если убивать обычное окошко, оно напишет pane is dead.
Вот такие вот проблемы, жду советов и рекомендаций.