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

yipeiwu_com6年前Python基础

利用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 的描述符 descriptor详解

Python 在 2.2 版本中引入了descriptor(描述符)功能,也正是基于这个功能实现了新式类(new-styel class)的对象模型,同时解决了之前版本中经典类 (cla...

Python实现TCP/IP协议下的端口转发及重定向示例

Python实现TCP/IP协议下的端口转发及重定向示例

首先,我们用webpy写一个简单的网站,监听8080端口,返回“Hello, EverET.org”的页面。 然后我们使用我们的forwarding.py,在80端口和8080端口中间建...

python+matplotlib实现动态绘制图片实例代码(交互式绘图)

python+matplotlib实现动态绘制图片实例代码(交互式绘图)

本文研究的主要是python+matplotlib实现动态绘制图片(交互式绘图)的相关内容,具体介绍和实现代码如下所示。   最近在研究动态障碍物避障算法,在Python语言进行算法仿真...

python中的随机函数random的用法示例

一、random模块简介 Python标准库中的random函数,可以生成随机浮点数、整数、字符串,甚至帮助你随机选择列表序列中的一个元素,打乱一组数据等。 二、random模块重要函数...

简单了解python关系(比较)运算符

简单了解python关系(比较)运算符

a.对象的值进行比较 数字间的比较 运算符连着使用: 数字与True、False的比较 True 表示 1 , False 表示 0 数字与字符串的比较(不能比较) 字符串间的...