Prettier vscode扩展不支持Django模板标签{% tag %}

biswetbf  于 2023-05-01  发布在  Go
关注(0)|答案(6)|浏览(116)

Prettier Visual Studio代码扩展不支持Django模板标签{% tag %}
现在我该怎么补救呢?
我是否必须禁用HTML文件的Prettier扩展,或者有其他解决方案??؟
问题5581在github = No Django template tags support

oxalkeyp

oxalkeyp1#

**2022年2月 *

根据@Al Mahdi的评论:Prettier不再支持prettier.disableLanguages选项。因此,要忽略某些文件,必须创建。prettier忽略文件类似于a .gitignore文件(对于使用Git的人)。该文件位于项目的根文件夹中。下面是我的例子的来源。
要忽略一个文件,您可以输入一个特定的文件名:

# Ignoring just one file
my_cool_html_file.html

或者你可以使用一个概括性的声明:

# Ignoring all html files
*.html

还有一个pragma选项(<!--prettier-ignore-->),它允许您忽略特定文件中的代码片段。假设在你的my_cool_html_file.html中,你不想让Prettier格式中的某些行,你可以:

<!-- prettier-ignore -->
<div         class="x"       >hello world</div            >

<!-- prettier-ignore-attribute -->
<div
  (mousedown)="       onStart    (    )         "
  (mouseup)="         onEnd      (    )         "
></div>

<!-- prettier-ignore-attribute (mouseup) -->
<div
  (mousedown)="onStart()"
  (mouseup)="         onEnd      (    )         "
></div>

2020年7月(旧答案)

你可以做两件事:
1.通过在'设置'中添加此命令来禁用HTML文件上的Prettier。json'文件:

"prettier.disableLanguages": ["html"]

这将确保,如果你已经启用它,VS代码的固有HTML格式。

1.你可以安装一个Django扩展,比如this one。然而,这个扩展的问题是它禁用了VS代码固有的HTML智能感知(我个人喜欢)。
希望这能帮上忙。

myzjeezk

myzjeezk2#

当使用"prettier.disableLanguages": ["django-html"]时,我在VS代码中得到以下警告:
不再支持此功能。相反,配置VS Code默认格式化程序或使用。更漂亮的忽略。
我按照说明操作,并通过向settings.json添加以下内容,在django-html文件中禁用prettier:

"[django-html]": {
    "editor.formatOnSave": false
}

这告诉VS Code在保存django-html文件时不运行自动格式化。但是,如果您在pretty旁边使用其他格式化程序,并且您只想防止pretty格式化,那么这可能不是最佳解决方案。

替代方法:

警告建议的另一种方法是使用.prettierignore文件。您只需将文件放在源根目录中,并指定您希望pretty忽略的文件、目录、模式等。语法与.gitignore文件相同。你可以阅读更多关于它here

ycl3bljg

ycl3bljg3#

就像@ahimsauzi指出的那样,解决方案是

"prettier.disableLanguages": ["django-html"]

只需禁用"django-html"

m528fe3b

m528fe3b4#

1.在项目目录中创建一个.prettierignore文件。
1.在中添加 *.html。更漂亮的忽略文件。
现在prettier会忽略当前项目中的所有html文件。

kzipqqlq

kzipqqlq5#

我不知道它是否对你有用,但我可以通过在django模板中不使用prettier来解决这个问题,在我的项目中安装djlint作为开发依赖(我使用pipenv,你可以将其安装为系统级软件包)并在vscode中安装djlint扩展
安装djlint后,我们需要配置我们的vscode

"[html]": {
  "editor.defaultFormatter": "monosans.djlint"
},
"[django-html]": {
  "editor.defaultFormatter": "monosans.djlint"
},

如果您不想在全局设置中包含该配置,则可以在工作区设置中添加它们。
我希望我的解决方案对你有用

cotxawn7

cotxawn76#

警报:向前攻击。
我在模板块后面添加了一个空的HTML注解<!>。Prettier正确地将其标识为HTML注解并添加了换行符。

相关问题