VS Code php tag автозаполнение

это тривиальный вопрос, но здесь он идет. Я не могу понять, почему VS Code автоматически заполняет (с вкладкой) все html-теги, а php-тег - нет. Когда я набираю "php" и нажимаю вкладку, он создает это:

<php></php>

который бесполезен, и я понятия не имею, почему он там. Я хочу, чтобы он делал обычный тег php

<?php?>

Я отклонил предложения, поскольку они отвлекали меня. В любом случае, чтобы отредактировать элемент "вкладка автозаполнения" по умолчанию/вершине?

Ответ 1

этот хак работал для меня: перейдите в "Предпочтения: откройте" Пользовательские фрагменты "и вставьте этот фрагмент в html фрагменты html (да, этот html):

"php": {
    "prefix": "php",
    "body": [
        "<?php $1 ?>"
    ],
    "description": "php tag"
}

Ответ 2

Я бы уточнил ответ Лейна, поместив последний курсор, представленный $ 0, в новую строку между тегами. Во фрагменте каждая запятая внутри массива body представляет новую строку.

Поэтому в Visual Sutiio Code перейдите в "Файл"> "Установки"> "Пользовательские фрагменты", найдите "html.json" и отредактируйте его, вставив следующее:

{
  // Place your snippets for html here. 
  "php": {
    "prefix": "php",
    "body": ["<?php", "$0", "?>"],
    "description": "php tag"
  }
}

Ответ 3

Насколько я понимаю из вашего вопроса, вы не добавили внешнее расширение PHP IntelliSense и использовали PHP IntelliSense по умолчанию, предоставленный VS-кодом. Если в этой ситуации вам нужно добавить расширение к редактору кода Visual Studio.

Чтобы добавить расширение, используйте клавиатуру и нажмите Ctrl+Shift+p, вы получите командную палитру и введите следующую команду Extensions: Install Extension затем в левую панель редактора вы получите возможность поиска расширений, вы можете найти PHP IntelliSense и установите его. Редактор попросит перезапустить редактор, чтобы применить расширение.

Я рекомендую отключить VS Code встроенный PHP IntelliSense, добавив следующее свойство "php.suggest.basic":false для настроек json config редактора (нажатие клавиатуры Ctrl+, вы получите настройки json справа от редактор), чтобы избежать дублирования предложений.

Для работы с PHP IntelliSense вам необходимо установить atleast PHP 7, вы можете либо добавить его в свой PATH, либо установить "php.executablePath":"php physical path" в настройках json (нажатие клавиатуры Ctrl+, вы получите настройки json)

Ответ 4

Я предпочитаю настраиваемое сочетание клавиш, добавленное в keybindings.json - это позволяет добавлять теги php в тех местах, где intellisense не работает должным образом, например внутри кавычек атрибутов html. Вы также можете выбрать некоторый текст (возможно, вы скопировали несколько php из других источников без полных тегов php) и автоматически обернуть его в теги php. Вот что я использую:

{
  "key": "cmd+alt+ctrl+p",
  "command": "editor.action.insertSnippet",
  "when": "editorTextFocus",
  "args": {
    "snippet": "<?php $1$TM_SELECTED_TEXT$0 ?>"
  }
}

Ответ 5

В Visual Studio Code перейдите в "Файл"> "Установки"> "Отрывки пользователя"> "html.json" и вставьте этот код:

"php": {
    "prefix": "php",
    "body": [
        "<?php $1 ; ?>",
        "$2"
    ],
    "description": "php tag"
}

Ответ 6

Как насчет перемещения курсора в центр тега? Может кто-нибудь помочь с этим??