La touche `Supprimer` ne fonctionne pas en mode d'insertion vim pour supprimer le contenu précédemment tapé

12

J'ai ouvert vim dans mon iterm2. Tout d'abord, j'ai tapé quelque chose en mode insertion, comme

Hello

À ce stade, si je ne quitte pas le mode d'insertion, la deletetouche fonctionne et peut supprimer le mot entier si je le souhaite.

Si je quitte le mode d'insertion et que j'ouvre à nouveau le mode d'insertion, cela Hellone peut pas être supprimé par deleteclé. Mais le contenu nouvellement tapé peut être supprimé.

J'ai renommé mon .vimrc, le problème persiste.

Dans la ligne de commande du shell, ma deleteclé fonctionne bien.

Et j'ai fait quelques tests sur un serveur distant, je n'ai itermpas rencontré le même problème.

Quelle pourrait être la cause de ce problème? Comment le réparer?


PS: Comme j'utilise un macbook, la deleteclé correspond à celle backspacedu PC.

Zen
la source

Réponses:

17

Mettez simplement ceci dans votre .vimrc:

set backspace=indent,eol,start
Gawain Lau
la source
Merci beaucoup d'avoir économisé mon temps :)
Sreedhar GS
3

Cela n'a rien à voir avec le shell, ni avec la version de vim. C'est une configuration simple, car le fonctionnement du retour arrière en mode insertion est un vimcomportement configurable ordinaire . Plus précisément, c'est vimle backspaceréglage. Sur une machine, vous avez (très probablement) cet ensemble sur la chaîne vide, et sur une autre vous l'avez défini pour inclure la valeur start. Et c'est probablement dans un fichier de configuration globale.

Notez que la valeur par défaut si vous mettre vimen vimode de est la compatible backspacevariable soit la chaîne vide. Le comportement dont vous vous plaignez est en fait le comportement de l'original vi. Les systèmes d'exploitation Linux ont tendance à remplir le fichier de configuration globale avec toutes sortes d' vimoptions qui activent des comportements "plus conviviaux" qui s'écartent de celui d'origine vi. Les BSD ont tendance à ne pas le faire.

Lectures complémentaires

  • Arnold Robbins, Elbert Hannah et Linda Lamb (2008). "Montage simple". Apprentissage des éditeurs vi et Vim . O'Reilly Media, Inc .. ISBN 9781449313258. p. 14.
  • :help backspace. documentation vim.
  • Bogue n ° 19903 . 1998. Debian BTS.
JdeBP
la source
1

Vérifiez les iTermmappages de touches ( Preferences -> Profiles -> Keys). J'utilisais le préréglage d'édition de texte naturel par défaut, et par cette réponse , la suppression des mappages de clés liés à la suppression résout le problème pour moi.

Rodrirokr
la source