本人在Mac OS上使用Purcell大师的Emacs配置,编辑CSS文件时总提示”csslint command not found”,导致flymake无法使用。 到网上搜了一遍,发现是没有安装node.js,而csslint是node.js的一个扩展功能。看来还是得装个node.js才行。本来觉得这个node.js没多少虚拟空间会支持,也就没有过多的关注,只知这东西不错。javascript也能写服务器端程序,能不牛B嘛。 要装Mac OS下的node.js只要下个pkg包就行了。windows版的安装文法就不说了,网上搜出来的全是windows的安装方法。 打开 www.nodejs.org. 点击页面上的Download按钮,打开下载页面。 选择那个咬过一口的苹果 下载完成后,直接双击安装包,开始安装。 点“继续” 点“继续” 这时候会提示输入root的密码。照输就是了。不然装不上的。 最后完成。 赶紧试验证一下这些命令存不存在。 一般情况是不会出什么错误的。 下面就要安装csslint了。用npm,这是node.js的包管理器。据说类似php上的pear. 执行命令 sudo npm install -g csslint npm http GET https://registry.npmjs.org/csslint npm http 304 https://registry.npmjs.org/csslint /usr/local/bin/csslint -> /usr/local/lib/node_modules/csslint/cli.js csslint@0.9.7 /usr/local/lib/node_modules/csslint csslint安装完成 验证下是否真的安装上了。 执行csslint –version v0.9.7 csslint: No files specified. 好了。 再用打开一个css文件试试,正常了。
Category Archives: 随笔
Python之Django,数据库配置
30-三-12上回说到如何安装django,并且让它工作起来。这次来研究一下如何让django使用我们的数据库。 回到项目目录中,找到settings.py文件,打开它,我用emacs,你们随意。大概在第十二行的样子开始,就是我们配置数据库的地方了。如下所示: DATABASES = { ‘default’: { ‘ENGINE’: ‘django.db.backends.mysql’, # Add ‘postgresql_psycopg2′, ‘mysql’, ‘sqlite3′ or ‘oracle’. ‘NAME’: ‘django’, # Or path to database file if using sqlite3. ‘USER’: ‘www’, # Not used with sqlite3. ‘PASSWORD’: ‘www’, # Not used with sqlite3. ‘HOST’: ”, # Set to empty string for localhost. Not used with sqlite3. ‘PORT’: [...]
Python学习之Django
25-二-12先说下上次的Emacs配置,确实不错,大师就是大师,写代码那是相当的给力.就是有一点, c+x c+f的时候,如果新建文件,它会自动指到其它目录里的相同文件上去,我又不知道怎么忽略它的提示,只有加快打字速度,让它反应不过来才能打开新文件.哈哈~~~ 最近有空,所以学习了一下Python,这东西果然很厉害.昨天看到用Python来开发web应用需要用到一个框架Django,于是去看了一下,发现从安装到跑起一个网站是那么的容易. 因为我用的是MacBook所以Python就省了安装了,系统自己带的.版本是2.7.1.只要下一个Django就行了.地址在: https://www.djangoproject.com/download/ 我用的1.3.1.下完解压出来.打开终端,定位到Django目录,执行安装命令: sudo python setup.py install 可以看到屏幕上的输出,Django被安装到了/Library/Python/2.7/site-packages/django.如果没有错误提示那就是安装好了. 验证一下有没有安装成功,进入Python环境,执行: >>> import django >>> print django.get_version() 1.3 看到输出1.3就是正常安装好了. 下面可以新建一个站点了.跟apache不同,pyhton+django帮你完成了大部分的事情. 由于我用的Mac OS所在还要给django一个权限,它才能被执行,不然会报”permission denied”错误. 进入/Library/Python/2.7/site-packages/django目录.执行: sudo chmod +x django-admin.py 创建一个新站点的方法: 进入一个你想存放站点文件的目录,执行: django-admin.py startproject mysite 会看到目录下多了几个文件 mysite/ manage.py __init__.py settings.py urls.py 跟官网上讲的有些出入.不过不影响结果. 接着执行python manage.py runserver 8080 程序输出以下结果: Validating models… 0 errors found. Django version 1.4, [...]
配置我的Emacs
22-二-12一直以来都是Emacs的粉,试过在不同的系统下用Emacs来工作,最早是用的FreeBSD,后来在windows下也用Emacs,然后是Ubuntu下的Emacs,直到现在的Mac OS,比较习惯字符模式下工作。XEmacs虽然强大,但总也上一了手,不舒服。 前些日子看到CSDN上有一篇文章,讲如果学习使用Emacs,其中有一段讲到直接抄 Steve Purcell 的Emacs配置,说是大师级的人物,配置非常地有用。于是今天抽空研究了一下Steve Purcell的Emacs。 先说怎么安装Purcell的Emacs配置,很简单用git把配置文件下到本地的.emacs.d目录。 git clone https://github.com/purcell/emacs.d.git ~/.emacs.d 这条命令会把一些配置文件下载下来,为什么这么说,是因为在运行emacs之前还需要额外的附加软件和配置,如何获得,Purcell已经帮我们做好了。 git执行完,还需要到~/.emacs.d目录里执行一条命令: git submodule update –init 脚本会自动去下载那些额外的内容配置。 不要以为下载完成就可以使用Emacs了,在第一次启动Emacs时,脚本还会去下载一些东西,具体是什么还没来得有研究,总之,等Emacs提示完成了,那才是真的完成,可以使用了。 我的Emacs在第一次启动是提示了一个错误,需要我去site-lisp/html5-el目录执行 make relaxng 于是照做。 等一切都结束。Emacs变了一个样。
Taobao API应用开发
17-二-12首先说一句,TaoBao API的文档,真是够烂的。一个问题要翻上好几遍文档,再搜索来搜索去,才能找到稍微符合的解释内容。实在不知道这么大一公司为什么文档整这么烂,是不是成心要用户去买他们的有偿服务的。恶心。 做了一个星期的应用,除了查文档之外,都还顺利。先说说授权,根据应用的类型不同,授权方式也不同。 web类型的应用,需要有一个回调地址,怎么个意思呢。就是说web程序向taobao发起授权申请,那么taobao不是直接返回授权结果,而是访问你留给他的加调地址,并加上结果参数。你的回调地址可以通过附加的结果参数来得到session key。 这东西厉害了,所有有关隐私的API调用都得加上这个session key。 C\S类的应用,怎么办呢,没有回调址,他就直接用localhost代替了。原理都是一样的。通过附加参数来取得session key。 关于session key的有效期,也就是授权的有效期,根据应用类型来确定,基本上不需要发布的应用,也就是你不指望卖你的应用来发财的,有效期都很长,像卖家后台服务就有一年的有效期。当初建应用的时候就选错了类型,搞得有效期才一天,心想总不能让我一天授一次权吧,这不麻烦死。后来改成卖家后台服务就行了。 再说说API调用。把官方的SDK下下来一看,亲娘来,怎么还带了一个PHP框架,你让我自己的框架怎么处理。妈的。TaoBao真不是一般人能理解的。研究了一下这个SDK,也就是用到了这个附带框架的自动加载功能,其它的没什么特别。 API调用总的说来,就是向TaoBao服务器发起http请求。只要URL参数拼对了,一般是没什么问题的。API的参数有很多,大致分两类,一类是系统级的,一类是应用级的。系统级的参数是必须传的;应用级的,根据需要自己决定。 调用的时候有一个签名的过程,说明一下:把所有参数都准备好,按照文档要求拼接好字符串,记着要把sign这个参数去掉,拼接的顺序有讲究,一定要对参数进行排序,就是从a到z这种正序排好,这个在程序里用数组做就行。具体怎么做就不用多说了。PHP有现成的函数ksort(); 如果不排序,签出来的肯定是错的。然后把签名结果赋给sign。接着,再用这个完整的参数(添加了sign的)来拼装url。 http请求用curl也行。用file_get_contents也行。Taobao都会返回数据的。数据格式有XML和json之分。我选了json。 先这么多,以后再慢慢说。