使用 URxvt 複製和粘貼
我在 debian jessie 上使用 URxvt 9.20,我正在尋找一種複制和粘貼文本的方法,就像我習慣使用 gnome-terminal 一樣(
Ctrl
+Insert
用於複製,Shift
+Insert
用於粘貼)。它可以在不同的 urxvt 控制台中工作,但它不能在例如 urxvt 和 iceweasel 之間工作。
我按照archlinux上的手冊進行了嘗試,但它不起作用(即使我實際上不想使用
Shift
++ /值得一試)Ctrl
。C``V
.X 資源:
! ****************** ! urxvt config ! ****************** ! Disable Perl extension ! If you do not use the Perl extension features, you can improve the security ! and speed by disabling Perl extensions completely. URxvt.perl-ext: URxvt.perl-ext-common: ! Font spacing ! By default the distance between characters can feel too wide. It's controlled ! by this entry: ! URxvt.letterSpace: -1 ! -- Fonts -- ! URxvt.font:xft:Monospace:pixelsize=13 URxvt.boldfont:xft:Monospace-Bold:pixelsize=13 !URxvt*font: -xos4-terminus-medium-*-*-*-14-*-*-*-*-*-iso8859-15,xft:terminus:pixelsize:12 !URxvt*boldFont: -xos4-terminus-bold-*-*-*-14-*-*-*-*-*-iso8859-15,xft:terminus:bold:pixelsize:12 !URxvt*italicFont: xft:Bitstream Vera Sans Mono:italic:autohint=true:pixelsize=12 !URxvt*boldItalicFont: xft:Bitstream Vera Sans Mono:bold:italic:autohint=true:pixelsize=12 ! Disable scrollbar !URxvt*scrollBar: false ! Scrollbar style - rxvt (default), plain (most compact), next, or xterm URxvt.scrollstyle: plain ! Background color !URxvt*background: black URxvt*background: #1B1B1B ! Font color !URxvt*foreground: white URxvt*foreground: #00FF00 ! Other colors URxvt*color0: black !URxvt*color1: red3 URxvt*color1: #CD0000 URxvt*color2: green3 !URxvt*color3: yellow3 URxvt*color3: #C4A000 URxvt*color4: blue2 !URxvt*color4: #3465A4 URxvt*color5: magenta3 URxvt*color6: cyan3 URxvt*color7: gray90 URxvt*color8: grey50 URxvt*color9: red URxvt*color10: green URxvt*color11: yellow !URxvt*color12: blue URxvt*color12: #3465A4 URxvt*color13: magenta URxvt*color14: cyan URxvt*color15: white ! ****************** ! /urxvt config ! ******************
有用於複製/粘貼到/從的內置機制
PRIMARY
(在使用者選擇一些數據時使用)和CLIPBOARD
(在使用者選擇一些數據並明確請求將其“複製”到剪貼板時使用,例如通過呼叫應用程序的“編輯”菜單下的“複製”)。有關 X 中不同剪貼板的更多資訊。對於
CLIPBOARD
緩衝區,它是CTRL+META+C
(CTRL+ALT+C
用於標準 PC 鍵盤)用於複製和CTRL+META+V
(CTRL+ALT+V
) 用於粘貼。來自urxvt man的報價:
選擇:選擇和粘貼文本
文本選擇和插入/粘貼機制的行為類似於 xterm(1)。
選擇:
左鍵點擊區域的開頭,拖動到區域的末尾並釋放;右鍵擴展標記區域;左鍵點兩下選擇一個單詞;左鍵三次點擊以選擇整個邏輯行(可以跨越多個螢幕行),除非被資源 Tripleclickwords 修改。
按下 Meta 鍵(或 Meta+Ctrl 鍵)(編譯:褶邊)開始選擇將創建一個矩形選擇而不是正常選擇。在這種模式下,每個選定的行在選擇中成為自己的行,尾隨空格在視覺上帶有下劃線並從選擇中刪除。
粘貼:
在 urxvt 視窗中按下並釋放滑鼠中鍵會導致插入 PRIMARY 選擇(或帶有 Meta 修飾符的 CLIPBOARD)的值,就好像它已在鍵盤上鍵入一樣。
按下 Shift-Insert 會導致 PRIMARY 選擇的值也被插入。
rxvt-unicode 還提供綁定 Ctrl-Meta-c 並與 CLIPBOARD 選擇進行互動。第一個綁定導致將內部選擇的值複製到 CLIPBOARD 選擇,而第二個綁定導致插入 CLIPBOARD 選擇的值。
對於粘貼文本,在 urxvt/rxvt-unicode 中,您可以使用
middle button
粘貼 PRIMARY 選擇和Alt/Meta
+middle button
粘貼剪貼板。對於複製,只需在終端中標記文本即可將其複製到 PRIMARY 選擇。不過,複製到剪貼板選擇需要一些工作。我將您連結的 Archlinux 頁面中的資訊與 rxvt-unicode-9.19 中包含的腳本結合起來,最終得到瞭如下腳本:https ://gist.github.com/xkr47/98224ed6b0860cb55ec0 。它允許使用
Ctrl
+Insert
或Ctrl
+Shift
+ `c`` 將目前選定的文本複製到剪貼板。希望這可以幫助。
作為記錄,我也沒有執行桌面環境;使用 Sawfish 作為視窗管理器。
提示:您可以使用“xclip”程序在終端中監視剪貼板:
while :; do echo -ne '\033[31;1mCLIPBOARD: ' ; xclip -o -sel c ; echo ; echo -ne '\033[32;1mPRIMARY: ' ; xclip -o -sel p ; echo ; echo -e '\033[m--------' ; sleep 1 ; done
或使用“xsel”程序:
while :; do echo -ne '\033[31;1mCLIPBOARD: ' ; xsel -b -o ; echo ; echo -ne '\033[32;1mPRIMARY: ' ; xclip -p -o ; echo ; echo -e '\033[m--------' ; sleep 1 ; done