我写一个简单的扩展点击扩展按钮,打开浏览器。我想知道是否有一个函数可以执行传递shell命令作为参数。此外,如果任何人都可以提出一个很好的简单参考来进行扩展开发,那将会非常有用。GNOME扩展 – 运行shell命令
===========解决方案如下:
从https://github.com/GNOME/gnome-shell/blob/master/js/misc/util.js:
// Runs @command_line in the background, handling any errors that
// occur when trying to parse or start the program.
function spawnCommandLine(command_line) {
try {
let [success, argv] = GLib.shell_parse_argv(command_line);
trySpawn(argv);
} catch (err) {
_handleSpawnError(command_line, err);
}
}
有在那里,方法有一些变化。保存自己的头痛山脉,只需将GitHub存储库添加为书签。
是一些快速链接:
- popupMenu.js:很好看的实施 “托盘” 图标
- modalDialog.js:用弹出菜单
- panel.js工作的一些用户界面元素被用来被重用,runDialog。 js使用这个例如
- mpris.js:也有很好的例子使用框架如DBUS在gjs
我不能强调不够,你会得到多少读码侏儒壳源。不幸的是,它现在被编译成一个资源文件,所以我们没有本地副本偶然发现。