正确放置光标

正确放置光标

在我的日常生活中我总是在打字<kbd>Keyboard Character</kbd>,我想在 Ubuntu 中设置一个宏来自动输入<kbd> </kbd>

我想将其分配给++Shift或任何尚未分配且已被 Ubuntu 使用的键盘控制字符组合。ControlK

在 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会输入按键标记标签,就像您自己在键盘上操作一样。非常简单易行的方法。事实上,我刚刚用它来输入上面的 3 个键。

请注意,xdotoolUbuntu 默认不提供该功能,因此你必须通过以下方式安装它sudo apt-get install xdotool

答案3

如果你有一个撰写文件,您可以将其用作穷人的文本插入实用程序。

您可以使用 X 中的几个修饰符。 显然你可以使用Shift修饰符:

! Ctrl Shift <k> : "<kbd></kbd>"

但这不起作用,至少在我的计算机上。

这也不起作用(省略Shift,大写K):

! Ctrl <K> : "<kbd></kbd>"

但是,您可以使用CtrlCtrl+ Alt

! Ctrl Alt <k> : "<kbd></kbd>"
! Ctrl <k> : "<kbd></kbd>"

正确放置光标

上述映射将把光标放在字符串后面(|表示光标):

<kbd></kbd>|

我认为没有通用的解决方案可以将光标放在标签内;为此,您需要使用适合用途的工具。但在某些应用程序中,您可以将光标放在标签内。

我使用gnome-terminalBash,它使用 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(“tag”) 和k(“keyboard”):

<Multi_key> <t> <k> : "<kbd></kbd>^B^B^B^B^B^B"

答案4

解决方案 1:input-remapper-gtk

这是一个现代的图形适用于 X11 和 Wayland 的无忙等待解决方案:

  1. sudo apt install input-remapper
  2. 打开input-remapper-gtk
  3. 输入密码
  4. 选择你的键盘

输入重映射器 - gtk 设备

  1. 点击“新预设”

输入重映射器-gtk 预设

  1. 点击“+ 添加”

输入重新映射器 - gtk 编辑器添加

  1. 点击 ”

相关内容