自由花

一张罕见的六四图片:大屠杀过后一名解放军在一片狼藉的天安门广场得意的举起机枪 #8964


曲:郑智化
词:周礼茂
忘不了的,年月也不会蚕蚀
心中深处始终也记忆那年那夕
曾经痛惜,年月里转化为力
一点真理,一个理想永远地寻觅
悠悠长长继续前航不懂去惊怕
荆荆棘棘通通斩去不必多看它
浮浮沉沉昨日人群虽不说一话
不想清楚分析太多真心抑意假
但有一个梦,不会死,记着吧
无论雨怎么打,自由仍是会开花
但有一个梦,不会死,记着吧
来自你我的心,记着吧
忘不了的,留下了不死意识
深深相信始终会变真某年某夕
如此讯息,仍赖你跟我全力
加一把劲,将这理想继续在寻觅
悠悠长长继续前航不懂去惊怕
荆荆棘棘通通斩去不必多看它
浮浮沉沉昨日人群虽不说一话
不想清楚分析太多真心抑意假
但有一个梦,不会死,记着吧
无论雨怎么打,自由仍是会开花
但有一个梦,不会死,记着吧
来自你我的心,记着吧

学习红色短信有感

薄熙来书记在短信中这样写道:

我很喜欢毛主席的几句话:‘世界是我们的,做事要大家来’,‘世界上怕就怕认真二字,共产党就最讲认真’,‘人是需要有点精神的’,这些话很精干,很实在,也很提气。”

我也很喜欢薄书记的这句话,经过认真学习,我已经参悟了其中两句话的意思:

  • 世界是我们的,(但是),做事要大家来。
  • 世界上怕就怕认真二字,共产党就最讲认真,(所以世界都怕共产党)。

至于最后一句话的意思,我正在加紧学习,努力提高自己的思想觉悟,争取彻底理解薄书记的良苦用心。

清华大学百年校庆版Android

看图不解释

将 Blogger 文章和页面 AJAX 化

带有背景音乐的博客有一个缺点,就是在切换页面的时候会导致音乐中断,造成很不好的用户体验。将博客页面的载入 AJAX 化就可以解决这个问题。

什么是 AJAX?

这里的 AJAX 并不是荷甲球队 Ajax 哦,AJAX全称为“Asynchronous JavaScript and XML”(异步 JavaScript 和 XML),使用 Ajax 的最大优点,就是能在不更新整个页面的前提下维护数据。这使得 Web 应用程序更为迅捷地回应用户动作,并避免了在网络上发送那些没有改变过的信息。

幸运的是 Blogger 可以非常方便插入 JavaScript 代码,首先进入模板编辑,备份原模板;

在 <head></head> 之间加入如下代码

<script src='http://ajax.googleapis.com/ajax/libs/jquery/1.4.1/jquery.min.js'/>

接着加入:

<script>
// AJAX link
$(".ajax-link").live("click",function(){
var url = $(this).attr('href');
var pagerUrl = url +" #blog-pager";
url += " .blog-posts";
$(".blog-posts").load(url);
$("#blog-pager").load(pagerUrl);
document.getElementById('header';).scrollIntoView(true);
return false;
});
</script>

标记代码的意思是点击链接后跳转到页面的 header div 处,可以自己按需调整。

好了,之后我们就可以在需要AJAX化的链接的 <a> tag 中加入

class="ajax-link"

就可以了。

比如说,我们在翻页处设置 AJAX 链接。在模板编辑页的“扩展窗口小部件模板”打上勾,搜索 <b:if cond=’data:newerPageUrl’>,可以看到如下代码

<div class='blog-pager' id='blog-pager'>

<b:if cond='data:newerPageUrl'>

<span id='blog-pager-newer-link'>

<a class='ajax-link' expr:href='data:newerPageUrl' expr:id='data:widget.instanceId + &quot;_blog-pager-newer-link&quot;' expr:title='data:newerPageTitle'><data:newerPageTitle/></a>

</span>

</b:if>

红色部分是后来加上的代码。同理,搜索 <b:if cond=’data:olderPageUrl’>,如法炮制即可。

同样的办法,可以给内文标签、标签云、页面列表都弄成 AJAX 。注意,不推荐将文章链接也 AJAX 化,因为评论功能会出问题。如果您有合适的解决办法,不妨告诉我。

此外,如果将页面列表加以改造,进入某篇文章后点击页面列表,会出现停留在当前文章框架内的Bug(标题栏为文章标题),我设置了一个判断:如果当前页面是文章页面,就不执行 AJAX 链接,代码如下:

<b:widget id='PageList1' locked='false' title='页面' type='PageList'>

<b:includable id='main'>

<b:if cond='data:title'><h2><data:title/></h2></b:if>

<div class='widget-content'>

<ul>

<b:loop values='data:links' var='link'>

<b:if cond='data:link.isCurrentPage'>

<li class='selected'><a class='ajax-link' expr:href='data:link.href'><data:link.title/></a></li>

<b:else/>

