• [^] # Re: La réponse de Bram Moolenaar

    Posté par (site web personnel) . En réponse au journal Neovim : vim's rebirth for the 21st century. Évalué à 9.

    Les ifdef peuvent avoir une utilité pour un logiciel qui doit en effet se décliner en N versions différentes.

    Est-ce le cas de Vim ? Je suis loin d'en être persuadé. Il y a bien un besoin entre un Vim minimaliste pour des plate-formes minimalistes et un Vim bouffi pour ceux qui ne regardent pas à la taille. Mais choisir individuellement entre avoir le support des split verticaux, des jumplist, et autres joyeusetés, est-ce que ça a un sens.

    Pour ceux qui veulent voir à quoi ça ressemble, c'est:
    https://code.google.com/p/vim/source/browse/src/feature.h

    Supprimer les ifdef est enlever une fonctionnalité (pas qui t'interesse, mais qui itneresse une autre personne). Donc pas terrible.

    En l'occurence, il supprime la possibilité de supprimer une fonctionnalité en l'incluant automatiquement de base.

    J'ai fait le compte vite-fait, il y a 110 feature différentes qui peuvent être activées ou désactivées. Question subsidiaire, qui teste les 2110 = 1298074214633706907132624082305024 combinaisons qui en resultent ? On est clairement dans un truc incohérent.

    Dans les faits, certaines de ces fonctionnalités correspondent à des fonctionnalités spécifiques à des plate-formes. Mais au lieu d'avoir une couche de portabilité claire et des fichiers sources isolés, tout est en bazar dans la même base de code, sans permettre de distinguer facilement ce qui appartient à quoi.

    Les forks réussis qui durent sont extrèmement rares,
    Ca arrive, et ça arrive même

    Une des clés me semble être l'adhésion d'une partie de l'équipe de développement principale.