2009年6月 的存档

    在豆瓣上乱逛是一件很滋润的事,我特喜欢看那些专辑下面其他人的评论,碰上有意思的就会很自觉地重新从硬盘里翻出这些歌来听(豆瓣的试听太少了),虽然Foobar的搜索功能很好用,不过像我等懒人还是觉得不爽。所以我一直要这样的功能,那就是在豆瓣页面上嵌入一个网页播放器,不过播放的内容是本地硬盘的MP3。     很早之前我就想过用Python+GAE做个网页版的MP3管理系统,类似于这个:eBook Viewer – 用豆瓣 + Gears 管理本地电子书。不过肯定不能手动添加内容了,原先想的是先将本地的MP3编成索引库,然后利用歌曲的id3 Tag就能完成本地文件和豆瓣上专辑的对应了。     后来着手做时才发现此法不可行:        一是编索引数据库太不太现实,我硬盘中曲库有160G(硬盘没坏之前是200+),按我这三脚猫的编程水平要做个高效的索引程序出来貌似很困难。        二是这样达不到我的需求,照我这样下去就等于自己再造个轮子了,有点主次不分的感觉。我想要的只是实现豆瓣专辑和本地歌曲的关联,相当于扩展一下豆瓣的试听功能,在浏览豆瓣页面的时候能方便的播放本机的音乐,其主体还是豆瓣。    就这样,此念头就不了了之了。     前天突然想到其实我可以利用Everything来做做文章。Everything作为一个超快的硬盘搜索工具,完全可以解决我索引的问题。同时它还有强大的HTTP服务器,与everything的交互也很好解决,只要利用http://192.168.110.79:801/?s=检索内容就可以很方便的搜索出文件。     刚好最近是我折腾的高峰期,就用GreaseMonkey实现了一下。使用方法类似我刚写的MediaWiki浮动目录脚本,在豆瓣页面上按m切换MP3播放器的显示。还提供多种样式的选择:依照UserScript上的那一堆Inline Mp3 Player改的。     使用方法:下载一个Everything,装上我写的这个脚本(下载请见:userscripts地址),最后打开Everything的Http服务器就OK了。     注意:代码里用的是Everything的默认端口801,需要更改的请手动修改脚本。默认用的是Google的播放器,要想换成其他样式,也得手动修改脚本。     还有,我这个插件是根据文件夹名来搜索的。有个要求:音乐分文件夹存放,一个专辑一个文件夹,文件夹名里要包含专辑名称,反正我的是(年份)专辑名。 有图有真相,大图请去我的Picasa相册: //Google 版播放器     //WNYC 版播放器     //WordPress 版播放器       //Consilium Version 哈哈,满足鸟。 可惜还是有一大版不足:    1.现在的Flash播放器均不支持无损。唉,我硬盘里还有那么多APE、FLAC、WV。。。。    2.MP3播放器无法实现后台播放,一隐藏就停止播放了。    3.无法更新MP3的播放次数。没办法了,依我现在的水平解决不了这些问题。     扯点题外话,我管理歌曲靠的是foobar强大的tag功能,除了流派/歌手/专辑等常见tag外,我还加了PLAY_COUNTER和RATING。我自定义了几个快捷键,比如Ctrl+5便是为当前播放歌曲打五星,Ctrl+3打三星,Ctrl+1打一星(呵呵,这个就没用了,低于三星的直接我就把整张专辑删除)。再加上foobar的专辑列表又可以自定义按某一标签来排序。。。hoho,太完美了。 PS:有点标题党了,不过不暂时还找不到好名字, 标题党就标题党吧。。。

2009年6月19日22:12 | 6 条评论
分类: Computer

    继续折腾MediaWiki,写了个GreaseMonkey脚本实现了MediaWiki目录的浮动效果,基本上满意了。话说GreaseMonkey真TM的好用。。。 脚本链接:已经上传至Userscripts,地址见此。可以点击此处直接安装。 使用方法:按“m”键或者Ctrl+左键显示目录,ESC隐藏 源码见此:链接 注:借鉴了LookItUp2这个脚本的实现方法,强烈推荐此脚本。

