更新:我一直在玩这个,似乎tmux的clear-history命令可能会破坏.
如果我有两个窗格以0.0和0.1打开,我输入18个命令,然后在0.1(0.0)运行
tmux send-keys -t 0.1 q C-u "clear; tmux clear-history" C-m
…然后切换到窗格0.1并进入复制模式并向上滚动,不清除滚动缓冲区.
但是,如果我说清楚; tmux clear-history直接从0.1开始,然后滚动缓冲区被正确清除.
我正在运行tmux 1.6.对这种行为的任何想法?
我正在使用vimux将测试发送到tmux窗格,为我的测试命令添加前缀
call RunVimTmuxCommand("clear; ruby -Itest /spec/some_spec.rb")
…但是由于MiniTest在某些故障时给我一些相当长的堆栈跟踪,我已经在vimux窗格中进入复制模式并使用/搜索ERROR,这非常有效.
唯一的问题是窗格保留了回滚历史记录,因此我会发现我知道我已修复的测试失败(因为我正在搜索历史记录).
我试过修改以上内容
call RunVimTmuxCommand("clear; tmux clear-history; ruby -Itest /spec/some_spec.rb")
但是当从vimux发送时,这似乎不起作用.如果我手动运行完全相同的命令(如我切换到vimux窗格并自己运行),它工作正常.
我假设这与vimux如何向窗格发送命令有关,但我不知道如何修复它.有人有什么建议吗?
最佳答案 我写信给vimux的作者,他已经修好了;真棒!