Comment personnaliser le menu contextuel dans Nautilus?

28

De temps en temps, je propose des idées d’actions que je souhaiterais voir figurer dans le menu contextuel de Nautilus. Comment puis-je les ajouter là? Existe-t-il un plugin Thunar UCA pour Nautilus?

    
posée Ivan 17.01.2011 - 13:09
la source

6 réponses

22

La réponse ci-dessous est obsolète: une réponse récemment mise à jour est celle-ci .

Les menus contextuels de Nautilus étaient auparavant personnalisables à l'aide de extensions de Nautilus. . Soyez averti que ce lien mène à la documentation archivée; Les développeurs Gnome ont supprimé cette documentation et ne prennent plus en charge ce type de personnalisation. Cela peut quand même fonctionner.

Vous pouvez également placer des scripts de shell simples dans le répertoire ~/.local/share/nautilus/scripts ( ~/.gnome2/nautilus-scripts des versions précédentes). Ils apparaîtront dans le menu contextuel du fichier sous le sous-menu Scripts .

    
réponse donnée ulidtko 17.01.2011 - 13:34
la source
27

Mise à jour pour Ubuntu 18.04

À la date de parution d’Ubuntu 18.04, Nautilus-Actions n’était / n'est plus disponible. Il semble également avoir été remplacé par un nouveau programme, appelé Filemanager-Actions, qui semble par ailleurs identique.

Pour installer ce programme, consultez la solution .

Actions Nautilus

Nous pouvons définir nos propres éléments de menu contextuel de clic droit avec nautilus-actions .

  • Lancezl'OutildeconfigurationNautilus-Actionsàpartirdutableaudebordoud'unterminaldotéde

    .
    nautilus-actions-config-tool

  • Dans l'onglet Action , attribuez à votre action une étiquette sensible, par exemple. "Ouvrir dans Terminator" et choisissez de l'afficher dans la sélection ou dans le menu contextuel.

  • Ouvrez ensuite l'onglet Commande pour saisir les commandes à exécuter

  • .

  • Indiquezlechemincompletdevotrecommande(/usr/bin/command_to_run)etdesoptionsduprogramme.

  • Aprèsdéconnexionetconnexion,lemenucontextuelencliquantavecleboutondroitdelasourisci-dessouss'affiche:

réponse donnée Takkat 08.11.2011 - 22:22
la source
10

On peut utiliser une extension python-nautilus . comme alternative à nautilus-actions .

Pour installer:

sudo apt-get install python-nautilus

Un exemple simple:

 
import os

from gi.repository import Nautilus, GObject

class ColumnExtension(GObject.GObject, Nautilus.MenuProvider):
    def __init__(self):
        pass
    def menu_activate_cb(self, menu, file):
         os.system("write here your simple bash command & pid=$!")

    def get_background_items(self, window, file):
        item = Nautilus.MenuItem(name='ExampleMenuProvider::Foo2', 
                                         label='Name of your item', 
                                         tip='',
                                         icon='')
        item.connect('activate', self.menu_activate_cb, file)
        return item,

Copiez ce script python sous ~/.local/share/nautilus-python/extensions et redémarrez Nautilus. Lorsque vous cliquez avec le bouton droit sur le bureau et sélectionnez votre élément, votre commande bash simple sera exécutée:)

    
réponse donnée mnrl 28.05.2013 - 20:59
la source
3

Si vous voulez pouvoir faire quelque chose à tout moment, faites comme ulidtko et utilisez ~/.gnome2/nautilus-scripts .

Si vous voulez pouvoir personnaliser quand vous le voyez, installez le paquet nautilus-actions, puis allez dans Système - > Préférences - > Configuration des actions Nautilus.

    
réponse donnée zpletan 17.01.2011 - 13:50
la source
3

Le 29 novembre 2016 ère Ubuntu 14.04, 16.04 et 16.10 plus les versions antérieures.