<b:if cond='data:blog.pageType == "item"'> //item 表示文章

<li><a expr:href='data:link.href'><data:link.title/></a></li>

<b:else/>

<li><a class='ajax-link' expr:href='data:link.href'><data:link.title/></a></li>

</b:if>

</b:if>

</b:loop>

</ul>

<b:include name='quickedit'/>

</div>

</b:includable>

</b:widget>

这样基本就实现啦,本文的大部分代码和思路来自 NightSpirit的博客,我还请教了关于载入文章后如何自动跳转的问题,在此向他表示感谢。

Nero for Linux 4 注册码

9M1K-0098-P3HL-PK6P-T6UA-1E5X-E557-8X41

呃,别问我,我什么都不知道。

生日快乐,王二

王二:

你好,又是一年了。每年到了这个时候,就会想起你已经辞世了,但是看着你的书,依然觉得仿佛你还在这个世界上。

今天我看到了你的视频,我想这个主持人就像你小说中的某些人物,可笑却一本正经,大概你也会同意吧。我又想起若干年之后,韩寒同学接受的采访(你大概不会认识他),也许思想超出时代的人只能在未来才能得到理解,只可惜你没有等到这一天。

无论怎么说,这样一个访谈,让你的声音能留下来,终归是一件很棒的事,你觉得呢?
不说别的吧,祝你生日快乐。愿你在天上自由地行走,也许不小心,还能看到长安城里仰望星空的影帝。

致礼!

LAN
五月十三日于北京

Epitaph in Westminster Abbey

When I was young and free and my imagination had no limits, I dreamed of changing the world. As i grew older and wiser, I discovered the world would not change, so I shortened my sights somewhat and decided to change only my country.

But it, too, seemed immovable.

As I grew into my twilight years, in one last desperate attempt, I settled for changing only my family, those closest to me, but alas, they would have none of it.

And now as I lie on my deathbed, I suddenly realize: If I had only changed my self first, then by example I would have changed my family.

From their inspiration and encouragement, I would then have been able to better my country and, who knows, I may have even changed the world.

十三陵行记

昨天与炘烨一起骑车去了一趟十三陵,我事先用谷歌地图的“步行路线”搜索了一下,单程大概三十多公里,还不够一次马拉松呢,成竹在胸。

出发后,根据地图的指示,我们在各种小路中穿行,只见路越来越窄,我作为一个G粉,禁不住赞叹“谷歌真牛逼啊,这么小的路都知道”,炘烨说是啊是啊。可惜没高兴多久我们就赫然发现一条铁路线横亘在面前——根据谷歌的路线建议,我们应该穿过铁路,对面就是八达岭高速。

于是我们诅咒着谷歌离开。

绕开铁路,穿过无数城乡结合部之后,终于到了八达岭高速的辅道,一路上都很顺利,除了上午满天飞扬的柳絮和铺天盖地的黄土。一直有一件事情我不明白,为什么中国道路——无论是大城市还是小城镇——路边都飞扬着各种沙土,而欧洲的道路却干干净净,甚至还飘着香味(这样说我自己都怀疑我崇洋媚外了)。不禁YY在欧洲,骑自行车是一件多么惬意的事情。

时值假期,当我们快要到达十三陵的时候,观光客的巴士将路堵得水泄不通,我和炘烨倒是很得意地一边在堵塞的车龙中随意穿梭,一边看着司机们无可奈何的表情。这是我们的土摩托面对汽车最有优越感的时候了。

我的前拨之前坏了一直没有修,一直挂着最高档倒是问题不大。骑到后期,有一个比较陡的山坡,只好硬着头皮用前面的大盘带小盘上坡,到达目的地的时候几乎虚脱。在永陵,我们吃完了随身携带的干粮,体力也恢复了不少,于是在午后一鼓作气到了定陵。

P.S. 出发时由于我的失误,耽误了炘烨一个小时的时间,十分抱歉。

Picasa 3.0 for Linux 在Arch Linux 环境下无法安装的问题

我的系统是 64-bit 的,之前使用 yaourt -S picasa 安装的时候,会出现错误提示:

Makepkg was unable to build picasa-beta package.

经过分析 PKGBUILD 发现,64-bit 的 Picasa 的依赖多了 lib32-nss,而在安装 Picasa 的时候并没有顺便装上去,因此 yaourt 由于无法满足依赖而报错。

解决办法倒是很简单,装 Picasa 之前把 lib32-nss 装上即可:

sudo pacman -S lib32-nss

要学习三个代表

最近学习Python,发现 python.org 居然被墙了。看看我们敬爱的江总书记是怎么说的:

三个代表思想要求中国共产党要:

  1. 始终代表中国先进社会生产力的发展要求;
  2. 始终代表中国先进文化的前进方向;
  3. 始终代表中国最广大人民的根本利益。

Python 作为一种能够显著提高效率的编程工具,是先进生产力的代表,居然也能被墙掉?砌墙者无视党的方针政策,蓄意破坏和谐社会的建设,真是大大的反动。建议有关部门对相关人员进行先进的性教育!