Jinja2
一个为 Jinja 模板提供增强语法高亮、自动完成、代码段等功能,适用于 Sublime Text 的软件包。
详情
安装次数
- 总数 78K
- Win 21K
- Mac 33K
- Linux 24K
8月7日 | 8月6日 | 8月5日 | 8月4日 | 8月3日 | 8月2日 | 8月1日 | 7月31日 | 7月30日 | 7月29日 | 7月28日 | 7月27日 | 7月26日 | 7月25日 | 7月24日 | 7月23日 | 7月22日 | 7月21日 | 7月20日 | 7月19日 | 7月18日 | 7月17日 | 7月16日 | 7月15日 | 7月14日 | 7月13日 | 7月12日 | 7月11日 | 7月10日 | 7月9日 | 7月8日 | 7月7日 | 7月6日 | 7月5日 | 7月4日 | 7月3日 | 7月2日 | 7月1日 | 6月30日 | 6月29日 | 6月28日 | 6月27日 | 6月26日 | 6月25日 | 6月24日 | 6月23日 | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Windows | 0 | 5 | 1 | 0 | 2 | 2 | 5 | 2 | 1 | 4 | 2 | 1 | 3 | 2 | 6 | 2 | 1 | 1 | 0 | 1 | 3 | 2 | 4 | 1 | 1 | 0 | 2 | 1 | 3 | 3 | 0 | 0 | 0 | 2 | 2 | 3 | 1 | 4 | 0 | 2 | 3 | 2 | 6 | 2 | 2 | 0 |
Mac | 0 | 3 | 3 | 2 | 5 | 2 | 2 | 3 | 3 | 3 | 1 | 2 | 1 | 5 | 3 | 5 | 0 | 0 | 1 | 7 | 2 | 1 | 3 | 3 | 2 | 1 | 2 | 1 | 8 | 0 | 4 | 3 | 2 | 1 | 1 | 1 | 3 | 2 | 1 | 0 | 1 | 3 | 2 | 10 | 2 | 2 |
Linux | 0 | 1 | 2 | 1 | 2 | 3 | 4 | 4 | 2 | 1 | 1 | 3 | 3 | 1 | 1 | 1 | 0 | 1 | 3 | 2 | 1 | 3 | 7 | 2 | 0 | 1 | 4 | 3 | 1 | 4 | 3 | 0 | 1 | 3 | 2 | 3 | 2 | 0 | 0 | 3 | 3 | 2 | 4 | 1 | 3 | 1 |
自述文件
Jinja2
Jinja2 语法定义、自动完成和代码段,适用于基于其内置 C/C++、CSS、HTML、JavaScript、JSON、Markdown、XML 和 YAML 语法的 Sublime Text。
特性
- Jinja2 模板语法高亮
支持的语言:C/C++、CSS、HTML、JavaScript、JSON、Markdown、XML 和 YAML - 代码块特定缩进
- 内置标签、过滤器、函数、测试和循环变量的自动完成。
- 键绑定让您的生活更轻松
- 标签和常用代码块的代码段
安装
软件包控制
最佳安装方式是通过 软件包控制。在 Sublime Text 中设置好软件包控制后,打开命令面板并查找 Package Control: Install Package
。搜索 Jinja2
并进行安装。如果软件包有新版本发布,软件包控制会自动为您处理更新。
您还可以使用 Package Control: Add Repository
。复制 github 链接(无需结尾的 .git
),并在您选择 Package Control: Add Repository
时弹出的底部输入面板中输入。现在使用 Package Control: Install Package
并搜索 Jinja2
进行安装。
文档
如何使用此软件包?
默认情况下,此软件包支持以下 Jinja 扩展:j2
、jinja
、jinja2
、html.j2
、html.jinja
、html.jinja2
、htm.j2
、htm.jinja
、htm.jinja2
。
由于用户可以安装多个模板语言软件包,因此此软件包不支持直接使用 .html
。要为包含 Jinja 代码的 .html
文件和其他此软件包提供的所有功能提供高亮显示,您可以遵循以下两种方法中的任何一种
前往状态栏最右下角的项,该项显示当前语法的状态,并且当当前打开的文件是任何
.html
文件时,点击该按钮。从那里去到以当前扩展名打开所有...
并滚动选中Jinja
。你现在应该可以正常使用了。当当前打开的文件有任何上述扩展名时,从主菜单,前往
首选项 -> 设置 -- 语法特定
。这应该会打开一个包含左右两列的新窗口,右列为默认设置,左列为用户设置。在用户设置中,添加以下设置,保存并关闭。
{
"extensions": [
".html"
]
}
快捷键
- 按键绑定设置如此,按shift + { 两次将在内部括号表达式中自动添加空格,并将光标放置在中间,如下所示:
{{ | }}
。 - 在
{}
内按下shift + %将在内部%
两侧添加空格,如下所示:{% | %}
- 您可以使用ctrl + /插入Jinja风格的行注释(例如:
## 这是一个行注释
) - 类似地,使用ctrl + shift + /插入块样式注释(例如:
{# 这是一个块注释 #}
)
自动完成
在键入时显示完整的配置不需要特殊设置。
主要语法的完成行为适用于普通内容。Sublime Text默认行为会区分source
和text
作用域。
source
(CSS、JavaScript、JSON、YAML):在键入时显示自动完成。text
(HTML、Markdown、文本、XML):只有通过按下tab键才能展开代码段。
{% %}
和{{ }}
标记的内容作用域设置为source.jinja
,以便在键入时支持自动完成。
代码段
为每个关键字提供基本代码段以创建无需麻烦{% %}
的表达式。
Tab触发 | Jinja标签 |
---|---|
autoescape |
{% autoescape %} |
endautoescape |
{% endautoescape %} |
... | ... |
大多数常见控制结构以前缀j
提供基本代码段。
Tab触发 | Jinja代码块 |
---|---|
jautoescape |
{% autoescape %}{% endautoescape %} |
jblock |
{% block %}{% endblock %} |
jcall |
{% call %}{% endcall %} |
jextends |
{% extends %} |
jexp |
{% %} |
jfilter |
{% filter %}{% endfilter %} |
jfor |
{% for %}{% endfor %} |
jif |
{% if %}{% endif %} |
jifelse |
{% if %}{% else %}{% endif %} |
jmacro |
{% macro %}{% endmacro %} |
jraw |
{% raw %}{% endraw %} |
jwith |
{% with %}{% endwith %} |
有关更多信息,请参阅官方文档snippets以创建自己的。
可以通过在首选项.sublime-settings中添加以下内容来禁用(忽略)代码段:
{
"ignored_snippets": ["Jinja2/*"]
}
故障排除
Jinja2扩展了Sublime Text的CSS、HTML、JavaScript、JSON、Markdown、XML和YAML语法定义。
如果Jinja2语法高亮显示不正常且控制台显示了语法错误,
- 检查是否启用了所需的捆绑包。
- 删除任何过时的语法覆盖。
启用捆绑包
- 使用ctrl+shift+P或菜单项
工具 → 命令面板...
打开命令面板
。 - 选择
Package Control: Enable Packages
- 找到
CSS
并按Enter - 重复步骤,对于
JavaScript
、HTML
…
删除覆盖
- 调用菜单 > 首选项 > 浏览包...
- 寻找CSS、HTML,…文件夹
- 删除它们或至少删除其中的任何语法定义
问题和功能请求
请遵循在报告任何bug或请求功能时已设置的issurse和特征请求模板(以便保持尽可能的有序)。
致谢
文件syntax_test.yml是提取并(经过一些修改)使用自官方库。因此,所有的荣誉归功于他们。