在Sublime Text Snippets实用技巧二则一文中提到可以通过Sublime Text的Snippets功能快速在页面中插入图片占位符标签,本来在此基础上借助Sublime Text的Plugins(插件)功能进一步完善它。
引子
我们知道placekitten为我们提供了为我们提供了生成图片占位符的方案,比如当我们在页面中插入src设为http://placekitten.com/300/240的img标签时,返回一张300 x 240的猫咪图片如下:
同样,placehold.it也提供了类似的服务,比如在页页插入src设为http://placehold.it/300x240的img标签时,返回一张标有图片尺寸的原型图,如下所示:
现在我想利用同一个tab trigger可以将placekitten和placehold.it整合到一起。也就是说当我们输入kitten时触发的第一个编辑点输入格式为{width}/{height}时,得到相应尺寸的猫咪图片,而当我们输入格式为{width}x{height}时,得到
标有图片尺寸的原型图。显然这涉及到逻辑判断,这时Snippets的正则功能已无能为力了,至少我没想到办法。
这时,Sublime Text提供给我们的插件功能就派上大用场了。
正文
我们在Sublime Text官网上可以了解到,在Sublime Text的早期版本中,作者原本打算将Scheme语言作为Sublime Text的插件开发语言,但考虑到Scheme语言方言多,使用人少且门槛高。后来调研后决定采用Python脚本语言作为插件开发语言,事后证明这一抉择是十分明智的,Python脚本语言易学易用,使用人群广泛,才有了如今Sublime Text插件开发活跃的生态圈。
有关Sublime Text的插件开发文档可参考这里、这里还有这里,官网论坛也是个很不错的学习交流的地方,在此就不多讲了。
本文要分享的是一个很简单的通过tab触发的插件,以整合placekitten和placehold.it服务,具体触发机制如下:
- 输入
pi后按tab键触发placehold.it服务,触发后可交互性指定图片占位符宽高了 - 输入
pi{numbers}后按tab键触发placehold.it服务,其中{numbers}为图片占位符的宽高(即占位符图片为正方形) - 输入
pi{width}x{height}后按tab键触发placehold.it服务,其中{width}指定图片占位符的宽度,{height}指定图片占位符的高度,注意{width}和{height}之间是小写的x - 输入
pi{width}X{height}后按tab键触发placekitten服务,其中{width}指定图片占位符的宽度,{height}指定图片占位符的高度,注意{width}和{height}之间是大写的X
具体例子如下:
在文档中输入pi后按tab键触发后返回如下标签,此时高亮显示300x240,可以交互性地指定宽高了,然后tab键跳至第2个编辑点可选择是否保留width和height属性
1
| |
在文档中输入pi100后按tab键触发后返回如下标签,同时可选择是否保留width和height属性
1
| |
在文档中输入pi150x180后按tab键触发后返回如下标签,同时可选择是否保留width和height属性
1
| |
在文档中输入pi150X180后按tab键触发后返回如下标签,同时可选择是否保留width和height属性
1
| |
废话不多说,最后附上相关代码:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 | |
将此段代码直接保存到Packages目录下即可使用啦!