#jedi syntax doc
https://github.com/hax/jedi
###basic
!html5
html
head
title 'title text
body
h1 "Hello,{user.name}
###id & classes
可混合多个class和ID,但注意顺序必须是Tag之后先class后ID。
另外也不能不写tag光写class或ID(如.naked-class),
因为这鼓励了不动脑子全退化到div的错误做法
div#content
div.block
input.foo1.foo2#bar
###Nesting
nav
ul#standard-bodies
li
a @href='http://www.w3.org/'
'W3C
子元素可写在一行内
nav > ul#standard-bodies
li > a @href='http://www.w3.org/'
'W3C
###Text
h1 '文本
p
' 普通文本,可以包含任何字符,包括 ' 和 ",
HTML特殊字符如 < > & 会被自动 escape,
也可以折行。
p "插值文本,可以插入表达式,如 1 + 1 = {1 + 1}
###Variables
title "{page.title} - Jedi
###Attributes
meta @charset='utf-8'
link @rel='stylesheet' @href={url.static 'common.css'}
p
'元素上当然可以有属性
@title='属性会自动前置'
###Comments
! 这里是HTML注释
! 注释可以有
很多
很多
行……
-- 这是代码抑制,与HTML注释不同,其内容不会被输出
--
代码抑制可以很方便的
禁用一整块的代码
###if
:if user.age < 18
p 'NO ENTER!
:else
p 'Welcome to the lost paradise.
###for in
ul
:for x in [1, 2, 3]
li "x = {x}
###inject
- echo '这里是代码注入,也就是开了个后门'
- $test = 'test'
- if ($test)
p
'测试
- echo $test
原来这样也是可以的:
我原来只知道:
对 Jedi 的缩进关系又有了进一步了解。