Pergunta

No Mac OS X não pode inserir um sinal de libra esterlina (£) para o shell interativo Python.

* Mac OS X 10.5.5
* Python 2.5.1 (r251:54863, Jan 17 2008, 19:35:17)
* European keyboard (£ is shift-3)

Quando eu digito shift-3 no shell interativo do Python, parece-me invocar a função de palavra anterior, ou seja, o cursor move-se para o início da última “palavra” (ou seja, item de delimitado por espaço) digitado na linha. Quando eu estou de volta no shell bash, digitação shift-3 apenas produz uma £, como esperado.

Esta versão do Python, aparentemente, usa editline por sua shell interativo, em oposição a readline. Eu estou supondo que uma das principais ligações editline padrão liga shift-3 (ou o que editline vê quando digito shift-3) para o comando ed-prev-palavra.

Eu tentei algumas coisas no meu arquivo ~ / .editrc para remover essa ligação, e eles não têm qualquer efeito:

  • bind -r £
  • bind -r \243
  • bind -r \156

E outro que faz com que um erro de bus:

  • bind £ \243

Todas as idéias?

Foi útil?

Solução

Isto pode ser um problema editline; libedit não pode aceitar caracteres UTF-8:

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top