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字符串替换示例
Apr 24 Python
Python中的模块导入和读取键盘输入的方法
Oct 16 Python
Python新手入门最容易犯的错误总结
Apr 24 Python
python实现八大排序算法(1)
Sep 14 Python
Python实现的朴素贝叶斯分类器示例
Jan 06 Python
Python实现PS图像抽象画风效果的方法
Jan 23 Python
python中返回矩阵的行列方法
Apr 04 Python
python2.6.6如何升级到python2.7.14
Apr 08 Python
python3中利用filter函数输出小于某个数的所有回文数实例
Nov 24 Python
如何定义TensorFlow输入节点
Jan 23 Python
Python中bisect的用法及示例详解
Jul 20 Python
Python使用Turtle模块绘制国旗的方法示例
Feb 28 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基础学习之流程控制的实现分析
2013/04/28 PHP
PHP共享内存用法实例分析
2016/02/12 PHP
PHP常用操作类之通信数据封装类的实现
2017/07/16 PHP
php如何比较两个浮点数是否相等详解
2019/02/12 PHP
javascript学习笔记(八) js内置对象
2012/06/19 Javascript
简易js代码实现计算器操作
2013/04/15 Javascript
js冒泡法和数组转换成字符串示例代码
2013/08/14 Javascript
jQuery实现鼠标移到元素上动态提示消息框效果
2013/10/20 Javascript
button没写type=button会导致点击时提交
2014/03/06 Javascript
js实现回放拖拽轨迹从过程上进行分析
2014/06/26 Javascript
jQuery控制的不同方向的滑动(向左、向右滑动等)
2014/07/18 Javascript
jquery 获取 outerHtml 包含当前节点本身的代码
2014/10/30 Javascript
angularjs中的单元测试实例
2014/12/06 Javascript
javascript中的Function.prototye.bind
2015/06/25 Javascript
js实现带缓冲效果的仿QQ面板折叠菜单代码
2015/09/06 Javascript
JSON字符串和对象相互转换实例分析
2016/06/16 Javascript
第八篇Bootstrap下拉菜单实例代码
2016/06/21 Javascript
详解AngularJS通过ocLazyLoad实现动态(懒)加载模块和依赖
2017/03/01 Javascript
vue组件发布到npm简单步骤
2017/11/30 Javascript
vue 指令和过滤器的基本使用(品牌管理案例)
2019/11/04 Javascript
JS数组降维的实现Array.prototype.concat.apply([], arr)
2020/04/28 Javascript
[48:39]Ti4主赛事胜者组第一天 EG vs NEWBEE 2
2014/07/19 DOTA
[04:19]DOTA2完美大师赛第四天精彩集锦
2017/11/26 DOTA
python实现根据窗口标题调用窗口的方法
2015/03/13 Python
浅谈Python程序与C++程序的联合使用
2015/04/07 Python
python用10行代码实现对黄色图片的检测功能
2015/08/10 Python
Python使用Paramiko模块编写脚本进行远程服务器操作
2016/05/05 Python
python数据库编程 ODBC方式实现通讯录
2020/03/27 Python
Python字节单位转换(将字节转换为K M G T)
2021/03/02 Python
印度在线内衣和时尚目的地:Zivame
2017/09/28 全球购物
教师工作态度自我评价
2015/03/05 职场文书
2015大学生求职信范文
2015/03/20 职场文书
英语演讲开场白
2015/05/29 职场文书
小学运动会入场口号
2015/12/24 职场文书
你对自己的信用报告有过了解吗?
2019/07/09 职场文书
Python办公自动化解决world文件批量转换
2021/09/15 Python