A documentação da API do escopo do Unity pode ser encontrada aqui . Essas informações devem estar atualizadas para o 13.04, mas há algumas alterações em 13.10 que mesclam os conceitos de lentes e escopos.
A Unity descobre suas lentes e escopos procurando por arquivos em /usr/share/unity/lenses
(ou /usr/share/unity/scopes
para 13.10) com um sufixo de .lens
ou .scope
.
Esses arquivos são semelhantes aos arquivos da área de trabalho , mas em vez de especificar um comando para executar, eles especificam um endpoint D-Bus para usar para falar com a lente ou escopo através das chaves DBusName
e DBusPath
.
Se o escopo ou a lente não estiverem em execução quando o shell tentar se comunicar com ele, o daemon do D-Bus irá ativá-lo. Isso é feito verificando /usr/share/dbus-1/services
para um arquivo .service
cuja chave Name
corresponde ao nome do barramento desejado e executando o comando na chave Exec
. Portanto, não é muito difícil descobrir qual programa implementa um escopo específico com um simples comando grep
.
Se você estiver interessado em escrever um escopo próprio, sugiro consultar a documentação no primeiro link. Mas lembre-se de que você pode ter que ajustar um pouco o seu alcance quando 13.10 for lançado.