zen,coding插件的替换文件研究
文件路径:插件目录/NppScripting/include/Zen Coding.js
- 替换设置在文件头部,有这样的代码(为了简洁,便于分析,删掉了大部分替换,保留少数)
'css': {
'filters': 'html,css',
'snippets': {
"@i": "@import url(|);",
"@m": "@media print {\n\t|\n}",
"@f": "@font-face {\n\tfont-family:|;\n\tsrc:url(|);\n}",
"!": "!important",
"bg:ie": "filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src='${1:x}.png',sizingMethod='${2:crop}');",
"wid": "widows:|;"
}
},
'html': {
'filters': 'html',
'snippets': {
'cc:ie6': '<!--[if lte IE 6]>\n\t${child}|\n<![endif]-->',
'cc:ie': '<!--[if IE]>\n\t${child}|\n<![endif]-->',
'cmd': '<command>',
// expandos
'ol+': 'ol>li',
'optg+': 'optgroup>option'
},
'element_types': {
'empty': 'area,base',
'block_level': 'address,tr,h6',
'inline_level': 'att,u,var'
}
},
'xml': {
'extends': 'html',
'filters': 'html'
},
'xsl': {
'extends': 'html',
'filters': 'html, xsl',
'abbreviations': {
'tm': '<xsl:template match="" mode="">',
'tmatch': 'tm',
//expandos
'choose+': 'xsl:choose>xsl:when+xsl:otherwise'
}
},
'haml': {
'filters': 'haml',
'extends': 'html'
}
};
'snippets'的格式:
- "输入内容":"被替换内容1|被替换成内容2"
|表示鼠标停留的地方
"bg:ie": "filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src='${1:x}.png',sizingMethod='${2:crop}');",
${1:x} ${2:crop}分别表示要填的两变量(暂时不知道怎么切换)
'filters'和'extends':
应该不能随便取名,就那么几种应该不能随便取名,就那么几种(可以设多个):html,css,haml,xsl
我的notepad++暂时不支持xsl语言(未安装)
'abbreviations'是缩写
'html'下'element_types':
- 是元素类型,不同元素大概有不同的语法吧不同元素大概有不同的语法吧
- 里面的单词都是关键词效果
- 每个关键词的替换效果是不一样的
我也不会javascript,我只看得懂这些。 要修改该插件支持的文件(html,css,haml,xsl)的替换是很简单的,
我试了一下markdown,没成功,唉,先不弄了,希望你们谁弄出来了,留言一下