
Gostaria de criar um atalho de teclado para alternar a opção de ocultação automática do inicializador de unidades. Com base na resposta emComo alterar programaticamente o comportamento de ocultação do inicializadorTentei fazer um script python para fazer o trabalho. Então eu deveria descobrir como executar isso com um atalho de teclado.
Meu script fica assim:
#!/bin/python
AUTOHIDE=$(dconf read /org/compiz/profiles/unity/plugins/unityshell/launcher-hide-mode)
if (AUTOHIDE==1):
dconf write /org/compiz/profiles/unity/plugins/unityshell/launcher-hide-mode 0
else:
dconf write /org/compiz/profiles/unity/plugins/unityshell/launcher-hide-mode 1
Mas executar o script a partir de um terminal (fazendo 'python scriptname.py' ) não funciona. Recebo um erro de "sintaxe inválida" no sinal $.
Você precisa saber que quase não tenho conhecimento de python (ou de escrever scripts em geral). (Acabei de passar algumas horas pesquisando na web por ajuda e exemplos).
Então, as questões reais:
- O que eu fiz errado?
- Eu escolhi uma abordagem complicada para isso e como posso fazer isso mais facilmente nesse caso?
Responder1
Se você quiser fazer isso da maneira Pythonic.
#!/bin/python
import subprocess
AUTOHIDE = subprocess.check_output (["/usr/bin/dconf", "read", "/org/compiz/profiles/unity/plugins/unityshell/launcher-hide-mode"])
if (AUTOHIDE==1):
subprocess.call (["/usr/bin/dconf", "write", "/org/compiz/profiles/unity/plugins/unityshell/launcher-hide-mode", "0"])
else:
subprocess.call (["/usr/bin/dconf", "write", "/org/compiz/profiles/unity/plugins/unityshell/launcher-hide-mode", "1"])
você tem que executar os programas criando um subprocesso.
E esta é a versão do script bash
#!/bin/bash
AUTOHIDE=$(dconf read /org/compiz/profiles/unity/plugins/unityshell/launcher-hide-mode)
if [[ $AUTOHIDE -eq 1 ]]
then
dconf write /org/compiz/profiles/unity/plugins/unityshell/launcher-hide-mode 0
else
dconf write /org/compiz/profiles/unity/plugins/unityshell/launcher-hide-mode 1
fi
O atalho pode ser atribuído comoesse.
Responder2
Uma maneira de fazer isso é criar um atalho personalizado.
Acesse Configurações do Sistema > Teclado > Atalhos > Atalhos personalizados. Em seguida, clique em '+' para adicionar um novo atalho e, na caixa de comando, cole:
dconf write /org/compiz/profiles/unity/plugins/unityshell/launcher-hide-mode 0
Isso criará um atalho para mostrar o inicializador. Agora para ocultar o launcher, você deve criar outro atalho adicionando o comando:
dconf write /org/compiz/profiles/unity/plugins/unityshell/launcher-hide-mode 1
Claro que agora você terá um comando para cada função, mas coloquei-os lado a lado e achei muito intuitivo.
Responder3
Para Unity 2D as linhas dconf devem ser
/com/canonical/unity-2d/launcher/hide-mode
Existe também um terceiro modo “Intellihide” cujo valor é 2.