Não é verdade, não. Não tenho certeza sobre os detalhes, mas imagino que o Alt + F2 esteja simplesmente passando os comandos que você executa para um shell não-interativo, não-login. Esse tipo de shell não terá acesso a aliases, conforme explicado em man bash
:
When bash is started non-interactively, to run a shell script, for
example, it looks for the variable BASH_ENV in the environment, expands
its value if it appears there, and uses the expanded value as the name
of a file to read and execute. Bash behaves as if the following com‐
mand were executed:
if [ -n "$BASH_ENV" ]; then . "$BASH_ENV"; fi
but the value of the PATH variable is not used to search for the file
name.
Assim, você pode pensar que pode definir apenas BASH_ENV
para apontar para um arquivo contendo definições de alias. Infelizmente, os aliases não estão disponíveis para shells não interativos. Novamente a partir de man bash
:
Aliases are not expanded when the shell is not interactive, unless the
expand_aliases shell option is set using shopt (see the description of
shopt under SHELL BUILTIN COMMANDS below).
Você pode pensar que poderia adicionar shopt -s expand_aliases
ao arquivo definido por $BASH_ENV
, mas isso não funcionará porque esse arquivo será lido, mas em um shell diferente.
Eu sei que isso é confuso. Bottom line, você não pode fazer aliases disponíveis para o diálogo Alt + F2 .
Uma solução alternativa
Então, como você não pode fazer isso com aliases, o que você pode fazer é fazer isso com scripts:
sudo gedit /usr/bin/geditm
Isso abrirá uma nova janela gedit
, adicionará essas linhas a ele e salvará o arquivo:
#!/bin/bash
gedit --display=D1
Torne o script executável:
sudo chmod a+x /usr/bin/geditm
Agora, você pode pressionar Alt + F2 , escrever geditm
e o script será iniciado, o que por sua vez inicia gedit
com as opções desejadas.