2017-02-09 10 views
8

Я использую Vim 8.0 с Python3 и myint/ClangComplete для завершения C/C++. SDL_<tab> предлагает каждую функцию и тип SDL. Есть ли способ ограничить предложения типами SDL_EventType, функциями, возвращающими SDL_Windows и т. Д.? BidiComplete кажется хорошим местом для начала, так как SDL_<tab>EVENT будет соответствовать SDL_WINDOWEVENT и SDL_FIRSTEVENT, но не SDL_FINGERDOWN и т. Д. В идеале я хотел бы иметь возможность фильтровать по всем/всем полям всплывающего меню ClangComplete, так как мне может быть интересно в 'функции, которые принимают SDL_Window * в качестве аргумента или возвращают один'. Механизм фильтрации/поиска может быть просто регулярным выражением по всему тексту каждой строки в PUM.Вы можете найти или отфильтровать завершение Vim?

+2

Похоже, вы запрашиваете нечеткое завершение, которое уже запрошено (см. Https://github.com/Rip-Rip/clang_complete/issues/388). Вы можете использовать модификацию toobig, чтобы получить то, что вы хотите. – gregory

+0

Просто не используйте двигатель завершения. Когда мы его используем, наш мозг просто не хранит информацию о библиотеках, которые мы часто используем, и самое плохое в том, что мы не обнаруживаем логику дизайнера библиотеки. Я прекратил использовать его 6 месяцев назад, это резко увеличило мою производительность! – Oliv

+0

Ничего себе. Нет. Я знаю, что SDL_FINGERDOWN является SDL_EventType, потому что я видел его в пополнениях один раз. ** Мой мозг прекрасно работает, спасибо. ** Я бы не знал, что SDL_DOLLARRECORD - это один без ввода «SDL_EventType ::» и прокрутки результатов, и у меня нет лучшего способа поиска всех функций, которые возьмите SDL_EventTypes, чем вручную, grepping всей базы кода из оболочки, вышивание разделяемых библиотек или вытягивание документации. –

ответ

0

Как я уже упоминал в своем комментарии, кажется, что вы запрашиваете нечеткое завершение, которое уже запрошено (см. Github.com/Rip-Rip/clang_complete/issues/388). Вы можете использовать модификацию toobig, чтобы получить то, что вы хотите.

+0

Извините, я не думаю, что это так, если только символ для поиска не похож на алфавит. «SDL_FINGERDOWN» делится только «SDL_» с «SDL_DOLLARRECORD», который он разделяет с любым другим объектом SDL. Я что-то упускаю? –