Когда я подключаюсь по ssh к серверу Linux из терминала bash, я могу использовать CTRL+ A, чтобы правильно вернуться к началу строки, и CTRL+ , Eчтобы перейти к концу строки, и все работает нормально.
Когда я использую bash локально на своем Mac, когда я использую CTRL+ A, он логически возвращается к началу строки, но не отображает курсор в правильном месте. Он отображает курсор на 7 или около того символов и не обновляет текст строки правильно.
Пример
find . -name "hello.cpp"
CTRL+ A!
find . -name "hello.cpp"
^~~ cursor shows here ????
Вставьте «это тест» (просто чтобы показать)
Дисплеи:
find . this is a test -name "hello.cpp"
^~~ cursor is still here ???
^~~~~~~~~~~~~^ text inserted here ???
^~~~~~^ unchanged for some reason
Команда выполнена
this is a test find . -name "hello.cpp"
я использую то же самое
PS1=\n \e[1;95m \u@\h \e[0;32m\w \e[1;30m $(__git_ps1 " (%s)" ) \n \e[1;95m \@ \n $ \e[0;30m
как я делаю в линуксе.
Информация о версии
Добавьте \[
и \]
вокруг цветовых кодов, чтобы bash правильно рассчитывал длину строки. Что-то вроде этого:
PS1=\n \[\e[1;95m\] \u@\h \[\e[0;32m\]\w \[\e[1;30m\] $(__git_ps1 " (%s)" ) \n \[\e[1;95m\] \@ \n $ \[\e[0;30m\]
(Этот ответ взят из комментария @Mark к вопросу.)
мммммм
pyj
\[
и\]
вокруг цветов решило проблему. На самом деле это обратная другая проблема, для которой я бы рекомендовал изменить строку темы, поскольку это более общая проблема, чем просто «стиль emacs». Вы хотите, чтобы я пометил как дубликат, даже если они перевернуты? Я думаю, что эта тема облегчит поиск.мммммм
Беннет МакЭлви