Backspace в режиме вставки в vi не стирает символ

Вы должны попробовать перекалибровать его; сначала сбросьте в точку автоматического выключения / спящего режима (~ 5%), а не до 0%. Это связано с более ранними версиями Ubuntu? Если это так, это может указывать на проблему с Ubuntu.

1
задан 12 November 2014 в 04:06

3 ответа

Вот простейшее решение. Откройте терминал, перейдите в домашнюю директорию и введите

vi .vimrc

, откроется новый файл, добавьте эти строки в файл и выйдите, сохранив

$ set nocompatible
$ set backspace=2
59
ответ дан 24 May 2018 в 22:07
  • 1
    ОП упомянул, что они не хотят использовать nocompatibility – kiri 3 November 2013 в 18:47
  • 2
    нет никакой необходимости в совместимости, вы также можете сделать это, просто добавив вторую строку – Adithya Chakilam 3 November 2013 в 18:49
  • 3
    Вторая строка работает только для меня, если я также добавлю первую строку. – djjeck 3 April 2014 в 02:03
  • 4
    Начинал с пустого .vimrc и задавался вопросом, почему backspace не работает на mac в iTerm2. Большое спасибо! – Igor Malyk 23 October 2015 в 14:55
  • 5
    @ minerz029 добавить, но это ответ, для которого большинство людей здесь, поскольку в названии страницы не было такой квалификации. – Muhd 27 February 2017 в 09:51

Вам нужно перейти в режим «вставки», перемещая курсор с помощью i. Существуют и другие способы удаления символов напрямую. Вы можете загрузить powerpoint, который я использую при преподавании класса на VI здесь.

Похоже, вы находитесь в режиме «Command». Чтобы переместить курсор: H = Влево, J = Вверх, K = Вниз, L = Вправо

После того, как вы расположите курсор, вы можете удалить текст следующим образом: [d3 ] x Удаляет символ под курсором X Удаляет символ перед курсором dw Удаляет курсор на следующее слово dd Удаляет строку, в которой находится курсор.

В удалить , вы можете использовать один из режимов ввода текста. a Добавляет текст справа от курсора A Добавляет текст в в текущей строки i Добавляет текст в слева от курсора I Добавляет тест к перед текущей строки o Открывает новую строку под текущей строкой и помещает вас в режим ввода текста [ f15] Открывает новую строку к следующему слову текущей строке и помещает вас в режим ввода текста

Чтобы выйти из режима ввода текста и вернуться к в режиме Command используйте Esc.

В right изменяется: (Любимый ученик) u Отменить последнюю введенную команду U Отменить влево до текущей строки **

Сохранить / выйти: :w Записывает (сохраняет) файл и остается открытым [d34 ] :wq Записывает (сохраняет) файл и последнюю команду VI :q Завершает (выходы), если вы не внесли никаких изменений :q! Выход (Выходы) ниже изменяется ZZ Записывает (сохраняет) файл и выходит из ВП (так же, как :wq)

18
ответ дан 24 May 2018 в 22:07
  • 1
    ОП упомянул, что таинственное поведение происходит в режиме вставки . Так что это не ответ на заданный вопрос. – LarsH 17 May 2013 в 01:50
  • 2
    Фактически OP не указывал в режиме вставки . Вопрос был отредактирован. – Argusvision 17 May 2013 в 02:04
  • 3
    ОК. Вы правы. Похоже, я сделал предположение. Это был мой опыт, когда большинство людей, знакомых с VI, сталкиваются с проблемами с режимами переключения и перемещаются в командном режиме. Мои ученики часто жалуются и обвиняют VI в том, что они имеют неустойчивое поведение, когда это просто ошибка пользователя или не хватает понимания набора команд. – Argusvision 17 May 2013 в 17:28
  • 4
    Понятный. Я согласен с тем, что это общая реакция на режим без вставки. – LarsH 17 May 2013 в 18:43
  • 5
    Argus, "в режиме вставки" был добавлен в заголовок вопроса в редактировании, но с самого начала он был в теле вопроса. – LarsH 9 September 2015 в 22:35

Установите полный пакет vim, чтобы получить функциональность backspace и клавиши со стрелкой

sudo apt-get update
sudo apt-get install vim
5
ответ дан 24 May 2018 в 22:07

Другие вопросы по тегам:

Похожие вопросы: