Конфигурация Tmux не сохраняет PWD в новом окне или разделенном окне

Поэтому я пытаюсь обновить .tmux.conf file чтобы отразить изменение для -c в new-window . Я добавил это в свой конфиг, и к сожалению, он не работает. Мои новые окна и панели всегда начинаются с ~/ :

 # Saner splitting. bind v split-window -c $PWD -h bind s split-window -c $PWD -v # Autorename sanely. setw -g automatic-rename on # Better name management bind c new-window -c $PWD 

Мое ожидаемое поведение заключается в том, что моя новая панель или окно будет в каталоге, в котором когда-либо была панель, в которой я раньше находился. Итак, если я в Window 1, который находится в ~/Sites/project , мое новое окно также будет там.

One Solution collect form web for “Конфигурация Tmux не сохраняет PWD в новом окне или разделенном окне”

Вы используете неправильный пример. 😉 Наличие $PWD качестве аргумента для -c означает, чтобы вновь созданные панели запускались в каталоге, в котором находится tmux сервер , другими словами, в каталоге, в котором вы впервые запустили tmux . Каталог текущей области – это та, которая хранится в внутренней переменной tmux #{pane_current_path} :

 * 'default-path' has been removed. The new-window command accepts '-c' to cater for this. The previous value of "." can be replaced with: 'neww -c $PWD', the previous value of '' which meant current path of the pane can be specified as: 'neww -c "#{pane_current_path}"' 

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

 # Saner splitting. bind v split-window -c "#{pane_current_path}" -h bind s split-window -c "#{pane_current_path}" -v # Autorename sanely. setw -g automatic-rename on # Better name management bind c new-window -c "#{pane_current_path}" 

Примечание. Это не сработает, если в вашей текущей панели запущена чужая оболочка (я упал на нее, поэтому я прямо говорю вам): Если у вас запущен сеанс sudo или su , у вас новая панель, вы получите рабочий каталог / . Это просто объясняет: ваш tmux не может получить текущий рабочий каталог запущенного процесса, поскольку он не имеет соответствующих прав для этого по соображениям безопасности (вы не можете прочитать жизненно важное состояние процесса иностранного пользователя).

  • Tmux и GPM на голом tty
  • tmux: сохранять позицию прокрутки при смене сеанса
  • Как определить, подключен ли tmux?
  • История команд Bash перестает работать после запуска новой сессии tmux
  • «Заменить» оболочку по умолчанию (bash) с помощью tmux
  • bash show-all-if-twoiguous включается спонтанно
  • Как сопоставить j / k с <Up> / <Down> для приложения только в терминальном эмуляторе?
  • Как предотвратить отображение tmux в новом окне
  • Запретить закрытие окна / окна при завершении команды - tmux
  • Как просмотреть количество ожидающих данных в соке домена unix?
  • выйти из окна tmux без выхода из программы терминала
  • Linux и Unix - лучшая ОС в мире.