ctrl+shift+p filters: :st2 :st3 :win :osx :linux
浏览

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

自述文件

源代码
raw.​githubusercontent.​com

Jinja2

LICENSE LICENSE Tag Downloads Syntax tests

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 扩展:j2jinjajinja2html.j2html.jinjahtml.jinja2htm.j2htm.jinjahtm.jinja2

由于用户可以安装多个模板语言软件包,因此此软件包不支持直接使用 .html。要为包含 Jinja 代码的 .html 文件和其他此软件包提供的所有功能提供高亮显示,您可以遵循以下两种方法中的任何一种

  1. 前往状态栏最右下角的项,该项显示当前语法的状态,并且当当前打开的文件是任何.html文件时,点击该按钮。从那里去到以当前扩展名打开所有...并滚动选中Jinja。你现在应该可以正常使用了。

  2. 当当前打开的文件有任何上述扩展名时,从主菜单,前往首选项 -> 设置 -- 语法特定。这应该会打开一个包含左右两列的新窗口,右列为默认设置,左列为用户设置。在用户设置中,添加以下设置,保存并关闭。

{
    "extensions": [
        ".html"
    ]
}

快捷键

  • 按键绑定设置如此,按shift + { 两次将在内部括号表达式中自动添加空格,并将光标放置在中间,如下所示:{{ | }}
  • {}内按下shift + %将在内部%两侧添加空格,如下所示:{% | %}
  • 您可以使用ctrl + /插入Jinja风格的行注释(例如:## 这是一个行注释
  • 类似地,使用ctrl + shift + /插入块样式注释(例如:{# 这是一个块注释 #}

自动完成

在键入时显示完整的配置不需要特殊设置。

主要语法的完成行为适用于普通内容。Sublime Text默认行为会区分sourcetext作用域。

  • 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语法高亮显示不正常且控制台显示了语法错误,

  1. 检查是否启用了所需的捆绑包。
  2. 删除任何过时的语法覆盖。

启用捆绑包

  1. 使用ctrl+shift+P或菜单项工具 → 命令面板...打开命令面板
  2. 选择Package Control: Enable Packages
  3. 找到CSS并按Enter
  4. 重复步骤,对于JavaScriptHTML

删除覆盖

  1. 调用菜单 > 首选项 > 浏览包...
  2. 寻找CSSHTML,…文件夹
  3. 删除它们或至少删除其中的任何语法定义

问题和功能请求

总有机会进行改进,所以请报告或特快请求

请遵循在报告任何bug或请求功能时已设置的issurse和特征请求模板(以便保持尽可能的有序)。

致谢

文件syntax_test.yml是提取并(经过一些修改)使用自官方库。因此,所有的荣誉归功于他们。