在我的日常生活中,我總是打字<kbd>Keyboard Character</kbd>
,我想在 Ubuntu 中設定一個巨集來自動輸入<kbd> </kbd>
.
我想將它指派給Shift+ Control+K或任何未指派且已被 Ubuntu 使用的鍵盤控製字元組合。
在 TSR(終止並保持駐留)MS-DOS 程式時代,這是可能的。當然它也必須在 Ubuntu 中嗎?
我是否必須編寫一個守護程序來完成此任務?
我發現其他問題沒有答案:如何將巨集指派給 Ubuntu 上的鍵盤按鍵,類似 Windows 中的 Razer 鍵盤巨集?,什麼是好的滑鼠/鍵盤巨集錄製器?
我發現了一個類似的問題和答案:我可以使用鍵盤快捷鍵來實現文字巨集嗎?。然而這個問題規定了答案不可能AutoKey
。
答案1
我做了一些谷歌搜索,發現了一個名為 AutoKey 的程式(Autokey - 用於文字替換熱鍵的 Linux 實用程式)位於清單頂部附近。
我選擇分配自動擴展為 的縮寫,而不是使用Ctrl+ Shift+ 的熱鍵。Kkz
<kbd></kbd>+
它的安裝很簡單:
sudo apt install autokey-gtk
它安裝在啟動器中,螢幕使用起來非常簡單:
答案2
xdotool
還可以做的是與標誌一起使用type
,如下所示:
bash -c ' sleep 0.5; xdotool getactivewindow type "<kbd></kbd>"'
轉到“系統設定”->“鍵盤”->“快捷方式”->“自訂”,然後將該命令綁定到您想要的任何鍵盤快捷方式。我選擇了CtrlSuperK。這裡發生的情況是,我們給用戶 0.5 秒的延遲來釋放鍵盤快捷鍵,然後xdotool
將鍵入關鍵標記標籤,就像您自己在鍵盤上鍵入一樣。非常容易和簡單的方法。事實上我剛剛用它來輸入上面的三個鍵。
請注意,xdotool
預設情況下 Ubuntu 不附帶此功能,因此您必須透過以下方式安裝它sudo apt-get install xdotool
答案3
如果你有一個撰寫文件,您可以將其用作窮人的文本插入實用程式。
您可以使用 X 中的一些修飾符。 顯然你可以用作Shift
修飾符:
! Ctrl Shift <k> : "<kbd></kbd>"
但這不起作用,至少在我的機器上。
這也不起作用(省略Shift
,大寫K
):
! Ctrl <K> : "<kbd></kbd>"
但是,您可以使用Ctrl
and Ctrl
+ Alt
:
! Ctrl Alt <k> : "<kbd></kbd>"
! Ctrl <k> : "<kbd></kbd>"
正確放置遊標
上面的映射會將遊標放置在字串後面(|
表示遊標):
<kbd></kbd>|
我認為沒有通用的解決方案可以將遊標放在標籤內;為此,您需要使用適合用途的工具。但在某些應用程式中,您可以將遊標移至標記內部。
我與 Bash 一起使用gnome-terminal
,它使用 readline 鍵綁定(類似 Emacs)。 Ctrl-b
是後退一個字元的鍵綁定。在我的終端機中,我可以輸入Ctrl+v b
並取得控製字元^B
(U+0002(文字開始))。因此,在字串末尾輸入其中六個字元:
! Ctrl Alt <k> : "<kbd></kbd>^B^B^B^B^B^B"
遊標將放置在標籤內如果您位於一個可以^B
正確解釋的應用程式中(例如終端機和 Emacs):
<kbd>|</kbd>
使用撰寫鍵
您當然可以使用撰寫鍵 ( <Multi_key>
) 來實現相同的目的。例如,使用t
(“標籤”)和k
(“鍵盤”):
<Multi_key> <t> <k> : "<kbd></kbd>^B^B^B^B^B^B"