Gnome 3: Call суши, быстрый просмотрщик файлов Nautilus через DBus
В Gnome 3 у Nautilus появился новый превьюер файлов под названием Sushi. Вы можете выбрать файл в Nautilus, нажать пробел, и он покажет быстрый предварительный просмотр. Это очень похоже на то, что делает Quick Look (Preview) на OSX. Quick Look имеет интерфейс командной строки, который позволяет вам использовать Quick Look из вашего собственного приложения. Суши не позволяют этого.
Похоже, единственный способ вызвать суши через dbus. (Если вы знаете, как вызвать его через строку cmd, даже лучше) Я нашел источник суши, где он регистрирует свои сообщения 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)'
1 ответ
Попробуй это:
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
, int32
а также boolean
(sib
) не string
и два целых числа без знака (suu
).
Также обратите внимание, что вы должны использовать URI, а не сырое имя файла - просто добавьте file://
префикс схемы.
Второй параметр должен быть xid окна, который вы хотите показать ваш предварительный просмотр. Но 0 работает для меня.
Я не эксперт в этом вопросе и довольно новичок в Linux. Я тоже столкнулся с этой проблемой, и мне удалось решить ее, переустановив пакет dbg.
Я заметил, что во время обновления до 19.10 этот пакет обязательно нужно удалить, чтобы продолжить установку.
После выполнения обновления gnome-показал ту же ошибку, что и @Matthew Levine, упомянутый в первом посте. переустановка gdb решила проблему для меня.