更新
所发生的事情是,每当我杀死一些文本时,它就会被添加到kill-ring中,然后是一个额外的""。然后C-y只插入""。所以问题是额外的""是从哪里来的?
原始问题
我在tmux下运行tmux,无法让C-y (甚至M-x yank)从kill-ring中插入内容。我确实在小型缓冲区中看到了Mark set,这是yank的正常行为;我只是没有看到任何东西被拉伤。我还看到,每次点击""时,kill-ring都会被添加到C-y中。
我知道C-y是通过查看M-x view-lossage的输出而被emacs接收的,我知道C-y是通过查看C-h b的键绑定而绑定到yank的。此外,直接运行M-x yank也得到了完全相同的结果。
当我在tmux之外重复这个实验的时候,它会像预期的那样工作。值得注意的是,如果我用screen而不是tmux重复这个实验,C-y就会像预期的那样工作。
更多的细节是,在tmux中,我尝试使用TERM=xterm-256color和TERM=screen-256color运行emacs,结果是相同的。将xterm-keys on或xterm-keys off设置为tmux似乎也不重要。我一直在关闭我尝试的每个置换之间的每个tmux会话,以确保我的.tmux.conf得到重新处理(我知道这是因为我的.tmux.conf中的其他更改确实会产生影响)。事实上,我甚至可以用相同的结果来注释掉我的整个.tmux.conf。
而且,我在iTerm2和Terminal.app (我在mac上)都试过了,结果也一样。
所以,我觉得我在这里是个死胡同。对于如何更好地调试这个问题,有什么想法吗?
发布于 2012-11-10 11:19:56
最后,我找到了一些我复制到我的emacs init.el中的代码,以允许从我的OSX剪贴板复制和粘贴。如果我从我的init.el中删除该代码,C-y在tmux下可以正常工作。(代码是here --在我决定试用tmux之前,效果很好!)我仍然不清楚到底是什么问题,但很容易相信它会影响C-y的行为。
https://stackoverflow.com/questions/13320719
复制相似问题