问题标签 [gjs]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
importerror - 如何在gjs中导入St库
对类似问题的回答表明我无法在独立模式下导入 Shell 内容。但是,据我了解,St 是一个用 C 编写的单独库。但我仍然无法在 gjs 中导入它......
IE
工作(即没有输出)。但
失败了
有没有办法从独立(不是 GNOME Shell 扩展)gjs 导入 St 库?
character-encoding - 在独立 JavaScript (gjs) 中定义源编码
[这是一个关于不在 web/HTML 上下文中的 JavaScript 的问题]
有没有办法对 gjs 中的源 JavaScript 文件强制执行任何特定(即 UTF-8)编码?我面临一个问题,即直接从命令行 ( $ gjs test.js
) 运行的第一个文件被读取为 UTF-8,但任何导入的模块都采用某种单字节编码,这对非英语用户来说几乎没有用。
我有一个简单的测试用例(字符串包括花哨的非 ASCII 引号)。文件test.js
:
文件test2.js
:
当测试用例作为 运行时$ gjs test.js
,它会给出以下输出:
在您使用时,直接调用的文件test.js
确实会产生正确的输出,而导入模块中的字符串会出现乱码。有没有办法让 gjs 将导入的模块解析为 UTF-8?
javascript - 使用 gjs,如何发出异步 http 请求以分块下载文件?
我开始使用我的第一个 javascript GTK 应用程序,我想下载一个文件并使用 Gtk.ProgressBar 跟踪它的进度。我能找到的关于 http 请求的唯一文档是这里的一些示例代码:
http://developer.gnome.org/gnome-devel-demos/unstable/weatherGeonames.js.html.en
还有一些令人困惑的汤参考:
http://www.roojs.org/seed/gir-1.2-gtk-3.0/gjs/Soup.SessionAsync.html
据我所知,我可以做这样的事情:
下载完成时似乎只有一个回调,我找不到任何方法来为任何数据事件设置回调函数。我怎样才能做到这一点?
这在 node.js 中非常简单:
c# - 如何从 javascript Cinnamon 或 Gnome Shell 小程序加载 C# 库?
我想在我的 javascript 代码中加载并使用 C# 库到 Cinnamon 小程序。
关于如何做的任何想法?
javascript - 使用 gjs,如何将 Soup.Buffer 数据块写入文件?
我正在编写一个下载文件并将其写入磁盘的 GTK javascript 程序。这是我的代码的样子:
我在 fstream.write() 行收到错误:
我能找到的对这个错误的唯一引用是在这个线程中:https ://mail.gnome.org/archives/gnome-shell-list/2012-July/msg00126.html
那个人最终放弃并将他的代码移植到 python。
我也对“got_chunk”回调传递的内容感到困惑。块字段是一个 Soup.Buffer ( http://www.roojs.com/seed/gir-1.2-gtk-3.0/gjs/Soup.Buffer.html )。我可以用 chunk.length 获得它的长度,但是当我尝试打印 chunk.data 时它是未定义的。当我只打印块时,它会打印:[object _private_Soup_Buffer]。
fstream 是一个 Gio.FileOutputStream ( http://www.roojs.com/seed/gir-1.2-gtk-3.0/gjs/Gio.FileOutputStream.html )。write方法为:write(String buffer, guint32 count, Cancellable cancellable),cancellable是可选的。奇怪的是,如果我用这个替换写行,我仍然会得到完全相同的错误:
gnome - 无法在 Gjs 中创建 GArray
我尝试创建一个 GArray 但我总是遇到同样的错误:
常量 GLib = 进口.gi.GLib;
var garray = new GLib.Array(true, true, 1); // 无法构造盒装类型 Array,因为它没有零参数,只能包装现有的
var garray = new GLib.Array(); // 无法构造盒装类型 Array,因为它没有零参数,只能包装现有的
我需要一个 GArray 才能在 GnomeKeyring.item_create_sync 方法中使用它:
GnomeKeyring.item_create_sync("login", 4, "name", new GLib.Array(true, true, 1) "pass", true);
我尝试了其他类型的数组而不是 GArray,这是错误
[]
-> 对象 0xb5d120d0 不是 (null) 的子类,它是一个数组new Array()
-> 对象 0xb5e12138 不是 (null) 的子类,它是一个数组{}
-> 对象 0xb5d0b1b0 不是 (null) 的子类,它是一个对象5
-> 未处理的 GType GArray 从 Number 中解包 GArgument"5"
-> 参数“属性”的预期类型接口,但类型为“字符串”
如果有人有解决GArray
方案GnomeKeyring.item_create_sync
gtk - 将 Glade 的信号连接到 Gjs/Seed 代码
我想使用该connect_signals
方法将我的 Glade 信号绑定到 Gjs/Seed 方法。
但我总是收到以下错误:Argument 'user_data' (type void) may not be null
有谁知道如何使用该connect_signals
方法?
Gjs/种子文件
林间空地文件
applet - 无法从肉桂小程序打开 GtkWindow
当我尝试从肉桂小程序打开 GtkWindow 时,整个桌面冻结。
文件中没有错误~/.cinnamon/glass.log
。
代码一直执行,直到Gtk.main()
没有窗口显示并且桌面被冻结。
任何人都知道如何使它正常工作?
gjs - Gnome-shell-extension 析构函数(在 Gnome Shell 退出时运行)?
当 Gnome Shell 关闭(例如计算机关闭)时,是否有任何技巧可以在扩展中运行我的“析构函数”代码?我需要保存一些状态变量以init()
在启动时再次加载它们。
我需要类似 functionenable()
或disable()
. 也许有一些信号被触发,我可以将我的代码连接到?
treeview - Gnome 3 Javascript (GJS) - TreeView - 选择下一个/上一个项目
一个月前,我听说了用于 GNOME 3 的 GJS,我想尝试一下。我想做什么?带有 GJS 的 GNOME 3 的简单媒体播放器。
所以,基地已经被编程,例如:
- 创建 ListStore 并将其连接到 TreeView 对象
- OpenFile 对话框 - 选择 MP3/OGG/WAV 文件
- 从 OpenFile Dialog 获取文件名和 URI 并将其放入 Gtk.ListStore 对象
- 当文件被选中(在 TreeView 对象中)时,Gst 对象从当前选定的行中获取 URI。
现在的问题是我想手动更改 TreeView 对象中选定的行(当用户按下前进或后退按钮时),我不知道如何执行此操作。
我在官方的 GNOME-Docs 和非官方的 Seed文档中查找了它,然后谷歌搜索了它,但没有任何结果。我试图用 GNOME 3 的 C-Docs 找到它,但仍然没有。
我希望有人可以帮我解决这个“小”问题。:)
简单音乐播放器的链接。