tmux 引脚以避免滚动
tmux pin to avoid scrolling
通常当我 运行 一个写入 stdout 的命令失败时,我必须向上滚动(使用不舒服的键绑定)寻找我按下 Enter 的地方,看看第一个错误是(在数百个其他错误中,跨越许多文本屏幕)。这既烦人又费时。我希望有一个功能可以让我将当前终端固定到我现在所在的位置,然后启动命令,只查看输出的第一行(尽可能多地适合我的光标下方)并让其余的输出被写入但不显示。换句话说,我想要一个功能,允许我自动向上滚动到我发出命令的地方,以查看输出的第一行(通常显示失败的来源)。
我找过,没找到。你知道这样的功能是否存在吗?或者知道如何通过一些技巧或解决方法来实现它?
如果你有一个独特的 shell 提示,你可以绑定一个键来在 shell 提示之间跳转,例如这样的事情会让 C-b S
跳转到上一个 [=27] =] 提示然后 S
后续的:
bind S copy-mode \; send -X search-backward 'nicholas@myhost:'
bind -Tcopy-mode S send -X search-backward 'nicholas@myhost:'
或者类似地,您可以搜索具有可识别前缀的错误字符串。如果你安装了 tmux 3.1 候选发布版,你可以搜索正则表达式。
或者,您可以使用 capture-pane
将整个历史加载到具有您喜欢的键绑定的编辑器中,例如:
$ tmux capturep -S- -E- -p|vim -
或通过管道传输到 grep
或其他任何内容。请注意,您需要使用一个临时文件才能与 emacs 一起使用。
或者尝试养成 tee
将带有大量输出到文件的命令作为开始的习惯。
通常当我 运行 一个写入 stdout 的命令失败时,我必须向上滚动(使用不舒服的键绑定)寻找我按下 Enter 的地方,看看第一个错误是(在数百个其他错误中,跨越许多文本屏幕)。这既烦人又费时。我希望有一个功能可以让我将当前终端固定到我现在所在的位置,然后启动命令,只查看输出的第一行(尽可能多地适合我的光标下方)并让其余的输出被写入但不显示。换句话说,我想要一个功能,允许我自动向上滚动到我发出命令的地方,以查看输出的第一行(通常显示失败的来源)。
我找过,没找到。你知道这样的功能是否存在吗?或者知道如何通过一些技巧或解决方法来实现它?
如果你有一个独特的 shell 提示,你可以绑定一个键来在 shell 提示之间跳转,例如这样的事情会让 C-b S
跳转到上一个 [=27] =] 提示然后 S
后续的:
bind S copy-mode \; send -X search-backward 'nicholas@myhost:'
bind -Tcopy-mode S send -X search-backward 'nicholas@myhost:'
或者类似地,您可以搜索具有可识别前缀的错误字符串。如果你安装了 tmux 3.1 候选发布版,你可以搜索正则表达式。
或者,您可以使用 capture-pane
将整个历史加载到具有您喜欢的键绑定的编辑器中,例如:
$ tmux capturep -S- -E- -p|vim -
或通过管道传输到 grep
或其他任何内容。请注意,您需要使用一个临时文件才能与 emacs 一起使用。
或者尝试养成 tee
将带有大量输出到文件的命令作为开始的习惯。