2013-10-26 86 views
11

我運行一個默認的Windows 8的cygwin安裝並不能得到Backspace鍵刪除字符 - 我期待的角色與空白覆蓋,當我退格。退格在終端上,Vim(Cygwin的)

我已經試過

set backspace=2 " 
set backspace=indent,eol,start 
:fixdel 

似乎沒有任何工作。

兩個 :verbose imap <BS>:verbose imap ^H 回報 No mapping found

+0

Vim是否會收起退格?我使用':echo getchar()'作爲這種事情的理智檢查。嘗試在鍵盤上運行該命令並按下一個鍵空間或其他內容。你應該得到一個數字(關鍵代碼)出現。如果你這樣做,並按退格會發生什麼? – pandubear

+0

是的,光標確實回退。當您退出插入模式時,角色將從視圖中移除。當嘗試:回聲的getchar()我得到以下錯誤「E319:對不起,該命令是不是在這個版本」 –

+0

所以要清楚。我進入插入模式..鍵入123456 ...命中退格3次。這將光標移回3個空格。當我然後他的ESC退出插入模式,字符456被刪除..我想他們在我插入模式時刪除。 –

回答

0

在命令模式中,你有沒有考慮只需按下代替退格的大寫字母「X」?這將刪除左側的一個字符,非常類似於您期待的退格行爲。

19

添加這些設置在一起:

:set nocompatible 
:set backspace=2 
+0

這對我有效,謝謝。 –

+0

這也適用於我,謝謝! –

+0

這也適用於我。我也想明白爲什麼。 –

2

最近,我經歷了一個怪異的行爲在Cygwin安裝在Windows 7中當按下退格鍵Cygwin的,其解釋爲一個空格。

幸運的是,問題比較容易解決。 (同時測試,沒有工作,每次)最簡單的方法是簡單地通過SETUP.EXE重新安裝的terminfo和termcap的,這裏提到:Backspace鍵不會Cygwin的工作。如果你沒有安裝termcap安裝它,但一定要正確地重新安裝terminfo。充其量,這是你需要做的所有事情,讓你的退格再次回來。

如果沒有,你可能需要從你的主文件夾,例如刪除的.bashrc /cygwin/home/you/.bashrc。然後,確保重新安裝terminfo和termcap。這一直對我有效。

享受退格鍵:)