Error extraño de terminal OS X: el cursor no volverá al final de la línea después de retroceder

2

Tengo un problema interesante: cuando escribo algo en el terminal de la siguiente manera:

~ me$ hello<cursor>

y retroceder:

~ me$ he<cursor>llo

y luego trato de volver al final para continuar escribiendo, tal vez después de corregir un error, me quedo atascado antes del último carácter:

~ me$ hell<cursor stuck here>o

Alguien sabe cómo solucionar esto? Intenté mirar alrededor y cambiar el terminal a xterm en lugar de xterm-256-color, etc., pero no tuve suerte. ¡Cualquier ayuda es muy apreciada!

Editar: estoy usando las teclas de flecha para moverme hacia adelante y hacia atrás.

tylucaskelley
fuente
¿Alguna vez ha modificado sus archivos ~ / .bash_profile o ~ / .bashrc?
gattol
No, pero tengo un archivo ~ / .inputrc modificado, que se copió desde aquí para hacer algunas mejoras: github.com/whiteinge/dotfiles/blob/master/.inputrc
tylucaskelley
No puedo entender por qué, pero es lo que causa el problema.
gattol

Respuestas:

1

Sé que esta es una vieja pregunta, pero he estado dándome vueltas por esto durante unos días y finalmente la tengo. Resulta que la solución es simple: actualice bash a 4.3 . El bash predeterminado en Mac (incluso Yosemite) es 3.2.

Instalar Homebrew con

ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

entonces hazlo

brew install bash

luego cambie su ruta de shell predeterminada (en Preferencias de Terminal) a

/usr/local/bin/bash

y eso es. Comprueba tu versión bash con

bash --version

y como un bono adicional, puedes obtener indicadores de modo!

bind 'set show-mode-in-prompt on'

y mostrará un +para el modo Insertar y :para el modo Comando.

Riju Dasgupta
fuente
0

Como no tengo suficientes representantes para agregar esto como comentario, tendré que preguntar esto en la sección de respuestas (aunque no se recomienda).

Primero, ¿cómo estás tratando de mover el cursor? ¿Estás usando las teclas de flecha o estás usando los comandos básicos vi ? es decir, has intentado $:?

De todos modos, sería útil si proporcionara más detalles sobre las teclas específicas que está presionando en el ejemplo que proporcionó (es decir, si flechas o accesos directos y, si es esto último, qué combinaciones de teclas específicas).

Steve S
fuente