Sublime Text 2 распознает шаблоны подчеркивания как HTML - PullRequest
35 голосов
/ 11 марта 2012

Итак, я использую шаблоны underscore.js, в которых я должен поместить свой html-шаблон в тег скрипта, как это

<script id="contactTemplate" type="text/template">
    <img src="{{ photo }}" alt="{{ name }}" />
    <h1>{{ name }}<span>{{ type }}</span></h1>
    <div>{{ address }}</div>
    <dl>
        <dt>Tel:</dt><dd>{{ tel }}</dd>
        <dt>Email:</dt><dd><a href="mailto:{{ email }}">{{ email }}</a></dd>
    </dl>
</script>

, но возвышенный текст 2 оценивает код внутри как обычныйJS, как я могу это изменить?

Заранее спасибо!

Ответы [ 4 ]

69 голосов
/ 09 августа 2012
  1. Перейдите на "Browse Packages" в меню (где пункт меню зависит от вашей платформы).
  2. Открыть вверх HTML/HTML.tmLanguage
  3. Измените эту строку (строка 286 в моем HTML.tmLanguage):

    <string>(?:^\s+)?(&lt;)((?i:script))\b(?![^&gt;]*/&gt;)</string>

    к этому:

    <string>(?:^\s+)?(&lt;)((?i:script))\b(?![^&gt;]*/&gt;)(?!.*type=["']text/template['"])</string>

Теперь любые теги скриптов с type="text/template" или type='text/template' будут отображаться как html, а не как javascript.

9 голосов
/ 10 апреля 2014

Поскольку изменение встроенных пакетов не совсем легкое, безопасное или переносимое (особенно в ST3), я выделил Мэтта Йорка , преобразованное в его собственный пакет.

Он доступен через управление пакетами и поддерживает Sublime Text 2 и 3 на всех платформах.

Синтаксис HTML подчеркивания

3 голосов
/ 31 января 2014

Для тех из нас, кто использует Sublime Text 3

Я подумал, что объединю информацию во что-то более простое для поиска, поскольку ни один из ответов или комментариев не дал мне того решения, которое мне было нужно. Ответ Мэтта Йорка в основном правильный, но решение Шейна N немного более гибкое:

<string>(?:^\s+)?(&lt;)((?i:script))\b(?![^&gt;]*/&gt;)(?!.*type=["']text/(temp‌​late|html)['"])</string>

Вы можете найти HTML.sublime-package внутри C:\Program Files\Sublime Text 3\Packages, как упомянуто PAEz.

Инструкция

  1. Извлечение HTML.sublime-package содержимое, как в любом обычном zip-файле
  2. Внутри новой директории / HTML, которую вы только что создали, откройте HTML.tmLanguage и измените строку, упомянутую выше (возможно, строку 286)
    1. Это должно прийти сразу после <key>begin</key>
  3. Сохраните ваши изменения, затем добавьте каталог / HTML, в котором HTML.tmLanguage живет, в новый zip-файл
  4. Удалить старый HTML.sublime-пакет файл
  5. Измените тип файла с .zip на .sublime-package (убедитесь, что Sublime не работает, пока вы это делаете)
  6. Теперь вы должны быть готовы - запустите Sublime и проверьте свои новые шаблоны!
1 голос
/ 22 ноября 2015

Для тех из нас, кто использует Sublime Text 3, используйте плагин "PackageResourceViewer" для редактирования HTML.sublime-пакета

PackageResourceViewer

...