J'ai dans mon .vimrc
:Est-ce que autocmd est toujours appelé dans un vimrc?
fun! MySys()
if has('win16') || has('win32') || has('win64')
return "win"
endif
endfun
Et dans mon .gvimrc:
if MySys() == "win"
autocmd GUIEnter * simalt ~ x " start maximized"
endif
Pour une raison quelconque, le autocmd est appelé quand j'ouvre MacVim dans une station de travail Mac. Il ne devrait pas parce que je suis sur un mac et l'autocmd est dans une victoire si.
Quel problème cela peut-il être?
@AI: J'ai changé ma question. J'ai collé la mauvaise fonction. –
La comparaison d'origine a été évaluée comme vraie, je pense, parce que dans une comparaison entre une chaîne et un nombre, Vim essayera toujours de convertir la chaîne en nombre. Par exemple, 0 == 'win' est vrai, car str2nr ('win') = 0. D'autre part, 0 == '3' sera faux, puisque str2nr ('3') est égal à 3. –
Même en utilisant cette approche, la ligne avec l'autocmd continue d'être évaluée. J'ai essayé ': echo a (' win32 ') dans mon vim et en effet il renvoie 0. –