对类似问题的回答表明我不能以独立模式导入Shell内容。然而,据我所知,St是一个用c编写的独立库,但我仍然无法在gjs中导入它…
。
$ gjs -c "imports.gi.Gtk"
工作(即无输出)。但
$ gjs -c "imports.gi.St"
与 失败
Error: Requiring St, version none: Typelib file for namespace 'St' (any version) not found
是否有任何方法导入St库从独立(不是GNOME Shell扩展)gjs?
其中一些并不存在(例如Meta, Shell, St),因为它们被认为是"私有的"。在这里阅读更多关于如何导入它们的信息:http://mathematicalcoffee.blogspot.ca/2012/09/developing-gnome-shell-extensions_6.html?m=1
St Lib将真的(!!)帮助编写具有自定义接口的应用程序,因为使用了CSS。如果我们可以将这个库与Clutter和gjs一起使用,那么由于St和Shell库的易用性,它将真正吸引开发人员。
请尝试:
#!/usr/bin/gjs
const res = imports.gi.GIRepository.Repository
res.prepend_search_path('/usr/lib/x86_64-linux-gnu/mutter-11')
res.prepend_search_path('/usr/lib/gnome-shell')
const St = imports.gi.St;
根据您的设置,库可以位于不同的位置。也请检查https://gist.github.com/buzztaiki/1492431,无法找到Meta, Shell &在Python的GTK绑定中,gjs有