web-dev-qa-db-fra.com

Ajouter des menus clic droit à Nautilus sans Nautile-actions

Je veux savoir comment je peux ajouter une action lorsque l'utilisateur clique avec le bouton droit de la souris sur des types ou des dossiers MIME spécifiques sans l'utilisation de nautilus-actions.

Je serais heureux si cela était possible en utilisant également les scripts Nautilus, mais je veux qu’ils ne s’affichent que pour certains types de mimes.

Je crois que c'est possible: Ubuntu One le fait.

7
hytromo

Vous pouvez utiliser l'API d'extension Nautilus pour cela. En particulier, je recommande Nautilus-Python .

Voici un exemple simple qui ajoute un élément de menu contextuel pour le type MIME text/plain:

from gi.repository import Nautilus, GObject

class ExampleMenuProvider(GObject.GObject, Nautilus.MenuProvider):
    def activate(self, menu, files):
        print 'activated' # do something

    def get_file_items(self, window, files):
        if len(files) != 1 or files[0].get_mime_type() != 'text/plain': return
        item = Nautilus.MenuItem(
            name='SimpleMenuExtension::Do_Something', label='Do Something')
        item.connect('activate', self.activate, files)
        return [item]

Vous devez installer les packages python-nautilus et gir1.2-gconf-2.0 et placer le script Pythonci-dessus dans ~/.local/share/nautilus-python/extensions/.

5
vitaut