标签: tmux

鼠标单击仅适用于 iterm2/tmux/mosh

我正在尝试设置 iTerm2 + mosh + tmux 来完成我的远程工作。我可以连接所有东西,但由于某种原因,鼠标响应很奇怪。如果我拆分我的 tmux 窗口,因此我有两个窗格并单击以在它们之间切换,当我第一次这样做时,一切都已找到。第二次及以后,它根本不起作用。我也无法滚动或执行与鼠标相关的任何其他操作。这只会在我点击后发生。如果我所做的只是在两个窗口中滚动,没问题。

如果我使用 SSH 而不是 mosh,问题就不会出现,但这次尝试的重点是全职切换到 mosh。如果我不使用 tmux 而只有一个 vim 窗口,这个问题也不会发生。我可以整天在那里点击。

有谁知道什么设置可能是错误的,甚至从哪里开始?它显然与 tmux 有关,但我一直无法找到可能导致问题的设置。

配置文件

bind -n M-Left select-pane -L
bind -n M-Right select-pane -R
bind -n M-Up select-pane -U
bind -n M-Down select-pane -D

set -g mode-mouse on
set -g mouse-resize-pane on
set -g mouse-select-pane on
set -g mouse-select-window on
Run Code Online (Sandbox Code Playgroud)

mouse vim tmux iterm2 macos

19
推荐指数
1
解决办法
1379
查看次数

如何让 ssh-agent 通过 ssh 和 tmux(在 OS X 上)工作?

我为我的 github 帐户设置了一个私钥,我相信它的密码存储在 OS X 的钥匙串中。当我打开终端窗口并输入ssh git@github.com.

但是,当我在 ssh 会话上或本地在 tmux 会话中运行 bash 时,每次尝试 ssh 到 github 时,我都必须输入密码。

这个问题表明 screen 存在类似的问题,但我不太了解这个问题,无法在 tmux 中修复它。还有这个页面,其中包含一个相当复杂的解决方案,但用于 zsh。

编辑

为了回应@Mikel 的回答,我从本地终端得到以下输出:

[~]
$ echo $SSH_AUTH_SOCK
/tmp/launch-S4HBD6/Listeners
[~] 
$ ssh-add -l
2048 [my key fingerprint] /Users/richie/.ssh/id_rsa (RSA)
[~]
$ typeset -p SSH_AUTH_SOCK
declare -x SSH_AUTH_SOCK="/tmp/launch-S4HBD6/Listeners"
Run Code Online (Sandbox Code Playgroud)

而通过 ssh 或 tmux 我得到:

[~]
$ echo $SSH_AUTH_SOCK

[~]
$ ssh-add -l
Could not open a connection to your authentication agent. …
Run Code Online (Sandbox Code Playgroud)

ssh ssh-agent tmux macos

18
推荐指数
3
解决办法
1万
查看次数

PuTTY/MinTTY 和 Tmux/Byobu 中的功能键快捷键

作为 Stack Exchange 的长期潜伏者,我已经找到了大部分问题的答案,而无需注册帐户。但是今天我完全被这个问题难住了,所以我寻求帮助。

我最近发现了 Byobu,它是 Tmux 的前端,它使用 Fn 键执行常见任务。通过 SSH 从我必须在工作中使用的 Windows PC 到远程 linux 服务器进行多任务处理,这是一个真正的祝福。

目前,我正在通过 SSH 隧道使用 gnome-terminal,因为 PuTTY 和 MinTTY(Cygwin 的默认终端)似乎都为功能键发送了错误的键码。

我想知道是否有办法重新映射某些转义码,以便至少我的一个基于 Windows 的终端可以与 Tmux 正常工作。(我想我可以只学习 Ctrl+b/Ctrl+a 组合键,但是执行组合键后跟另一个键并没有真正让我觉得符合人体工程学。)

在 PuTTY 中,将 Terminal>Keyboard>"The Function keys and keypad" 设置为 "XtermR6" 似乎可以正常为 Fn 键推送正确的转义序列,但 Shift 和 Ctrl 修饰符已损坏。我可以使用 vim 找出每个终端发送的代码。同时,我想我可能已经在其源代码中查找了 tmux 正在寻找的组合,但我不确定:

