Linux
st 終端:選擇時複製並點擊滑鼠右鍵粘貼
https://st.suckless.org/patches/clipboard/使滑鼠滾輪選擇和粘貼,但我需要在選擇滑鼠左鍵時複製,然後點擊滑鼠右鍵進行粘貼。
並擴展, ctrl-v 粘貼。
我使用 xorg、archlinux。
如何做到這一點?
滑鼠釋放處理
將滑鼠事件轉換為粘貼的常式
brelease()
位於x.c
:void brelease(XEvent *e) { if (IS_SET(MODE_MOUSE) && !(e->xbutton.state & forceselmod)) { mousereport(e); return; } if (e->xbutton.button == Button2) selpaste(NULL); else if (e->xbutton.button == Button1) mousesel(e, 1); }
如果要粘貼右鍵,而不是中間的,只需更改
Button2
為Button3
然後重新編譯:if (e->xbutton.button == Button3)
鍵盤快捷鍵定義
鍵盤快捷鍵
shortcuts
位於config.h
. 剪貼板粘貼已映射到Ctrl
-Shift
-V
:static Shortcut shortcuts[] = { /* mask keysym function argument */ ... { TERMMOD, XK_V, clippaste, {.i = 0} },
Ctrl
-v
在某些 shell 和編輯器中已經具有特殊含義,因此您可能不希望終端攔截它,而更喜歡使用現有的快捷方式。但是,如果您真的確定要使用此新快捷方式,則必須按如下方式添加/更改該行:{ ControlMask, XK_v, clippaste, {.i = 0} },
注意
XK_v
now 有一個小寫的“v”,因為它沒有Shift
.