我倾向于同时在 tmux 中打开几个窗口。我还会根据我正在处理的任务自动为它们命名。因此,我的 tmux 窗口标签空间不足。有没有办法将 tmux 栏配置为 2 行高并用窗口名称填充两行?
在我的 Mac 上,我已$EDITOR设置为'subl -w'. 如果我在 tmux 下运行我的 shell 会话,它会很好地打开编辑器,但终端上的命令永远不会退出。但是,这本身在终端上以及在屏幕下都可以正常工作,因此它可能是 tmux 错误。
我试图在 tmux 中运行 Irssi,但我遇到了一些奇怪的事情。每当收到新消息时,它都会覆盖上一条消息。例如,假设以下聊天记录在我的窗口中:
<User Foo> message 1
<User Bar> message 2
<User Baz> message 3
Run Code Online (Sandbox Code Playgroud)
如果我收到一条新消息,预期的新布局(在不使用 tmux 的终端中的外观)将是:
<User Foo> message 1
<User Bar> message 2
<User Baz> message 3
<User Grok> new message
Run Code Online (Sandbox Code Playgroud)
然而,它看起来像:
<User Foo> message 1
<User Bar> message 2
<User Grok> new message
Run Code Online (Sandbox Code Playgroud)
更糟糕的是,如果多个用户快速连续发送消息,消息将全部相互覆盖,使聊天几乎无法阅读。我可以通过切换到另一个窗口并切换回来来显示完整的日志,但这很不方便,并且妨碍了有效的通信。我对这个问题做了一些研究,但没有成功。关于这里发生了什么的任何想法?
我的大学在他们的 AFS 上为每个学生提供了一个可通过 SSH 访问的目录。有一个(轻量级)CLI 驱动的软件,我想在大学里持续运行。
我以为我可以通过 SSH 通过屏幕运行软件,分离,然后在需要访问 CLI 时从任何其他 SSH 会话重新连接。但是, screen 和 tmux 不起作用,因为它们的功能依赖于套接字,并且不能在 AFS 空间上创建套接字。(见https://bugzilla.redhat.com/show_bug.cgi?id=676663)
我的帐户没有特权,但可以访问可用于在本地编译和运行事物的工具链。
有什么好的解决办法吗?
我在 vim 中有一个用于F5修剪空格的键的绑定,但我无法在 tmux 中使用它。而不是那个字母“T”出现。有什么解决办法吗?
实际上它在腻子中工作,现在我已经切换到 Xshell4。
这可能是 TERM 问题吗?tmux 里面$TERM是screen
用户默认byobu行为/配置的主要特点是tmux什么?
我正在考虑默认情况下将什么部署到生产服务器。tmux胜出screen,因为当远程控制台被“保护免于断开连接”时,它立即可见。会byobu提供更多有趣的默认功能吗?
我使用的是旧版本的 tmux (v1.5)。如何配置 tmux 将默认目录设置为会话启动的目录?
对于较新版本的 tmux(1.7 及更高版本),这不是问题。我可以简单地添加以下内容~/.tmux.conf以获得我想要的:
set-option -g default-path "-"
Run Code Online (Sandbox Code Playgroud)
不幸的是,此选项在我使用的 tmux 版本中不可用。
我copy-pipe在 OS X 上使用 Tmux 1.8 共享系统剪贴板:
unbind -t vi-copy Enter
bind -t vi-copy Enter copy-pipe "reattach-to-user-namespace pbcopy"
Run Code Online (Sandbox Code Playgroud)
这在进入选择模式和复制文本(选择文本,然后点击Enter)时有效,但在用鼠标选择文本时无效。是否可以设置一个在鼠标选择后运行的命令,就像copy-pipe点击后运行一样Enter?即我需要reattach-to-user-namespace pbcopy在选择时运行。
几个月前,我编写了一组 bash 脚本,使用 tmux 在 AIX 7.1 服务器上创建一个简单的 IDE。我的一个脚本中存在一个错误,有时会非常快速地生成用户进程,直至达到 ulimit 设置的限制。这种情况很少发生(大约每月一次),而且我已经花了几个小时来追踪这个错误,但没有成功,所以我决定暂时,我可以简单地将我的软用户进程限制设置为低于硬限制(例如 100 而不是 1024),这样当我的错误再次出现时,服务器上的其他用户不会有明显的性能下降。不幸的是,“ulimit -Su 100”似乎在 AIX 7.1 上的 bash 中不起作用,但它在 ksh 中起作用。我已经执行了以下解决方法:
使 ksh 成为默认 shell:
$ chsh [username] /usr/bin/ksh
Run Code Online (Sandbox Code Playgroud)
将以下内容写入 ~/.kshrc:
ulimit -Su 100 # works in ksh, but not in bash
/bin/bash -il # start bash as an interactive login shell
exit # once bash exits, exit from ksh, too
Run Code Online (Sandbox Code Playgroud)
所以现在,每次我创建一个 shell 时,ksh 都会设置软用户进程限制并启动 bash 作为一个交互式登录 shell(我仍然希望 ~/.bash_profile 获得来源)。现在我想知道,在 ksh 中设置的用户进程限制是否仍然会在 bash 子 shell 中强制执行?在顶级 bash 子shell中,我运行了以下命令: …
我正在使用 PuTTY、tmux 和 vim 的组合。如果我只是打开与 PuTTY 的 SSH 连接,然后打开 vim,鼠标滚动会按预期工作。但是,如果我打开 tmux 然后在 tmux 中打开 vim,则滚动只能部分起作用,这意味着我可以像往常一样向下滚动,但无法向上滚动。如果我向上滚动,缓冲区只会“上下”猛拉,并停留在同一个位置。“set -g mode-mouse on”似乎没有什么区别(我之后确实用“tmux source-file ~/.tmux.conf”重新加载了conf),无论哪种方式都以相同的方式工作。
编辑:我还注意到滚动在终端中的 tmux 中像预期的那样工作,但在 vim 中则不然。我在 vim 中只有与鼠标/终端相关的选项是“set mouse=a”和“set t_Co=256”。
有任何想法吗?