2

在 Gnome 3 中,Nautilus 有一个名为 Sushi 的新文件预览器。您可以在 Nautilus 中选择一个文件,按空格键,它将显示快速预览。这与 OSX 上的 Quick Look (Preview) 非常相似。Quick Look 有一个命令行界面,允许您从自己的应用程序内部使用 Quick Look。寿司似乎不允许这样做。

它似乎是通过 dbus 调用 sushi 的唯一方法。(如果您知道如何通过 cmd 行调用它,那就更好了)我找到了 sushi 的源代码来注册它的 dbus 消息,但不知道如何调用它。

这是我尝试过的:

> qdbus org.gnome.NautilusPreviewer /org/gnome/NautilusPreviewer org.gnome.NautilusPreviewer.ShowFile /foo/bar/baz.png 0x1c00010 0
Error: org.gnome.gjs.JSError.Error
Argument 'parent' (type interface) may not be null

我是 dbus 的新手,所以也许我遗漏了一些明显的东西

> dbus-send --print-reply --dest=org.gnome.NautilusPreviewer /org/gnome/NautilusPreviewer org.gnome.NautilusPreviewer.ShowFile string:"/foo/bar/baz.png" uint32:0x1c00010 uint32:1
Error org.freedesktop.DBus.Error.InvalidArgs: Type of message, '(suu)', does not match expected type '(sib)'
4

2 回答 2

2

试试这个:

dbus-send --print-reply --dest=org.gnome.NautilusPreviewer /org/gnome/NautilusPreviewer org.gnome.NautilusPreviewer.ShowFile string:"file:///foo/bar/baz.png" int32:0 boolean:false

您的第二个错误意味着您使用了不正确的类型:您应该使用string,int32boolean( sib),而不是string和两个无符号整数 ( suu)。

另请注意,您应该使用 URI,而不是原始文件名 - 只需添加file://方案前缀。

第二个参数应该是要显示预览的 Window 的 xid。但是 0 对我有用。

于 2016-01-20T01:23:31.150 回答
0

我不是这个问题的专家,也不是 linux 的新手。我也遇到了这个问题,并设法通过重新安装 dbg 包来解决它。

我注意到在升级到 19.10 的过程中,这个包必须被删除以进行安装。

执行升级后,gnome-显示与第一篇文章中提到的@Matthew Levine 相同的错误。重新安装 gdb 为我解决了这个问题。

于 2020-01-16T14:40:08.600 回答