Si abro una ventana de Terminal y escribo la letra "e" (sin comillas, por supuesto) suena y no escribirá la letra. Cualquier otra carta funciona bien en la Terminal. E mayúscula también funciona. Solo la minúscula e no.
En todas las demás aplicaciones de mi computadora, minúscula e funciona sin problemas, por lo que no es un problema de teclado.
Esto comenzó en algún momento de la última semana. Uso mucho la Terminal en mi trabajo y nunca ha sido un problema. He reiniciado (no se solucionó). He reiniciado el terminal (no lo reparó)
Como no sé la fecha exacta en que comenzó esto, no estoy seguro de si hice algún cambio o instalé el software. Estoy tratando de eliminar todo lo que instalé recientemente.
Para su información, he tratado de usar el iTerm2 de terceros y hace lo mismo.
TAMBIÉN, si pego algo con una e inferior, hace lo mismo, no lo tomaré. Tiene que ser un problema de configuración de terminal bash, creo.
De hecho, copié el siguiente sentido y luego lo pegué en Terminal. Que aparece sns y puedes escuchar dos pitidos.
Además, en caso de que no esté claro, esto sucede con el teclado incorporado en el MBP, así como con un teclado externo. Basado en eso y el problema de pegar, no creo que este sea un problema de teclado físico de ninguna manera.
Especificaciones: MacBook Pro 2015, OS X totalmente actualizado
applescript
buscándolo en el centro de atención, escriba ydelay 10
luego presione Intro y escribatell application "System Events" to keystroke "e"
exactamente como está escrito. Cuando se presiona reproducir, esperará 10 segundos y luego presione e por sí mismo. Vaya a la terminal antes de que expire ese tiempo y pruébelo. Si eso no funciona, entonces tiene un problema interno grave con su computadora.cat filnam.txt
el archivo llamadofilnam.txt
contiene texto ASCIIe
?Respuestas:
Vamos a depurarlo.
$(which zsh)
.bash_profile
,.bashrc
, etc y abrir una nueva pestaña / ventana de terminal. Si esto resuelve el problema, algo que se está cargando en el entorno de shell está consumiendo la cartae
por razones que la ciencia nunca podrá explicar.cat
con un archivo que contenga la letrae
para ver si incluso se mostrará: (Crédito a @techraf)e
sy guarde el archivo (foo.txt
?)cat
el archivo:cd /path/to/folder; cat foo.txt
e
s render, entonces el terminal puede manejarlo, si no, entonces esto es super raro.Prueba con AppleScript. (Crédito a @ALX)
Cree un archivo Applescript con estos contenidos:
Ejecute el archivo de script y luego navegue rápidamente a la ventana de terminal. En unos segundos, prácticamente presionará la
e
tecla y, con suerte, aparecerá en su terminal. Esto indicaría que podría haber un problema con el controlador de entrada / dispositivo (aunque no tengo idea de qué podría ser)No voy a mentir, estoy absolutamente fascinado por este problema y no puedo esperar para saber cuál es la causa. No es hardware porque funciona en otras aplicaciones, lo que significa que es software y no puedo imaginar quién tragaría la carta
e
con el código.fuente
Acabo de encontrar este hilo después de encontrarme con el mismo problema.
.inputrc
Tuve 2 líneas
.inputrc
, agregadas en un momento de ignorancia descuidada, comenzando cone
ys
(que son válidas bash config, pero no válidas readline config). Parecen haber sido interpretados como alias de combinación de teclas para la personalización de línea de lectura.La eliminación de las líneas de
.inputrc
, he confirmado, resolvió mi problema.Gracias @ user208052 por el recordatorio relevante para verificar
.inputrc
.La configuración de Readline del shell
El
bind
comando del shell permite ver y modificar la configuración de Readline. (Verhelp bind
.help
Esman
para comandos internos del shell).Ver
bind -p
(quizás canalizar a menos|less
o redirigir a un archivo> binds.txt
). Se "enumera [s] funciones y enlaces en una forma que se puede reutilizar como entrada" .Tiene entradas como
"c": self-insert
para cada carácter en el rango ASCII, por lo que la configuración arruinada puede reemplazarseself-insert
con alguna otra función de Readline.Tiene algunas gemas; verlo me enseñó que
C-=
(\e=
) imprime las posibles terminaciones, en mi configuración predeterminada. Parece mostrar la configuración actual completa de Readline para su shell ... bastante útil y potente. Bueno para explorarPrueba de punta a punta
e
trabajosinserte una línea errónea
.inputrc
, abra un nuevo caparazóne
aparentemente es un no-opbind -p
(| grep -i '"E"'
) muestra"E": self-insert
,"e": self-insert
"A": self-insert
y"a": self-insert
están presentes.fuente
Estoy un poco oxidado, pero pegar en Terminal funciona de manera diferente a pegar en un programa GUI: cada carácter se envía como una pulsación de tecla separada, no como una copia desde el portapapeles al búfer de la aplicación. Entonces, si la "e" se ha reasignado, también se reasignará en la pasta.
Verifique las siguientes ubicaciones:
System Preferences > Keyboard > Shortcuts
~/Library/KeyBindings/KeyBindings.dict
$ defaults read com.apple.Automator NSUserKeyEquivalents
fuente
e
clave se ha reasignado.Algo más que puede intentar es configurar la Terminal para abrir un editor de texto (emacs, vi, etc.) cuando se abre una nueva ventana. Por ejemplo, en las preferencias de Terminal para "Shell", puede hacer que ejecute comandos como
/usr/bin/emacs
. Si no puede ingresar een el panel de preferencias, entonces está sucediendo algo aún más extraño de lo que se ha propuesto hasta ahora ...Cuando se abre una nueva ventana de Terminal,
sedebe iniciar emacs , y puede intentar presionar, eetc. No tengo idea de lo que sucederá, pero al igual que @Pierce arriba, tengo curiosidad por saber qué está pasando.fuente
Verifique la configuración stty y asegúrese de que 'e' no se haya configurado accidentalmente como retroceso o similar. He estado allí, hecho eso. Stty algo \ e lo haría La recomendación de deshabilitar / comentar .bash * también probablemente lo descubriría.
fuente
Yo tenía el mismo problema que fue causado por tener un error tipográfico en
/etc/inputrc
:en lugar de
fuente
Curiosamente, esto acaba de aparecer con macOS 10.13.6 en un MacBook Air. Un usuario estaba bien, el terminal de usuario administrador que ejecuta bash no aceptaría la letra minúscula 'a': no escribir, no pegar, etc. Ejecutar zsh estaría bien. Otros usuarios, bien. Creo que esto había sucedido antes y lo solucionó eliminando el archivo /Users/admin/.inputrc y .bash_profile. Los volví a agregar y funciona. Curiosamente no hay nada importante en estos archivos. .inputrc es solo "set complete-ignore-case On", y hay un par de alias de línea de comando en .bash_profile. Honestamente, algo más podría estar funcionando, pero funciona por ahora.
Parece recordar haber tenido que eliminar y volver a agregar estos archivos sobre este problema. Bueno, estos archivos pueden desencadenar o restablecer el problema al menos.
fuente
Simplemente elimine el archivo .inputrc, está en el directorio raíz. (Es un archivo oculto).
fuente