António Oliveira Posted September 29, 2016 at 09:09 AM Report #599224 Posted September 29, 2016 at 09:09 AM Bom dia. Estou com um problema em digitar caracteres que precisam de que se prima a tecla AltGr (como as chavetas ou os parênteses rectos) na linha de comandos do IPython. Na verdade, não consigo digitar esses caracteres. Alguém me pode ajudar?
António Oliveira Posted September 29, 2016 at 09:38 AM Author Report #599225 Posted September 29, 2016 at 09:38 AM Talvez a resposta seja usar a QtConsole? Reparei que o problema que relatei desaparece, usando essa.
Nilo Menezes Posted September 29, 2016 at 11:53 AM Report #599227 Posted September 29, 2016 at 11:53 AM (edited) Fora do IPython os acentos funcionam normalmente? Digo {} e ()? Você está usando Linux ou Windows? Eu tive problemas no Linux usando LANG=C Se for Linux, tenta: # locale -a C C.UTF-8 POSIX pt_PT.utf8 Deve aparecer pt_PT.utf8. export LANG=pt_PT.utf8 ipython Comigo resolveu o problema. Se você não instalou pt_PT.utf8, instale com: locale-gen pt_PT.utf8 Edited September 29, 2016 at 11:54 AM by Nilo Menezes
António Oliveira Posted September 29, 2016 at 01:17 PM Author Report #599228 Posted September 29, 2016 at 01:17 PM (edited) Obrigado pela resposta. Estou a usar Windows e o problema com as chavetas e parênteses e tudo o que tenha que introduzir usando a tecla AltGr só ocorrem no IPython. Já se abrir ipython qtconsole ou jupyter qtconsole deixo de ter esse problema. No entanto, isso não é muito conveniente, porque se usar por exemplo ipython --pylab continuo com o problema, e é nesse ambiente que queria trabalhar. Vou tentar ver se há algo equivalente às recomendações para Windows. Edited September 29, 2016 at 01:18 PM by António Oliveira
António Oliveira Posted September 29, 2016 at 01:37 PM Author Report #599229 Posted September 29, 2016 at 01:37 PM Já agora, a combinação Ctrl + Alt, que é equivalente a AltGr, não funciona no ipython.
António Oliveira Posted September 29, 2016 at 01:40 PM Author Report #599230 Posted September 29, 2016 at 01:40 PM O problema não é do IPython. Como eu disse, estou no Windows, mas em vez de estar a usar a linha de comandos do Windows estava a usar o Git Bash para Windows. O problema deve vir daí.
António Oliveira Posted September 30, 2016 at 05:21 PM Author Report #599255 Posted September 30, 2016 at 05:21 PM (edited) Reparei que há um problema com o uso do IPython no Windows. Vou tentar deixar aqui o resumo do que me aconteceu. Fiz um pequeno programa para zipar ficheiros que envolvia invocar a seguinte função: def zip_to(paths, zippath): files = ' '.join(paths) files = ' ' + files cmd = '7z a ' + zippath + files (status, output) = subprocess.getstatusoutput(cmd) Se eu invocar o interpretador python directamente na linha de comandos do Windows, não há problema mas se eu correr o programa a partir do Git Bash ou do IPython, fazendo %run .... o status dá 1 porque algures os paths para os ficheiros são passados sem as barras (\). Reparei que se correr dentro do IPthon, por sua vez iniciado a partir do Git Bash, também funciona. Perdi imenso tempo com isto. Fica o aviso. Edited September 30, 2016 at 05:27 PM by António Oliveira
Nilo Menezes Posted October 3, 2016 at 01:25 PM Report #599334 Posted October 3, 2016 at 01:25 PM Quanto às teclas, testei hoje no Windows pelo cmd e pelo gitbash. Em ambos os casos funcionou direitinho. Verifique se a língua está configurada corretamente nas configurações regionais. Quanto ao script que você passou, eu recomendo passar o nome dos arquivos dentro de uma lista, pois concatenando strings você terá problema com nomes e paths que contenham espaços em branco! Ficaria algo como: import subprocess def zip_to(paths, zippath): try: output = subprocess.check_output([r"c:\Program Files\7-Zip\7z.exe", "a", zippath, *paths]) except subprocess.CalledProcessError as cpe: print("Erro: {}".format(cpe.errorcode)) raise return output zip_to(['site', 'omegat'], 'test.7z') Veja que no caso, meu 7z fica dentro de Program Files e que utilizei r antes das aspas para que as \ não sejam convertidas. getstatusoutput está como função antiga na documentação, troquei por uma mais nova check_output.
António Oliveira Posted October 4, 2016 at 07:46 PM Author Report #599386 Posted October 4, 2016 at 07:46 PM (edited) Obrigado pela resposta. Eu ainda estou no começo e a questão do tratamento de excepções não é ainda uma prioridade. Isso era um exercício e certifiquei-me de meter o 7z na path para evitar problemas. O tutorial que eu estava a seguir até referia uso do módulo commands em vez de subprocess. Edited October 4, 2016 at 08:42 PM by António Oliveira
António Oliveira Posted October 4, 2016 at 08:34 PM Author Report #599388 Posted October 4, 2016 at 08:34 PM Em 03/10/2016 às 14:25, Nilo Menezes disse: Quanto às teclas, testei hoje no Windows pelo cmd e pelo gitbash. Em ambos os casos funcionou direitinho. Verifique se a língua está configurada corretamente nas configurações regionais. Não sei exactamente a que se refere. O problema só me ocorre se iniciar o ipython no gitbash (sem abrir nova consola qt). Não tenho esse problema sequer quando uso o git bash para outras coisas. Só com o ipython no git bash. Desculpe estar a ser repetitivo. Tenho também um problema nas ferramentas de programador do Chrome em que quando tento escrever o acento circunflexo, abre a janela para a configuração dessas ferramentas.
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now