Como editar os menus de contexto do Nautilus File Manager?

2

Eu preciso alterar os itens de menu presentes no Gerenciador de Arquivos Nautilus. Estou aberto a sujar as mãos em Python ou qualquer outra coisa. Eu gostaria de adicionar ou remover itens de menu do menu de contexto no Nautilus. Qualquer ajuda sobre isso será muito útil.

Nota:

  1. Eu não estou procurando ir a nenhum outro gerenciador de arquivos por esse motivo.
  2. Eu não estou falando sobre scripts do Nautilus . Gostaria de saber como o item de menu chamado 'Scripts' foi criado em primeiro lugar.
por Sarthak Ganguly 02.02.2014 / 13:36

2 respostas

3

Para adicionar itens de menu para gravar uma extensão do Nautilus, como

from gi.repository import Nautilus, GObject

class MyItemExtension(GObject.GObject, Nautilus.MenuProvider):
    def get_file_items(self, window, files):
        menuitem = Nautilus.MenuItem(name='MyItem::SomeItem', 
                                     label='My Item', 
                                     tip='my own item',
                                     icon='')

        menuitem.connect('activate', self.on_menu_item_clicked, files)
        return menuitem,

    def on_menu_item_clicked(self, item, files):
        print [f.get_name() for f in files]

Salve isso em algo como /usr/share/nautilus-python/extensions/myitem.py , instale o pacote python-nautilus e reinicie o Nautilus, por exemplo executando nautilus -q; sleep 2; nautilus . Agora você deve ver um novo item "Meu Item" se você clicar com o botão direito do mouse em um arquivo.

Tanto quanto sei, não há maneira documentada de remover itens de menu.

A consulte a referência da API para mais informações.

    
por Florian Diesch 02.02.2014 / 14:03
1

Isso se aplica apenas ao Nautilus 3.8 e mais recente.

Eu sei que não é o único lugar para fazer isso, mas você pode adicionar opções de contexto na biblioteca: /usr/lib/nautilus/extensions-3.0 .

Os arquivos da biblioteca precisam ser .so bibliotecas hexadecimais.

Eu acho que a outra maneira de fazer isso seria modificar o código-fonte do Nautilus.

EDIT: Isso não é mais verdade, pelo menos, como o Gnome que acompanha o Ubuntu 18.04. Pesquisando on-line, parece que esse recurso foi completamente retirado do Gnome, de acordo com a discussão sobre esse problema: link parece que a interface do usuário da caixa de diálogo compartilhar pode ser alterada por meio de /usr/share.nautilus-share/interfaces .

    
por MrVaykadji 02.02.2014 / 13:50