O problema é que você não pode "executar" um arquivo .desktop
do Dash com argumentos, então a configuração exatamente como você tem em mente é impossível, receio. No entanto, assumindo que o seu script faz argumentos, existem algumas opções alternativas elegantes, talvez até melhores:
-
Salve seu script em
~/bin
- remova a extensão
- torne-o executável
-
execute-o pressionando Alt F2 , digite o comando
<scriptname> <argument>
-
Crie uma lista rápida no iniciador do Unity:
(supondo que você salvou o script em
~/bin
, tornou executável e removeu a extensão como em 1.)[DesktopEntry]Name=name_of_your_script_like_you_see_it_in_DashExec=<scriptname><default_argument>Icon=/path/to/some/iconType=ApplicationActions=Panel;Panel-left;Panel-right;[DesktopActionPanel]Name=PanelExec=<scriptname><default_argument>OnlyShowIn=Unity;[DesktopActionPanel-left]Name=Panel-leftExec=<scriptname><argument_1>OnlyShowIn=Unity;[DesktopActionPanel-left]Name=Panel-rightExec=<scriptname><argument_2>OnlyShowIn=Unity;
Salve-ocomo
panel.desktop
em~/.local/share/applications
earraste-oparaoiniciador.
Crie três atalhos de teclado diferentes, por exemplo Alt + < , Alt + ^ , Alt + > para executar seu script + argumentos:
"Configurações do sistema" > "Teclado" > "Atalhos" > "Atalhos personalizados"
Clique em "+" para adicionar seus comandos: <scriptname> <argument>
-
Não é o mais óbvio, mas explorando as opções, deve ser mencionado: você pode chamar uma lista de opções (zenity) do Dash:
Digiteoprimeirocaracteredasuaopção,pressionereturneseuscriptseráexecutadocomoargumentoescolhido.
Novamente, supondo que você salvou o script em ~ / bin, tornou-o executável e removeu a extensão de idioma como em 1.:
-
Copie o script abaixo em um arquivo vazio, salve-o como
panel_options.sh
, torne-o executável.#!/bin/bash test=$(zenity --list "1. Panel" "2. Panel -left" "3. Panel -right" --column="Panel options" --title="Panel") if [[ "$test" = "1. Panel"* ]]; then <scriptname> <default_argument> elif [[ "$test" = "2. Panel -left"* ]]; then <scriptname> <argument_1> elif [[ "$test" = "3. Panel -right"* ]]; then <scriptname> <argument_2> fi
-
Crie o arquivo .desktop a partir do código abaixo. Na linha
Icon=
, defina o caminho para o seu ícone, na linhaExec=
o caminho parapane_options.sh
, salve-o comopanel.desktop
in~/.local/share/applicatios
[Desktop Entry] Name=Panel Exec=/path/to/panel_options.sh Icon=/path/to/some/icon Type=Application StartupWMClass=Zenity
-