В текстовых редакторах, если я нажимаю клавиши со стрелками вверх и вниз, он перемещает курсор между строками текста.
В Bash, если я набираю длинную команду, которая занимает несколько строк, и нажимаю клавиши со стрелками вверх и вниз, она циклически перебирает историю команд.
Я хочу прежнее поведение в Bash. Это возможно? Если нет, есть ли способ переместить курсор прямо вверх или вниз в многострочной команде?
Ответы:
Нет, это невозможно. Bash использует GNU Readline для обработки ввода интерактивной строки. В Readline нет команды, которая перемещается между строками отображения по вашему желанию, а также нет переменной конфигурации, сравнимой с визуальной переменной line-move- GNU Emacs, которая заставляет следующую и предыдущую строки перемещаться по отображаемым строкам.
источник
Что я делаю, это нажимаю CTRL + стрелка влево, и он переходит к первой букве после последнего найденного пробела. Делая это, вы можете быстро добраться туда, куда вам нужно.
источник
Может быть, вы ищете что-то вроде Xiki. Это как оболочка / текстовый редактор.
Вот демонстрация видео: http://youtu.be/bUR_eUVcABg
источник
Вы можете использовать Ctrl+ Leftи Ctrl+ Rightдля навигации по словам, а не по символам, Homeа также Endдля перехода к началу и концу введенной команды.
источник
Смотрите также
bash(1)
страницу руководства вCommands for Moving
разделе заголовка для других навигационных ярлыков.источник
Ctrl + A для перехода в начало и Ctrl + E для перехода в конец команды.
источник