我不知道这是否在 byobu 的最新版本中有所更改,但是现在当我创建一个新屏幕时,新屏幕与我当前的窗口位于同一目录中。起初这并不太烦人,一个简单的“cd ~”就能让我到达我想要的地方。但我一直注意到奇怪的事情。在 gem 安装期间,如果我创建一个新窗口,我最终会进入安装 gem 的目录(使用 rbenv 时)。

我只是想让这停止。如何设置 byobu/tmux 以便它在我的主目录中打开所有新窗口?

我查看了一些文件,但似乎看不到任何会导致此问题的命令(例如错误的 'chdir' )。

最佳答案

在 Ubuntu 中,我可以通过将以下行添加到 ${HOME}/.byobu/.tmuxrc 来获得所需的行为:

set-option -g default-path $HOME

此选项是 tmux 手册页中的文档:



我最初尝试使用 set-option -g default-path ~ ,但似乎 tmux 不理解该别名。

更新:以上不适用于 byobu 5.92(可能是其他版本)和 tmux 1.9,因为 tmux 已删除 default-path 选项。似乎 byobu 开发人员正在使用它来获取在 CWD 中打开新窗口的行为,而我和提问者希望它默认在 HOME 目录中打开。在 /usr/share/byobu/keybindings/f-keys.tmux 的新默认绑定(bind)中,我发现了这一点:
bind-key -n F2 new-window -c "#{pane_current_path}" \; rename-window "-"
bind-key -n C-F2 display-panes \; split-window -h -c "#{pane_current_path}"
bind-key -n S-F2 display-panes \; split-window -v -c "#{pane_current_path}"

要获得始终让 byobu 在您的主目录中打开新屏幕的所需行为,请将以下内容添加到 ~/.byobu/keybindings.tmux :
bind-key -n F2 new-window -c "$HOME" \; rename-window "-"
bind-key -n C-F2 display-panes \; split-window -h -c "$HOME"
bind-key -n S-F2 display-panes \; split-window -v -c "$HOME"

关于ubuntu - 使 Byobu 在主目录中打开新屏幕,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/20713314/

10-14 18:35