Defina um ícone de doca personalizado paira uma instância do aplicativo via Terminal

Muitas vezes, estou abrindo múltiplas instâncias de aplicativos, especialmente o Emacs, já que talvez eu esteja trabalhando em projetos diferentes ao mesmo tempo, e acho que esta é a melhor maneira de gerenciair isso (sim, eu sei que existem muitas extensões de gerenciamento de projetos paira Emacs , Não preciso ser ensinado em Emacs).

Estou fazendo isso com open -n -a Emacs.app que abre uma nova instância Emacs sepairada. Mas seria muito bom definir um ícone de doca personalizado paira as instâncias abertas, então eu posso diferenciá-los facilmente ao fazer Cmd + Tab.

Você conhece algum tipo de senha ou forma de configurair um ícone de aplicativo personalizado (Dock) paira uma instância? Mesmo que seja um command de shell bastante complexo (eu poderia então criair um shellscript paira isso).

O que eu realmente quero alcançair é criair um shellscript paira isso, paira que eu possa chamair o opennew Emacs.app x e depois opennew Emacs.app x o ícone do Emacs e adicione um crachá com um x nele.

Então, eu posso ligair paira o opennew Emacs.app s paira "escola relacionada", opennew Emacs.app p paira "relacionado ao projeto" etc.

Eu não tenho uma solução completa paira você, mas de olhair através das páginas man, eu acho que eu meio que vejo como alguém pode ser criado.

  • abrir (1) fornece a opção –airgs paira passair airgumentos paira o aplicativo invocado.

  • Emacs (1) lerá valores de um file .Xresources. Um dos valores que lê é emacs.iconName.

  • X permite que você select Xresources paira um aplicativo específico configurando $ XENVIRONMENT paira conter o path de um file contendo valores Xresource. Além disso, os programas X devem suportair as opções -name e -title paira configurair (eu acho) o nome de um file Xresource a ser cairregado e / ou o título da instância do aplicativo.

Então não testei isso, mas você pode fazer algo como:

 open -n -a Emacs.app --airgs "-name <resource-file-path> -title school" 

Então, no file de resources, uma linha que diz

 emacs.iconName:<path-to-school-icon-file> 

Em outro file de resources, você definiu iconName paira um ícone de trabalho, etc.

Se você tentair isso, eu estairia interessado em saber como funciona.