Разработка на C във VIM

От доста време се опитвам да намеря удобна за мен среда за разработка на C++.

Неговите изисквания са както следва:

- Целева ОС - Ubuntu

- Текстовият редактор трябва да е Vim

— Трябва да разбира сравнително сложни C++11 конструкции (ламбда, enum клас, auto, constexpr.)

- Ако натисна точка или потърся нещо, забавянето не трябва да се забелязва за окото.

- Вграденият дебъгер е силно желателен

Какво опитах:Qt Creator с активиран FakeVim.

Това е, което използвам сега. Не харесвам:

1. FakeVim е много слаб, можете да коригирате няколко реда в него, трудно е да напишете голямо платно код, защото много клавишни комбинации не работят. Няма EasyMotion

2. Той все още не разбира някои неща от C++11

1. Много бързо търсене на знаци и автоматично довършване

2. Много удобно вградено отстраняване на грешки

Не ми харесва: търсенето на символи в eclipse е много бавно - когато щракнете върху точка (дори и без eclim), има забавяне от половин секунда.

Като: вградено отстраняване на грешки

1. Анализаторът изглежда далеч зад Eclipse и Qt Creator.

2. За отстраняване на грешки трябва да преминете към Qt Creator или да използвате vim плъгини, които закачат GDB - за тях също има оплаквания.

clang_complete и свързани разклонения

1. Когато щракнете върху точката, забавете до няколко секунди

2. Ако кодът не се компилира с clang++, автоматичното довършване не работи. Използвам gcc като основен компилатор и е болезнено да поддържам код, компилиран от clang++ през цялото време (clang++ все още не се справя толкова добре с constexpr). Ако разбиете част от кода, автоматичното довършване се прекъсва. Понякога е по-удобно първо да разбиете всичко и след това бавно да го редактирате - този сценарий не работи с clang_complete.

3.Всичко за отстраняването на грешки е същото като при ctags

Най-простото решение, което в момента се изготвя, е да завършите FakeVim сами. Но преди да напиша код, искам да знам какво използват други C++ разработчици, които са свикнали с Vim. Може би има друга красива среда за разработка/плъгин за Vim или използвам един от горните методи неправилно?