Activation du mode Diff alterné via un appel de fonction dans Vim / gVim
Question
Dans une question récente , j'ai demandé comment faire en sorte que vimdiff ignore leespaces supplémentaires lors de la comparaison.Suite à la réponse et à quelques lectures supplémentaires, j'ai essayé de faire ce qui suit:
.1.Localisez _vimrc
et recherchez la définition de la fonction MyDiff()
.Il contient la ligne:
if &diffopt =~ 'iwhite' | let opt = opt . '-b ' | endif
.2.Dupliquez la fonction en tant que MyDiff2()
dans _vimrc
, tout en changeant cette ligne en:
if &diffopt =~ 'iwhite' | let opt = opt . '--ignore-all-space ' | endif
.3.Ouvrez gVim avec deux fichiers en mode Diff, puis:
:set diffexpr=MyDiff2()
:set diffopt+=iwhite
:call MyDiff2()
et aussi:
:diffupdate
Je m'attendais à ce que cela fasse en sorte que vimdiff ignore les différences telles que:
r3=r2;
vs r3 = r2;
, mais ce n'est pas le cas.Pourquoi ça?
Mes paramètres sont les suivants:
diffexpr=MyDiff2()
diffopt=filler,iwhite,icase
La solution
OK, il semble que j'ai trouvé une solution qui fonctionne, en suivant cette question.Au lieu d'utiliser --ignore-all-space
, j'ai utilisé -w
et maintenant il semble que gVim ignore les différences entre r3=r2;
et r3 = r2;
.