Vimで特定のシナリオを入力するときにバックスペースがヒットするたびに検出しようとしています。getchar() を使用して、ユーザー入力から一般的な文字を取得しています。理想的には、この方法でバックスペース キーストロークを検出したいと考えています。どうにかsttyを使おうと思っていたのですが、今のところ定かではありません。助言がありますか?
質問する
152 次
1 に答える
1
getchar を使用している場合は、ユーザーがバックスペースを入力したかどうかを確認できます。
let char=getchar()
if char is# "\<BS>"
…
endif
. これは、vim が適切に構成されていることを前提としています (ターミナル vim のみ、gvim にはこの問題はありません)。ほとんどの場合はそうですが、terminfo を修正する代わりに、またはおそらく を使用する代わりにset <BS>={<C-v><BS>}
、ユーザーは を押したときに生成される文字をマップするだけ<BS>
です。これは仕方ない。
于 2013-07-07T08:58:02.770 に答える