Key              Tmux Expects    Gnome-Terminal   PuTTY    MinTTY
Normal F3:                       ^[0R             ^[0R     ^[0R
Ctrl+F3          "\033[13^"      ^[01;5R          ^[0R     ^[[1;5R
Shift+F3         "\033[13$"      ^[01;2R          ^[[25~   ^[[1;2R
Ctrl+Shift+F3    "\033[13@"      ^[01;6R          ^[[25~ …
Run Code Online (Sandbox Code Playgroud)

ssh putty mintty tmux byobu

18
推荐指数
1
解决办法
9128
查看次数

tmux - 使用 shift + page up/down 向上/向下滚动到一个窗格中

我希望能够使用与 xterm 相同的键绑定向上/向下滚动到给定的窗格,即 SHIFT + Page Up/Down。

例如,如果 tmux 窗口分为 2 个垂直窗格,我可以使用键盘在两个窗格中的一个上滚动,而另一个不滚动。

是否可以 ?

这是我的 tmux.conf :

set -g status off
set -g prefix C-o
unbind C-b
bind C-o send-prefix

# settings -------------------------------------------------------------

setw -g utf8 on
setw -g xterm-keys on
set -g default-terminal "screen-256color"

set-option -g set-titles on
set-option -g set-titles-string '[#S:#I #H] #W'

# auto-set window title
setw -g automatic-rename
setw -g aggressive-resize on

# vim keybinds
set-option -g status-keys vi
set-window-option -g mode-keys vi

# scroll inside …
Run Code Online (Sandbox Code Playgroud)

keyboard-shortcuts scrolling tmux

18
推荐指数
3
解决办法
2万
查看次数

LSOpenURLsWithRole() 在 Yosemite 上从 tmux 中失败并显示错误 -10810

尝试tmux从命令行(Terminal.app),内部(通过 MacPorts 安装,版本 1.9a)打开应用程序,并得到以下结果:

$ open /Applications/Adobe\ Reader.app/
LSOpenURLsWithRole() failed with error -10810 for the file /Applications/Adobe Reader.app.
Run Code Online (Sandbox Code Playgroud)

如果在 tmux 之外执行相同的命令在同一个终端中可以正常工作

应从主机读取环境;以下是 tmux.conf :set -g update-environment -r

当重新启动或terminal.app TMUX,它有时错误出与不同的消息,首先,(见下文),并试图再次时,上述错误-10810中给出代替。

$ open /Applications/Adobe\ Reader.app/
The window server could not be contacted.  open must be run with a user logged in at the console, either as that user or as root.
Run Code Online (Sandbox Code Playgroud)

我已经尝试过 Apple 自己的应用程序(预览、字体簿、联系人)和第三方(Adobe、Evernote 等)。没有不同。一个似乎有效的应用程序是 finder。(open [dirname]例如。)

terminal macports command-line tmux macos

18
推荐指数
1
解决办法
5631
查看次数

修复了 tmux 中的突出显示

自从我开始使用urxvt + tmux作为主终端以来,我想念控制台上的突出显示(反向模式)。突出显示被替换为斜体字体- 一开始看起来很酷 -但是当我尝试在less.

这在终端类型设置为xterm*配置文件时正常工作(例如set -g default-terminal "xterm-color".tmux.conf 中)。但是,某些快捷方式不起作用,应用程序无法获得正确的终端几何形状,……在这种情况下。

fonts terminal urxvt colors tmux

18
推荐指数
2
解决办法
9331
查看次数

在 emacs 和 vim 中使用 tmux

tmux 的最佳默认键绑定是什么?为什么有时使用 emacs 有时使用 vim(在 Linux Mint 12 上)?Ctrl-b 没问题,但这与 bash shell 和 emacs 有点冲突。

tmux

17
推荐指数
1
解决办法
1万
查看次数

从 tmux 中重命名 Iterm2 选项卡

我可以使用以下函数重命名 iterm2 选项卡,效果很好。

function rename_tab {
    echo -ne "\033]0;"$@"\007"
}
Run Code Online (Sandbox Code Playgroud)

但是,如果我在 tmux 会话中运行此函数,则什么也不会发生。

知道如何在 tmux 中完成这项工作吗?谢谢!

tmux iterm2 macos

17
推荐指数
2
解决办法
6852
查看次数

默认的 tmux 配置文件在哪里?

我正在寻找默认值.tmux.conf或类似的东西。我正在尝试消除默认创建的状态行中的一些噪音。

tmux

16
推荐指数
2
解决办法
1万
查看次数

如何使终端窗口标题与 tmux 窗口同步

我正在使用一个名为“计时”的程序来跟踪我的时间。计时使用 iTerm 中当前窗口的名称进行分类。

我想设置 iTerm 的当前标题以匹配当前活动的 tmux 窗口的名称。

我已经在以下位置设置了一个文件~/.config/fish/functions/fish_title.fish

function fish_title
  tmux display-message -p '#W'
end
Run Code Online (Sandbox Code Playgroud)

每当我打开一个新的终端窗口时,这都会成功地将当前的 Tmux 窗口标题输出到终端窗口。但是,如果我重命名 tmux 窗口或切换到新窗口,则终端不会更新。

它更新,如果我使用类似pwdfish_title

function fish_title
  pwd
end
Run Code Online (Sandbox Code Playgroud)

关于如何fish_title动态获取 tmux 窗口名称的任何想法?

terminal iterm fish tmux

16
推荐指数
1
解决办法
8399
查看次数