<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Blue</title>
	<atom:link href="http://www.kdblue.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.kdblue.com</link>
	<description>Boy, you&#039;re gotta carry that weight.</description>
	<lastBuildDate>Sat, 16 Jul 2011 14:58:00 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1.4</generator>
		<item>
		<title>WordPress on dotCloud</title>
		<link>http://www.kdblue.com/2011/07/wordpress-dotcloud/</link>
		<comments>http://www.kdblue.com/2011/07/wordpress-dotcloud/#comments</comments>
		<pubDate>Fri, 01 Jul 2011 13:38:47 +0000</pubDate>
		<dc:creator>kols</dc:creator>
				<category><![CDATA[WebTech]]></category>
		<category><![CDATA[dotcloud]]></category>
		<category><![CDATA[web]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://www.kdblue.com/?p=10753</guid>
		<description><![CDATA[　　dotCloud 是一个平台，或者是一个有人代为管理的服务器。它的主要用途是让人们免费的发布自己的 Web 应用，并且在其之上省去了管理服务器的工作，也就省去了相当的繁琐，使得发布应用更快速方便，并且使得 Developer 专注于应用，而不用为发布操太多心。想想那些名字，apache、nginx、php-fpm、uwsgi、SSL 等等等等，各种各样的各不相同的设置与调试只会让人觉得麻烦、不轻松，虽然这其中也有知识。 然而 dotCloud 的应用发布则相当简单： （dotcloud 的 python 客户端安装及命令行基本使用方法请参考官方文档，很简单。） 新建 namespace。 $ dotcloud create kdblue 建立 Build File。 dotcloud.yml: www: approot: blog type: php instances: 3 db: type: mysql www 与 db 为 service 名称。 &#8230; <a href="http://www.kdblue.com/2011/07/wordpress-dotcloud/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>　　<a href="http://dotcloud.com">dotCloud</a> 是一个平台，或者是一个有人代为管理的服务器。它的主要用途是让人们免费的发布自己的 Web 应用，并且在其之上省去了管理服务器的工作，也就省去了相当的繁琐，使得发布应用更快速方便，并且使得 Developer 专注于应用，而不用为发布操太多心。想想那些名字，apache、nginx、php-fpm、uwsgi、SSL 等等等等，各种各样的各不相同的设置与调试只会让人觉得麻烦、不轻松，虽然这其中也有知识。<br />
<span id="more-10753"></span><br />
然而 dotCloud 的应用发布则相当简单：<br />
（dotcloud 的 python 客户端安装及命令行基本使用方法请参考<a href="https://docs.dotcloud.com/">官方文档</a>，很简单。）</p>
<ol>
<li>新建 namespace。
<pre>$ dotcloud create kdblue</pre>
</li>
<li>建立 Build File。
<pre>
dotcloud.yml:

www:
  approot: blog
  type: php
  instances: 3
db:
  type: mysql
    </pre>
<ul>
<li><code>www</code> 与 <code>db</code> 为 service 名称。</li>
<li><code>approot</code> 指定该 service 所在的本地根目录。</li>
<li><code>type</code> 指定应用类型（语言、服务器）。</li>
<li><code>instances</code> 设置进程数，若是 php 应用则会启动相应数量的 php-fpm 进程。</li>
</ul>
</li>
<li>将设置推送至服务器。
<pre>$ dotcloud push kdblue .</pre>
</li>
</ol>
<p>　　这样，一个名为 Build File 的 <code>dotcloud.yml</code> 文件就完成了所有服务器端的设置，简单并且轻量。</p>
<p>接下来的工作就是 WordPress 的自身设置，根据<a href="http://codex.wordpress.org/Installing_WordPress#Famous_5-Minute_Install">著名的5分钟安装</a>教程教我们的：</p>
<ol>
<li>搞到 WordPress。</li>
<pre>
$ wget http://wordpress.org/latest.zip
$ unzip latest.zip
  </pre>
<li>在服务器上搞定数据库设置。
<ol>
<li>首先获取 mysql 数据库密码及地址。
<pre>
$ dotcloud info kdblue.db
build_revision: rsync-1309344965.25
cluster: wolverine
config:
    hostname: kdblue-default-blog-db-0
    mysql_password: tpKsNbSjxXlb7I8DM3RH
created_at: 1309267100.7312429
ports:
-   name: ssh
    url: tcp://53e93k2c.dotcloud.com:9219
-   name: mysql
    url: tcp://53e93k2c.dotcloud.com:9220
state: running
type: mysql
	</pre>
</li>
<li>登录并创建 WordPress 用数据库。
<pre>
$ dotcloud run kdblue.db -- mysql -u root -ptpKsNbSjxXlb7I8DM3RH
(Below in mysql shell)
> create user 'dql' identified by 'password';
> create database wordpress;
> grant all on wordpress.* to 'dql'@'%'
  identified by 'password';
> flush privileges;
	</pre>
</li>
</ol>
</li>
<li>重命名 <code>wp-config-sample.php</code> 为 <code>wp-config.php</code>。</li>
<li>修改 <code>wp-config.php</code> 中的数据库设置。
<pre>
define('DB_NAME', 'blog');
define('DB_USER', 'dql');
define('DB_PASSWORD', 'password');
define('DB_HOST', '53e93k2c.dotcloud.com:9220');
    </pre>
</li>
<li>确认一下文件树结构。
<pre>
  myapp/
  |- dotcloud.yml
  |_ blog/
     |_ wordpress/
         |_ wp-config.php
         |_ wp-contents/
         |_ ...
    </pre>
</li>
<li>将设置完毕的 WordPress 推送至服务器并重启进程。
<pre>
$ dotcloud push kdblue .
$ dotcloud restart kdblue.www</pre>
<p>至此 WordPress 便部署成功，访问 <code>http://53e93k2c.dotcloud.com/wordpress/wp-admin/install</code> 即可完成安装。
  </li>
<li>有域名的可以设置自定义域名，并按说明更改相应 DNS 设置。
<pre>$ dotcloud alias add kdblue.www www.example.com</pre>
</li>
</li>
</ol>
<p>之后是一些有用的 Tip。</p>
<ul>
<li>因为每次 <code>push</code> 都会将服务器端的更改删除（例如安装插件），因此可以使用一个 Post-Install Hook 来避免。
<pre>
#!/bin/sh
if [ -d ~/data/wp-content ]
then
      rm -rf ~/current/wordpress/wp-content
else
      mkdir -p ~/data
      mv ~/current/wordpress/wp-content ~/data/wp-content
fi
ln -s ~/data/wp-content ~/current/wordpress/wp-content
    </pre>
<p>将此文件命名为 <code>postinstall</code> 加上执行权限后放在 <code>approot</code> 目录下，这样每次 <code>push</code> 后之前网页端所做的更改都会保留。（但升级 WordPress 本体似乎必须在本地执行后推送）
  </li>
<li>若要直接在域名处（<code>www.example.com</code>）而非子目录处（<code>www.example.com/wordpress</code>）显示 WordPress，则需要自定义一项 nginx 设置。
<pre>try_files $uri $uri/ /index.php;</pre>
<p>    保存为 <code>nginx.conf</code> 后放在 <code>approot</code> 目录中。
  </li>
<li>
    <a href="http://www.wwwizer.com/">wwwizer</a> 可以免费将 dotcloud 不支持的 naked domain 301重定向到前缀 www 的子域名，免费且不用注册，直接 A 记录指向其提供的 IP 即可。
  </li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.kdblue.com/2011/07/wordpress-dotcloud/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>用 Python 建英语单词表</title>
		<link>http://www.kdblue.com/2010/10/build-word-list-using-python/</link>
		<comments>http://www.kdblue.com/2010/10/build-word-list-using-python/#comments</comments>
		<pubDate>Sun, 31 Oct 2010 15:48:15 +0000</pubDate>
		<dc:creator>kols</dc:creator>
				<category><![CDATA[Org-Mode]]></category>
		<category><![CDATA[Python]]></category>
		<category><![CDATA[english]]></category>
		<category><![CDATA[pic]]></category>
		<category><![CDATA[学习]]></category>

		<guid isPermaLink="false">http://kdblue.com/?p=10747</guid>
		<description><![CDATA[　　今天受到 dofine 同学 这篇文章 的启发，想到也可以用相同的办法（Org-Mode 的 Checkbox）来背平时用 Stardict 记下的陌生单词，于是写了一个 Python 脚本来将单词整理起来，过程中使用了 Dict.CN 的 API接口 获取单词的音标，释义以及例句。效果看图： 　　输入源： delineate parity heterogeneous deterministic heterogeneous, Intersect impede 　　脚本文件这里找：owlb.py ，用法为输入一个纯文本单词文件（格式如上：一个单词一行），输出相应 .org 文件，具体请看 python owlb.py --help 。 　　2010/11/05 Updated：现在脚本可以在原有单词列表上附加新单词，不会重复，只要将原列表作为输出文件即可。 　　2011/03/17 Updated：重写后，现在的运行速度提高至原版的十倍。]]></description>
			<content:encoded><![CDATA[<p>　　今天受到 dofine 同学<a href="http://blog.dofine.info/2010/10/use-org-mode-to-recite-words.html"> 这篇文章</a> 的启发，想到也可以用相同的办法（Org-Mode 的 Checkbox）来背平时用 <a href="http://stardict.sourceforge.net/">Stardict</a> 记下的陌生单词，于是写了一个 <a href="http://python.org">Python</a> 脚本来将单词整理起来，过程中使用了 Dict.CN 的 <a href="http://dict.cn/ws.php?q=word">API接口</a> 获取单词的音标，释义以及例句。效果看图：<br /><span id="more-10747"></span>
    </p>
<p>
      <a rel="lightbox" title="owlb1" href="http://pic.yupoo.com/kols/AAxA5L5B/11io9J.png"><br />
        <img src="http://pic.yupoo.com/kols/AAxA5L5B/medium.jpg" class="aligncenter" align="center"/><br />
      </a>
    </p>
<p>　　输入源：</p>
<pre class="example">delineate
parity
heterogeneous
deterministic
heterogeneous,
Intersect
impede
</pre>
<p>　　脚本文件这里找：<a href="http://github.com/kols/util_scripts/blob/master/owlb.py">owlb.py</a> ，用法为输入一个纯文本单词文件（格式如上：一个单词一行），输出相应 <code>.org</code> 文件，具体请看 <code>python owlb.py --help</code> 。<br />
　　<em>2010/11/05 Updated：</em>现在脚本可以在原有单词列表上附加新单词，不会重复，只要将原列表作为输出文件即可。<br />
　　<em>2011/03/17 Updated：</em>重写后，现在的运行速度提高至原版的十倍。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.kdblue.com/2010/10/build-word-list-using-python/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>如何用 Org-Mode 做笔记</title>
		<link>http://www.kdblue.com/2010/10/note-with-orgmode/</link>
		<comments>http://www.kdblue.com/2010/10/note-with-orgmode/#comments</comments>
		<pubDate>Sun, 24 Oct 2010 07:23:20 +0000</pubDate>
		<dc:creator>kols</dc:creator>
				<category><![CDATA[Emacs]]></category>
		<category><![CDATA[emacs]]></category>
		<category><![CDATA[Org-Mode]]></category>
		<category><![CDATA[pic]]></category>

		<guid isPermaLink="false">http://kdblue.com/?p=10731</guid>
		<description><![CDATA[　　Org-Mode 是 Emacs 中的一个 Major Mode ，主要用于做笔记，管理待办事项（TODO list）以及做项目计划（摘自其《用户手册（The Org Manual）》）。当然，这是笼统的描述，就像说 Emacs 只是一个编辑器一般有种别样的幽默，但是今天我正是以其基本的笔记功能作为主题来简略地介绍一下这个有用并且好用的工具。 　　整篇文章只叙述 Org-Mode 的使用方法及最终效果，不会对各种设置做介绍也不会涉及 Emacs 的使用，因此，这是一篇给所有人看的文章。 概览 　　这张图是我最近正在学习的 Python 的笔记的截图，整个笔记结构很清晰，最上层的蓝色大字是标题，而后渐次缩小并改变颜色的以 * 为首的条目均是按层级内嵌的各种小标题，其中缩进最远的则是标题中的具体内容。可以看到，以颜色以及字体大小来凸显笔记的层级区分相当的醒目，并且每一层次的内容均可收起以节省显示空间来专注于当前需要记录或查看的条目，这样的排版使得笔记的可看性也提高许多，而条目尾部的冒号部分则是该条目的标签（Tag），在搜索笔记时这是一个重要的筛选标准，可以快速定位至相关条目。值得注意的是，那些被 = 包裹的文字在之后导出（Export）为 HTML 或 PDF 格式后会带有相应格式。另外其中 #+BEGIN_SRC python 至 #+END_SRC 之间的程序源代码在输出时亦会高亮显示语法。而最下面的 Footnotes 则是脚注，这张图片未显示其效果，具体则是与一般看书时遇到的脚注差不多。 　　这是对 Org-Mode 最初的概览，之后的部分则会从笔记的两个重要方面着手，查看其真正的实用性，并简单介绍除记录外其另一个有用的功能，最终你能看到的是一篇完全用 Org-Mode &#8230; <a href="http://www.kdblue.com/2010/10/note-with-orgmode/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>　　<a href="http://orgmode.org/"><i>Org-Mode</i></a> 是 <a href="http://www.gnu.org/software/emacs/"><i>Emacs</i></a> 中的一个 Major Mode ，主要用于做笔记，管理待办事项（TODO list）以及做项目计划（摘自其《用户手册（The Org Manual）》）。当然，这是笼统的描述，就像说 <i>Emacs</i> 只是一个编辑器一般有种别样的幽默，但是今天我正是以其基本的笔记功能作为主题来简略地介绍一下这个有用并且好用的工具。<br />
　　整篇文章只叙述 <i>Org-Mode</i> 的使用方法及最终效果，不会对各种设置做介绍也不会涉及 <i>Emacs</i> 的使用，因此，这是一篇给所有人看的文章。<br /><span id="more-10731"></span>
</p>
<div id="outline-container-1" class="outline-3">
<h3 id="sec-1">概览 </h3>
<div class="outline-text-3" id="text-1">
<p>
       <a rel="lightbox" title="orgmode1" href="http://pic.yupoo.com/kols/AzqxXL3X/IAYB1.png"><br />
         <img src="http://pic.yupoo.com/kols/AzqxXL3X/medium.jpg" class="aligncenter" align="center"/><br />
       </a>
     </p>
<p>
　　这张图是我最近正在学习的 <a href="http://www.python.org"><i>Python</i></a> 的笔记的截图，整个笔记结构很清晰，最上层的蓝色大字是标题，而后渐次缩小并改变颜色的以 <code>*</code> 为首的条目均是按层级内嵌的各种小标题，其中缩进最远的则是标题中的具体内容。可以看到，以颜色以及字体大小来凸显笔记的层级区分相当的醒目，并且每一层次的内容均可收起以节省显示空间来专注于当前需要记录或查看的条目，这样的排版使得笔记的可看性也提高许多，而条目尾部的冒号部分则是该条目的标签（Tag），在搜索笔记时这是一个重要的筛选标准，可以快速定位至相关条目。值得注意的是，那些被 <code>=</code> 包裹的文字在之后导出（Export）为 HTML 或 PDF 格式后会带有相应格式。另外其中 <code>#+BEGIN_SRC python</code> 至 <code>#+END_SRC</code> 之间的程序源代码在输出时亦会高亮显示语法。而最下面的 Footnotes 则是脚注，这张图片未显示其效果，具体则是与一般看书时遇到的脚注差不多。<br />
　　这是对 <i>Org-Mode</i> 最初的概览，之后的部分则会从笔记的两个重要方面着手，查看其真正的实用性，并简单介绍除记录外其另一个有用的功能，最终你能看到的是一篇完全用 <i>Org-Mode</i> 记录下的笔记。<br />
　　而第一步则是我们该如何以最高的效率及最小的麻烦写下一条笔记。
</p>
<p>
</p>
</div>
</div>
<div id="outline-container-2" class="outline-3">
<h3 id="sec-2">捕捉（Capture） </h3>
<div class="outline-text-3" id="text-2">
<p>　　电脑中笔记的记录，首要的便是方便、快捷，也就是在想写的时候就能马上写，并且不用担心任何例如归类，存档之类的琐碎问题。就像随身的纸笔，拿来即写，写完即成，没有多余的动作。<br />
　　这里我们要说的就是 <i>Org-Mode</i> 的 org-capture 功能，它的功能就是“捕捉”，而捕捉所需的就是快速、准确、不冗杂。 org-capture 的操作流程如下：
     </p>
<p>
       <a rel="lightbox" title="orgcap1" href="http://pic.yupoo.com/kols/AzfMqdMs/mNCTL.png"><br />
         <img src="http://pic.yupoo.com/kols/AzfMqdMs/medium.jpg" class="aligncenter"/><br />
       </a>
     </p>
<p>　　这张图是命令调出 org-capture 后的第一个介面， 我需要做的是在画面下方这些我已预设好的模板（Template）之中选择一个来进行记录。</p>
<p>
       <a rel="lightbox" title="orgcap2" href="http://pic.yupoo.com/kols/AzfKpnsr/Q062A.png"><br />
         <img src="http://pic.yupoo.com/kols/AzfKpnsr/medium.jpg" class="aligncenter" align="center"/><br />
       </a>
     </p>
<p>　　选择 pick 模板后便转入这个介面，可以看到，现在按照模板的要求我必须在窗口最底部的 Mini buffer 中输入这条笔记的主题（Subject），也就是标题，输入完标题后还会需要输入标签，之后光标则会跳至图中 <code>%?</code> 处来完成最后的笔记正文的输入。另外可以看到的是图中除了我上述所说的三个手动输入部分以外，其他内容均是模板预设的内容，例如笔记创建时间（Created），以及与笔记相关的超链接（Link）。</p>
<p>
       <a rel="lightbox" title="orgcap3" href="http://pic.yupoo.com/kols/AzfSUoJF/CRDKe.png"><br />
         <img src="http://pic.yupoo.com/kols/AzfSUoJF/medium.jpg" class="aligncenter" align="center"/><br />
       </a>
     </p>
<p>　　这就是一条输入完毕的笔记的样子，之后需要做的就是按 <code>Ctrl-c</code> 两次进行保存，当然如果写完后又觉得不需要了则可以 <code>Ctrl-c Ctrl-k</code> 进行删除，而如果需要将笔记保存至默认文件外的其他文件中，则是按 <code>Ctrl-c Ctrl-w</code> 进行 <code>refile</code> 。<br />
　　到此整个笔记记录的流程就结束了，所写下的这条笔记会按照模板的预设被保存到相应的文件中去，在这里则是进入名为 <code>pieces.org</code> 的文件中去，看下面这张图，它到了文件的最下面。</p>
<p>
       <a rel="lightbox" title="orgcap4" href="http://pic.yupoo.com/kols/Azg0yk72/dliE4.png"><br />
         <img src="http://pic.yupoo.com/kols/Azg0yk72/medium.jpg" class="aligncenter" align="center"/><br />
       </a>
     </p>
<p>　　整个过程中我始终关注要记录的是什么，而模板则解决了其他繁杂重复但仍有记录价值的部分（时间，标签，保存至相应文件等）。我只需要：</p>
<ol>
<li>
<b>快捷键呼出笔记介面</b>
</li>
<li>
<b>输入笔记</b>
</li>
<li>
<b>快捷键保存</b>
</li>
</ol>
<p>　　其中1、3步需要做的只是敲击几下键盘，第2步则只关注并输入真正重要的内容，因此，整个过程是简单有效的。
</p>
<p>
　　然而，高效的记录只是第一步。当笔记完成之后，特别是当笔记条目累积至一个较大的数目的时候，快速找到所需要的内容便成为一个亟须的功能，这也就是文章下一部分的内容——搜索。
</p>
</div>
</div>
<div id="outline-container-3" class="outline-3">
<h3 id="sec-3">搜索 </h3>
<div class="outline-text-3" id="text-3">
<p>　　搜索之所以重要是因为笔记就是用来记录那些不记下来便会忘记的内容，因此，笔记最重要的一个用处就是查阅，而在相当多的条目中光靠一般的全文搜索是比较难以快速准确地定位到某条特定内容的。 <i>Org-Mode</i> 则提供了多种搜索方式，先来看其中的几个。
     </p>
<p>
       <a rel="lightbox" title="orgsearch1" href="http://pic.yupoo.com/kols/AzirLsss/WkVtx.png"><br />
         <img src="http://pic.yupoo.com/kols/AzirLsss/medium.jpg" class="aligncenter" align="center"/><br />
       </a>
     </p>
<p>　　按下 <code>Ctrl-c a</code> 后下半窗口弹出的是 <i>Org-Mode</i> 的日程命令，多数搜索命令也在其中，包括搜索标签、属性（ <code>m</code> )，包含关键词的条目（ <code>s</code> ）以及所有关键词的位置（ <code>/</code> ），这些搜索各适合不同的情况，标签搜索自然是比较快速的定位方法，但是若关键词不在标签中或根本没有使用标签则退而求其次直接搜索关键词，这样得到的结果可能比较多但是因为它支持正则表达式，如果活用应该也能相当方便的找到所需内容。而若需要定位关键词在 org 文件中所有出现的位置，则 <code>Multi-occur</code> 是最好的方式。我常用的是前两种，它们都会定位到包含关键词的条目，这样浏览一下标题就基本能够找到需要的内容。<br />
　　下面看一下实际操作时的介面：</p>
<p>
       <a rel="lightbox" title="orgsearchmatch1" href="http://pic.yupoo.com/kols/AzirP9xU/DMGg2.png"><br />
         <img src="http://pic.yupoo.com/kols/AzirP9xU/medium.jpg" class="aligncenter" align="center"/><br />
       </a>
     </p>
<p>　　这张图片匹配了标签中含有 <code>g1</code> 的条目，通常我要备份手机里内容的时候就会查看那条 <code>g1 backup list</code> 中记下的内容。另外画面最下方的 Mini buffer 中显示出了该条笔记在哪个文件的哪个标题的哪个小标题中，按 <code>Enter</code> 或 <code>Tab</code> 都可直接跳至该文件。</p>
<p>
       <a rel="lightbox" title="orgsearchkw1" href="http://pic.yupoo.com/kols/AzirNuaY/4L0ez.png"><br />
         <img src="http://pic.yupoo.com/kols/AzirNuaY/medium.jpg" class="aligncenter" align="center"/><br />
       </a>
     </p>
<p>　　这是全文关键词搜索的结果，可以看到这里显示的条目要比标签搜索的结果多出一些，并且包含了一条明显与 <i>G1</i> 无关的 <i>Python</i> 笔记，这是因为那条笔记里也包含 <code>g1</code> 这两个字符。同样下方也指名了该笔记的详细位置。</p>
<p>
       <a rel="lightbox" title="orgsearchmo1" href="http://pic.yupoo.com/kols/AzirTyfv/FjFFR.png"><br />
         <img src="http://pic.yupoo.com/kols/AzirTyfv/medium.jpg" class="aligncenter" align="center"/><br />
       </a>
     </p>
<p>　　在这里所有 org 文件中包含 <code>g1</code> 这两个字符的所有位置都被找了出来，包括标题与正文，左侧数字指明其在该文件第几行。</p>
<p>
　　这就是 <i>Org-Mode</i> 中的几种主要搜索方式，基本上可以很方便的找到所需的内容，当然搜索的质量也是与记录的质量相挂钩的，例如如果做好了每条笔记的标签工作，则能够在同时使用多个标签作为关键词的情况下迅速匹配出所需的条目。<br />
　　然而，除了这三个方法以外， <i>Org-Mode</i> 另外还提供了一种名为 <code>Sparse tree</code> 的搜索方法。这种方法的主要应用是在某个文件中迅速定位至所需内容并且自动隐藏其他的无关内容，比如这样：
     </p>
<p>
       <a rel="lightbox" title="orgsparsetree2" href="http://pic.yupoo.com/kols/AzjvqRh7/16SBK.png"><br />
         <img src="http://pic.yupoo.com/kols/AzjvqRh7/medium.jpg" class="aligncenter" align="center"/><br />
       </a>
     </p>
<p>　　关键词为 <code>fixme</code> ，可以看到在图中被高亮了，概览中原本包含相当长的文本内容，现在全被隐藏了，只有与搜索条目相关的内容被显示了出来。从而，这个搜索方法比较适合定位至文件中某些做过标记的地方，当然，若用来搜索需要的内容也同样方便。</p>
<p>
　　这样就总结了 <i>Org-Mode</i> 中我所知道的几种搜索方式，它们各有各的适合用途，合理使用就能够快速找到所需的内容。而下面接着的话题则并非笔记中所必须的步骤，然而，它却是 一个实用的功能，也是 <i>Org-Mode</i> 强大灵活的一个体现，也就是——笔记的导出。
</p>
</div>
</div>
<div id="outline-container-4" class="outline-3">
<h3 id="sec-4">导出（Export） </h3>
<div class="outline-text-3" id="text-4">
<p>　　导出功能可以方便的将整理好的 org 文件转换成多种适合发布的文件类型，包括 HTML 、 PDF 、 DocBook 及其他多种格式，这里我只介绍自己经常用的 HTML 导出。
     </p>
<p>
       <a rel="lightbox" title="orgexport1" href="http://pic.yupoo.com/kols/AzpoHJdl/MoDF6.png"><br />
         <img src="http://pic.yupoo.com/kols/AzpoHJdl/medium.jpg" class="aligncenter" align="center"/><br />
       </a>
     </p>
<p>　　图中可看到 <i>Org-Mode</i> 的导出功能很庞大，基本涵盖了所有实用的文件格式。</p>
<p>
　　导出文件并不需要额外的操作，只需要输入导出命令（ <code>Ctrl-c Ctrl-e h</code> ）即可，文件会自动被导出为 HTML 文件，但其只有基本的 CSS 格式，当然这可以通过简单地自定义相应的 CSS 文件来解决。另外在对包含源代码的文件进行导出操作时会自动为其高亮显示语法，效果与在 <i>Emacs</i> 中的语法高亮完全一样，另外其针对源码还可先执行然后导出运行的结果，这对于诠释语法以及到达某些特殊需求有着相当大的作用。除此以外，还可以进行选择性导出，可以仅导出文件中的某些或某一部分内容，或者可以直接生成文件相应的 HTML 语法以适合在其他程序中发布（如 <i>WordPress</i> ）。<br />
　　不过导出只是整个发布环节中的第一步。在得到需要的文件后上传至相应服务器也是一件麻烦事，然而， <i>Org-Mode</i> 却想到了这一步，提供发布（Publish）的功能，这样便能够自动化地完成从转换格式到上传文件乃至整个项目文件夹的复杂工作，相当便利。细心的人可以发现在上图的最下两行即是发布命令，相应的可以发布单一文件，发布整个项目，或发布所有项目。这些都只需在配置文件中做出相应设置即可，但这里不会涉及。
</p>
<p>
　　最后，看一篇笔记输出并发布后的最终效果：<a href="http://kdblue.com/notes/pythonotes.html">Pythonotes</a>
</p>
</div>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.kdblue.com/2010/10/note-with-orgmode/feed/</wfw:commentRss>
		<slash:comments>11</slash:comments>
		</item>
		<item>
		<title>Gentoo的SSH代理启动脚本</title>
		<link>http://www.kdblue.com/2010/09/gentoo-ssh-proxy-initscript/</link>
		<comments>http://www.kdblue.com/2010/09/gentoo-ssh-proxy-initscript/#comments</comments>
		<pubDate>Thu, 30 Sep 2010 05:35:21 +0000</pubDate>
		<dc:creator>kols</dc:creator>
				<category><![CDATA[Gentoo]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[代码]]></category>

		<guid isPermaLink="false">http://kdblue.com/?p=10687</guid>
		<description><![CDATA[　　SSH代理是相当方便的翻墙工具，我因为不想用其他多余的工具来使用它，因此，出于方便，自己写了一个用于Gentoo下的Initscript，需要的同学可以把下面这个文件放到 /etc/init.d/sshtunnel 修改 username 和 remotehost 两个变量并新建一个软链 /usr/bin/sshtn 至 /usr/bin/ssh，最后使用 sudo rc-update add sshtunnel default 来启用，默认端口7070。 #!/sbin/runscript #: Author: Kane Dou &#60;douqilong@gmail.com> #: Description: Create ssh tunnel to remote server to establish a socks proxy. processname='sshtn' # Symbolic link to &#8230; <a href="http://www.kdblue.com/2010/09/gentoo-ssh-proxy-initscript/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>　　SSH代理是相当方便的翻墙工具，我因为不想用其他多余的工具来使用它，因此，出于方便，自己写了一个用于Gentoo下的Initscript，需要的同学可以把下面这个文件放到 <em>/etc/init.d/sshtunnel</em> 修改 <em>username</em> 和 <em>remotehost</em> 两个变量并新建一个软链 <em>/usr/bin/sshtn</em> 至 <em>/usr/bin/ssh</em>，最后使用 <em>sudo rc-update add sshtunnel default</em> 来启用，默认端口7070。<span id="more-10687"></span></p>
<div class="inpost">
<pre class="brush: bash">
#!/sbin/runscript
#: Author: Kane Dou &lt;douqilong@gmail.com>
#: Description: Create ssh tunnel to remote server to establish a socks proxy.

processname='sshtn' # Symbolic link to /usr/bin/ssh to prevent
		            #+start-stop-daemon from stoping other ssh connections
args='qnTfND' # q for quiet
	          #+n for output to /dev/null
 	          #+T for no tty allocation
	          #+f for fork to background
	          #+N for no command execution
	          #+D for dynamic port forwarding
username='[ChangeMe]'
remotehost='[ChangeMe]'
port=7070 # Change me maybe

depend() {
    need net
    before NetworkManager
}

start() {
    ebegin "Starting SSH Tunnel"
    start-stop-daemon --start --quiet --name "$processname"
	--exec /usr/bin/sshtn -- -"$args" "$port" "$username"@"$remotehost"
    eend $?
}

stop() {
    ebegin "Stopping SSH Tunnel"
    start-stop-daemon --stop --quiet --name "$processname"
    eend $?
}

restart() {
    ebegin "Will restart SSH Tunnel"
    svc_stop
    sleep 3
    svc_start
    eend $?
}

# vim: set ft=gentoo-init-d ts=3 sw=3 et:
</pre>
</div>
<p>注意，如果服务器会自动切断不活动的ssh连接，请在 <em>$HOME/.ssh/config</em> 中加入：</p>
<div class="inpost">
<pre class="brush: bash">
	Host [RemoteServerName]
	ServerAliveInterval 60
	</pre>
</div>
<p>2011/04/28 Update: 又写了个 Debian 版本，<a href="https://github.com/kols/util_scripts/blob/master/ssh_initscript/sshtunnel_debian">这里</a>找</p>
]]></content:encoded>
			<wfw:commentRss>http://www.kdblue.com/2010/09/gentoo-ssh-proxy-initscript/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>九月</title>
		<link>http://www.kdblue.com/2010/09/the-september/</link>
		<comments>http://www.kdblue.com/2010/09/the-september/#comments</comments>
		<pubDate>Mon, 27 Sep 2010 15:40:50 +0000</pubDate>
		<dc:creator>kols</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Living]]></category>

		<guid isPermaLink="false">http://kdblue.com/?p=10677</guid>
		<description><![CDATA[　　这个月又要过去了，我现在的作文频率已降至历史低点，正是与房价相反，跟股市接轨。 　　月初干了些什么真的倒还不太记得了，更不要说有人问我六个月前写的那些得得瑟瑟的都是什么了，我更说不上来。这样吧，咱倒着写，可能有助于恢复记忆。 　　今天除了继续研究Gentoo以外还研究了一下怎么才能让 Dead Rising 2 这个游戏能不这么卡，怎么卡？就是一会儿像幻灯片一会儿像幻灯片那么卡，但他不总是像幻灯片，所以我错以为这是像希望一样的那种东西。于是在本来可以植物大战僵尸的时候，我不得不去研究怎么让僵尸变漂亮变得不那么卡而奋斗，但结果是让人沮丧的，在我一遍遍以开场白的肢解僵尸作为卡还是不卡的测试之后，除了显卡和CPU有烧焦的倾向外一切都没有改变，不论我是超频还是装驱动，又或者寄希望于Win7的最新火星科技。既然这样我就不得不承认，很多东西我必须得对它说不…… 　　这必须是一个bug！但是，噢，说到bug，今天我也遇到了不止一个，虽然不总是跟僵尸有关，但这个bug还是有些用的，对某些人来说。 　　notify-osd是Ubuntu的一个桌面通知程序，很漂亮、很优雅，但是gentoo里没有它，于是只能自己编译一个来用，这些不是问题，问题是pidgin，它有个pidgin-libnotify的插件是可以与notify-osd打交道的，然后把聊天信息以那种很漂亮、很优雅的方式通知给我，但是从Gentoo自己的软件库里安装的这个插件是有点小问题以至于notify-osd无法跟它很好沟通，从而本来美观的通知变成了…厄…对话框……这是个大问题。 　　于是找Google帮忙，很快地在Debian的bugzilla发现了有关这个问题的补丁，打上补丁后重新编译安装pidgin-libnotify。这样一来本来的丑陋对话框就又变成了好看的通知信息。 　　既然测试成功，并且这个补丁似乎也已经被Debian接受，Gentoo用户应该也可以享受到，于是去到Gentoo的bugzilla提交了这个建议。 　　事情也就是这样。 　　前不久又去了世博会，是第二次去，依然是热辣的太阳和满头满脸的人群。但这次还算有效率，走遍了欧洲非洲，还轮渡到了浦西，各个国家大大小小的馆去了也有十几个，是和一个每次qq都会发笑脸过来却被我扔炸弹回去仍然百折不挠的家伙一起的。 　　班级聚会聚不起，寝室聚会也聚不起，每位工作了的都是麻烦一身，养家糊口就是这样忙，因此这个样子应该还算正常。 　　月中似乎是在新装Gentoo的阶段，各种编译、各种文档消耗了大量时间，但借此机会也认认真真地调整了一回Kernel，于是所谓 2.6.34-gentoo-r6-r50e-dt-bb-r1 的Kernel就以这样超长（也超囧？）的代号登场了，备份了config，也做好Todo和ChangeLog。对了，顺便一问，有人知道与Thinkpad的Trackpoint相关Kernel选项是哪一个吗？请不吝赐教。 　　月初则是在写python，主要是同步校内头像到Google Contacts的脚本，起因是看着我的G1通讯录里一个个机器人头像不太爽。基本做通了，可用，接下来就是把事情搞复杂，塞一些外星人也用不到的功能进去，加点彩蛋……过程中不满意的自然是校内那边的数据接口了，只提供Web程序的认证接口而不提供一般的Basic Auth让这个脚本的实现有些…奇怪…… 　　写到这我得说我用的这个方法真是有效，一下子帮我把很多事情都给写出来了，虽然想像中应该没做多少事，但实际则是似乎还有些成果。 　　继续吧，今天则到此为止。]]></description>
			<content:encoded><![CDATA[<p>　　这个月又要过去了，我现在的作文频率已降至历史低点，正是与房价相反，跟股市接轨。<br />
　　月初干了些什么真的倒还不太记得了，更不要说有人问我六个月前写的那些得得瑟瑟的都是什么了，我更说不上来。这样吧，咱倒着写，可能有助于恢复记忆。</p>
<div class="inpost"><span id="more-10677"></span><br />
　　今天除了继续研究Gentoo以外还研究了一下怎么才能让 <em>Dead Rising 2</em> 这个游戏能不这么卡，怎么卡？就是一会儿像幻灯片一会儿像幻灯片那么卡，但他不总是像幻灯片，所以我错以为这是像希望一样的那种东西。于是在本来可以植物大战僵尸的时候，我不得不去研究怎么让僵尸变漂亮变得不那么卡而奋斗，但结果是让人沮丧的，在我一遍遍以开场白的肢解僵尸作为卡还是不卡的测试之后，除了显卡和CPU有烧焦的倾向外一切都没有改变，不论我是超频还是装驱动，又或者寄希望于Win7的最新火星科技。既然这样我就不得不承认，很多东西我必须得对它说不……
</div>
<p></p>
<div class="inpost">
　　这必须是一个bug！但是，噢，说到bug，今天我也遇到了不止一个，虽然不总是跟僵尸有关，但这个bug还是有些用的，对某些人来说。<br />
　　<a href="https://launchpad.net/notify-osd">notify-osd</a>是Ubuntu的一个桌面通知程序，很漂亮、很优雅，但是gentoo里没有它，于是只能自己编译一个来用，这些不是问题，问题是pidgin，它有个pidgin-libnotify的插件是可以与notify-osd打交道的，然后把聊天信息以那种很漂亮、很优雅的方式通知给我，但是从Gentoo自己的软件库里安装的这个插件是有点小问题以至于notify-osd无法跟它很好沟通，从而本来美观的通知变成了…厄…对话框……这是个大问题。<br />
　　于是找Google帮忙，很快地在Debian的bugzilla发现了有关这个问题的<a href="http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=549265#40">补丁</a>，打上补丁后重新编译安装pidgin-libnotify。这样一来本来的丑陋对话框就又变成了好看的通知信息。<br />
　　既然测试成功，并且这个补丁似乎也已经被Debian接受，Gentoo用户应该也可以享受到，于是去到Gentoo的bugzilla提交了<a href="http://bugs.gentoo.org/show_bug.cgi?id=338927">这个建议</a>。<br />
　　事情也就是这样。
</div>
<p></p>
<div class="inpost">
　　前不久又去了世博会，是第二次去，依然是热辣的太阳和满头满脸的人群。但这次还算有效率，走遍了欧洲非洲，还轮渡到了浦西，各个国家大大小小的馆去了也有十几个，是和一个每次qq都会发笑脸过来却被我扔炸弹回去仍然百折不挠的家伙一起的。<br />
　　班级聚会聚不起，寝室聚会也聚不起，每位工作了的都是麻烦一身，养家糊口就是这样忙，因此这个样子应该还算正常。<br />
　　月中似乎是在新装Gentoo的阶段，各种编译、各种文档消耗了大量时间，但借此机会也认认真真地调整了一回Kernel，于是所谓 <em>2.6.34-gentoo-r6-r50e-dt-bb-r1</em> 的Kernel就以这样超长（也超囧？）的代号登场了，备份了config，也做好Todo和ChangeLog。对了，顺便一问，有人知道与Thinkpad的Trackpoint相关Kernel选项是哪一个吗？请不吝赐教。<br />
　　月初则是在写python，主要是同步校内头像到Google Contacts的脚本，起因是看着我的G1通讯录里一个个机器人头像不太爽。基本做通了，可用，接下来就是把事情搞复杂，塞一些外星人也用不到的功能进去，加点彩蛋……过程中不满意的自然是校内那边的数据接口了，只提供Web程序的认证接口而不提供一般的Basic Auth让这个脚本的实现有些…奇怪……
</div>
<p>
　　写到这我得说我用的这个方法真是有效，一下子帮我把很多事情都给写出来了，虽然想像中应该没做多少事，但实际则是似乎还有些成果。<br />
　　继续吧，今天则到此为止。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.kdblue.com/2010/09/the-september/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>全部都是</title>
		<link>http://www.kdblue.com/2010/08/all-that-is/</link>
		<comments>http://www.kdblue.com/2010/08/all-that-is/#comments</comments>
		<pubDate>Sat, 21 Aug 2010 07:18:05 +0000</pubDate>
		<dc:creator>kols</dc:creator>
				<category><![CDATA[Thought]]></category>

		<guid isPermaLink="false">http://kdblue.com/?p=10668</guid>
		<description><![CDATA[　　『他妈的都在乱搞，贪污，无能，吃喝嫖赌，不干活的拿钱最多，放空话，偷鸡摸狗，用纳税人的钱玩票，这世道！』全部都是，当转头，转身，或者走出去，与谁见面，听到的全部都是；当身边，网络上，电视中，卖场里，路过或默默在边上侧耳，听到的全部都是。不可能应该是这样的，这样是不好的，但不要扯什么好不好。它没法让你觉得更快乐了，哦！快乐只是把温暖的枪，受难才是这里的一切生物所真正需要的，不需要的都已经逃离了。 　　说了一些意思不明的话，我其实只是在用另一个消极的声音向每个人诉说身边全部都是的消极的声音。当电视机上一个个掐架节目大行其道、悲惨的犯罪受害者泣不成声、拜物主义者一遍又一遍的说着他要什么但却得不到的时候；当twitter上一个个有着莫名优越感的人莫名的诉说着这个世界的种种疾苦看似忧心忡忡、被蹂躏而感觉毫无尊严感的人暴跳如雷指控着自身经历的不公、内心忧伤无力而又茫然不知所措的人用键盘敲打再无用不过字眼的时候。每种情绪都是不同的情绪，每种情绪都是同一种情绪。他们弥漫开来，就像不久前的举国哀悼一样，不知不觉就有种身临其境的感受。 　　凡此种种的看似无法忍受却被每个人都理所当然的忍受着的事，我是说比如新闻里所有的流氓事件。好像只有有力量的人才能真正的在这个世界做一个类似于大写的人这样的笑话。谁说的，『人要活的有尊严，不但要钱，有时还需要一把枪！』非暴力被暴力终结了，我有一个梦很久也仍然更久的将只是一个梦。但这不是生活的所有面，它只是生活得一面，甚至只是很小的一面，却摧毁者许多人的价值与良心。 　　但是，我们只不过是自以为手握真理却愚笨到极点的又一群受害者罢了，优渥的人有着他们的价值及欲望以及随之而来的安之若素，卑贱的人则如我们朝着某些空洞的地方放出再无回音的响声。你丢下的每一种情绪，愤怒、失望、悲伤，乃至死亡，从来就不会也不应有人回应。所以你可以选择一而再再而三的失望，最后逃避，远远地逃开，要么消失。或者在生活中做一个苦难受尽而一再降低底线的人，体验各种各样敏感的人会为之无比痛苦和忧伤的种种，再叹一声气，希望某一天生活会露出另一丝光彩，让你摇身一变去揍人。 　　绕开很远后回来我想说，不要消极，不要说消极的话，不要被任何人用消极的东西让你觉得消极，这个世界不理想，也不是不理想，只不过如果真的想要改变，应该用与之相反的情绪去改变。否则，那样的改变只会把自己树立成矛盾体，并充斥又一次的肮脏与混乱。 　　没有人也没有一种信仰是不破的底线。于是我想起有人说过，『人们啊，我爱你们。但你们可要小心啊！』]]></description>
			<content:encoded><![CDATA[<p>　　『他妈的都在乱搞，贪污，无能，吃喝嫖赌，不干活的拿钱最多，放空话，偷鸡摸狗，用纳税人的钱玩票，这世道！』全部都是，当转头，转身，或者走出去，与谁见面，听到的全部都是；当身边，网络上，电视中，卖场里，路过或默默在边上侧耳，听到的全部都是。不可能应该是这样的，这样是不好的，但不要扯什么好不好。它没法让你觉得更快乐了，哦！快乐只是把温暖的枪，受难才是这里的一切生物所真正需要的，不需要的都已经逃离了。<br />
<span id="more-10668"></span><br />
　　说了一些意思不明的话，我其实只是在用另一个消极的声音向每个人诉说身边全部都是的消极的声音。当电视机上一个个掐架节目大行其道、悲惨的犯罪受害者泣不成声、拜物主义者一遍又一遍的说着他要什么但却得不到的时候；当twitter上一个个有着莫名优越感的人莫名的诉说着这个世界的种种疾苦看似忧心忡忡、被蹂躏而感觉毫无尊严感的人暴跳如雷指控着自身经历的不公、内心忧伤无力而又茫然不知所措的人用键盘敲打再无用不过字眼的时候。每种情绪都是不同的情绪，每种情绪都是同一种情绪。他们弥漫开来，就像不久前的举国哀悼一样，不知不觉就有种身临其境的感受。<br />
　　凡此种种的看似无法忍受却被每个人都理所当然的忍受着的事，我是说比如新闻里所有的流氓事件。好像只有有力量的人才能真正的在这个世界做一个类似于大写的人这样的笑话。谁说的，『人要活的有尊严，不但要钱，有时还需要一把枪！』非暴力被暴力终结了，我有一个梦很久也仍然更久的将只是一个梦。但这不是生活的所有面，它只是生活得一面，甚至只是很小的一面，却摧毁者许多人的价值与良心。<br />
　　但是，我们只不过是自以为手握真理却愚笨到极点的又一群受害者罢了，优渥的人有着他们的价值及欲望以及随之而来的安之若素，卑贱的人则如我们朝着某些空洞的地方放出再无回音的响声。你丢下的每一种情绪，愤怒、失望、悲伤，乃至死亡，从来就不会也不应有人回应。所以你可以选择一而再再而三的失望，最后逃避，远远地逃开，要么消失。或者在生活中做一个苦难受尽而一再降低底线的人，体验各种各样敏感的人会为之无比痛苦和忧伤的种种，再叹一声气，希望某一天生活会露出另一丝光彩，让你摇身一变去揍人。<br />
　　绕开很远后回来我想说，不要消极，不要说消极的话，不要被任何人用消极的东西让你觉得消极，这个世界不理想，也不是不理想，只不过如果真的想要改变，应该用与之相反的情绪去改变。否则，那样的改变只会把自己树立成矛盾体，并充斥又一次的肮脏与混乱。<br />
　　没有人也没有一种信仰是不破的底线。于是我想起有人说过，『人们啊，我爱你们。但你们可要小心啊！』</p>
]]></content:encoded>
			<wfw:commentRss>http://www.kdblue.com/2010/08/all-that-is/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>停</title>
		<link>http://www.kdblue.com/2010/07/ting/</link>
		<comments>http://www.kdblue.com/2010/07/ting/#comments</comments>
		<pubDate>Thu, 08 Jul 2010 16:40:33 +0000</pubDate>
		<dc:creator>kols</dc:creator>
				<category><![CDATA[Thought]]></category>
		<category><![CDATA[想法]]></category>
		<category><![CDATA[改变]]></category>
		<category><![CDATA[歌]]></category>

		<guid isPermaLink="false">http://kdblue.com/?p=10653</guid>
		<description><![CDATA[　　有人对着冰凉毫无热情的屏幕敲出一个个字眼，有人看着抬头看着天空低头望向海洋嘴中渐渐喷出许多声音，也有人触摸身边的或悲或喜无法被传递饱受伤害的人们自顾自叹气。 　　我却还没有想到接下来的沉默尴尬要持续到何时。 　　有一些人在需要不断向前走的生活道路上难免停下，磕磕绊绊，前后瞻顾，寻找一些牢靠的，值得信仰的东西，然后再前进。有些人，则永远停下了，但却没有死去，他们停下了，再不考虑今后生活的一切需要费神痛苦的事情，他们解脱了。 　　难免，有时，每个人都想做后者。即使嘴硬着不肯承认什么，但从此以后，他的一生——哈，他的一生——就像被写进书中了一样，凝固了，不再渴望、不再贪婪、不再像过去一样地每日每夜受到什么东西的折磨。悲伤停止了，快乐停止了，纵然这一切看上去依然毫无变化。 　　于是有一天，他——或者你——穿着从未穿过的衣服裤子兴奋或失望着踏进了从未踏进过的高楼小屋，在一个狭小的角落，开始生命中的又一天，又三天。日子如此积累着，直到再没有人会来打扰了，直到他明白生活如斯，知足常乐了，直到他已子孙满堂，夫复何求了。这就是一种我们所说的这就是生活，或者，C&#8217;est la vie的样子。从而，生活并不是什么在别处另有天地的颠沛流离的图画，一个人，一双脚，在某些路途上来回奔走无数次，一双眼一张口，与许多熟悉不过的脸孔相视无言，一双手，触碰过别人、不断叉起、拒绝人、握紧又打掉的手。同样的生活不会再就这么毫无怨言地继续存在了，就像，同样的人也从来不曾存在过一样，他们不是变蠢了就是变好了，或者，见不到了。 　　永恒，从不意味着改变，而改变，也永远无法直至永远。抱歉我并不是想说哲学问题，我只是坚定自己不去奢望什么永恒的改变如此不切实际的东西，即使那是优雅的，也显然那是七十年代的优雅的东西。 　　但这很难，越是希望什么，越是得不到什么，越是希望自己得不到什么，越是得不到，越是希望，没有终结。说服自己，最好的办法是不要再去希望，也就不用再去“成熟”地想得不到也无妨了。 　　然而，矛盾的人永远存在，在矛盾无法调和的状态里，一步一步从始至末，沿着一条不知从何处借来的道路往前行走，他以为自己很清醒，但其实却被一些东西弄得迷幻了起来，当然，不是积极的迷幻，而是毫无创造力的迷幻，就像一直告诫自己的清醒话语突然变得模糊而烦人，就像，一句完全正常的问候变成了最恶毒的侵扰，黑白彻底颠覆，但却没有丝毫的好处，只剩下荒芜和隔离，尚不会腐败，他停止进化，那么一段时间，之后或是蜕变或是&#8230; 　　三个和弦的力量早已超过诗歌，我不敢认同，虽然我很想，因为我最近才开始很喜欢听音乐。你懂那种感觉吗？那种非常糟糕的感觉，就是音乐带给人的感觉，糟糕的音乐霸占了我们耳朵很久很久，他们就用了三个和弦，然后重复重复，重复三次。所以，音乐才是改变的最初起点，不是文字，它们进入你的耳朵，你的大脑，每一次都不一样，即便是同一个音符，还是不一样。但却就是有人会把它们弄成一样的，不要再继续了，这就是最好的解决办法，因为好听是不够的，简洁和深刻才是被需要的。]]></description>
			<content:encoded><![CDATA[<p>　　有人对着冰凉毫无热情的屏幕敲出一个个字眼，有人看着抬头看着天空低头望向海洋嘴中渐渐喷出许多声音，也有人触摸身边的或悲或喜无法被传递饱受伤害的人们自顾自叹气。<br />
　　我却还没有想到接下来的沉默尴尬要持续到何时。<span id="more-10653"></span></p>
<p>　　有一些人在需要不断向前走的生活道路上难免停下，磕磕绊绊，前后瞻顾，寻找一些牢靠的，值得信仰的东西，然后再前进。有些人，则永远停下了，但却没有死去，他们停下了，再不考虑今后生活的一切需要费神痛苦的事情，他们解脱了。<br />
　　难免，有时，每个人都想做后者。即使嘴硬着不肯承认什么，但从此以后，他的一生——哈，他的一生——就像被写进书中了一样，凝固了，不再渴望、不再贪婪、不再像过去一样地每日每夜受到什么东西的折磨。悲伤停止了，快乐停止了，纵然这一切看上去依然毫无变化。<br />
　　于是有一天，他——或者你——穿着从未穿过的衣服裤子兴奋或失望着踏进了从未踏进过的高楼小屋，在一个狭小的角落，开始生命中的又一天，又三天。日子如此积累着，直到再没有人会来打扰了，直到他明白生活如斯，知足常乐了，直到他已子孙满堂，夫复何求了。这就是一种我们所说的这就是生活，或者，C&#8217;est la vie的样子。从而，生活并不是什么在别处另有天地的颠沛流离的图画，一个人，一双脚，在某些路途上来回奔走无数次，一双眼一张口，与许多熟悉不过的脸孔相视无言，一双手，触碰过别人、不断叉起、拒绝人、握紧又打掉的手。同样的生活不会再就这么毫无怨言地继续存在了，就像，同样的人也从来不曾存在过一样，他们不是变蠢了就是变好了，或者，见不到了。</p>
<p>　　永恒，从不意味着改变，而改变，也永远无法直至永远。抱歉我并不是想说哲学问题，我只是坚定自己不去奢望什么永恒的改变如此不切实际的东西，即使那是优雅的，也显然那是七十年代的优雅的东西。</p>
<p>　　但这很难，越是希望什么，越是得不到什么，越是希望自己得不到什么，越是得不到，越是希望，没有终结。说服自己，最好的办法是不要再去希望，也就不用再去“成熟”地想得不到也无妨了。<br />
　　然而，矛盾的人永远存在，在矛盾无法调和的状态里，一步一步从始至末，沿着一条不知从何处借来的道路往前行走，他以为自己很清醒，但其实却被一些东西弄得迷幻了起来，当然，不是积极的迷幻，而是毫无创造力的迷幻，就像一直告诫自己的清醒话语突然变得模糊而烦人，就像，一句完全正常的问候变成了最恶毒的侵扰，黑白彻底颠覆，但却没有丝毫的好处，只剩下荒芜和隔离，尚不会腐败，他停止进化，那么一段时间，之后或是蜕变或是&#8230;</p>
<p>　　三个和弦的力量早已超过诗歌，我不敢认同，虽然我很想，因为我最近才开始很喜欢听音乐。你懂那种感觉吗？那种非常糟糕的感觉，就是音乐带给人的感觉，糟糕的音乐霸占了我们耳朵很久很久，他们就用了三个和弦，然后重复重复，重复三次。所以，音乐才是改变的最初起点，不是文字，它们进入你的耳朵，你的大脑，每一次都不一样，即便是同一个音符，还是不一样。但却就是有人会把它们弄成一样的，不要再继续了，这就是最好的解决办法，因为好听是不够的，简洁和深刻才是被需要的。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.kdblue.com/2010/07/ting/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>使用patch/diff</title>
		<link>http://www.kdblue.com/2010/06/use-patch-diff/</link>
		<comments>http://www.kdblue.com/2010/06/use-patch-diff/#comments</comments>
		<pubDate>Fri, 25 Jun 2010 08:52:33 +0000</pubDate>
		<dc:creator>kols</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[diff]]></category>
		<category><![CDATA[patch]]></category>
		<category><![CDATA[代码]]></category>

		<guid isPermaLink="false">http://kdblue.com/?p=10646</guid>
		<description><![CDATA[　　patch/diff 是一组用来创建补丁与打补丁的程序，它们都是针对plain text而言的，所谓补丁即是对一个文件的补充。因此，这两个软件的用处基本在于对程序及配置文件加入一些需要的改动而又不用去直接改动文件本身。这样做的好处在于程序和配置文件的维护者只需要发布补丁即可对相应文件做出恰当的改动而不需要再发布整个程序，对于*nix下的纯文本配置文件而言，创建补丁也可以让人明白自己对于一些软件的默认配置做出过哪些改动。由于WordPress主题的修改是很琐碎的，并且主题的每次升级都会将原来配置好的css文件等覆盖，因此我也用patch/diff两程序对所做的修改作记录，以便在出问题或升级后快速地恢复原样。 diff 用法 # 基本用法 $ diff originalfile updatedfile > some.patch # 多个文件用法 $ diff -ruN original/ updated/ > some.patch # -r 递归对比文件夹内每一个文件。 #+ -u 使用unified格式输出结果，依据网络上的资料来看使用此格式需要GNU patch， #+ 与其他patch软件不兼容，但其可生成最小且包含上下文的patch文件。 #+ -N 将源文件夹内不存在的文件当作空文件处理，patch便会时自动生成此文件。 #+ 注意源文件与更改过的文件位置不能颠倒 patch 用法 # 基本用法 &#8230; <a href="http://www.kdblue.com/2010/06/use-patch-diff/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>　　patch/diff 是一组用来创建补丁与打补丁的程序，它们都是针对plain text而言的，所谓补丁即是对一个文件的补充。因此，这两个软件的用处基本在于对程序及配置文件加入一些需要的改动而又不用去直接改动文件本身。这样做的好处在于程序和配置文件的维护者只需要发布补丁即可对相应文件做出恰当的改动而不需要再发布整个程序，对于*nix下的纯文本配置文件而言，创建补丁也可以让人明白自己对于一些软件的默认配置做出过哪些改动。由于WordPress主题的修改是很琐碎的，并且主题的每次升级都会将原来配置好的css文件等覆盖，因此我也用patch/diff两程序对所做的修改作记录，以便在出问题或升级后快速地恢复原样。 </p>
<h2 class="inpost">diff 用法</h2>
<div class="inpost">
<pre class="brush: bash">
          # 基本用法
          $ diff originalfile updatedfile > some.patch

          # 多个文件用法
          $ diff -ruN original/ updated/ > some.patch
          #  -r 递归对比文件夹内每一个文件。
          #+ -u 使用unified格式输出结果，依据网络上的资料来看使用此格式需要GNU patch，
          #+   与其他patch软件不兼容，但其可生成最小且包含上下文的patch文件。
          #+ -N 将源文件夹内不存在的文件当作空文件处理，patch便会时自动生成此文件。
          #+ 注意源文件与更改过的文件位置不能颠倒
          </pre>
</p></div>
<h2 class="inpost">patch 用法</h2>
<div class="inpost">
<pre class="brush: bash">
          # 基本用法
          $ cd /path/to/file/to/be/patched
          $ patch [filetobepatched] < some.patch
          # unified格式可省略文件名

          # 一些参数
          $ patch [-pNum] [--dry-run] [-b] < some.patch
          #  -pNum 去掉patch文件中对应文件路径之前的Num个/，例如：
          #+ 原路径为/usr/src/a/b.c，设置-p1后变为usr/src/a/b.c，
          #+ 设置-p3后变为a/b.c，这在为与patch文件中路径不同的文件打补丁时用到。
          #+ --dry-run 模拟运行只输出运行结果但不实际运行，在打补丁前可用此参数测试一下。
          #+ -b[ackup] 备份被patch的文件。
          #+ 另外可以试试--verbose，输出的信息很囧。
          </pre>
</pre>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.kdblue.com/2010/06/use-patch-diff/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>绍兴毕业旅行</title>
		<link>http://www.kdblue.com/2010/06/shaoxing-graduate-trip/</link>
		<comments>http://www.kdblue.com/2010/06/shaoxing-graduate-trip/#comments</comments>
		<pubDate>Sat, 19 Jun 2010 10:19:25 +0000</pubDate>
		<dc:creator>kols</dc:creator>
				<category><![CDATA[Travel]]></category>
		<category><![CDATA[旅行]]></category>
		<category><![CDATA[毕业]]></category>
		<category><![CDATA[照片]]></category>
		<category><![CDATA[绍兴]]></category>

		<guid isPermaLink="false">http://kdblue.com/?p=10620</guid>
		<description><![CDATA[　　那天一开始便交了噩运，地铁故障，没有任何通知，之后情况似乎好转，并开来了一辆列车，却无缘无故地开到了对面站台。僵持一会儿后，我就急忙改坐出租车去了南站。路上争分夺秒可总算赶到了，但之后更可惜的则是，我们并非是在这里上车，而是北站。匆忙改签后我们得到了晚上六点十八分去往绍兴的车票，总算安下心来不用担心会无法成行了。但之前的所有这些，都是出乎意料之外的，即便不是，我也未能阻止它的发生。 　　九个人在肯德基打发了之后的时间，同时吃了点东西作为晚饭。 　　车厢里照例一股气味，就是那种在登上这种东西后会很期待又很厌恶的气味，因为熟悉所以感到放心，但却仍旧讨厌。火车很慢，或者应该说它不慢，却常常在一些地点停上很久一段时间，这样的状况在驶过杭州后便好转以使我们能够不用比预定时间晚太多到达目的地。在车上，时间是过得有些慢的。 　　到达绍兴车站已经是夜里十点半，在商量后决定做出租车去预定的旅馆，但来车却只有两辆，剩下连我在内的三人决定走去旅馆，不过在看到一辆三轮车后还是认为坐车过去比较方便，路途不远，时间也不长，自然价格也便宜，在这样的不大的一座城市，很多东西都有一种不一样的面貌，而奇怪的是这样的三轮车在之后的几天里我却一次也没有再见到过。 　　入住后整理了一下，房间不大但窗户很多，又因为楼层高（九楼），因此视野很好，此时我们正位于绍兴的市中心地区，但当时还不知道，从窗外看去虽不繁华却也有足够的灯光了。洗漱后已经很晚了，而我也已记不太清当时发生的事，只是看着电视，然后和被睡去，糟心的是那天睡觉没有开空调，因此很热，这点确实记得很清楚，也因此这一晚并未睡的很好。 一天 　　早晨意外的有人提供点餐服务——豆腐花和油条、茶叶蛋——其实是女生她们早早的起来出门买早饭了。意外的好吃，其实是在家里粽子吃腻了的缘故。之后商量行程决定第一站去鲁迅故居和沈园。 　　穿上“团服”后齐刷刷地出发了，我认为不远就建议走过去，但这是一个糟糕的决定，因为路上有人因为天气热而感到不舒服，也花去了过长的时间在这段路上，同时浪费了精力。鲁迅故居由许多小景点组成，百草园、三味书屋、咸亨酒店等，在那边买了票后第一个到了鲁迅纪念馆，从名字可以想象里面的样子，一些资料，一些手稿和几座蜡像，我不愿说这里是无聊的，但也没有吸引人的东西。出门后买了臭豆腐吃，味道只是过得去。看了一个卖黄酒的大宅后，一行人决定去咸亨酒店吃午饭。我不知道这里是不是鲁迅笔下那个咸亨酒店，不过至少这里的食物还行，另外，我们还买了一碗黄酒九个人轮着喝，好几个都说味道很好，的确如此。人多的时候有时吃饭比在外面兜逛要有些意思，人多口杂，唧唧喳喳一会儿气氛也就起来了。 　　下午则仍先穿过鲁迅故居的这条街向回去，走了风情园和三味书屋，大同小异，只是看看那些名人笔墨之下的死物与活物，然而，这里的熙熙攘攘早就让这一切失去了本来面貌，一间不能供人坐下看书的书屋无论如何都只像一间破败又光鲜的大屋。倒是这屋外这人群吵闹的样子让这条城市之中的古街有了些恰到好处的东西，同样的，绍兴这座千年古城也有着不同于上海的气质。 　　天将将开始下雨，我们就从鲁迅故里出发去沈园，相隔不远，只是几分钟脚程。进门后看到许多的挂牌，上面写着一些人的心愿，虽然说出来就不灵了，我还是希望那些写字的人们不会太失望。沈园不大，其中一个池塘开着大片的荷花，但却还未开花，但以那样的温度，开花也只是几天的事情了吧。在一个有个古怪开口的水井的亭子中逗留的时候，雨下大了。等天转好之后我们转进了一个戏园，正好有人在唱戏，她用电子乐来配中式的戏曲唱腔，相当奇怪，我也听不懂她在唱什么，只想瞌睡。一曲唱罢我们也离开了，出园的途中遇到几只鸭子，我们就去惹它们，可它们却逃了，可惜。这样第一天的外出活动就结束了，我们走了鲁迅故里和沈园，虽然效率不高，但其实也挺高兴的。 　　回旅馆我们做什么？当然是，睡觉！大半天步行体力有些透支，梅雨季节的闷热也不好受。休息完毕后，晚上则是准备准备啤酒和茴香豆看球赛，但还是得先吃饭。在大雨中走了大约20分钟后来到一家港式餐厅，但这只是一个不得已的选择——都走烦了——却显得挺正确，到绍兴后所吃到的东西基本都算好吃，这次也是。花费与中午大致差不多，所有东西也被一扫而光，甚至有些不够。饭后雨已经小了许多，在旅馆对面的超市买了啤酒和吃的以后便回去了，此时球赛已经开始，赶忙洗完澡后开始看球，边看球边玩三国杀，直至深夜后结束。 二天 　　第二天醒来后决定由我们男生去买早饭，因为那边房里的都没起床，可惜出门晚了所以豆腐花都卖完了，只有甜豆浆代替。洗完吃完整理完后今天的行程是东湖及大禹陵，这两个地方都在昨天买的套票之内。不过在此之前需要买好第二天回家的车票，在旅行中一提回家二字便会让之后的时间有点像是在做一种无谓的挣扎般让人有些失望，就像无论怎样，一个闹钟已经设好，第二天一定会叮当响起告诉你这些都结束了，总之，买回程车票让人沮丧。四个人在火车站讨论许久后决定买第二天下午的长途汽车票，在客运中心上车。 　　此时回到旅馆时间已将近中午，我们仍然决定出发。在对面马路向南不远处乘上公交车后大约20分钟便来到东湖，这是个人工湖，景色一般，但之后的山路爬得挺畅快，虽然我没记得山名。山上有一大片茶树园，茶树上结着一个个蜘蛛网，上面因之前下雨而洒满水花，显得有些特别。从另一侧下山时路途有些陡峭，山脚下则是一个孤岛，我们坐船摆渡过岸之后决定坐一坐乌篷船。三人一船出发后，沿路都是一些陡峭山壁之类的景色，水很清，但不知为何划船师傅总提醒我不能把手伸下去。一路山水过后，师傅问我们索要小费，我们给了他五元。于是东湖基本上算结束了。 　　从东湖到大禹陵我们绕了个大远路，从东湖坐车回到我们的旅馆后再从那里出发去大禹陵，多走了一次回头路。大禹陵的景色相当不错，满目绿色，但却时时有一种奇怪的气氛，我想陵墓也许就应该是会有这种不同一般的压抑感。因为一些原因没法进到大禹陵里面，我们在外面闲逛了大约半小时后便回去了，在里面还撞响了一座大钟两次，然后一个老伯从不知哪里冲出来问我们收费，我们付了。 　　回到市区后就马上找地方吃饭，因为实在很饿，结果最后找了一家快餐店匆匆解决。回到旅馆，之后的状况就与前一天差不多，也就不再重复了。 三天 　　回家那天先再次在咸亨酒店吃完午饭后坐一辆双层公交车来到客运中心，上车后一路开回上海，之后各自回家。而这次的旅行也就如此结束了。 后记 　　从不曾想过毕业旅行会在这样一种有些悲伤（而不是该死的伤感）的气氛中结束，当然，也许只是我一个人这么觉得。也没想到它会让我之后的几天有些消沉。就像，那个城市一开始让我感到的无比兴奋，在一天一天一刻一刻的不安、失望以及某些无法诉说的点滴情绪中不断的开始逐渐分崩离析，最后，回到上海的我就像被掏空，再没有一丝快乐的感觉。我也知道，这样说对一些人是一种伤害，但就是这样，就像之前所说的那样，从买返程票的那个时刻开始，很多东西就注定要消失，不论它是什么。 　　而这确实又很像毕业，从不久之后开始，我们曾经拥有的就会变成一无所有，生活、情感、言语，所有能想象得到的东西，都留不住。所以这就是一种结束，是一个阶段的彻底结束。不用去问去想是这样对还是那样对，如果不确定不清楚，那即是没有答案，在很多的悬而未决面前，特别是在这样的时刻，能做的就只是继续寻找而非盲目地去拥抱什么。 　　不要给自己时间去胡乱思考，保持自己忙碌着，如果真的难以自已，就像我这样书写。因为如果这样做能让内心得到些许的放松与安慰，那就说明我们真的在逐渐变得坚强。时间很快，我想可能，再不久，也许只消几天或几周，这样的情绪都会变成一种新的东西，或被遗忘。只要我们还存在，并且有些东西将我们维系，现在的这些都并不是真正难以释怀的。]]></description>
			<content:encoded><![CDATA[<p>　　那天一开始便交了噩运，地铁故障，没有任何通知，之后情况似乎好转，并开来了一辆列车，却无缘无故地开到了对面站台。僵持一会儿后，我就急忙改坐出租车去了南站。路上争分夺秒可总算赶到了，但之后更可惜的则是，我们并非是在这里上车，而是北站。匆忙改签后我们得到了晚上六点十八分去往绍兴的车票，总算安下心来不用担心会无法成行了。但之前的所有这些，都是出乎意料之外的，即便不是，我也未能阻止它的发生。<br />
　　九个人在肯德基打发了之后的时间，同时吃了点东西作为晚饭。<br />
　　车厢里照例一股气味，就是那种在登上这种东西后会很期待又很厌恶的气味，因为熟悉所以感到放心，但却仍旧讨厌。火车很慢，或者应该说它不慢，却常常在一些地点停上很久一段时间，这样的状况在驶过杭州后便好转以使我们能够不用比预定时间晚太多到达目的地。在车上，时间是过得有些慢的。<br />
　　到达绍兴车站已经是夜里十点半，在商量后决定做出租车去预定的旅馆，但来车却只有两辆，剩下连我在内的三人决定走去旅馆，不过在看到一辆三轮车后还是认为坐车过去比较方便，路途不远，时间也不长，自然价格也便宜，在这样的不大的一座城市，很多东西都有一种不一样的面貌，而奇怪的是这样的三轮车在之后的几天里我却一次也没有再见到过。<br />
　　入住后整理了一下，房间不大但窗户很多，又因为楼层高（九楼），因此视野很好，此时我们正位于绍兴的市中心地区，但当时还不知道，从窗外看去虽不繁华却也有足够的灯光了。洗漱后已经很晚了，而我也已记不太清当时发生的事，只是看着电视，然后和被睡去，糟心的是那天睡觉没有开空调，因此很热，这点确实记得很清楚，也因此这一晚并未睡的很好。</p>
<h2 class="inpost">一天</h2>
<div class="inpost">
<a href="http://farm5.static.flickr.com/4018/4713441895_dbcb4a38ab_d.jpg" class="tt-flickr tt-flickr-Small" title="鲁迅故里" target="_blank" rel="lightbox"><img class="alignright" src="http://farm5.static.flickr.com/4018/4713441895_dbcb4a38ab_m.jpg" alt="鲁迅故里" width="240" height="180" /></a> 　　早晨意外的有人提供点餐服务——豆腐花和油条、茶叶蛋——其实是女生她们早早的起来出门买早饭了。意外的好吃，其实是在家里粽子吃腻了的缘故。之后商量行程决定第一站去鲁迅故居和沈园。<br />
　　穿上“团服”后齐刷刷地出发了，我认为不远就建议走过去，但这是一个糟糕的决定，因为路上有人因为天气热而感到不舒服，也花去了过长的时间在这段路上，同时浪费了精力。鲁迅故居由许多小景点组成，百草园、三味书屋、咸亨酒店等，在那边买了票后第一个到了鲁迅纪念馆，从名字可以想象里面的样子，一些资料，一些手稿和几座蜡像，我不愿说这里是无聊的，但也没有吸引人的东西。出门后买了臭豆腐吃，味道只是过得去。看了一个卖黄酒的大宅后，一行人决定去咸亨酒店吃午饭。我不知道这里是不是鲁迅笔下那个咸亨酒店，不过至少这里的食物还行，另外，我们还买了一碗黄酒九个人轮着喝，好几个都说味道很好，的确如此。人多的时候有时吃饭比在外面兜逛要有些意思，人多口杂，唧唧喳喳一会儿气氛也就起来了。<br />
　　下午则仍先穿过鲁迅故居的这条街向回去，走了风情园和三味书屋，大同小异，只是看看那些名人笔墨之下的死物与活物，然而，这里的熙熙攘攘早就让这一切失去了本来面貌，一间不能供人坐下看书的书屋无论如何都只像一间破败又光鲜的大屋。倒是这屋外这人群吵闹的样子让这条城市之中的古街有了些恰到好处的东西，同样的，绍兴这座千年古城也有着不同于上海的气质。<br />
<a href="http://www.flickr.com/photos/kols/4714082502/" class="tt-flickr tt-flickr-Small" title="沈园" target="_blank"><img class="alignleft" src="http://farm5.static.flickr.com/4072/4714082502_d34e45e744_m.jpg" alt="沈园" width="240" height="180" /></a> 　　天将将开始下雨，我们就从鲁迅故里出发去沈园，相隔不远，只是几分钟脚程。进门后看到许多的挂牌，上面写着一些人的心愿，虽然说出来就不灵了，我还是希望那些写字的人们不会太失望。沈园不大，其中一个池塘开着大片的荷花，但却还未开花，但以那样的温度，开花也只是几天的事情了吧。在一个有个古怪开口的水井的亭子中逗留的时候，雨下大了。等天转好之后我们转进了一个戏园，正好有人在唱戏，她用电子乐来配中式的戏曲唱腔，相当奇怪，我也听不懂她在唱什么，只想瞌睡。一曲唱罢我们也离开了，出园的途中遇到几只鸭子，我们就去惹它们，可它们却逃了，可惜。这样第一天的外出活动就结束了，我们走了鲁迅故里和沈园，虽然效率不高，但其实也挺高兴的。<br />
　　回旅馆我们做什么？当然是，睡觉！大半天步行体力有些透支，梅雨季节的闷热也不好受。休息完毕后，晚上则是准备准备啤酒和茴香豆看球赛，但还是得先吃饭。在大雨中走了大约20分钟后来到一家港式餐厅，但这只是一个不得已的选择——都走烦了——却显得挺正确，到绍兴后所吃到的东西基本都算好吃，这次也是。花费与中午大致差不多，所有东西也被一扫而光，甚至有些不够。饭后雨已经小了许多，在旅馆对面的超市买了啤酒和吃的以后便回去了，此时球赛已经开始，赶忙洗完澡后开始看球，边看球边玩三国杀，直至深夜后结束。
</div>
<h2 class="inpost">二天</h2>
<div class="inpost">
<a href="http://www.flickr.com/photos/kols/4713442443/" class="tt-flickr tt-flickr-Small" title="东湖" target="_blank"><img class="alignright" src="http://farm5.static.flickr.com/4030/4713442443_554c35f74a_m.jpg" alt="东湖" width="180" height="240" /></a> 　　第二天醒来后决定由我们男生去买早饭，因为那边房里的都没起床，可惜出门晚了所以豆腐花都卖完了，只有甜豆浆代替。洗完吃完整理完后今天的行程是东湖及大禹陵，这两个地方都在昨天买的套票之内。不过在此之前需要买好第二天回家的车票，在旅行中一提回家二字便会让之后的时间有点像是在做一种无谓的挣扎般让人有些失望，就像无论怎样，一个闹钟已经设好，第二天一定会叮当响起告诉你这些都结束了，总之，买回程车票让人沮丧。四个人在火车站讨论许久后决定买第二天下午的长途汽车票，在客运中心上车。<br />
　　此时回到旅馆时间已将近中午，我们仍然决定出发。在对面马路向南不远处乘上公交车后大约20分钟便来到东湖，这是个人工湖，景色一般，但之后的山路爬得挺畅快，虽然我没记得山名。山上有一大片茶树园，茶树上结着一个个蜘蛛网，上面因之前下雨而洒满水花，显得有些特别。从另一侧下山时路途有些陡峭，山脚下则是一个孤岛，我们坐船摆渡过岸之后决定坐一坐乌篷船。三人一船出发后，沿路都是一些陡峭山壁之类的景色，水很清，但不知为何划船师傅总提醒我不能把手伸下去。一路山水过后，师傅问我们索要小费，我们给了他五元。于是东湖基本上算结束了。<br />
<a href="http://www.flickr.com/photos/kols/4714081798/" class="tt-flickr tt-flickr-Small" title="大禹陵" target="_blank"><img class="alignleft" src="http://farm5.static.flickr.com/4068/4714081798_5e6ab78a87_m.jpg" alt="大禹陵" width="240" height="180" /></a> 　　从东湖到大禹陵我们绕了个大远路，从东湖坐车回到我们的旅馆后再从那里出发去大禹陵，多走了一次回头路。大禹陵的景色相当不错，满目绿色，但却时时有一种奇怪的气氛，我想陵墓也许就应该是会有这种不同一般的压抑感。因为一些原因没法进到大禹陵里面，我们在外面闲逛了大约半小时后便回去了，在里面还撞响了一座大钟两次，然后一个老伯从不知哪里冲出来问我们收费，我们付了。<br />
　　回到市区后就马上找地方吃饭，因为实在很饿，结果最后找了一家快餐店匆匆解决。回到旅馆，之后的状况就与前一天差不多，也就不再重复了。
</div>
<h2 class="inpost">三天</h2>
<div class="inpost">　　回家那天先再次在咸亨酒店吃完午饭后坐一辆双层公交车来到客运中心，上车后一路开回上海，之后各自回家。而这次的旅行也就如此结束了。</div>
<h2 class="inpost">后记</h2>
<div class="inpost">
　　从不曾想过毕业旅行会在这样一种有些悲伤（而不是该死的伤感）的气氛中结束，当然，也许只是我一个人这么觉得。也没想到它会让我之后的几天有些消沉。就像，那个城市一开始让我感到的无比兴奋，在一天一天一刻一刻的不安、失望以及某些无法诉说的点滴情绪中不断的开始逐渐分崩离析，最后，回到上海的我就像被掏空，再没有一丝快乐的感觉。我也知道，这样说对一些人是一种伤害，但就是这样，就像之前所说的那样，从买返程票的那个时刻开始，很多东西就注定要消失，不论它是什么。<br />
　　而这确实又很像毕业，从不久之后开始，我们曾经拥有的就会变成一无所有，生活、情感、言语，所有能想象得到的东西，都留不住。所以这就是一种结束，是一个阶段的彻底结束。不用去问去想是这样对还是那样对，如果不确定不清楚，那即是没有答案，在很多的悬而未决面前，特别是在这样的时刻，能做的就只是继续寻找而非盲目地去拥抱什么。<br />
　　不要给自己时间去胡乱思考，保持自己忙碌着，如果真的难以自已，就像我这样书写。因为如果这样做能让内心得到些许的放松与安慰，那就说明我们真的在逐渐变得坚强。时间很快，我想可能，再不久，也许只消几天或几周，这样的情绪都会变成一种新的东西，或被遗忘。只要我们还存在，并且有些东西将我们维系，现在的这些都并不是真正难以释怀的。
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.kdblue.com/2010/06/shaoxing-graduate-trip/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Ubuntu 10.04 Intel显卡性能问题的应对</title>
		<link>http://www.kdblue.com/2010/05/ubuntu-10-04-intel-graphics-performance-problems-solution/</link>
		<comments>http://www.kdblue.com/2010/05/ubuntu-10-04-intel-graphics-performance-problems-solution/#comments</comments>
		<pubDate>Mon, 24 May 2010 13:04:56 +0000</pubDate>
		<dc:creator>kols</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[10.04]]></category>
		<category><![CDATA[display]]></category>
		<category><![CDATA[graphic]]></category>
		<category><![CDATA[intel 8xx]]></category>
		<category><![CDATA[performance]]></category>
		<category><![CDATA[ubuntu]]></category>
		<category><![CDATA[代码]]></category>

		<guid isPermaLink="false">http://kdblue.com/?p=10607</guid>
		<description><![CDATA[　　升级到Ubuntu 10.04后我的[Intel 82852/82855]显卡一直不能与系统协调的工作，表现就是只能使用vesa驱动，无法开启kms，这些都或多或少导致了一些不便，比如动态开机画面分辨率很低，播放电影帧数不够，以及无法开启compiz等。 　　昨天在看过Ubuntu 10.04的Release log中相对应的一些方法，并按着其中一个方法做了之后这些不愉快这些机能表现上的倒退问题大部分都解决了，如果不是完全解决的话。这个方法的主要内容在这里可以找到，参照其中的Workaround F部分。如果需要更多信息的话，可以点击此Workaround中的链接。 　　在这里，为了方便，我将这个方法直接写在此处。 打开/etc/X11/xorg.conf，将如下内容替代原内容，建议先备份源文件。 #注意：此方法只在我的机器上试过并通过，因此，如果显卡型号与我所用不同，可能无法成功。 Section "Screen" Identifier "Configured Screen Device" Device "Configured Video Device" EndSection Section "Device" Identifier "Configured Video Device" Option "AccelMethod" "UXA" VideoRam 130560 EndSection #其中倒数第二行的VideoRam需要根据实际内存大小来填写，建议看一下Workaround中包含的链接页面中的说明。 启动时开启modeset，方法因bootloader不同而不同。grub直接在kernel行加入i915.modeset=1；grub2则请自行google。 重启，注意非与我相同之硬件重启可能导致开机不能，在这种情况下只需将备份的xorg.conf再复原。 　　补充：成功后(s)mplayer或vlc播放视频文件可能会有大问题，请换成x11模块播放。 另 　　作为一个成功的Linux发行版的Ubuntu，却在10.04这个长期支持版上出现这样一种兼容性问题，绝对不应该，要知道Intel的显卡是千千万万遍布全球各地的电脑都在使用的。如果从没有使用过Ubuntu，并且只是想看看Linux到底是什么的人装上Ubuntu后却看到一个大黑屏，基本上他之后所能说出的人类语言就是“所谓Linux就是装完后直接黑屏的操作系统”。可能，在速度上，美工上，这一版本的确做到了较大进步，然而，这种进步的代价就是许多从9.10升级而来的人无法正常工作，而相同的情况在Windows或Mac应该是不太会发生的。说到底，这是一种不负责的行为，为了一些指标而牺牲最基本的可用性，这是很昏头的，人说先跑起来再考虑跑得快，这边则直接快到人人都要hack一下设置文件才能正常使用了，太直接的本末倒置。 　　为了正常使用一台电脑，要看完我这么一篇长长的文章，是人都会觉得相当无聊。但究竟值与不值就如人饮水冷暖自知，而无需去多作评价了。]]></description>
			<content:encoded><![CDATA[<p>　　升级到Ubuntu 10.04后我的<em>[Intel 82852/82855]</em>显卡一直不能与系统协调的工作，表现就是只能使用vesa驱动，无法开启kms，这些都或多或少导致了一些不便，比如动态开机画面分辨率很低，播放电影帧数不够，以及无法开启compiz等。<br />
　　昨天在看过Ubuntu 10.04的Release log中相对应的一些方法，并按着其中一个方法做了之后这些不愉快这些机能表现上的倒退问题大部分都解决了，如果不是完全解决的话。这个方法的主要内容在<a href="https://wiki.ubuntu.com/X/Bugs/Lucidi8xxFreezes">这里</a>可以找到，参照其中的Workaround F部分。如果需要更多信息的话，可以点击此Workaround中的链接。<br />
　　在这里，为了方便，我将这个方法直接写在此处。</p>
<div class="inpost">
<ol>
<li>
打开/etc/X11/xorg.conf，将如下内容替代原内容，建议先备份源文件。</p>
<pre class="brush: bash">
#注意：此方法只在我的机器上试过并通过，因此，如果显卡型号与我所用不同，可能无法成功。
Section "Screen"
        Identifier  "Configured Screen Device"
        Device      "Configured Video Device"
EndSection

Section "Device"
        Identifier      "Configured Video Device"
        Option          "AccelMethod"   "UXA"
        VideoRam        130560
EndSection

#其中倒数第二行的VideoRam需要根据实际内存大小来填写，建议看一下Workaround中包含的链接页面中的说明。
      </pre>
</li>
<li>
    启动时开启modeset，方法因bootloader不同而不同。grub直接在kernel行加入i915.modeset=1；grub2则请自行google。
    </li>
<li>
    重启，注意非与我相同之硬件重启可能导致开机不能，在这种情况下只需将备份的xorg.conf再复原。
    </li>
</ol>
<p>　　补充：成功后(s)mplayer或vlc播放视频文件可能会有大问题，请换成x11模块播放。
</p></div>
<h2 class="inpost">另</h2>
<div class="inpost">
　　作为一个成功的Linux发行版的Ubuntu，却在10.04这个长期支持版上出现这样一种兼容性问题，绝对不应该，要知道Intel的显卡是千千万万遍布全球各地的电脑都在使用的。如果从没有使用过Ubuntu，并且只是想看看Linux到底是什么的人装上Ubuntu后却看到一个大黑屏，基本上他之后所能说出的人类语言就是“所谓Linux就是装完后直接黑屏的操作系统”。可能，在速度上，美工上，这一版本的确做到了较大进步，然而，这种进步的代价就是许多从9.10升级而来的人无法正常工作，而相同的情况在Windows或Mac应该是不太会发生的。说到底，这是一种不负责的行为，为了一些指标而牺牲最基本的可用性，这是很昏头的，人说先跑起来再考虑跑得快，这边则直接快到人人都要hack一下设置文件才能正常使用了，太直接的本末倒置。<br />
　　为了正常使用一台电脑，要看完我这么一篇长长的文章，是人都会觉得相当无聊。但究竟值与不值就如人饮水冷暖自知，而无需去多作评价了。
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.kdblue.com/2010/05/ubuntu-10-04-intel-graphics-performance-problems-solution/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
	</channel>
</rss>

