Talvez isso seja óbvio e eu esteja sentindo falta dele, ou talvez alguém já tenha escrito um ótimo guia e meu (aparentemente exaustivo) Google não esteja conseguindo ativá-lo, mas não consigo descobrir por toda a minha vida como obter o maldito console python em rhythmbox para fazer qualquer coisa!
Eu o habilitei no menu do plug-in e abri-o usando Ferramentas-> Console Python.
Imprime
You can access the main window through the 'shell' variable :
<rb.Shell object at 0xa6cdd24 (RBShell at 0xa14e000)>
>>>
Mas qualquer coisa que eu digitar no prompt não faz nada ! Eu tentei help
, tentei exit()
, tentei print "hello world"
, nada faz nada!
Todas essas coisas funcionam, é claro, em um console python normal. Eu não tenho idéia do que diabos está a diferença aqui! Devo fazer algo diferente de pressionar enter?
Respostas:
O Guia de Redação dos Plug-ins do Rhythmbox possui vários exemplos de comandos que você pode usar no console do Python para controlar a reprodução e modificar o Rhythmbox:
A pausa
Pare
Próxima faixa
Adicionar uma música à fila do Play
Exibir uma visualização
fonte
print "hello world"
e pressione Enter. Ainda não vejo esse problema relatado em nenhum outro lugar, portanto, considere abrir um novo bug no rastreador de erros do Rhythmbox .Como em qualquer objeto Python, você pode descobrir muito sobre isso usando o método dir (). Isso lhe dará um bom lugar para começar.
Você pode direcionar () qualquer uma das propriedades de aparência interessante, como 'get_player', talvez.
Outro bom lugar para procurar é se você vir um atributo __doc__ no objeto.
fonte
dir(rb.Shell)
e pressionar enter, ele adiciona uma quebra de linha e não faz nada ... Seu shell funcionou OOB? Eu tenho a instalação padrão do rhythmbox no Ubuntu 10.04 .... Não consigo pensar em nada que eu mudei que quebraria o shell. Meu console python normal (fora do rb) funciona muito bem ...Caramba, acabei de descobrir qual era o problema (2,5 anos depois) - por algum motivo, minha tecla "enter" mapeia dois eventos-chave diferentes, dependendo de o numlock estar ativado ou desativado. Quando o numlock está ativado, ele retorna
KP_ENTER
e, quando o numlock está desativado, ele retornaReturn
. Eu sempre tenho o numlock ativado, porque prefiro digitar números com o teclado.Infelizmente, o console python no Rhythmbox reconhece apenas
Return
executar um comando - oKP_ENTER
evento apenas entra em uma quebra de linha ...Mas, solução fácil, basta desativar o numlock ao usar o console. Eu encontrei esse problema em alguns outros aplicativos (geralmente jogos), então vou procurar uma solução melhor a longo prazo (talvez forçando os dois a mapear de
Return
alguma forma) ...fonte
xmodmap -pke > ~/.Xmodmap
para criar um layout personalizado, no final desse arquivo, adicione uma linhakeysym KP_Enter = Return
e executexmodmap ~/.Xmodmap
para ativar o novo layout personalizado para esta sessão. Para tornar a execução automática para o futuro, adicione o seguinte a~/.xinitrc
:if [ -f $HOME/.Xmodmap ]; then /usr/bin/xmodmap $HOME/.Xmodmap fi
if
instrução adicionada às.xinitrc
necessidades precisa ter quebras de linhathen
antes e depoisfi
.return
tecla em vez da tecla do numlockenter
?