From :h backspace-delete
:
Backspace and Delete keys *backspace-delete*
In 3.0 both the delete key and the backspace key worked as a backspace in
insert mode; they deleted the character to the left of the cursor. In 4.0 the
delete key has a new function: it deletes the character under the cursor, just
like it does on the command-line. If the cursor is after the end of the line
and 'bs' is set, two lines are joined. |<Del>| |i_<Del>|
In 3.0 the backspace key was always defined as CTRL-H and delete as CTRL-?.
In 4.0 the code for the backspace and delete key is obtained from termcap or
termlib, and adjusted for the "stty erase" value on Unix. This helps people
who define the erase character according to the keyboard they are working on.
|<BS>| |i_<BS>|
If you prefer backspace and delete in Insert mode to have the old behavior,
put this line in your vimrc:
inoremap ^? ^H
And you may also want to add these, to fix the values for <BS>
and <Del>
:
set t_kb=^H
set t_kD=^?
(Enter ^H with CTRL-V CTRL-H and ^? with CTRL-V CTRL-? or <Del>
.)
If the value for t_kb is correct, but the t_kD value is not, use the ":fixdel"
command. It will set t_kD according to the value of t_kb. This is useful if
you are using several different terminals. |:fixdel|
When ^H is not recognized as <BS>
or <Del>
, it is used like a backspace.
What do you mean "doesn't accept backspace"? Do you see something like
^H
, nothing at all or what? – Eelvex – 2011-03-01T13:22:12.750