通常,所有属性都按照它们在缩写中出现的顺序显示,除非为缩写指定了具有其他属性的片段。 在这里,您只需更改片段本身并在正确的位置class
添加一个空属性
@sergeche
label.clasname
→ <label for="" class="clasname"></label>
a.classname
→ <a href="" class="classname"></a>
a[class=classname href="goo"]
→ <a href="goo" class="classname"></a>
通常,所有属性都按照它们在缩写中出现的顺序显示,
不 )
但是如何创建这样的代码片段,例如: a.classname
→ <a class="classname" href=""></a>
?
因为对于a
片段: https :
解决方案:要么删除这个片段(用一个空值覆盖它: "a": null
),或者修改它: "a": "<a class=\"\" href=\"\">
,但是class
属性将始终显示. 或者在<a>
元素中创建一个不包含任何属性的新片段。
嗯...
写"a": null,
- http://take.ms/BHuO6
什么都没有改变: a.classname
→ <a href="|" class="classname"></a>
写了"a": "<a class=\"\" href=\"\">"
- http://take.ms/98CIZ
不可用: a.classname
→ <a class="" href="">|
写"a": "<a>",
不不不不,大卫布莱恩,不: a.classname
→ <a>
我是否正确理解我的问题的答案是“不可能”? 还是我做错了什么? )
做起来很方便——没办法,你需要改内核,这样你就可以设置属性的排序优先级了
在哪个文件中挖东西? :)
或者: https :
原则上,您可以编写自己的过滤器,它会生成正确的输出,并将其作为扩展连接,以免触及内核。
带有过滤器的选项要好得多(我讨厌进入应用程序的核心)。 我在哪里可以阅读有关 API 的信息? 或者一些例子,也许?
这个问题与今天有关。
@sergeche这个任务出现在 TODO 列表上的几率有多大?
您可以编写过滤器并发出拉取请求。 没有关于过滤器的文档,但这是一个常见的函数,它接受以树的形式解析的缩写作为输入并且可以改变它,例如交换属性
为a
(http://s020.radikal.ru/i717/1703/c0/8127577c2b25.png) 重新定义的代码段,没有过滤器它可以正常工作: a.xxx
-> <a class="xxx" href=""></a>
但是使用bem过滤器时,结果不正确,类名重复:
a.xxx|bem
-> <a class="xxx xxx" href=""></a>
div.yyy>a.-xxx|bem
-> <a class="yyy__xxx -xxx" href=""></a>
是否有可能以某种方式避免这种情况? @sergeche
@DDyst这个特性在新内核中,它仍然是 Atom 的 alpha 版本
如何观看/尝试? )
谢尔盖,提示至少在哪个文件中寻找这个机会 - 我在看文件结构已经改变了很多 O_o ......到目前为止,有可能直接在内核中正确定制吗?
是的,还有 | bem - 现在怎么样?
Shl .. 我认为 emmet 再好不过了,但它来了!))
{
"snippets": {
"html": {
"abbreviations": {
"a": "<a class='' href=''>"
}
}
}
}
好吧,我们总能得到所有与类的链接:)
在解析片段时以相反的顺序进行组合属性的初始实现:首先,那些写在缩写中的,然后是那些在片段中声明的(参见上面提交的链接)。 这与预期行为相似吗?
另一种选择是在代码片段中声明隐式属性(以感叹号开头): "foo": "my-tag[title !class]"
隐式属性的本质是只有当它们有值时才显示它们。 也就是说,实际上,使用隐式属性,您可以指定属性应该显示的顺序,而不管它们在缩写中声明的顺序
最有用的评论
这个问题与今天有关。
@sergeche这个任务出现在 TODO 列表上的几率有多大?