Как развернуть фрагмент UltiSnips с помощью <c -y> во всплывающем меню YouCompleteMe? - PullRequest
2 голосов
/ 10 января 2020

Эта проблема действительно поразила меня. На моем редакторе vim 8.0 установлены и YouCompleteMe , и UltiSnips . Кажется, что оба этих плагина используют клавишу tab для выполнения автозаполнения, и это создало несовместимость, которая также была устранена этим вопросом. Мой вопрос более конкретен c, хотя. Когда я пишу фрагмент кода, например <html, появляется всплывающее меню, в котором отображаются все связанные фрагменты этого кода.

YCM pop-up menu for UltiSnips snippets

Я использую клавишу tab для навигации по этому меню, но когда я нажимаю ctrl + y , чтобы принять и, следовательно, развернуть один из этих фрагментов, ничего не происходит! Я думаю, что эта структура предполагает, что можно каким-то образом выбрать один из этих фрагментов из меню, не пытаясь определить ярлык для UltiSnip. Что я делаю неправильно? Как мне перемещаться и выбирать эти фрагменты?

Я также не хотел бы заполнять мой vim какими-либо новыми плагинами (такими как supertab, et c.).

1 Ответ

0 голосов
/ 22 января 2020

На самом деле решение оказалось намного проще, чем я ожидал. Вначале я чувствовал себя глупо из-за того, что не знал этого, но когда я нашел такой вопрос, как этот , я подумал, что, вероятно, многие попали в одну и ту же ловушку.

Я не знаю знаю, назвать это ошибкой или нет, но именно так Ultisnips и YouCompleteMe работают вместе. Чтобы развернуть фрагмент, вы должны написать инициализатор в точности так, как он определен. Конечно, это кажется очевидным, но когда вы видите всплывающее меню с различными фрагментами, вы можете подумать, что они могут быть выбрано, но работает, только если вы уже написали инициализатор фрагмента в точности так, как он определен.

Так что, когда фрагмент называется "html5" - как показано в моем вопросе - написание дополнительного открытия скобка (<) заставит его перестать работать. Он не может быть расширен. </p>

UltiSnips the correct way to expand a snippet from the pop-up menu

UltiSnips the wrong way to expand a snippet from the pop-up menu


Кроме того, не забудьте проверить конфигурацию Зигфрида Геваттера . Невозможно использовать клавишу tab как для перехода во всплывающее меню, так и для расширения фрагментов.

PS Было бы хорошо, если бы вы перемещались по всплывающему окну Меню может изменить все слово (включая угловую скобку), а не только то, что следует за ним. Эта функция работает таким образом в большинстве других редакторов, которые я вижу, и, вероятно, поэтому я не смог обнаружить проблему в начале.

...