我为 gnome shell 创建了一个扩展,并希望能够使用键盘快捷键(如 ctrl+space)启动它。我没有找到好的文档或教程来帮助我首先创建扩展,而且我找到的文档或教程没有提到键盘快捷键。我能想到的最简单的解决方法是编写一个运行扩展的 bash 脚本,然后将该脚本映射到快捷键。当我使用时gjs extension.js
我得到这个:
(gjs:2929): Gjs-WARNING **: JS ERROR: Error: Requiring St, version none: Typelib file for namespace 'St' (any version) not found
@extension.js:5
JS_EvaluateScript() failed
答案1
作为先决条件,必须将 Gnome Shell 扩展安装在 gnome-shell 可以找到的位置。这是在
/usr/share/gnome-shell/extensions/
用于系统范围的扩展(由您的发行版包管理器管理)$HOME/.local/share/gnome-shell/extensions/
用于用户扩展(这是您放置扩展的位置)。
然后,要启用/禁用扩展,请使用和gnome-shell-extension-tool
选项。例如,要启用扩展,请使用-e
-d
test@test
gnome-shell-extension-tool -e test@test
您可以通过 Gnome 控制中心为此命令分配键盘快捷键。
话虽如此,这可能不是您想要做的。相反,您应该编写扩展以使其始终处于启用状态。启用后,您的扩展应通过 向 gnome-shell 添加键绑定Main.wm.addKeybinding()
。此键绑定会触发您的扩展所需的操作。有关如何执行此操作的具体信息,请寻求帮助堆栈溢出,参见gnome shell 源代码或者查看源代码其他扩展。