Como eu mudo o ícone para um tipo de arquivo específico?

37

Estou tentando alterar o ícone dos arquivos application/x-hwp . Eu adicionei os ícones aos lugares apropriados, e verifiquei com ASSogiate (depois de ler este tópico ). Isso mostra que o ícone desejado está associado ao tipo de arquivo. No entanto, o Nautilus ainda está mostrando o ícone antigo. Como posso fazer o Nautilus mostrar o ícone correto?

    
por Scott Severance 07.07.2011 / 10:26

4 respostas

20

Aqui está um conjunto de instruções que você deve obter um ícone personalizado para arquivos hwp.

Abra um terminal:

  • Verifique se o tipo MIME existe: grep 'hwp' /etc/mime.types

    se você obtiver uma saída parecida com application/x-hwp hwp , pule a próxima etapa.

  • Crie o tipo MIME sudo -H gedit /etc/mime.types e adicione a linha application/x-hwp hwp

  • Adicione o ícone (que deve ser chamado de application-x-hwp.svg ) :

    sudo cp PathToIcon/application-x-hwp.svg /usr/share/icons/gnome/scalable/mimetypes
    

    (não se esqueça de substituir o PathToIcon)

Obteve as informações de aqui

    
por danjjl 11.08.2011 / 20:35
10

O principal truque é descobrir corretamente onde os ícones reais estão localizados.
Para determinar isso, vamos analisar os ícones HTML. A convenção de nomenclatura para os ícones é a mesma que para o tipo MIME, somente / é substituído por - e nenhuma letra maiúscula é permitida. Ou seja O tipo MIME, digamos, text/x-changelog terá o ícone chamado text-x-changelog.svg (ou png ). O tipo MIME para HTML é text/html . Então, seu ícone será text-html.* Se executarmos o comando

find /usr/share/icons/ -type f | grep 'text-html\.'

teremos vários lugares onde esses ícones são colocados:

/usr/share/icons/Humanity/mimes/
/usr/share/icons/gnome/NNxNN/mimetypes/
/usr/share/icons/HighContrast/scalable/mimetypes/

Se visitarmos cada um deles com o Nautilus, veremos que a pasta Humanity/ contém nossos ícones atuais, gnome/ - alguns dos mais antigos. HighContrast/ não nos interessa. Portanto, para alterar algum ícone, devemos substituir os ícones localizados na pasta Humanity/ .
Observe também que os ícones text-html.svg que são escaláveis e deveriam ter sido colocados na subpasta scalable (que deveria ser lógica) são colocados nas pastas para tamanhos diferentes, da mesma forma que os arquivos PNG rasterizados.

Após a substituição dos ícones (em todas as subpastas de acordo com seus tamanhos) com os desejados, o cache de ícones deve ser atualizado:

sudo gtk-update-icon-cache /usr/share/icons/Humanity

É isso.

Existe outra maneira de determinar a precedência de esquemas de ícones - para verificar seus arquivos index.theme . Se olharmos para o interior de /usr/share/icons/Humanity/index.theme , veremos:

Inherits=gnome,hicolor

Isso significa que os ícones das pastas gnome e hicolor terão menos precedência do que os de Humanity . Isso é explicado aqui .
Estranhamente, o Nautilus não obedece a essas regras de herança. Quando adicionei o novo tipo MIME, tentei colocar seus ícones em /usr/share/icons/gnome/ , /usr/share/icons/hicolor , ~/.local/share/icons/hicolor , atualizando o banco de dados de ícones em cada etapa - tudo em vão. Esses ícones foram exibidos corretamente em assogiate na primeira guia, mas nunca no Nautilus. Mas quando os coloquei na pasta Humanity e no banco de dados de ícones atualizados, eles apareceram de uma só vez.

N.B. Tudo isso se aplica ao tema de ícones padrão. Se você usar algum tema de ícones personalizado, deverá verificar onde os ícones reais estão localizados e adicionar / alterar os ícones lá. Também nas distribuições mais recentes, essas regras de herança podem mudar. Em seguida, você deve localizar a nova pasta que armazena os ícones reais (se não for Humanity mais), conforme explicado anteriormente.

    
por whtyger 31.03.2016 / 16:35
0

Espero que você tenha tentado fazer logout e login para atualizar o cache de ícones.

Veja também se o seu ícone está disponível no tamanho adequado (aquele que você está usando para exibir o tipo de arquivo no nautilus).

Você também pode ter perdido a execução de gtk-update-icon-cache .

Experimente este tutorial: link

Tente criar manualmente icon.theme, aqui está um exemplo que eu tenho da awn:

[Icon Theme]
Name=awn-theme

Directories=scalable

[scalable]
Size=48
MaxSize=256
Context=Apps
Type=Scalable

O manual está aqui: link

    
por Krzysztof Hasiński 08.08.2011 / 02:24
-2

1)

 sudo apt-get install assogiate

siga este bom tutorial com fotos legais

link

2)

Se o tipo de arquivo não for detectado corretamente ou se você mostrar um tipo de arquivo incorreto encontre seu tipo de arquivo identificando caracteres

EX: rar vá para link

identificador "Hex: 52 61 72 21 1A 07 00, ASCII: Rar!"

abra o arquivo em um editor bless ou hex e localize o identificador e o offset (onde suas palavras-chave começam)

no nosso caso, o primeiro bit é "0".

Em seguida, vá em "Editor de tipos de arquivo", edite ou crie um novo item e, em seguida, selecione editar e sob o conteúdo do arquivo

selecione "string" no menu suspenso, digite "Rar!" e defina o deslocamento "0".

Concluído

    
por sodam 01.08.2012 / 09:47