在我的.zshrc中,我使用以下代码段来集成
shell的剪贴板和主X11剪贴板.由于这种集成,我可以剪切和粘贴emacs,firefox和终端的文本,而不必使用鼠标.
kill-line() { zle .kill-line ; echo -n $CUTBUFFER | xclip -i } zle -N kill-line # bound on C-k yank() { LBUFFER=$LBUFFER$(xclip -o) } zle -N yank # bound on C-y
注意:我在Mac OS X上使用这个技巧(使用pbcopy / pbpaste而不是xclip),感谢Synergy我的两台电脑共享一个剪贴板.整齐.但它并不适用于readline.我发现自己使用readline很多,例如在(i)python,gdb,ncftp …
所以这里有我的问题:有没有办法将readline的剪贴板与剩下的剪贴板整合在一起?
当然,我在这里想到一些这个意见,但任何见解/想法都是值得欢迎的.
个人来说,我运行在
GNU screen以内的所有内容.这给了我所有基于终端的程序的功能,而不仅仅是基于readline的程序.它具有自己的粘贴缓冲区,它们在当前会话中的所有屏幕之间共享,并且可以读取/写入交换文件(可使用缓冲区文件配置).
原文链接:https://www.f2er.com/bash/383893.html>使用Ctrl A,[,< movement>,Space< movement> ;;
>使用Enter复制到粘贴缓冲区;
>粘贴Ctrl A,];
>用Ctrl A,< ;;的交换文件的内容替换
并用Ctrl A和>写出交换文件.
那么所有你需要的是小帮手同步/ tmp /屏幕交换和X选择.像这样简单的东西可以工作.
# ~/.screenrc (or entered at C-a : command prompt) bind '{' exec sh -c 'xclip -o>~/.screen_exchange' bind '}' exec sh -c 'xclip -i ~/.screen_exchange'
当然,一些更好的绑定和宏会使生活变得更轻松(这就需要C-a {C-a-C-a]将X选择粘贴到终端),但这完全取决于你.