一般在书写 html 文件时,vscode 都会有智能提示,例如悬停在标签上就有该标签的详细信息,可以自动提示标签属性等。
如果使用其他文件格式,例如 php,怎么配置让 php 文件内的 html 代码也有对应的提示。
目前使用了关联文件的配置,把 php 文件关联到 html,但是会导致原来的 php 脚本失去提示。如何做到像 vue 这样的文件格式,写 html 时有对应的 html 提示,写 js 时又有对应的 js 提示。
一般在书写 html 文件时,vscode 都会有智能提示,例如悬停在标签上就有该标签的详细信息,可以自动提示标签属性等。
如果使用其他文件格式,例如 php,怎么配置让 php 文件内的 html 代码也有对应的提示。
目前使用了关联文件的配置,把 php 文件关联到 html,但是会导致原来的 php 脚本失去提示。如何做到像 vue 这样的文件格式,写 html 时有对应的 html 提示,写 js 时又有对应的 js 提示。
要实现这个功能,你需要使用 VS Code 的语言服务器协议 (LSP),并为 PHP 和 HTML 配置合适的语言服务器。
PHP LSP 可以帮助你在 PHP 文件中提供语法高亮、自动补全、错误检查以及其他编辑特性。然而,要实现 HTML 的智能提示,你需要使用 HTML LSP。
一种可能的方法是使用一个支持 PHP 和 HTML 的 LSP 实现,如 langserver
。
安装 langserver
之后,你可以在 settings.json
中配置 [langserver]
设置项来实现对 PHP 和 HTML 的支持:
{
"[langserver]": {
"debugServer": "true"
}
}
然后,你可以在 launch.json
中配置 program
属性来指定 langserver
的入口:
{
"version": "0.2.0",
"configurations": [
{
"name": "Launch",
"type": "node",
"request": "launch",
"program": "${workspaceFolder}/.vscode/extensions/langserver.vscode-langserver-0.39.0/bin/client",
"console": "integratedTerminal",
"internalConsoleOptions": "neverOpen"
}
]
}
最后,在 php.ini
中添加以下配置以启用 PHP LSP:
extension=vscode-langserver-php7.so
请注意,以上步骤可能因你的具体环境和配置而有所不同。如果你使用的是其他 LSP 实现或编辑器,可能需要参考相应的文档来进行配置。
8 回答4.8k 阅读✓ 已解决
6 回答3.5k 阅读✓ 已解决
5 回答2.9k 阅读✓ 已解决
6 回答2.4k 阅读
5 回答6.4k 阅读✓ 已解决
4 回答2.3k 阅读✓ 已解决
4 回答2.8k 阅读✓ 已解决