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 delete
touche 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 Hello
ne peut pas être supprimé par delete
clé. 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 delete
clé fonctionne bien.
Et j'ai fait quelques tests sur un serveur distant, je n'ai iterm
pas 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 delete
clé correspond à celle backspace
du PC.
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 unvim
comportement configurable ordinaire . Plus précisément, c'estvim
lebackspace
ré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 valeurstart
. Et c'est probablement dans un fichier de configuration globale.Notez que la valeur par défaut si vous mettre
vim
envi
mode de est la compatiblebackspace
variable soit la chaîne vide. Le comportement dont vous vous plaignez est en fait le comportement de l'originalvi
. Les systèmes d'exploitation Linux ont tendance à remplir le fichier de configuration globale avec toutes sortes d'vim
options qui activent des comportements "plus conviviaux" qui s'écartent de celui d'originevi
. Les BSD ont tendance à ne pas le faire.Lectures complémentaires
:help backspace
. documentation vim.la source
Je pense que cela pourrait être dû à la version de vim installée sur OSX par défaut. Vous pouvez toujours installer vim via homebrew et voir si ce remplacement aide. J'ai trouvé cette page qui aide à améliorer l'expérience du terminal OSX. https://www.topbug.net/blog/2013/04/14/install-and-use-gnu-command-line-tools-in-mac-os-x/
Prenez note de cette ligne 'brew install vim --override-system-vi'
la source
Vérifiez les
iTerm
mappages 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.la source