Я новичок в vi , на самом деле я начал изучать vi с сегодняшнего дня, и я застрял в поведении клавиши Backspace . На самом деле, когда я впервые запустил vi на Ubuntu 12.04, мой ключ возврата работал нормально, но после этого он начал странно себя вести. Всякий раз, когда я нажимаю клавишу Backspace в режиме вставки, он просто перемещается на одну позицию влево вместо стирания символа. Как я могу вернуть функциональность возврата по умолчанию? Обратите внимание, что я не хочу устанавливать vim или устанавливать nocompatibilty.
10
vim
.Ответы:
Иногда
vi
команда является псевдонимом дляvim
и при вызове asvi
включает ее режим vi.Даже в традиционном режиме Backspace удаляет символ, но не отображает его как удаленный сразу. (После нажатия ESC символы исчезают.)
Думаю, вам придется выбирать между использованием,
vi
которое идет с описанным поведением, или использованием,vim
которое способно сделать это так, как вы ожидаете.источник
Проверьте, действительно ли вы используете обычный
vi
через$ vi --version | head -n 1
Это дает на моей машине (Debian 7)
VIM - Vi IMproved 7.3 (2010 Aug 15, compiled Feb 10 2013 02:27:59)
vim можно заставить вести себя больше как vi. Это можно сделать, выдав команду
vi
вместоvim
командной строки, гдеvi
есть только символическая ссылкаvim
, и в этом случае vim открывается в режиме vi. Вы можете проверить это с:set compatible?
.Как упоминалось в предыдущем ответе, эффект возврата становится видимым только после того,
insert mode
какset compatible
он включен, когда включен.Примечание. В режиме, совместимом с vi, вы не можете возвращать назад текст, который был ранее введен (перед
insert mode
вводом), или eol или отступinsert mode
. увидеть:help 'bs'
Попробуйте разные настройки, чтобы понять их значение: введите символы / разрывы строк и отступы в режиме вставки, выйдите и снова войдите в режим вставки, а затем попробуйте возврат.
Пользователи, которые не знакомы с поведением vi и не настаивают на использовании простого vi (в любом случае, не рекомендуется)
:set backspace=indent,eol,start
. Afaik на Debian - это обычно общесистемный файл конфигурации, установленный с этим параметром.Вы можете получить текущие настройки через
:set bs?
.источник
Создайте новый файл в домашнем каталоге пользователя с именем .vimrc, если его там еще нет. Здесь мы будем создавать и редактировать одновременно с vi
Добавьте следующие команды, которые включают в себя отключение режима совместимости и функцию стирания клавиш возврата:
Сохраните и выйдите из файла, используя
Отключение режима совместимости позволяет использовать клавиши со стрелками, к которым привыкли старые парни vi.
Поскольку при создании файла мы выполняем sudo, владельцем файла, вероятно, будет пользователь root. Вы можете прикрепить файл к пользователю.
В моем случае это был малиновый пи, поэтому пользователь и группа - это пи:
Теперь снова запустите vi и наслаждайтесь!
источник
set nocp
сделал свое дело для меняЯ думаю, что лучшим способом было бы взглянуть на чит-лист VI / VIM: http://www.viemu.com/vi-vim-cheat-sheet.gif
Войдите в нормальный режим (ESC) и затем нажмите SHIFT + X.
источник
просто поместите в свой
~/.zshrc
источник