Vim est réputé pour être l’un des éditeurs de texte les plus puissants. Son principal concurrent est Emacs ; la lutte entre Vimistes et Emacistes est une source intarissable de trolls. Cf. guerre d’éditeurs.
Les détracteurs critiquent le temps nécessaire avant d’être pleinement efficace avec des éditeurs tels que vi ou Vim, ainsi que son principe général de fonctionnement, qui diffère de la majorité des autres éditeurs. Souvent, l’utilisateur ne sait pas dans quel il se trouve.
Les défenseurs de Vim comparent souvent celui-ci à emacs car, pour l´'édition de texte', le paramétrage des raccourcis par défaut y serait plus rapide et ergonomique. Pourtant pour le néophyte, le fonctionnement d'Emacs est plus naturel : chaque pression d'une touche du clavier affiche le caractère correspondant à l'écran. De plus, Emacs ne nécessite pas de va-et-vient entre les modes « commande » et « insertion ». En effet, Vim (tout comme emacs) doit être un minimum étudié avant de pouvoir être utilisé.
Enfin, cela néglige le fait qu'emacs est bien plus qu'un éditeur de texte (notepad et la suite openoffice ne sont pas comparable si l'on ne s'attache qu'à un aspect dans l'absolu).
On lui reproche aussi ses nombreuses commandes aux raccourcis obscurs, qu’il est pratiquement impossible de toutes connaître. Il entraîne de fait parfois la frustration de certains utilisateurs, qui le trouvent anachronique. Par conséquent, vi et Vim ne sont pas adaptés à une utilisation occasionnelle.
Les défenseurs de Vim répondent que la contrepartie du temps important de formation est une productivité plus importante comparée aux autres éditeurs. Les raccourcis des commandes sont bien souvent des initiales des phrases indiquant la tâche à effectuer. Par exemple la commande daw efface un mot (Delete A Word, traduction littérale en anglais). Ces raccourcis permettent d’effectuer de nombreux traitements sans quitter le clavier et avec peu de saisie, comme copier ou coller du texte, le mettre en forme, effectuer un tri, ce qui n’est pas toujours immédiat avec d’autres éditeurs de texte. Bien qu’entièrement contrôlable avec le clavier, Vim permet aussi de travailler avec des menus et la souris en mode graphique.
Les défenseurs de Vim comparent souvent celui-ci à emacs car, pour l´'édition de texte', le paramétrage des raccourcis par défaut y est plus rapide et ergonomique.
Enfin, Vim est léger et rapide. Disponible sur de nombreuses plates-formes, il convient parfaitement au traitement des fichiers de configuration.
Pour pouvoir travailler efficacement avec Vim, il est d’abord nécessaire de comprendre le principe des . Avec une connaissance de base de quelques commandes du , Vim est utilisable. Toutefois, pour travailler efficacement, et devenir potentiellement plus productif qu’avec tout autre éditeur, il est nécessaire de connaître un grand nombre de raccourcis et d’atteindre une certaine maîtrise dans leur utilisation.
L’une des autres qualités de Vim est qu’il est hautement paramétrable (raccourcis, touches, menus, définition de nouvelles fonctions, etc.). Cette caractéristique a permis notamment d’introduire le mode Vim Easy (depuis la série 6.x), permettant à Vim de se comporter comme un éditeur de texte classique (« amodal »), ce qui le met à la portée des non-initiés.
Vim est un éditeur modal. Cela signifie que l’on effectue différentes tâches dans différents modes, ce qui pose bien souvent des problèmes aux débutants. Pour voir dans quel mode on se trouve, il est possible d’activer l’option 'showmode'. Seuls les six modes de base sont indiqués et brièvement décrits dans cet article. Les cinq modes supplémentaires sont des variantes des modes de base. Ils ne seront pas exposés ici, afin de faciliter la compréhension. Pour plus d’informations, consultez l’aide intégrée de Vim :help vim-modes.
Vim démarre en mode Normal, aussi appelé mode Commande. Dans ce mode, il est par exemple possible de copier des lignes ou de les déplacer grâce à des raccourcis, de mettre du texte en forme, ou de se déplacer dans le fichier. Il s’agit du mode central, en ce sens qu’il permet d’accéder à tous les autres modes.
Le mode Insertion est le plus naturel, car il se comporte comme la plupart des autres éditeurs. On peut passer du au mode Insertion avec la commande i (comme « Insertion »). Il existe de nombreuses autres commandes pour passer dans ce mode. En mode Insertion, l’édition du texte se fait de manière habituelle. eVim démarre directement dans ce mode. Mais dans ce cas, toutes les commandes du mode Normal ne sont pas disponibles ou facilement accessibles, ce qui est contraire au critère d’efficacité prôné pour Vim. La touche Echap permet de retourner dans le mode Normal.
On atteint ce mode en tapant d’abord le caractère deux-points :. Ensuite, une commande complexe peut être saisie, comme par exemple une commande de substitution (rechercher puis remplacer). Après un appui final sur la touche Entrée, la commande est exécutée et Vim retourne dans le . Le mode Ligne-de-commande comprend également les commandes / (chercher du texte vers l’avant), ? (chercher du texte vers l’arrière) et la commande pour filtrer !.
Ce mode constitue une amélioration par rapport à vi et ressemble au . À l’aide d’un raccourci, une zone de texte, par exemple une suite de caractères (raccourci v), un ensemble de lignes (raccourci MAJ-V) ou bloc rectangulaire (raccourci CTRL-V), peut être délimitée à l’aide des touches fléchées. La zone ainsi sélectionnée est signalée par une coloration particulière. Ensuite, des commandes du mode Normal peuvent être appliquées à cette zone. Dans ce mode, le travail est facilité par le fait que l’on voit avec précision la zone sur laquelle on agit.
Ce mode débute par le , dans lequel on choisit une zone de texte. Ensuite, on accède au mode Sélection avec le raccourci CTRL-G. Dans ce mode, dès qu’un caractère imprimable est saisi, la zone sélectionnée est supprimée et Vim passe en , c’est-à-dire que le texte sélectionné est remplacé par le texte tapé. La touche Echap permet de sortir de ce mode. Ce mode constitue une amélioration par rapport à vi.
Ce mode ressemble au , à la différence que Vim ne retourne pas dans le après l’exécution de chaque commande. Le raccourci Q permet de passer dans ce mode tandis que :vi permet d’en sortir.