2009年6月5日17:45 | 没有评论
分类: Computer

在伟大的中 国 局域网里呆久了难免会有这样那样的抱怨:       MD今天这代理又没用了。       带Tor真TM慢,真TM不爽。       MD Gladder真好用       MD我都堕落到用ZI YOU MENG的地步了… 但是在今天,在这伟大而庄重的日子,我还是要不由自主地,情不自禁地,深情地说一声: FUCK YOU! GFW

2009年6月2日23:00 | 没有评论
分类: 扯淡
标签: ,

  MediaWiki + VIM是我最近折腾的两大重心。当初选择wiki程序的时候也曾被dokuwiki和moinmoin勾引过好久,dokuwiki不用数据库,很轻巧,moinmoin有我喜欢的Python。不过到最后还是因为维基百科而选择了MediaWiki。永久了也就越来越放不下了,至于其他的两个,先把 MediaWiki折腾好了再说。   个人认为在MediaWiki里面写东西的时候内容隐藏的功能绝不可少。特别像我这种喜欢贴代码和流程思想的人,往往一页写下来老长老长。而且我对 MediaWiki最不满的就是目录无法自动滚动,所以再次浏览或编辑这条目的时候只能PageUp/Down的狂摁,相当难受。   于是乎我今天就在这找到了个好东西—>Toggle。他们自己是这样定义的:This feature allows for toggling the visibility of any part of the page.(能让我们切换页面上一切元素的显示/隐藏状态)哈哈,这下赚大发了。   Toggle不是基于MediaWiki的插件,而是js代码。要想在MediaWiki用它必须修改MediaWiki:Common.js页面(用MediaWiki的原话来说在此处的JavaScript将加载于所有用户每一个页面)。修改方法也很简单,用管理员登陆,在MediaWiki的搜索框中输入MediaWiki:Common.js。点击进入,不存在的话直接创建页面就行了。直接在浏览器中进入可能会出现403Forbidden的情况(亲测,估计是哪个权限没配好)。最后在这个页面增加以下代码http://www.mediawiki.org/wiki/MediaWiki:Common.js —————————以下是使用介绍————————— 我们可以给为任意元素来生成一个Toggler(就是隐藏/显示的切换器,以下统一用Toggler)。 最简单的方法是手动增加Toggler。要定义一个基本的toggler,只要增加这样的一个元素就行了。 1: <span class=”_toggler-CLASS”>toggler</span> 其中“_toggler-CLASS”的“CLASS”对应你要切换的页面元素的Class名称因此像下面的代码就能完美地完成我的目标。 1: <div style=”display: none;” class=”test”>隐藏测试</div> 2: <span class=”_toggler-test”>隐藏测试</span> 代码很好理解,首先创建了一个默认为隐藏的DIV,<div></div>填入我们想隐藏的任何东西(代码、图片…)。然后创建了对应这个DIV的切换器。事实上我更喜欢把创建切换器写到创建DIV之前,效果更好。 最方便的方法是使用MediaWiki的模板,首先创建模板Template:Hide,填入以下代码并保存。 1: <includeonly><span class=”_togglegroup _toggle_initshow _toggle _toggler toggle-visible” style=”display:none;”>[show]</span><span class=”_toggle_inithide _toggle _toggler toggle-hidden” style=”display:none;”>[hide]</span> 2: [...]

2009年6月2日22:27 | 没有评论
分类: Computer
标签: ,

又是一个轮回的开始。 昨晚真幸运,看到了马队的最后一场。 再见了我们的马队。 安胖,走好。 莱昂纳多,祝你好运。 再次BS可恶的老贝。虽然他也曾给我们带来很多惊喜。

2009年6月1日22:27 | 1 条评论
分类: Computer
标签: , ,