Encontrando arquivos .desktop baseados em seus títulos?

3

Essa é a parte 2 de um pergunta feita anteriormente (para poder dar crédito às respostas individualmente).

Quando eu digito no Dash os aplicativos aparecem com o título (também ao passar o mouse sobre o inicializador), como posso encontrar o arquivo da área de trabalho associado. Quando olho para os locais suspeitos usuais ( /usr/share/applications e ~/.local/share/applications ) com o Nautilus, vejo os títulos, mas não os nomes dos arquivos (nem mesmo nas propriedades que são péssimas). Quando olho pela linha de comando, vejo os nomes dos arquivos, mas não os títulos (um switch seria bom).

Como posso obter uma listagem (uma coluna personalizada?) que as mostre próximas umas das outras?

    
por stwissel 15.09.2012 / 08:52

1 resposta

3

Linha de comando

grep ^Name=  /usr/share/applications/* | sed 's/:Name=/   /'

grep pesquisa em todos os arquivos em /usr/share/applications/ para uma linha que começa com Name= .

Para cada linha, é encontrado filename:line , por exemplo

/usr/share/applications/yelp.desktop:Name=Help

Para fazer com que pareça um pouco melhor, usamos sed 's/:Name=/ /' para substituir :Name= por (três espaços)

Quick hack para a exibição de lista no Nautilus:

Instale o pacote python-nautilus , crie a pasta ~/.local/share/nautilus-python/extensions e salve o seguinte código como ~/.local/share/nautilus-python/extensions/filename-column.py :

import os
import urllib

from gi.repository import Nautilus, GObject

class FilenameColumn(GObject.GObject, Nautilus.ColumnProvider, Nautilus.InfoProvider):
    def __init__(self):
        pass

    def get_columns(self):
        return Nautilus.Column(name="NautilusPython::fd_filename_column",
                               attribute="fd_filename",
                               label="file name",
                               description="file name"),

    def update_file_info(self, file):
        filename = file.get_name()        
        file.add_string_attribute('fd_filename', filename)

Execute nautilus -q; nautilus& na linha de comando para reiniciar o Nautilus. Em seguida, no menu Nautilus, vá para Editar - > Preferências - > Listar Colunas e ativar a coluna file name (você pode querer movê-la também). Agora você tem uma coluna adicional na lista que sempre mostra o nome do arquivo.

Não é exatamente bonito, mas faz seu trabalho.

    
por Florian Diesch 15.09.2012 / 09:34