Кмітливе доповнення коду C++ найкраще зроблено в YouCompleteMe, на мою думку. Плагін швидкий, точний, кмітливий і до того ж легко встановити. Проте, займає багато місця у файловій системі. На приклад, після python2 install.py --clang-completer:

Початковий розмір

Так, півгігабайта для рушіїв доповнення C#, Go, Rust, копій boost і clang. Звісно, добре мати із усіма залежностями всередині пакунок, який не залежить від особливостей дистрибутиву. Але я б віддав перевагу більш інтегрованому в систему компактному рішенню.

Першим кроком стало використання системних libclang і boost. Від цього відмовляє автор плагіна, до речі. Після виправлення команди збірки до: python2 install.py --clang-completer --system-libclang --system-boost:

Розмір із системними бібліотеками

Все ще чверть гігабайта. Потім відтинаємо істотний шмат: робимо власний сценарій встановлення. Скрипт update-ycm.sh робить кілька справ:

  • Клонує найновішу версію YouCompleteMe з github
  • Збирає її із увімкнений доповнювачем clang, компонуючи із системними бібліотеками
  • Прибирає найжирніші шматки
  • Розташовує обрізаний плагін у ~/.vim
  • Поновлює глобальний ycm_extra_conf.py щоб співпадали шляхи до заголовків системної версії clang.

Нарешті, я задоволений використанням дискового простору того, що залишилося:

Урізана власна версія плагіна

Щасливого кодування!