我试图找出一种体面的方法来将 tmux 缓冲区中的内容复制到剪贴板中。我尝试了一些不同的东西,比如
bind-key p select-pane -t 2 \; split-window 'xsel -i -b' \; paste-buffer
Run Code Online (Sandbox Code Playgroud)
这让我相当接近,我所要做的就是在我做前缀 p 之后点击 control-d。
我尝试通过这样做来解决这个问题
bind-key p select-pane -t 2 \; split-window 'xsel -i -b << HERE\; tmux paste-buffer\; echo HERE'
Run Code Online (Sandbox Code Playgroud)
但这根本行不通。事实上,如果我把它配对到只是
bind-key p select-pane -t 2 \; split-window 'xsel -i -b << HERE'
Run Code Online (Sandbox Code Playgroud)
它没有做任何事情,所以我假设拆分窗口不喜欢 shell 命令中的 << 。
有任何想法吗?
编辑:select-pane -t 2如果你愿意,你可以跳过,这并不重要。我只使用特定的布局,而窗格 2 是我在做其他事情时更喜欢拆分的布局,以便默认情况下进入涉及拆分的绑定。
我已经习惯了 vim 绑定(比如按 w 转到单词,按 dw 删除单词等等)和它的模式(插入、正常、视觉),并且出于好奇想知道:是否有一些这种从vim到我的终端的模式和绑定行为的实现方式?
有插入模式,普通模式等等...
我正在使用以下行tmux来获取 GNU Screen 中的“硬拷贝”功能:
bind H capture-pane \; save-buffer -b 0 ~/tmux.hardcopy \; delete-buffer -b 0
Run Code Online (Sandbox Code Playgroud)
但是,ANSI 颜色不会被捕获到文件中。如何tmux保存 ANSI 转义序列,以便硬拷贝也有颜色?
我有大约 400k 行输出要在 tmux 中滚动。如何加快复制模式下的滚动速度?或者,如何将所有(已生成的)输出内容传输到文件中?
我有一个包含许多日志文件^H和^M字符,如产生这个文件更新了基于文本的进度栏的过程。
使用时cat,输出会被评估并显示为人类可读和简洁。下面是一个示例输出。
Epoch 11/120
4355/4355 [==============================] - ETA: 0s - loss: 0.0096
Epoch 00011: val_loss did not improve from 0.00992
4355/4355 [==============================] - 1220s 280ms/step - loss: 0.0096 - val_loss: 0.0100
Run Code Online (Sandbox Code Playgroud)
但是,与上面的实际打印文本cat所建议的(70MB 大约 900 行)文本相比,文件本身是巨大的。
下面是日志文件中包含的实际文本的片段。
1/Unknown - 0s 81us/step - loss: 0.5337^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^M 2/Unknown - 1s 438ms/step - loss: 0.5299^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^
H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^M 3/Unknown - 1s 386ms/step - loss: 0.5286^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^M 4/Unknown - 1s 357ms/step - loss: 0.5289^H^H^H^H^H^H^H^H^H^
H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^M 5/Unknown - 2s 339ms/step - loss: …Run Code Online (Sandbox Code Playgroud)