¿Qué quieres decir con "no se puede escribir"? ¿Algo físicamente le impide presionar la tecla b a menos que también presione Mayús? ¿O no hay ningún efecto al presionar el botón? ¿O aparece algún mensaje de error cuando la línea contiene solo "b"?
Joachim Sauer
¿Qué es exactamente ? ¿Qué está haciendo / escribiendo exactamente, qué sucede exactamente y cuál es exactamente el mensaje de error (si hay alguno)?
Si no hay otras letras afectadas, suena como un problema de hardware con su teclado y debe migrarse a Superusuario.
pavium
Cuando presiono la letra "b" no tengo ningún efecto y no escribo la letra "b" pero cuando presiono la letra "B" (Shift + b), luego escribo la letra "B" en la consola
+1 Ayer instalé Python desde homebrew y me encontré con este problema esta mañana. Actualicé mi archivo de inicio de Python y todo vuelve a estar bien. Es un efecto secundario muy específico (y extremadamente extraño).
Seth
2
Primero, esto no sucedió hasta que actualicé Python 2.7.1 a 2.7.3. Dicho esto, la solución está en juego:
línea antigua:
if(sys.platform == 'darwin'): #FIX
nueva línea:
if(sys.platform == 'darwin') and 'libedit' in readline.__doc__: #FIX
El código completo en mi ~ / .pythonrc
import atexit
import os
try:
import readline
except ImportError:
print "Module readline not available."
else:
import rlcompleter
import sys
if(sys.platform == 'darwin') and 'libedit' in readline.__doc__: #FIX
# OSX
readline.parse_and_bind ("bind ^I rl_complete")
else:
# Linux
readline.parse_and_bind("tab: complete")
historyPath = os.path.expanduser("~/.pyhistory")
def save_history(historyPath=historyPath):
readline.write_history_file(historyPath)
if os.path.exists(historyPath):
readline.read_history_file(historyPath)
atexit.register(save_history)
del atexit, save_history, historyPath
Apple supone que su versión no cambia cuando se realizan actualizaciones y otras funciones. En cambio, se recomienda que si desea actualizar Python o expandirlo, instale una versión local, ya sea bajo /opto en su carpeta de inicio.
También tengo el mismo problema y no uso la versión MacPorts de python.
Estoy usando la última versión de vpython , visual python, de www.vpython.org en Mac OX X Lion que se ejecuta en la última MacBook Air (generación 3).
Instalé vpython usando su último binario y sus instrucciones. Viene con un instalador, por lo que es apuntar y hacer clic. Esta es una versión modificada de Python 2.7.1. Es la versión de 32 bits. (Creo que no lo han portado a 64 bits). Luego instalé VPython-Mac-Py2.7-5.71. Seguí esto por scipy de www.scipy.org y matplotlib de matplotlib.sourceforge.net Todas estas instalaciones usan un instalador.
Cuando ejecuto python desde su herramienta de desarrollo, inactivo, o la variante vpython, vidle, no tengo problemas. Si abro una terminal y ejecuto Python desde un shell bash, el shell no reconocerá la tecla "b" en el teclado. Le dará un sonido de "campana", en lugar de escribir el "carácter b". Sin embargo, puede ingresar la letra 'B'. Parece que esta tecla está asignada a algún 'carácter' incorrecto no mostrado, posiblemente el carácter 'campana' en el código ASCII antiguo.
Intenté cambiar la emulación a xterm, vt100, vt102. También jugué con diferentes esquemas de codificación, como usar UTF-8. También presioné una combinación diferente de teclas especiales como command-b, etc. Nada funcionó.
Mi única solución es escribir scripts en inactivo o vidle.
Trabajé un poco más en esto ... parece que otros tienen problemas similares con otras interfaces de Python. En mi sistema tengo un archivo .pythonrc.py que se analiza cuando se inicia Python (señalado por PYTHONSTARTUP). En este archivo se cargan dos módulos rlcompleter y readline. Luego llama a readline.parse_and_bind ("bind -v"). Esta llamada inicia el módulo readline copiando los enlaces del shell (puede ver el suyo yendo al bash shell y escribiendo 'bind -v' (sin comillas)). Uno de estos debe crear el problema. Si comento la línea (coloque # delante de ella), el problema desaparece.
ga mercier 01 de
1
Puede editar su publicación para incluir eso, podría facilitar su lectura.
Respuestas:
La línea problemática en su
.pythonstartup
es algo como:Esto
.pythonstartup
lo arreglará ...fuente
Primero, esto no sucedió hasta que actualicé Python 2.7.1 a 2.7.3. Dicho esto, la solución está en juego:
línea antigua:
nueva línea:
El código completo en mi ~ / .pythonrc
fuente
Tengo el mismo problema. Esto sucede cuando usa la versión MacPorts de Python en Snow Leopard.
No veo este problema en Python de Apple que viene con Mac OS X. Por lo tanto, la solución debería ser
PYTHONPATH
apuntar a los paquetes de MacPorts:(o una versión diferente de Python) y use Python de Apple.
fuente
Desafortunadamente, la solución no es acertada.
Apple supone que su versión no cambia cuando se realizan actualizaciones y otras funciones. En cambio, se recomienda que si desea actualizar Python o expandirlo, instale una versión local, ya sea bajo
/opt
o en su carpeta de inicio.También tengo el mismo problema y no uso la versión MacPorts de python.
Estoy usando la última versión de
vpython
, visual python, de www.vpython.org en Mac OX X Lion que se ejecuta en la última MacBook Air (generación 3).Instalé vpython usando su último binario y sus instrucciones. Viene con un instalador, por lo que es apuntar y hacer clic. Esta es una versión modificada de Python 2.7.1. Es la versión de 32 bits. (Creo que no lo han portado a 64 bits). Luego instalé VPython-Mac-Py2.7-5.71. Seguí esto por scipy de www.scipy.org y matplotlib de matplotlib.sourceforge.net Todas estas instalaciones usan un instalador.
Cuando ejecuto python desde su herramienta de desarrollo, inactivo, o la variante vpython, vidle, no tengo problemas. Si abro una terminal y ejecuto Python desde un shell bash, el shell no reconocerá la tecla "b" en el teclado. Le dará un sonido de "campana", en lugar de escribir el "carácter b". Sin embargo, puede ingresar la letra 'B'. Parece que esta tecla está asignada a algún 'carácter' incorrecto no mostrado, posiblemente el carácter 'campana' en el código ASCII antiguo.
Intenté cambiar la emulación a xterm, vt100, vt102. También jugué con diferentes esquemas de codificación, como usar UTF-8. También presioné una combinación diferente de teclas especiales como command-b, etc. Nada funcionó.
Mi única solución es escribir scripts en inactivo o vidle.
Espero que esto ayude a aclarar el problema.
fuente