python实现sublime3的less编译插件示例


Posted in Python onApril 27, 2014

利用http://tool.oschina.net/less 提供的接口,发送请求进行远程编译.
再将编译好的less,保存为同名后缀为css的文件中.
第一次使用python,代码也是拼拼凑凑的.需要加上线程进行异步请求,但是不会...

import sublime, sublime_plugin
import urllib
import json
class exampleCommand(sublime_plugin.TextCommand):
 def run(self, edit):
  file_name=self.view.file_name();
  if file_name.find('.less') == -1:
   print('only .less file can compile to css!!');
   return;
  file_object_from = open(file_name);
  all_the_text = file_object_from.read();
  url = "http://tool.oschina.net/action/less/less_compile";
  data =  all_the_text.encode(encoding='UTF8');
  headers = {'User-Agent':'sublime_plugin'};
  req = urllib.request.Request(url,data,headers);
  response = urllib.request.urlopen(req);
  the_page = response.read();
  css=json.loads(the_page.decode("utf8"))['css'];
  file_object_to = open(self.view.file_name().replace('.less', '.css'), 'w')
  file_object_to.write(css);
  file_object_from.close();
  file_object_to.close();
  print(css);
Python 相关文章推荐
浅谈Python数据类型判断及列表脚本操作
Nov 04 Python
python测试mysql写入性能完整实例
Jan 18 Python
Numpy中转置transpose、T和swapaxes的实例讲解
Apr 17 Python
Python递归函数实例讲解
Feb 27 Python
Python JSON格式数据的提取和保存的实现
Mar 22 Python
Python字符串内置函数功能与用法总结
Apr 16 Python
Pyqt清空某一个QTreeewidgetItem下的所有分支方法
Jun 17 Python
在自动化中用python实现键盘操作的方法详解
Jul 19 Python
Python 给下载文件显示进度条和下载时间的实现
Apr 02 Python
Pycharm中安装Pygal并使用Pygal模拟掷骰子(推荐)
Apr 08 Python
使用PyCharm安装pytest及requests的问题
Jul 31 Python
使用python向MongoDB插入时间字段的操作
May 18 Python
python中的实例方法、静态方法、类方法、类变量和实例变量浅析
Apr 26 #Python
Python设计模式之单例模式实例
Apr 26 #Python
Python设计模式之观察者模式实例
Apr 26 #Python
Python设计模式之代理模式实例
Apr 26 #Python
python中的列表推导浅析
Apr 26 #Python
Python中的Numpy入门教程
Apr 26 #Python
Python中的map、reduce和filter浅析
Apr 26 #Python
You might like
php中存储用户ID和密码到mysql数据库的方法
2013/02/06 PHP
PHP中is_dir()函数使用指南
2015/05/08 PHP
win7系统配置php+Apache+mysql环境的方法
2015/08/21 PHP
Yii 2.0如何使用页面缓存方法示例
2017/05/23 PHP
微信公众平台开发教程⑤ 微信扫码支付模式介绍
2019/04/10 PHP
定位地理位置PHP判断员工打卡签到经纬度是否在打卡之内
2019/05/23 PHP
编写高性能的JavaScript 脚本的加载与执行
2010/04/19 Javascript
JavaScript中的稀疏数组与密集数组[译]
2012/09/17 Javascript
jQuery插件Tooltipster实现漂亮的工具提示
2015/04/12 Javascript
jQuery实现平滑滚动页面到指定锚点链接的方法
2015/07/15 Javascript
Vue.js常用指令汇总(v-if、v-for等)
2016/11/03 Javascript
js+canvas实现滑动拼图验证码功能
2018/03/26 Javascript
微信小程序wx.uploadfile 本地文件转base64的实现代码
2018/06/28 Javascript
微信小程序实时聊天WebSocket
2018/07/05 Javascript
Vue resource三种请求格式和万能测试地址
2018/09/26 Javascript
ios中视频的最后一桢问题解决
2019/05/14 Javascript
Postman无法正常返回结果问题解决
2020/08/28 Javascript
[01:05:07]DOTA2-DPC中国联赛 正赛 DLG vs Dragon BO3 第一场2月1日
2021/03/11 DOTA
Mac下Supervisor进程监控管理工具的安装与配置
2014/12/16 Python
python动态加载包的方法小结
2016/04/18 Python
python实时检测键盘输入函数的示例
2019/07/17 Python
Django 开发环境与生产环境的区分详解
2019/07/26 Python
Python使用Beautiful Soup爬取豆瓣音乐排行榜过程解析
2019/08/15 Python
python3使用Pillow、tesseract-ocr与pytesseract模块的图片识别的方法
2020/02/26 Python
巴西独家产品和现场演示购物网站:Shoptime
2019/07/11 全球购物
英国排名第一的餐具品牌:Denby Pottery
2019/11/01 全球购物
请介绍一下Ant
2016/07/22 面试题
远程调用的原理
2014/07/05 面试题
金额转换,阿拉伯数字的金额转换成中国传统的形式如:(¥1011)-> (一千零一拾一元整)输出
2015/05/29 面试题
搞笑获奖感言
2014/01/30 职场文书
畜牧兽医本科生的自我评价
2014/03/03 职场文书
党员自我剖析材料
2014/08/31 职场文书
离职报告范文
2014/11/04 职场文书
幼儿园大班开学寄语(2016秋季)
2015/12/03 职场文书
高并发下Redis如何保持数据一致性(避免读后写)
2022/03/18 Redis
Java存储没有重复元素的数组
2022/04/29 Java/Android