2016-04-28 1 views
1

В Sublime Text я установил Emmet так, чтобы я мог кодировать zen. Теперь проблема заключается в том, что когда я набираю текст и получаю предложение автозаполнения, как только я принимаю это предложение автозаполнения (либо путем ввода вкладок, ввода, либо даже нажатия пробела), предлагаемый тег расширяется; это не позволяет мне продолжать кодирование дзэн.Sublime Text: Accept Предлагаемый Autocomplete без его расширения

Чтобы привести пример, скажем, я хочу вставить <select> с дочерними элементами 6 <option>. Если я вхожу в select>opt, тогда автозаполнение предлагает option, но как только я принимаю option, это расширится до select<option></option>.

Я хочу принять option, но он не будет расширяться до <option></option>.

Есть ли все-таки для этого?

ответ

1

Собственно, ответ очень прост. В вашем примере, когда вы получите предложения автозаполнения для option, вы получите 2 из них. Один - это тег, другой - текст. Используйте Ctrl + Space, чтобы просмотреть все предложения, и выберите текстовую версию option, а не версию тега.

0

В Sublime Пополнения текста состоят из 2-х кортежей, содержащих показанную строку и вставленные символы/фрагменты. Я не думаю, что можно просто вставить показанную строку. Однако, если вы ищете какой-либо способ, существует способ установить: изменить исходный код файла завершения тэга html.

Установить PackageResourceViewer, а затем нажать ctrl+shift+p написать PackageResourceViewer: Open Resource. Выберите HTML >>> html_completions.py. Если вы сохраните файл, он будет теневым (не перезаписывать) исходным файлом завершения. Поэтому просто удалите его, чтобы получить исходное поведение. В этом файле:

  • в строке 15 заменить return (tag + '\tTag', tag + '>$0</' + tag) на return (tag + '\tTag', tag).
  • в строке 245 заменить completion_list = [(pair[0], '<' + pair[1]) for pair in completion_list] на completion_list = [(pair[0], pair[1]) for pair in completion_list]

Теперь он должен вставить имена тегов вместо целых тегов.