65 votes

Existe-t-il un fichier de syntaxe C ++11 pour vim?

En particulier, l'affichage des listes d'initialisation est vraiment mauvais:

 vector<int> v({1,2,3});
 

mettra en évidence les accolades en rouge (indiquant une erreur).

35voto

thrust Points 291

Comme alternative, vous pouvez utiliser

 let c_no_curly_error=1
 

dans votre fichier .vimrc afin que vim ne marque pas {} comme une erreur dans () .

32voto

KennyTM Points 232647

Il existe maintenant un script C ++ 11 de http://www.vim.org/scripts/script.php?script_id=3797 , qui ne marque plus les accolades à l'intérieur de la parenthèse comme des erreurs.

25voto

Chad Skeeters Points 495

Si vous utilisez Syntastic, ajoutez ceci à votre .vimrc (ou .vimrc.local).

let g:syntastic_cpp_compiler_options = ' -std=c++11'

Syntastic montre les erreurs de code écrit dans plusieurs langues. Chaque langue a un "pion" qui est un wrapper pour exécuter un programme externe. Le programme externe pour le c++ checker est g++. Le c++ vérificateur peut passer des options du compilateur g++ et peut être configuré en fonction de la documentation dans le code.

https://github.com/scrooloose/syntastic/blob/master/syntax_checkers/cpp.vim

Si vous souhaitez utiliser clang++, vous pouvez utiliser ces options

let g:syntastic_cpp_compiler = 'clang++'
let g:syntastic_cpp_compiler_options = ' -std=c++11 -stdlib=libc++'

9voto

Keke Points 81

utiliser une initialisation uniforme au lieu du constructeur old ()

vecteur v {1,2,3};

6voto

Tarantula Points 4231

Pour autant que je sache, il y a un travail en cours pour cela, voir ici la liste de courrier vim_dev.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X