Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/qt/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用python向文件管理器(nautilus)添加上下文菜单_Python_Qt_Nautilus - Fatal编程技术网

使用python向文件管理器(nautilus)添加上下文菜单

使用python向文件管理器(nautilus)添加上下文菜单,python,qt,nautilus,Python,Qt,Nautilus,我正在尝试向文件管理器(nautilus)添加一个菜单项,该菜单项调用我自己的python/Qt程序,该程序对所选文件/文件夹执行一些工作 我发现 import nautilus class ExampleMenuProvider(nautilus.MenuProvider): def __init__(self): pass def get_file_items(self, window, files): submenu = nautil

我正在尝试向文件管理器(nautilus)添加一个菜单项,该菜单项调用我自己的python/Qt程序,该程序对所选文件/文件夹执行一些工作

我发现

  import nautilus

class ExampleMenuProvider(nautilus.MenuProvider):
    def __init__(self):
        pass

    def get_file_items(self, window, files):
        submenu = nautilus.Menu()

        item = nautilus.MenuItem('Nautilus::sbi','Nau-T','image')
        item.set_submenu(submenu)
    item_two = nautilus.MenuItem('Nautilus::s','www','image')
    submenu.append_item(item_two)

    return item,
但是我在任何地方都找不到nautilus模块可以安装

我在某个地方读到,我应该创建一个nautilus扩展,但是要安装
nautilus扩展
,但是如果我在我的开发机器上安装这个包,我怎么能保证它会安装在客户端机器上呢

谢谢你的帮助

但是,如果我在我的dev机器上安装这个包,我怎么能保证它将安装在客户机上呢

至少有两种选择:

  • 自述文件中记录如何安装依赖项

  • 将该模块与应用程序一起发布

我个人更喜欢前者,因为这将允许用户从Linux机器上的系统范围安装中获益

例如,如果在该模块中修复了一个bug,他们可以在您的系统上更新它,而无需您提供新版本,也无需将自己与安装目录弄乱


在我看来,这并没有那么糟糕,毕竟,Python依赖项和Qt库的情况也是一样的。大概,如果用户遇到困难,您也会让他们知道在哪里可以获得它们。

好的,谢谢。我知道这与原始问题无关,但想法是在我的应用程序中包含.deb文件,并让客户端在运行我的应用程序之前安装它们。