Posição do ícone da área de trabalho (acessar e manipular programaticamente)


8

Gostaria de acessar e manipular programaticamente as posições dos ícones da área de trabalho, seus ícones etc.

Isto é para arquivos e diretórios que você mantém no ~ / Desktop.

Onde essas coisas estão armazenadas?

Respostas:


8

Armazenado como atributos de metadados do GVFS.

Para obter todos os atributos de metadados do GVFS para arquivo / diretório:

gvfs-info '/home/user/Desktop/Untitled Folder/'

Para obter um atributo específico - posição do ícone:

gvfs-info -a 'metadata::nautilus-icon-position' '/home/user/Desktop/Untitled Document/'

Para definir a posição do ícone:

gvfs-set-attribute -t string '/home/user/Desktop/Untitled Document/' 'metadata::nautilus-icon-position' '500,500'

Lembre-se de atualizar a área de trabalho (tecla F5) para ver o efeito.

Se for necessária manipulação de nível inferior, existe a API de extensão do Nautilus (via libnautilus):

https://developer.gnome.org/libnautilus-extension/stable/

e especificamente:

https://developer.gnome.org/libnautilus-extension/stable/NautilusFileInfo.html


Isso funciona bem para arquivos reais; também é possível acessar metadata::nautilus-icon-positionos ícones especiais que aparecem na área de trabalho para unidades USB, 'Casa', etc? gvfs-info -a 'metadata::nautilus-icon-position' '/home/user/Desktop/External-drive'diz "Esse arquivo ou diretório não existe".
Honore Doktorr

Os comandos estão agora gio infoe gio set, por exemplo, no Ubuntu 18.04.
David

Com o utilitário gio: Para obter todos os atributos de metadados do arquivo / diretório: gio info '/home/user/Desktop/Untitled Folder/' Para definir a posição do ícone: gio set --type=string '/home/user/Desktop/Untitled Folder/' 'metadata::nautilus-icon-position' '500,500'
PaulRM
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.