我是 tmux 和 irssi 的狂热用户。我一直在尝试在 tmux 中使用带有 irssi 的 nicklist.pl,但只成功了一半。我目前正在按照此处的说明操作:使用 tmux 内的屏幕使用 irssi 运行 nicklist?
然而,它并不是每次都有效。如果我设置它,然后保存我的 irssi 配置,那么每次我在 tmux 中打开 irssi 时,脚本(位于 autorun 文件夹中)都不会创建 tmux 窗格并设置昵称。我该怎么做才能让它每次都起作用?
我刚刚通过按住领导者 (Cb) 并使用向上/向下箭头键调整了窗格的大小。我知道我可以只使用百分比,但是如果 tmux 告诉我当前布局的大小会很方便。
我正在使用一个自定义的 .tmux.conf 文件,它看起来像这样:
unbind-key C-b
set -g prefix C-a
bind-key C-a send-prefix
set-window-option -g mode-keys vi
bind-key -t vi-copy 'v' begin-selection
bind-key -t vi-copy 'y' copy-selection
## CLIPBOARD selection integration
# Requires prefix key before the command key
# Copy tmux paste buffer to CLIPBOARD
bind C-y run "tmux show-buffer | xclip -i -selection clipboard"
# Copy CLIPBOARD to tmux paste buffer and paste tmux paste buffer
bind C-p run "tmux set-buffer -- \"$(xclip -o -selection clipboard)\"; tmux paste-buffer"
Run Code Online (Sandbox Code Playgroud)
我使用的 …
是否有任何已知的tmux功能,例如tmux has-session -t <session>, 但要检查 tmux服务器当前是否正在运行?在编写自动化脚本时会很方便。检查会话是否存在时
$ tmux has-session -t SomeSession
Run Code Online (Sandbox Code Playgroud)
除非 tmux 服务器已经在运行,否则用户会出现错误
failed to connect to server
Run Code Online (Sandbox Code Playgroud)
因此,我想事先检查服务器当前是否正在运行。如果是,请检查会话等。有没有办法在没有管道到 /dev/null 的情况下使这个静音?
阅读tmux 手册页,我认为在两窗格设置中将字符从一个窗格发送到另一个窗格的命令如下:
tmux send-keys -t + "ls -l"
Run Code Online (Sandbox Code Playgroud)
但它只是发送到我目前所在的同一个窗格。 但是,如果我执行以下操作:
tmux send-keys -t %1 "ls -l"
Run Code Online (Sandbox Code Playgroud)
其中 %0 是我当前的窗格,而 %1 是“其他”窗格,那么它确实可以正常工作。
我错过了什么?
我目前使用 iTerm2 并经常通过 SSH 连接到远程服务器并启动 tmux 会话。在所有这些服务器上,当通过 SSH 连接到它们时,我会自动创建一个 tmux 配置来启用鼠标报告,其中包含以下内容~/.tmux.conf:setw -g mode-mouse on
但是,如果我的 SSH 会话突然结束并且 tmux 没有机会禁用鼠标报告,则在终端窗口中的任何位置使用鼠标会引入奇怪的代码,例如:
$ 0;94;18M0;94;18m0;19;33M0;14;33m
我发现我不是唯一遇到此问题的人,请参阅https://code.google.com/p/iterm2/issues/detail?can=2&q=&colspec=ID%20Type%20Status%20Priority%20Milestone%20Owner% 20总结&groupby=&sort=&id=855
我相信这个问题的一个简单解决方案是在用于打开我的 SSH 会话的 bash 脚本中创建一个陷阱。每当 SSH 到 tmux 会话结束时,陷阱就可以禁用鼠标报告。
问题是我不知道如何从 bash 中禁用鼠标报告。我找到了一篇描述控制台代码的文章,但是我对此没有任何运气。
如何向终端发送命令以禁用鼠标报告?
tmux 联机帮助页的可用变量列表中的条目pane_pid如下:
pane_pid PID of first process in pane
但是,根据Run or send a command to a tmux pane in a running tmux session,“一旦使用初始命令启动,tmux 不提供向窗格添加额外进程的方法。”
那么......返回窗格的第一个进程的PID是什么意思?假设这是窗格的唯一一个PID是否合理,或者实际上是否有某种方法可以让窗格具有多个关联的 PID?
当我调整终端窗口的大小时,一条长线被包裹,如下所示:
-----------
| hel|
|lo |
|> |
-----------
Run Code Online (Sandbox Code Playgroud)
并在复制模式下向后搜索“你好”,什么也没找到。当我调整终端窗口的大小时,例如:
-------------
| hello|
|> |
-------------
Run Code Online (Sandbox Code Playgroud)
向后搜索找到“你好”。
这使得搜索对我来说几乎毫无用处。这是 tmux 的预期行为吗?屏幕没有这个问题。如何使搜索对换行不敏感?一个插件?
系统:tmux 1.8-5;xfce 终端模拟器 0.6.3;zsh; 空的 .tmux.conf
我已经使用 Byobu 一段时间了,真的很享受。但现在想回到 tmux。原因在问题的后半部分给出。首先,问题:
如何在独立的 tmux 中获取 Byobu 的键绑定。我真的很喜欢 Byobu 的按键绑定。他们是在 byobu 中的一些文件,我可以从那里直接复制键绑定并粘贴到我tmux.conf要使用的文件中。
问题是 tmux-resurrect 插件与 byobu 一起玩起来并不酷。当我在重启后使用 tmux-resurrect 插件恢复我的 tmux 会话时,它在 byobu 内部搞砸了。
问题发布在这里:https : //github.com/tmux-plugins/tmux-resurrect/issues/61
正如标题所暗示的,我想通过将鼠标悬停在窗格上来选择 tmux 中的一个窗格,就像使用 Gnome 终端一样。我不想单击窗格来选择它。
那可能吗?
tmux ×10
linux ×2
terminal ×2
byobu ×1
command-line ×1
irssi ×1
iterm2 ×1
mouse ×1
mouse-click ×1
ssh ×1