Supondo que o Emacs saiba como foi iniciado, você pode acessar o caminho completo do arquivo executável fazendo:
(expand-file-name invocation-name invocation-directory)
No meu sistema, por exemplo, isso retorna "/usr/local/bin/emacs"
na minha sessão regular e "~/.evm/bin/emacs"
na minha sessão de teste evm. Se você quiser ser chique, também pode agrupá-lo em um
file-truename
para resolver quaisquer links simbólicos.
As duas variáveis usadas acima, conforme descritas por suas strings de documentos:
invocation-name
O nome do programa que foi usado para executar o Emacs.
Quaisquer nomes de diretório são omitidos.
invocation-directory
O diretório em que o executável do Emacs foi encontrado, para executá-lo.
O valor é nulo se o nome desse diretório não for conhecido.