Voir les instructions de Nautilus pour créer votre propre script ici ( Aide Ubuntu - Nautilus Scripts How to ). En gros vous:

  • Accédez au répertoire ~/.local/share/nautilus/scripts/
  • Placez-y votre script (écrit en Bash, Perl ou Python).
  • Marquez le script comme exécutable avec Nautilus ou depuis le terminal avec chmod +x script_name
  • Nautilus met à disposition des variables d'environnement dans votre script: NAUTILUS_SCRIPT_SELECTED_FILE_PATHS, NAUTILUS_SCRIPT_SELECTED_URIS, NAUTILUS_SCRIPT_CURRENT_URI et NAUTILUS_SCRIPT_WINDOW_GEOMETRY
  • .

Des exemples de scripts se trouvent à l'adresse ( Aide Ubuntu - Exemples de scripts Nautilus ) pour l'envoi de fichiers par courrier électronique, le montage. un fichier ISO, configurer les fichiers en lecture seule, éditer un fichier avec les privilèges gedit ROOT, ouvrir un terminal à l’emplacement actuel, etc.

Parcourez les scripts et utilisez-en un pour chiffrer des fichiers, les télécharger dans le cloud, les compresser pour les sauvegarder ou tout autre travail à effectuer.

    
réponse donnée WinEunuuchs2Unix 30.11.2016 - 03:12
la source
2

TL; DR

La meilleure solution pour les développeurs d'applications consiste à utiliser python-nautilus .

Créez votre script python ( suivant exemples et mauvais documentation ) et copiez-le dans le dossier approprié:

mkdir -p ~/.local/share/nautilus-python/extensions && cp script.py ~/.local/share/nautilus-python/extensions

Explication détaillée

Supposons que vous souhaitiez créer une application que l'utilisateur installera avec un script ou un fichier .deb . Dans cet esprit, je vais expliquer pourquoi je pense que python-nautilus est une meilleure solution par rapport à nautilus-actions et les scripts nautilus .

Actions Nautilus

C’est la seule solution offrant une interface graphique et facilitant ainsi la création de comportements complexes, par exemple, décider des entrées de menu à afficher si le type mime du fichier sélectionné est text/plain .

Le principal problème de cette solution est qu’il n’est pas facile (même possible) d’importer les entrées sur un autre ordinateur sans l’Outil de configuration et l’utilisateur l’important. Disons simplement qu’il ne serait pas possible de le faire avec un script. .

Scripts Nautilus

C’est la solution la plus simple: prenez un script, placez-le dans un dossier, puis faites-le. Cela permettrait certainement à un script d'installation ou à un fichier .deb de créer une nouvelle entrée dans le menu contextuel. Quels sont les problèmes? Où est-ce que je commence ...

  • Il apparaît toujours dans un sous-menu Scripts.
  • Cela ne montre pas si vous n'avez rien sélectionné.
  • Cela ne vous permet pas de décider si vous devez afficher l'entrée ou non.
  • Ne pas autoriser les info-bulles ou les titres différents. (peut-être que je suis difficile)

Une bonne application n'utilise pas de raccourcis comme celui-ci, car elle gâche l'expérience utilisateur.

python-nautilus

Pas aussi facile à créer que les solutions précédentes, mais offre le meilleur des deux mondes. Script et personnalisation.

Cette solution vous permet de créer un script python qui reçoit les fichiers sélectionnés dans Nautilus et vous permet de décider si vous souhaitez afficher une entrée ou non et quoi faire avec cette entrée. Il vous permet également de créer des sous-menus et / ou des choses cool.

L’inconvénient est le grand manque de documentation et les développeurs qui veulent simplement ajouter une entrée risquent de perdre quelques heures à créer un prototype fonctionnel (dans ma recherche, j’ai trouvé une solution C c'était beaucoup plus compliqué que cela).

J'utilise normalement le code Visual Studio, alors que sous Windows, il offre une entrée de menu contextuel Open with Visual Studio Code , il manque la même fonctionnalité sous Linux. Avec la solution Python, il serait facile de résoudre le problème. Je pense que les applications Linux pourraient bénéficier d’une intégration Nautilus.

J'espère que cette explication vous a aidé à décider quoi choisir.

    
réponse donnée Ricardo Rodrigues 06.03.2017 - 01:51
la source

Lire d'autres questions sur les étiquettes