KMenuEdit, Alacarte, freedesktop.org - Como funcionam?

Na minha estréia aqui no VOL, venho escrever sobre como funciona e quais arquivos/diretórios fazem parte da configuração dos menus baseados no freedesktop.org.

[ Hits: 22.823 ]

Por: Guilherme Maluf em 07/03/2008


Exemplos



Esse exemplos foram tirados do site dafreedesktop.org.

Exemplo de um arquivo de menu:

/etc/xdg/menus/default.menu

<!DOCTYPE Menu PUBLIC "-//freedesktop//DTD Menu 1.0//EN"
"http://www.freedesktop.org/standards/menu-spec/menu-1.0.dtd">

<Menu>
   <Name>Applications</Name>
   <Directory>Applications.directory</Directory>
  
   <-- Procura nos diretórios padrões -->
   <DefaultAppDirs/>
   <DefaultDirectoryDirs/>
          
   <-- Integra Menu de outras aplicações  -->
   <MergeDir>applications-merged</MergeDir>

   <-- Integra menus antigos -->
   <LegacyDir>/usr/share/applnk</LegacyDir>

   <-- Define o layout do menu -->
   <DefaultLayout>
   <Merge type="menus"/>
   <Merge type="files"/>
   <Separator/>
   <Menuname>More</Menuname>
   </DefaultLayout>

   <-- Movimentações aleatórias  -->
   <Move>
   <Old>Foo</Old>
   <New>Bar</New>
   <Old>Foo2</Old>
   <New>Bar2</New>
   </Move>          

   <-- Um submenu mantido em um arquivo separado -->
   <Menu>
      <Name>Preferences</Name>
      <Directory>Preferences.directory</Directory>
      <MergeFile>preferences.menu</MergeFile>
   </Menu>

   <-- Submenu de escritório com elementos de inclusão e exclusão -->
   <Menu>
      <Name>Office</Name>
      <Directory>Office.directory</Directory>
      <Include>
      <And>              
      <Category>Office</Category>
      <Category>X-KDE-Office</Category>
      </And>
      </Include>
      <Exclude>
      <Filename>foo.desktop</Filename>
      </Exclude>
   </Menu>

</Menu>

Exemplo de uma entrada de aplicação:

/usr/share/applications/shinythings-webmirror.desktop:

[Desktop Entry]
Encoding=UTF-8
Type=Application

Exec=webmirror
Icon=webmirror

Name=WebMirror
Name[nl]=WebSpiegel
Name[pt_BR]=Espelho da Web

Exemplo de uma entrada de menu:

/usr/share/desktop-directories/shinythings-webmirror.directory:

[Desktop Entry]
Encoding=UTF-8

Icon=webmirror

Name=WebMirror
Name[nl]=WebSpiegel
Name[pt_BR]=Espelho da Web

Exemplo de uma menu feito por outros:

/etc/xdg/menus/application-merged/shinythings-webmirror.menu:

<!DOCTYPE Menu PUBLIC "-//freedesktop//DTD Menu 1.0//EN"
"http://www.freedesktop.org/standards/menu-spec/menu-1.0.dtd">
<Menu>
   <Name>Applications</Name>
   <Menu>
   <Name>WebMirror</Name>
   <Directory>shinythings-webmirror.directory</Directory>
   <Include>
   <Filename>shinythings-webmirror.desktop</Filename>
   </Include>
</Menu>

Considerações finais

Espero que esse artigo ajude a quem desenvolva aplicativos e àqueles que querem configurar um menu padrão para todos os usuários do seu sistema.

Peço perdão se esqueci de algo ou não fui claro nas minhas explicações, estou aberto a críticas e sugestões!

Muito obrigado a todos.

Todas as informações contidas aqui foram retiradas do site (inglês):
Página anterior    

Páginas do artigo
   1. Introdução
   2. Como funciona?
   3. Formato dos arquivos XML(*.menu)
   4. Exemplos
Outros artigos deste autor
Nenhum artigo encontrado.
Leitura recomendada

ZRAM (Compressed RAM) no Debian

Exemplos práticos de tabelas de partições

Entendendo TCP/IP (parte 2) - Endereços IP

Configurando placas wireless baseadas no chip Realtek RTL8180 no Linux

Raid prático e definitivo

  
Comentários
[1] Comentário enviado por tenchi em 07/03/2008 - 13:27h

Cara, muito interessante e esclarecedor este artigo.
Eu já tinha uma vaga noção sobre esta padronização, mas nunca havia me interessando em pesquisar mais sobre.
Pros favoritos!

[2] Comentário enviado por InFog em 08/03/2008 - 00:33h

Muito bom, gostei bastante. É muito útil e facilita na hora de criar aplicações que ficarão disponíveis para todos os usuários =)

InFog

[3] Comentário enviado por juliaojunior em 08/03/2008 - 02:11h

muito bom!!! foi para os favoritos :)

[4] Comentário enviado por FelipeAbella em 11/03/2008 - 14:10h

Ótimo artigo! Estava procurando por isso.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts