Vim possède la notion de caractéristiques c'est-à-dire des sous-ensembles de fonctionnalités qui peuvent ou non être prises en charge dans une installation réelle, sur la base d'indicateurs de compilation. La présence d'une fonctionnalité peut être vérifiée avec la fonction has()
et toutes les caractéristiques possibles peuvent être énumérées avec la fonction feature-list
commandement.
Je veux que mon vim script soit plus robuste en vérifiant les fonctionnalités avant de les utiliser. Mon problème est qu'il n'est pas documenté explicitement quelle commande s'appuie sur quelle fonctionnalité.
Exemple concret : certaines distributions Linux livrent vim.tiny
par défaut qui est une version fortement limitée en fonctionnalités de vim
. Si je lance vim.tiny
, mon .vimrc
crache de nombreux messages d'erreur. Par exemple, le let
n'est pas disponible, mais il n'est pas évident de savoir quelle fonction fournit cette commande. Comment pourrais-je la déterminer de manière fiable ? Ou, si ce n'est pas possible, comment puis-je faire en sorte que le démarrage de vim se dégrade gracieusement pour les raisons suivantes vim.tiny
?