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实现读取TXT文件数据并存进内置数据库SQLite3的方法
Aug 08 Python
疯狂上涨的Python 开发者应从2.x还是3.x着手?
Nov 16 Python
python实现微信发送邮件关闭电脑功能
Feb 22 Python
Flask实现跨域请求的处理方法
Sep 27 Python
django session完成状态保持的方法
Nov 27 Python
Python 获取中文字拼音首个字母的方法
Nov 28 Python
selenium python 实现基本自动化测试的示例代码
Feb 25 Python
Python Pandas数据结构简单介绍
Jul 03 Python
python 提取文件指定列的方法示例
Aug 07 Python
解决tensorflow打印tensor有省略号的问题
Feb 04 Python
django的autoreload机制实现
Jun 03 Python
pytorch __init__、forward与__call__的用法小结
Feb 27 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
php5.5新数组函数array_column使用
2013/07/08 PHP
dedecms函数分享之获取某一栏目所有子栏目
2014/05/19 PHP
php版本的cron定时任务执行器使用实例
2014/08/19 PHP
PHP、Python和Javascript的装饰器模式对比
2015/02/03 PHP
php实现文本数据导入SQL SERVER
2015/05/17 PHP
详解php魔术方法(Magic methods)的使用方法
2016/02/14 PHP
PHP如何将图片文件上传到另外一台服务器上
2019/08/26 PHP
修改Laravel自带的认证系统的User类的命名空间的步骤
2019/10/15 PHP
Docker 安装 PHP并与Nginx的部署实例讲解
2021/02/27 PHP
js 分栏效果实现代码
2009/08/29 Javascript
MooTools 1.2介绍
2009/09/14 Javascript
IE不支持getElementsByClassName最终完美解决方案
2012/12/17 Javascript
AngularJS iframe跨域打开内容时报错误的解决办法
2015/01/26 Javascript
jQuery滚动条插件nanoscroller使用指南
2015/04/21 Javascript
初步认识JavaScript函数库jQuery
2015/06/18 Javascript
JS实现选择TextArea内文本的方法
2015/08/03 Javascript
jquery自定义插件开发之window的实现过程
2016/05/06 Javascript
Javascript 6里的4个新语法
2016/08/25 Javascript
ionic实现滑动的三种方式
2016/08/27 Javascript
详解如何在angular2中获取节点
2017/11/23 Javascript
在vue-cli3.0 中使用预处理器 (Sass/Less/Stylus) 配置全局变量操作
2020/08/10 Javascript
js+html+css实现手动轮播和自动轮播
2020/12/30 Javascript
[05:28]刀塔密之一:团结则存
2014/07/03 DOTA
在Python的Django框架中调用方法和处理无效变量
2015/07/15 Python
Python的装饰器用法学习笔记
2016/06/24 Python
numpy给array增加维度np.newaxis的实例
2018/11/01 Python
香港No.1得奖零食网:香港零食大王
2016/07/22 全球购物
意大利奢侈品零售商:ilDuomo Novara
2019/09/11 全球购物
创业资金计划书
2014/02/06 职场文书
财务管理专业自荐书
2014/09/02 职场文书
内勤岗位职责
2015/02/10 职场文书
中国现代文学之经典散文三篇
2019/09/18 职场文书
乔迁新居祝福语
2019/11/04 职场文书
docker 制作mysql镜像并自动安装
2022/05/20 Servers
聊聊CSS粘性定位sticky案例解析
2022/06/01 HTML / CSS
解决spring.thymeleaf.cache=false不起作用的问题
2022/06/10 Java/Android