Я использую плагин Emmet для HTML-файлов в Sublime. Но когда я хочу напечатать HTML-коды в PHP-файле, таком как файлы представлений в Laravel, тогда Emmet не расширяет аббревиатуры.
Например: когда я печатаю html:5
и нажмите Tab в HTML-файле в Sublime, после чего Emmet autocomplete преобразует его в:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
</body>
</html>
Но когда я делаю то же самое в файле с расширением .php и нажимаю tab, ничего не происходит. Это проблема с выдающейся конфигурацией или есть какое-то решение для быстрого набора HTML-кодов с помощью Emmet в Sublime для файлов PHP?
ЧИТАЙТЕ в Эммете Страница контроля пакетов объяснить, как это сделать — прокрутите вниз до How to expand abbreviations with Tab in other syntaxes
раздел:
Emmet расширяет аббревиатуры только в ограниченных синтаксисах: HTML, CSS, LESS, SCSS, Stylus и PostCSS. Причина, по которой обработчик табуляции ограничен ограниченным списком синтаксиса, заключается в том, что он нарушает собственные фрагменты Sublime Text.
Если вы хотите использовать аббревиатуру Tab в других синтаксисах (например, JSX, HAML и т. Д.), Вам нужно настроить параметры сочетаний клавиш: добавить
expand_abbreviation_by_tab
команда для клавиши табуляции для требуемых селекторов синтаксической области. Чтобы получить текущий селектор области синтаксиса, нажмите pressP (OSX) или Ctrl+Alt+сдвиг+п, это будет отображаться в строке состояния редактора.Идти к
Preferences > Key Bindings — User
и вставьте следующий фрагмент JSON с правильно настроенным селектором области вместоSCOPE_SELECTOR
маркер:
{
"keys": ["tab"],
"command": "expand_abbreviation_by_tab",
// put comma-separated syntax selectors for which
// you want to expandEmmet abbreviations into "operand" key
// instead of SCOPE_SELECTOR.
// Examples: source.js, text.html - source
"context": [
{
"operand": "SCOPE_SELECTOR",
"operator": "equal",
"match_all": true,
"key": "selector"},
// run only if there's no selected text
{
"match_all": true,
"key": "selection_empty"},
// don't work if there are active tabstops
{
"operator": "equal",
"operand": false,
"match_all": true,
"key": "has_next_field"},
// don't work if completion popup is visible and you
// want to insert completion with Tab. If you want to
// expand Emmet with Tab even if popup is visible --
// remove this section
{
"operand": false,
"operator": "equal",
"match_all": true,
"key": "auto_complete_visible"},
{
"match_all": true,
"key": "is_abbreviation"}
]
}
SCOPE_SELECTOR
значение для PHP embedding.php text.html.basic
,
Других решений пока нет …