<?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>aifreedom &#187; Linux</title>
	<atom:link href="http://aifreedom.com/tag/linux/feed" rel="self" type="application/rss+xml" />
	<link>http://aifreedom.com</link>
	<description>Just feel free as in freedom</description>
	<lastBuildDate>Sun, 20 May 2012 05:46:37 +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>解决 Evince 中查看 PDF 文档中文字体乱码</title>
		<link>http://aifreedom.com/technology/173#utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=%25e8%25a7%25a3%25e5%2586%25b3-evince-%25e4%25b8%25ad%25e6%259f%25a5%25e7%259c%258b-pdf-%25e6%2596%2587%25e6%25a1%25a3%25e4%25b8%25ad%25e6%2596%2587%25e5%25ad%2597%25e4%25bd%2593%25e4%25b9%25b1%25e7%25a0%2581</link>
		<comments>http://aifreedom.com/technology/173#comments</comments>
		<pubDate>Wed, 12 Jan 2011 16:54:42 +0000</pubDate>
		<dc:creator>aifreedom</dc:creator>
				<category><![CDATA[Technology]]></category>
		<category><![CDATA[Chinese]]></category>
		<category><![CDATA[Font]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Mojibake]]></category>
		<category><![CDATA[PDF]]></category>
		<category><![CDATA[中文]]></category>
		<category><![CDATA[乱码]]></category>
		<category><![CDATA[字体]]></category>

		<guid isPermaLink="false">http://aifreedom.com/?p=173</guid>
		<description><![CDATA[本文及所附代码, 文件在署名-非商业性使用-相同方式共享 3.0版权协议下发布, 转载请注明出自aifreedom.com 解决在 Linux 里的中文 PDF 乱码问题的文章已经有很多了, 这篇日志只是一篇笔记式的日志, 整理了网上流传的各式"解决方案". 首先, Gnome 下的 Evince 和 KDE 下的 KPDF 用来渲染 PDF 文档的后端程序都是 xpdf. 要让 xpdf 支持中文文档, 需要安装 xpdf-chinese-simplified 和 xpdf-chinese-traditional. 其次, 需要让 xpdf 能识别出 PDF 文档内容的正确编码, 需要 poppler 的支持. 在 Ubuntu 的源里, 有一个叫做 poppler-data 的包, 装上它才能让 xpdf 正确地识别出代码. 最后, 对于没有内嵌中文字体的文档(比如 China-Pub 上的一些试阅图书), 系统默认的配置文件(/etc/fonts/conf.avail/49-sansserif.conf)里的值为 sans-serif. 但默认的 [...]]]></description>
			<content:encoded><![CDATA[<p><strong>本文及所附代码, 文件在</strong><a href="http://creativecommons.org/licenses/by-nc-sa/3.0/deed.zh" target="_blank"><strong>署名-非商业性使用-相同方式共享 3.0</strong></a><strong>版权协议下发布, 转载请注明出自</strong><a href="http://aifreedom.com/"><strong>aifreedom.com</strong></a></p>
<p>解决在 Linux 里的中文 PDF 乱码问题的文章已经有很多了, 这篇日志只是一篇笔记式的日志, 整理了网上流传的各式"解决方案".</p>
<p>首先, Gnome 下的 Evince 和 KDE 下的 KPDF 用来渲染 PDF 文档的后端程序都是 xpdf. 要让 xpdf 支持中文文档, 需要安装 xpdf-chinese-simplified 和 xpdf-chinese-traditional.</p>
<p>其次, 需要让 xpdf 能识别出 PDF 文档内容的正确编码, 需要 poppler 的支持. 在 Ubuntu 的源里, 有一个叫做 poppler-data 的包, 装上它才能让 xpdf 正确地识别出代码.</p>
<p>最后, 对于没有内嵌中文字体的文档(比如 China-Pub 上的一些试阅图书), 系统默认的配置文件(/etc/fonts/conf.avail/49-sansserif.conf)里的值为 sans-serif. 但默认的 sans-serif 字体是不支持中文的, 需要给它手动指定一个支持中文的字体. 在我的电脑上, 我将 Windows 里的宋体安装了过来, 因此我将上面的配置文件中</p>
<p><code>&lt;edit name="family" mode="append_last"&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;string&gt;sans-serif&lt;/string&gt;<br />
&lt;/edit&gt;</code></p>
<p>改成了</p>
<p><code>&lt;edit name="family" mode="append_last"&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;string&gt;SimSun&lt;/string&gt;<br />
&lt;/edit&gt;</code></p>
<p>Linux 里安装字体的方法见这篇<a href="http://aifreedom.com/technology/158">关于 XeLaTeX 的日志</a>.</p>
<p>如果没有安装其他的字体, 可以在终端中输入 <span style="font-family: monospace;">fc-list :lang=zh-cn</span> 命令查看已经安装的中文字体.</p>
<p>我认为经过以上的步骤, 就能解决 Evince 下中文 PDF 的乱码问题. 但我同时根据网上各种解决方案, 安装了很多其他的包. 包括 cmap-adobe-* 包(根据描述是将字符编码映射到 CID 字体的表), ttf-arphic-* 包(一堆中文 TTF 字体). 而且根据 <a href="http://aifreedom.com/technology/168">apt-log</a> 的结果, 我安装这些包的时间都在2010年9月, 记忆也不甚准确.</p>
<p>有任何疑问或指正请在日志后留言, 感谢各位在这篇日志后留言的老师.</p>
<a href="http://aifreedom.com/technology/173" title="链接">链接</a> | <a href="http://aifreedom.com/technology/173#comments" title="评论">评论(2)</a> | <a href="http://aifreedom.com/about" title="About">关于我</a>
<hr /><small><p><a target="_blank" rel="license" href="http://creativecommons.org/licenses/by-nc-sa/3.0/deed.zh">

<img alt="Creative Commons License" style="border-width: 0pt;" src="http://i.creativecommons.org/l/by-nc-sa/3.0/80x15.png">

</a>本站原创作品在<a target="_blank" rel="license" href="http://creativecommons.org/licenses/by-nc-sa/3.0/deed.zh">署名-非商业性使用-相同方式共享 3.0</a>版权协议下发布，转载请注明出处。<br />

&copy; 2007-2009 作者及版权归属: <a href="http://aifreedom.com/">Ai.Freedom</a> </small>]]></content:encoded>
			<wfw:commentRss>http://aifreedom.com/technology/173/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>apt-log: 找回误删的软件包</title>
		<link>http://aifreedom.com/technology/168#utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=apt-log-%25e6%2589%25be%25e5%259b%259e%25e8%25af%25af%25e5%2588%25a0%25e7%259a%2584%25e8%25bd%25af%25e4%25bb%25b6%25e5%258c%2585</link>
		<comments>http://aifreedom.com/technology/168#comments</comments>
		<pubDate>Wed, 10 Nov 2010 03:35:58 +0000</pubDate>
		<dc:creator>aifreedom</dc:creator>
				<category><![CDATA[Technology]]></category>
		<category><![CDATA[apt]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[log]]></category>

		<guid isPermaLink="false">http://aifreedom.com/?p=168</guid>
		<description><![CDATA[本文在署名-非商业性使用-相同方式共享 3.0版权协议下发布, 转载请注明出自aifreedom.com 今天想在 Linux 里装上 PPLive 看 WDC 的比赛, 装了几个依赖的 lib 还是不能用. 嫌麻烦不折腾了, 就顺手把刚装的几个 lib 包删掉. 正删着发现不对劲了, 怎么把 gnome-do, workrave, emacs, AUCTeX 都删了?! 想也没想, 就把终端关了. 这时候才想起来关了终端也没用, apt-get 是 root 的进程. 找到 pid, 果断 kill. 但删除已经进行到一半被退出, 也不知道到底删了多少去了. 用 sudo dpkg --configure -a 恢复更新的进程. 果然满目疮痍, 连 nautilus 都没了.. 只有找 apt 的日志来恢复了. 在我的系统里, apt 的日志存在 /var/log/apt/ 目录里. 因为是刚刚删完的, cat [...]]]></description>
			<content:encoded><![CDATA[<p>本文在<a href="http://creativecommons.org/licenses/by-nc-sa/3.0/deed.zh" target="_blank"><strong>署名-非商业性使用-相同方式共享 3.0</strong></a><strong>版权协议下发布, 转载请注明出自</strong><a href="http://aifreedom.com/"><strong>aifreedom.com</strong></a></p>
<p>今天想在 Linux 里装上 PPLive 看 WDC 的比赛, 装了几个依赖的 lib 还是不能用. 嫌麻烦不折腾了, 就顺手把刚装的几个 lib 包删掉. 正删着发现不对劲了, 怎么把 gnome-do, workrave, emacs, AUCTeX 都删了?! 想也没想, 就把终端关了. 这时候才想起来关了终端也没用, apt-get 是 root 的进程. 找到 pid, 果断 kill.</p>
<p>但删除已经进行到一半被退出, 也不知道到底删了多少去了. 用 <code>sudo dpkg --configure -a </code>恢复更新的进程. 果然满目疮痍, 连 nautilus 都没了.. 只有找 apt 的日志来恢复了.</p>
<p>在我的系统里, apt 的日志存在 /var/log/apt/ 目录里. 因为是刚刚删完的, <code>cat /var/log/apt/history.log </code>里最后一条就是刚删掉的包, 把它们重新装一遍就好了.</p>
<p>顺便, 我还找到了一个给 apt 的 log 提供按日期, 安装包名字等查找的脚本 "<a href="http://mavior.eu/apt-log/">apt-log</a>", 可以在它的 <a href="http://mavior.eu/apt-log/download/">Download</a> 页面下载.</p>
<p>使用方法很简单, 看一下它给出的例子就很清楚了. 比如, 按照时间来查找:</p>
<ol>
<li><code>apt-log 2010 </code>就会显示出你2010年有更新日志的月份.</li>
<li><code>apt-log 2010-11 </code>会显示有更新的天. 依次查找, 可以找到每次更新的时间, 也就可以看到每次更新的日志.</li>
</ol>
<p>apt-log还有一些参数, 比如:</p>
<ul>
<li><code>apt-log --changes 2010-11-10</code> 显示2010-11-10这一天做的所有修改.</li>
<li><code>apt-log --history kde.* </code>显示所有kde包的修改历史.</li>
<li><code>apt-log --status gnome.* </code>显示所有gnome包的状态.</li>
</ul>
<p>更多的example, 见apt-log作者给出的<a href="http://mavior.eu/apt-log/examples/">example/doc</a>.</p>
<a href="http://aifreedom.com/technology/168" title="链接">链接</a> | <a href="http://aifreedom.com/technology/168#comments" title="评论">评论(5)</a> | <a href="http://aifreedom.com/about" title="About">关于我</a>
<hr /><small><p><a target="_blank" rel="license" href="http://creativecommons.org/licenses/by-nc-sa/3.0/deed.zh">

<img alt="Creative Commons License" style="border-width: 0pt;" src="http://i.creativecommons.org/l/by-nc-sa/3.0/80x15.png">

</a>本站原创作品在<a target="_blank" rel="license" href="http://creativecommons.org/licenses/by-nc-sa/3.0/deed.zh">署名-非商业性使用-相同方式共享 3.0</a>版权协议下发布，转载请注明出处。<br />

&copy; 2007-2009 作者及版权归属: <a href="http://aifreedom.com/">Ai.Freedom</a> </small>]]></content:encoded>
			<wfw:commentRss>http://aifreedom.com/technology/168/feed</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>TeX Live 2008 安装 &amp; 配置中文支持 (下)</title>
		<link>http://aifreedom.com/technology/158#utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=tex-live-2008-%25e5%25ae%2589%25e8%25a3%2585-%25e9%2585%258d%25e7%25bd%25ae%25e4%25b8%25ad%25e6%2596%2587%25e6%2594%25af%25e6%258c%2581-%25e4%25b8%258a-2</link>
		<comments>http://aifreedom.com/technology/158#comments</comments>
		<pubDate>Wed, 30 Sep 2009 15:07:14 +0000</pubDate>
		<dc:creator>aifreedom</dc:creator>
				<category><![CDATA[Technology]]></category>
		<category><![CDATA[LaTeX]]></category>
		<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false">http://aifreedom.com/technology/158</guid>
		<description><![CDATA[本文在署名-非商业性使用-相同方式共享 3.0版权协议下发布, 转载请注明出自aifreedom.com 居然拖了两个多月都没把这篇文章写完, 但十月份之前总算交出了它的下半篇. 上次说到把 XeLaTeX 安装好了. 但默认的设置对中英文混排支持还不够好, 不能对中文和英文分别设置字体, 也不能很好地处理中文和英文之间的空白距离. 我们可以安装孙文昌老师开发的 xeCJK 宏包来解决这个问题. xeCJK 的宏包可以在这里下载到. 这个不是最新版的 xeCJK, 因为最新版的 xeCJK 需要 xetex 0.9995.0 之后的版本(TeX Live 2009 或 MiKTeX 2.8). 而且新版的 xeCJK 已经被收入 ctex-kit 项目, 将随 TeX Live 2009 一起分发. 就是说, 等到 TeX Live 2009 Release 的时候, 它对中文的支持会比现在好很多. 把刚刚下载到的压缩包解压到 ~/.texlive2008/texmf/tex/xelatex/, 然后用mktexlsr 更新. (这里我不是很了解, 只是照葫芦画瓢, 没自己看过文档, 有什么问题还请诸位老师指正) [...]]]></description>
			<content:encoded><![CDATA[<p><strong>本文在</strong><a href="http://creativecommons.org/licenses/by-nc-sa/3.0/deed.zh" target="_blank"><strong>署名-非商业性使用-相同方式共享 3.0</strong></a><strong>版权协议下发布, 转载请注明出自</strong><a href="http://aifreedom.com/"><strong>aifreedom.com</strong></a></p>
<p>居然拖了两个多月都没把这篇文章写完, 但十月份之前总算交出了它的下半篇.</p>
<p>上次说到把 XeLaTeX 安装好了. 但默认的设置对中英文混排支持还不够好, 不能对中文和英文分别设置字体, 也不能很好地处理中文和英文之间的空白距离. 我们可以安装孙文昌老师开发的 xeCJK 宏包来解决这个问题.</p>
<p>xeCJK 的宏包可以在<a href="http://ctex-kit.googlecode.com/files/xecjk-2_2_15.zip">这里</a>下载到. 这个不是最新版的 xeCJK, 因为最新版的 xeCJK 需要 xetex 0.9995.0 之后的版本(TeX Live 2009 或 MiKTeX 2.8). 而且新版的 xeCJK 已经被收入 <a href="http://code.google.com/p/ctex-kit/">ctex-kit</a> 项目, 将随 TeX Live 2009 一起分发. 就是说, 等到 TeX Live 2009 Release 的时候, 它对中文的支持会比现在好很多.</p>
<p>把刚刚下载到的压缩包解压到 ~/.texlive2008/texmf/tex/xelatex/, 然后用mktexlsr 更新. (这里我不是很了解, 只是照葫芦画瓢, 没自己看过文档, 有什么问题还请诸位老师指正)</p>

<div class="wp_syntax"><div class="code"><pre class="text" style="font-family:monospace;">unzip xecjk-2_2_15.zip -d ~/.texlive2008/texmf/tex/xelatex/
cd ~/.texlive2008/texmf
mktexlsr .</pre></div></div>

<p>在刚才下载的压缩包里的 doc 文件夹里有 xeCJK 的完整文档, 我这里给出一个我使用的 preamble 模板.</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
</pre></td><td class="code"><pre class="latex" style="font-family:monospace;"><span style="color: #2C922C; font-style: italic;">%# -*- coding: utf-8 -*-</span>
<span style="color: #E02020; ">\</span><span style="color: #800000;">documentclass</span><span style="color: #E02020; ">[</span><span style="color: #C08020; font-weight: normal;">a4paper</span><span style="color: #E02020; ">]{</span><span style="color: #2020C0; font-weight: normal;">article</span><span style="color: #E02020; ">}</span>
&nbsp;
<span style="color: #E02020; ">\</span><span style="color: #800000;">usepackage</span><span style="color: #E02020; ">[</span><span style="color: #C08020; font-weight: normal;">slantfont, boldfont, CJKtextspaces,
CJKmathspaces</span><span style="color: #E02020; ">]{</span><span style="color: #2020C0; font-weight: normal;">xeCJK</span><span style="color: #E02020; ">}</span> <span style="color: #2C922C; font-style: italic;">% 允许斜体和粗体</span>
<span style="color: #800000; font-weight: normal;">\setCJKmainfont</span><span style="color: #E02020; ">[</span><span style="color: #C08020; font-weight: normal;">BoldFont={<span style="color: #2020C0; font-weight: normal;">Adobe Heiti Std</span><span style="color: #E02020; ">}</span>, ItalicFont=<span style="color: #E02020; ">{</span><span style="color: #2020C0; font-weight: normal;">Adobe Kaiti
  Std</span>}</span><span style="color: #E02020; ">]{</span><span style="color: #2020C0; font-weight: normal;">Adobe Song Std</span><span style="color: #E02020; ">}</span> <span style="color: #2C922C; font-style: italic;">% 设置缺省中文字体</span>
<span style="color: #800000; font-weight: normal;">\setCJKmonofont</span><span style="color: #E02020; ">{</span><span style="color: #2020C0; font-weight: normal;">Adobe Fangsong Std</span><span style="color: #E02020; ">}</span> <span style="color: #2C922C; font-style: italic;">% 设置等宽字体</span>
&nbsp;
<span style="color: #800000; font-weight: normal;">\setmainfont</span><span style="color: #E02020; ">[</span><span style="color: #C08020; font-weight: normal;">Mapping=tex-text</span><span style="color: #E02020; ">]{</span><span style="color: #2020C0; font-weight: normal;">Liberation
  Serif</span><span style="color: #E02020; ">}</span> <span style="color: #2C922C; font-style: italic;">% 英文衬线字体</span>
<span style="color: #800000; font-weight: normal;">\setsansfont</span><span style="color: #E02020; ">{</span><span style="color: #2020C0; font-weight: normal;">Liberation Sans</span><span style="color: #E02020; ">}</span> <span style="color: #2C922C; font-style: italic;">% 英文无衬线字体</span>
<span style="color: #800000; font-weight: normal;">\setmonofont</span><span style="color: #E02020; ">{</span><span style="color: #2020C0; font-weight: normal;">Bitstream Vera Sans Mono</span><span style="color: #E02020; ">}</span> <span style="color: #2C922C; font-style: italic;">% 英文等宽字体</span>
<span style="color: #800000; font-weight: normal;">\punctstyle</span><span style="color: #E02020; ">{</span><span style="color: #2020C0; font-weight: normal;">kaiming</span><span style="color: #E02020; ">}</span> <span style="color: #2C922C; font-style: italic;">% 开明式标点格式</span>
&nbsp;
<span style="color: #E02020; ">\</span><span style="color: #800000;">usepackage</span><span style="color: #E02020; ">{</span><span style="color: #2020C0; font-weight: normal;">indentfirst</span><span style="color: #E02020; ">}</span> <span style="color: #2C922C; font-style: italic;">% 首段缩进</span>
<span style="color: #C00000; font-weight: normal;">\begin</span><span style="color: #E02020; ">{</span><span style="color: #2020C0; font-weight: normal;"><span style="color: #0000D0; font-weight: normal;">document</span></span><span style="color: #E02020; ">}</span>
&nbsp;
<span style="color: #E02020; ">{</span><span style="color: #2020C0; font-weight: normal;">默认字体</span><span style="color: #E02020; ">}</span>   <span style="color: #E02020; ">{</span><span style="color: #2020C0; font-weight: normal;">\<span style="color: #800000;">bfseries</span> 粗体效果</span><span style="color: #E02020; ">}</span>   <span style="color: #E02020; ">{</span><span style="color: #2020C0; font-weight: normal;"><span style="color: #800000; font-weight: normal;">\itshape</span> 斜体效果</span><span style="color: #E02020; ">}</span>
&nbsp;
这是Ai.Freedom的Blog的第101篇日志。
&nbsp;
居然拖了两个多月都没把这篇文章写完，但十月份之前总算交出了它的下半篇。
&nbsp;
上次说到把 XeLaTeX 安装好了。但默认的设置对中英文混排支持还不够好，不能
对中文和英文分别设置字体，也不能很好地处理中文和英文之间的空白距离。我
们可以安装孙文昌老师开发的 xeCJK 宏包来解决这个问题。
&nbsp;
<span style="color: #C00000; font-weight: normal;">\end</span><span style="color: #E02020; ">{</span><span style="color: #2020C0; font-weight: normal;"><span style="color: #0000D0; font-weight: normal;">document</span></span><span style="color: #E02020; ">}</span></pre></td></tr></table></div>

<p>但这里给出的代码你很可能还无法编译, 因为你没有安装 Adobe 的字体. 这里用到的四个字体可以在<a href="http://forum.ubuntu.org.cn/viewtopic.php?f=35&#038;t=180987">这里</a>下载到. 其中 Adobe Song Std 和 Adobe Heiti Std 是随 Adobe Reader 一起分发的, 根据 Lisence 可以免费使用, 关于另外两个字体的版权我还不是很清楚.</p>
<p>把它们下载回来了之后解压到 ~/.fonts 目录中. 然后执行</p>

<div class="wp_syntax"><div class="code"><pre class="text" style="font-family:monospace;">sudo fc-cache -fv</pre></div></div>

<p>更新字体缓存. 好了, 把刚才的代码保存到 test.tex 后用</p>

<div class="wp_syntax"><div class="code"><pre class="text" style="font-family:monospace;">xelatex test.tex</pre></div></div>

<p>编译就可以得到 test.pdf 了.</p>
<p>在下载的 xeCJK 的压缩包里, source 目录下有一个脚本用来为特定的字体生成标点符号. 按照 README 里的提示, 将 xecjksetpunct-main.tex 里用于 Windows 平台的部分注释掉, 把 Linux 里用到的语句的注释去掉, 然后把下面的字体设置成自己用的字体, 保存. 我们这里用的是 TeX Live, 所以执行</p>

<div class="wp_syntax"><div class="code"><pre class="text" style="font-family:monospace;">xelatex --shell-escape xecjksetpunct-main</pre></div></div>

<p>然后把生成的 xeCJKpunct.spa 文件移动到 .texlive2008/texmf-var/tex/xelatex/xecjk/tex/xelatex/xecjk 目录下, 覆盖默认的 xeCJKpunct.spa 文件. 最后执行</p>

<div class="wp_syntax"><div class="code"><pre class="text" style="font-family:monospace;">texhash .</pre></div></div>

<p>好了, 我们的配置总算是告一段落了. 关于 xeCJK 的更多详细的设置选项, 请查询它的文档. 学习 LaTeX 文档的排版, 有这样一本 "<a href="http://bbs.ctex.org/viewthread.php?tid=40736">The not so Short Introduction to LaTeX</a>", 这个链接是中文版的, 还有 CTeX 论坛的版主 milksea 推荐的<a href="http://bbs.ctex.org/viewthread.php?tid=48244&#038;page=1&#038;fromuid=60750#pid337079">这个列表</a>. 学习 LaTeX 的资料真的很多, 只要你愿意动手.</p>
<a href="http://aifreedom.com/technology/158" title="链接">链接</a> | <a href="http://aifreedom.com/technology/158#comments" title="评论">评论(7)</a> | <a href="http://aifreedom.com/about" title="About">关于我</a>
<hr /><small><p><a target="_blank" rel="license" href="http://creativecommons.org/licenses/by-nc-sa/3.0/deed.zh">

<img alt="Creative Commons License" style="border-width: 0pt;" src="http://i.creativecommons.org/l/by-nc-sa/3.0/80x15.png">

</a>本站原创作品在<a target="_blank" rel="license" href="http://creativecommons.org/licenses/by-nc-sa/3.0/deed.zh">署名-非商业性使用-相同方式共享 3.0</a>版权协议下发布，转载请注明出处。<br />

&copy; 2007-2009 作者及版权归属: <a href="http://aifreedom.com/">Ai.Freedom</a> </small>]]></content:encoded>
			<wfw:commentRss>http://aifreedom.com/technology/158/feed</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Linux Tricks (1)</title>
		<link>http://aifreedom.com/technology/155#utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=linux-tricks-1</link>
		<comments>http://aifreedom.com/technology/155#comments</comments>
		<pubDate>Sat, 25 Jul 2009 07:55:39 +0000</pubDate>
		<dc:creator>aifreedom</dc:creator>
				<category><![CDATA[Technology]]></category>
		<category><![CDATA[bash]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Tricks]]></category>
		<category><![CDATA[技巧]]></category>

		<guid isPermaLink="false">http://aifreedom.com/?p=155</guid>
		<description><![CDATA[本文在署名-非商业性使用-相同方式共享 3.0版权协议下发布, 转载请注明出自aifreedom.com 之前写过一段时间的 Linux 日记, 后来没有继续更新了. 但我发现把在使用 Linux 的过程中解决某些问题的过程用文字记录下来是很有用的! 比如前些天我的同学问我 Mplayer 的 RMVB 解码器是哪个包, 我却记不起来了. 但我记得我写过一篇日志记录了我解决这个问题的过程, 于是他的问题也顺利解决了. 我一直认为学习的过程就是"不断遇到问题, 并寻求解决问题的方法"的过程. 把这个过程记录下来, 就为自己再次重温这个过程留下了线索. 这也就是笔记的重要性. 我在上课时很少做笔记, 但阅读有价值的书是一定要做笔记的. 计划等我有一大段空闲时间了就去整理我的笔记, 把他们都整理成 TeX 文件或者 Muse 文件. 现在这个 "Linux Tricks" 系列, 每一篇都不会太长, 内容比较杂乱, 但涉及的方面会很多. 很多的 Trick 都是从论坛或者 Blog 上看来的, 把它们集中在一起, 既方便了我日后查看, 又传播了 Linux 的文化. 今天的两个Tricks分别从徐宥和 TualatriX 处学到, 感谢他们的分享. 1. 史上最强 PS1 [...]]]></description>
			<content:encoded><![CDATA[<p><strong>本文在</strong><a href="http://creativecommons.org/licenses/by-nc-sa/3.0/deed.zh" target="_blank"><strong>署名-非商业性使用-相同方式共享 3.0</strong></a><strong>版权协议下发布, 转载请注明出自</strong><a href="http://aifreedom.com/"><strong>aifreedom.com</strong></a></p>
<p>之前写过一段时间的 Linux 日记, 后来没有继续更新了. 但我发现把在使用 Linux 的过程中解决某些问题的过程用文字记录下来是很有用的! 比如前些天我的同学问我 <a href="http://aifreedom.com/technology/68">Mplayer 的 RMVB 解码器是哪个包</a>, 我却记不起来了. 但我记得我写过一篇日志记录了我解决这个问题的过程, 于是他的问题也顺利解决了.</p>
<p>我一直认为学习的过程就是"不断遇到问题, 并寻求解决问题的方法"的过程. 把这个过程记录下来, 就为自己再次重温这个过程留下了线索. 这也就是笔记的重要性. 我在上课时很少做笔记, 但阅读有价值的书是一定要做笔记的. 计划等我有一大段空闲时间了就去整理我的笔记, 把他们都整理成 TeX 文件或者 Muse 文件.</p>
<p>现在这个 "Linux Tricks" 系列, 每一篇都不会太长, 内容比较杂乱, 但涉及的方面会很多. 很多的 Trick 都是从论坛或者 Blog 上看来的, 把它们集中在一起, 既方便了我日后查看, 又传播了 Linux 的文化.</p>
<p>今天的两个Tricks分别从<a href="http://blog.youxu.info">徐宥</a>和 <a href="http://imtx.cn">TualatriX</a> 处学到, 感谢他们的分享.</p>
<p><strong>1. <a href="http://imtx.cn/archives/1298.html">史上最强 PS1</a></strong></p>
<p>这里说的 PS1 不是 Sony 的 Play Station I, 是 Bash Shell 的提示字符串(Prompt String). 就是下图中 "$" 字符前的那些信息.</p>
<p><img src="http://aifreedom.com/images/2009072501.png" alt="Snapshot of the shell with the PS1 above"/></p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
</pre></td><td class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">if</span> <span style="color: #7a0874; font-weight: bold;">&#91;</span> <span style="color: #660033;">-n</span> <span style="color: #ff0000;">&quot;<span style="color: #007800;">$force_color_prompt</span>&quot;</span> <span style="color: #7a0874; font-weight: bold;">&#93;</span>; <span style="color: #000000; font-weight: bold;">then</span>
    <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #7a0874; font-weight: bold;">&#91;</span> <span style="color: #660033;">-x</span> <span style="color: #000000; font-weight: bold;">/</span>usr<span style="color: #000000; font-weight: bold;">/</span>bin<span style="color: #000000; font-weight: bold;">/</span>tput <span style="color: #7a0874; font-weight: bold;">&#93;</span> <span style="color: #000000; font-weight: bold;">&amp;&amp;</span> tput setaf <span style="color: #000000;">1</span> <span style="color: #000000; font-weight: bold;">&gt;&amp;/</span>dev<span style="color: #000000; font-weight: bold;">/</span>null; <span style="color: #000000; font-weight: bold;">then</span>
	<span style="color: #666666; font-style: italic;"># We have color support; assume it's compliant with Ecma-48</span>
	<span style="color: #666666; font-style: italic;"># (ISO/IEC-6429). (Lack of such support is extremely rare, and such</span>
	<span style="color: #666666; font-style: italic;"># a case would tend to support setf rather than setaf.)</span>
	<span style="color: #007800;">color_prompt</span>=<span style="color: #c20cb9; font-weight: bold;">yes</span>
    <span style="color: #000000; font-weight: bold;">else</span>
	<span style="color: #007800;">color_prompt</span>=
    <span style="color: #000000; font-weight: bold;">fi</span>
<span style="color: #000000; font-weight: bold;">fi</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">if</span> <span style="color: #7a0874; font-weight: bold;">&#91;</span> <span style="color: #007800;">$color_prompt</span>=<span style="color: #c20cb9; font-weight: bold;">yes</span> <span style="color: #7a0874; font-weight: bold;">&#93;</span>; <span style="color: #000000; font-weight: bold;">then</span>
    <span style="color: #007800;">PS1</span>=<span style="color: #ff0000;">'`a=$?;if [ $a -ne 0 ]; then echo -n -e &quot;<p style='text-align:center;'><span class='MathJax_Preview'><img src='http://aifreedom.com/wp-content/plugins/latex/cache/tex_aecdbca175c21c1c3f99b306ebe1356d.gif' style='' class='tex' alt="\e[01;32;41m " /></span></p>{$a}&quot;; fi`<p style='text-align:center;'><span class='MathJax_Preview'><img src='http://aifreedom.com/wp-content/plugins/latex/cache/tex_d8340ebfa032015be7723cb9ea2c6c8b.gif' style='' class='tex' alt="\033[01;32m " /></span></p>\u@\h<p style='text-align:center;'><span class='MathJax_Preview'><img src='http://aifreedom.com/wp-content/plugins/latex/cache/tex_07f9a517b21696c74f36bf55188f2e21.gif' style='' class='tex' alt="\033[00m " /></span></p> <p style='text-align:center;'><span class='MathJax_Preview'><img src='http://aifreedom.com/wp-content/plugins/latex/cache/tex_de26f3eb6208668b60e95ac70d10e6fb.gif' style='' class='tex' alt="\033[01;34m " /></span></p>\W`[[ -d .git ]] &amp;&amp; echo -n -e &quot;<p style='text-align:center;'><span class='MathJax_Preview'><img src='http://aifreedom.com/wp-content/plugins/latex/cache/tex_60a4b2b4597229c960abbcfade078520.gif' style='' class='tex' alt="\e[33;40m " /></span></p>(branch:$(git branch | sed -e &quot;/^ /d&quot; -e &quot;s/* <span class='MathJax_Preview'><img src='http://aifreedom.com/wp-content/plugins/latex/cache/tex_3e4bcd2f220984284cfbed6bb098c3eb.gif' style=' padding-bottom:2px;' class='tex' alt=".* " /></span>/\1/&quot;))<p style='text-align:center;'><span class='MathJax_Preview'><img src='http://aifreedom.com/wp-content/plugins/latex/cache/tex_d8340ebfa032015be7723cb9ea2c6c8b.gif' style='' class='tex' alt="\033[01;32m " /></span></p><p style='text-align:center;'><span class='MathJax_Preview'><img src='http://aifreedom.com/wp-content/plugins/latex/cache/tex_553dfff5efd3370c52a2a124ae4a2357.gif' style='' class='tex' alt="\e[00m " /></span></p>&quot;`<p style='text-align:center;'><span class='MathJax_Preview'><img src='http://aifreedom.com/wp-content/plugins/latex/cache/tex_de26f3eb6208668b60e95ac70d10e6fb.gif' style='' class='tex' alt="\033[01;34m " /></span></p> $ <p style='text-align:center;'><span class='MathJax_Preview'><img src='http://aifreedom.com/wp-content/plugins/latex/cache/tex_553dfff5efd3370c52a2a124ae4a2357.gif' style='' class='tex' alt="\e[00m " /></span></p>'</span>
    <span style="color: #666666; font-style: italic;"># PS1='${debian_chroot:+($debian_chroot)}<p style='text-align:center;'><span class='MathJax_Preview'><img src='http://aifreedom.com/wp-content/plugins/latex/cache/tex_d8340ebfa032015be7723cb9ea2c6c8b.gif' style='' class='tex' alt="\033[01;32m " /></span></p>\u@\h<p style='text-align:center;'><span class='MathJax_Preview'><img src='http://aifreedom.com/wp-content/plugins/latex/cache/tex_07f9a517b21696c74f36bf55188f2e21.gif' style='' class='tex' alt="\033[00m " /></span></p>:<p style='text-align:center;'><span class='MathJax_Preview'><img src='http://aifreedom.com/wp-content/plugins/latex/cache/tex_de26f3eb6208668b60e95ac70d10e6fb.gif' style='' class='tex' alt="\033[01;34m " /></span></p>\w<p style='text-align:center;'><span class='MathJax_Preview'><img src='http://aifreedom.com/wp-content/plugins/latex/cache/tex_07f9a517b21696c74f36bf55188f2e21.gif' style='' class='tex' alt="\033[00m " /></span></p>\$ '</span>
<span style="color: #000000; font-weight: bold;">else</span>
    <span style="color: #007800;">PS1</span>=<span style="color: #ff0000;">'`a=$?;if [ $a -ne 0 ]; then echo -n -e &quot;{$a}&quot;; fi`\u@\h \W`[[ -d .git ]] &amp;&amp; echo -n -e &quot;(branch:$(git branch | sed -e &quot;/^ /d&quot; -e &quot;s/* <span class='MathJax_Preview'><img src='http://aifreedom.com/wp-content/plugins/latex/cache/tex_3e4bcd2f220984284cfbed6bb098c3eb.gif' style=' padding-bottom:2px;' class='tex' alt=".* " /></span>/\1/&quot;))&quot;` $ '</span>
    <span style="color: #666666; font-style: italic;"># PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '</span>
<span style="color: #000000; font-weight: bold;">fi</span>
<span style="color: #7a0874; font-weight: bold;">unset</span> color_prompt force_color_prompt</pre></td></tr></table></div>

<p>这个 PS1 有两个功能: 一是高亮显示所有非0返回值, 如图所示; 二是在 Git 管理的目录下显示当前的 Git branch. 最近因为在做C语言课程设计, 用了 Git 来管理我的代码. 所以这个显示分支功能我太喜欢了. (虽然这个项目没有分支的必要..)</p>
<p>将上面的代码加入你的 <a href="http://aifreedom.com/technology/110">~/.bashrc 文件</a>.</p>
<p>如果你使用 Emacs 的 Shell-mode, 那么你需要把 ANSI 彩色字符支持打开.</p>
<p>将下面的代码加入你的<a href="http://aifreedom.com/technology/54">.emacs文件</a>.</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
</pre></td><td class="code"><pre class="lisp" style="font-family:monospace;"><span style="color: #66cc66;">&#40;</span>ansi-color-for-comint-mode-on<span style="color: #66cc66;">&#41;</span></pre></td></tr></table></div>

<p><strong>2. <a href="http://blog.youxu.info/2008/03/20/some-handy-scripts/">一行语句的HTTP文件服务器</a></strong></p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
</pre></td><td class="code"><pre class="text" style="font-family:monospace;">python -m SimpleHTTPServer</pre></td></tr></table></div>

<p>可以将当前目录设为一个在8000端口开放的http服务器的根目录. 在互联网中临时共享文件的时候是多么地方便阿!</p>
<p>徐宥说很多哥们还不知道 "<span style="color:#00f;">wget -c</span>" 能断点续传, 是这样么?</p>
<a href="http://aifreedom.com/technology/155" title="链接">链接</a> | <a href="http://aifreedom.com/technology/155#comments" title="评论">评论(6)</a> | <a href="http://aifreedom.com/about" title="About">关于我</a>
<hr /><small><p><a target="_blank" rel="license" href="http://creativecommons.org/licenses/by-nc-sa/3.0/deed.zh">

<img alt="Creative Commons License" style="border-width: 0pt;" src="http://i.creativecommons.org/l/by-nc-sa/3.0/80x15.png">

</a>本站原创作品在<a target="_blank" rel="license" href="http://creativecommons.org/licenses/by-nc-sa/3.0/deed.zh">署名-非商业性使用-相同方式共享 3.0</a>版权协议下发布，转载请注明出处。<br />

&copy; 2007-2009 作者及版权归属: <a href="http://aifreedom.com/">Ai.Freedom</a> </small>]]></content:encoded>
			<wfw:commentRss>http://aifreedom.com/technology/155/feed</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>TeX Live 2008 安装 &amp; 配置中文支持 (上)</title>
		<link>http://aifreedom.com/technology/153#utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=tex-live-2008-%25e5%25ae%2589%25e8%25a3%2585-%25e9%2585%258d%25e7%25bd%25ae%25e4%25b8%25ad%25e6%2596%2587%25e6%2594%25af%25e6%258c%2581-%25e4%25b8%258a</link>
		<comments>http://aifreedom.com/technology/153#comments</comments>
		<pubDate>Tue, 21 Jul 2009 15:12:21 +0000</pubDate>
		<dc:creator>aifreedom</dc:creator>
				<category><![CDATA[Technology]]></category>
		<category><![CDATA[LaTeX]]></category>
		<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false">http://aifreedom.com/technology/153</guid>
		<description><![CDATA[本文在署名-非商业性使用-相同方式共享 3.0版权协议下发布, 转载请注明出自aifreedom.com Knuth 爷爷的 TeX 系统堪称完美! 但他在发明它的时候没有考虑到对英文之外的语言的支持, 因此用 LaTeX 给中文排版一直有些麻烦. 一年前, 我写过一篇日志介绍 TeX Live 2007 的中文支持配置. 但那个还是用 CJK 实现对中文的支持, 字体的配置比较麻烦. 而现在我要推荐的是 XeTeX, 它对中文的支持比 LaTeX + CJK 包要好很多. 这个解决方案是基于 XeLaTeX + xeCJK 实现对中文的支持. 其实 XeLaTeX 支持中文排版, 但它对中英文混排的支持不是很好. 它不能为中文英文分别设置字体, 也不能很好地控制中英文混排时的间距. 这些都是靠 xeCJK 这个宏包完成的. 去年的时候 LeafDuo 就跟我说 XeTeX 的中文支持很好, 但当时因为懒惰, 一直没有配置起来. 直到不久前写C语言实验报告, 才有了动力把 XeTeX 配置起来. 这篇日志主要记录的是我在 Ubuntu [...]]]></description>
			<content:encoded><![CDATA[<p><strong>本文在</strong><a href="http://creativecommons.org/licenses/by-nc-sa/3.0/deed.zh" target="_blank"><strong>署名-非商业性使用-相同方式共享 3.0</strong></a><strong>版权协议下发布, 转载请注明出自</strong><a href="http://aifreedom.com/"><strong>aifreedom.com</strong></a></p>
<p>Knuth 爷爷的 TeX 系统堪称完美! 但他在发明它的时候没有考虑到对英文之外的语言的支持, 因此用 LaTeX 给中文排版一直有些麻烦.</p>
<p>一年前, 我写过一篇日志介绍 <a href="http://aifreedom.com/technology/113">TeX Live 2007 的中文支持配置</a>. 但那个还是用 CJK 实现对中文的支持, 字体的配置比较麻烦. 而现在我要推荐的是 XeTeX, 它对中文的支持比 LaTeX + CJK 包要好很多. 这个解决方案是基于 XeLaTeX + xeCJK 实现对中文的支持. 其实 XeLaTeX 支持中文排版, 但它对中英文混排的支持不是很好. 它不能为中文英文分别设置字体, 也不能很好地控制中英文混排时的间距. 这些都是靠 xeCJK 这个宏包完成的. 去年的时候 LeafDuo 就跟我说 XeTeX 的中文支持很好, 但当时因为懒惰, 一直没有配置起来. 直到不久前写C语言实验报告, 才有了动力把 XeTeX 配置起来.</p>
<p>这篇日志主要记录的是我在 Ubuntu 中安装 TeX Live 2008 及配置中文支持的过程, 在 Windows 中安装与配置的过程与本文有些区别.</p>
<p>这一篇讲的是<outstand>下载安装 TeX Live 2008</outstand>, 下一篇讲的是将是 <outstand>Linux 字体安装和 xeCJK 的配置</outstand>.</p>
<p>Ubuntu 的源里就有 XeTeX 了, 而这里不使用源里的那个 XeTeX 是因为它的版本比较旧, 之后安装中文排版支持宏包会遇到一些麻烦.</p>
<p>TeX Live 可以直接在线安装, 也可以把光盘镜像下载回本地安装. 考虑到网速等问题, 我是下载镜像到本地之后安装的.</p>
<p>TeX Live 的镜像可以在 <a href="http://www.tug.org/texlive/">TeX Live 的主页</a>下载到. 在中国, 使用 <a href="ftp://ftp.ctex.org/CTAN/systems/texlive/Images/texlive2008.iso.lzma">CTeX 的镜像</a>下载会比较快.</p>
<p>1. <strong>如果要使用图形界面安装, 需要先安装 perl-tk; 解压 lzma 格式的压缩包需要安装 lzma.</strong></p>
<p>在 Ubuntu 的源里有这两个包, 可以使用 apt-get 安装.</p>

<div class="wp_syntax"><div class="code"><pre class="text" style="font-family:monospace;">sudo apt-get install perl-tk p7zip</pre></div></div>

<p>2. <strong>进入存下载的镜像的目录, 将压缩包解开.</strong></p>
<p>注意, 这一步需要有 4-5G 的空余磁盘空间. 解压后的光盘镜像似乎有 2-3G.</p>

<div class="wp_syntax"><div class="code"><pre class="text" style="font-family:monospace;">lzma -d texlive2008.iso.lzma</pre></div></div>

<p>3. <strong>挂载刚刚解压出的 iso 镜像.</strong></p>

<div class="wp_syntax"><div class="code"><pre class="text" style="font-family:monospace;">sudo mount -o loop texlive2008-20080822.iso /mnt</pre></div></div>

<p>4. <strong>执行安装程序</strong></p>

<div class="wp_syntax"><div class="code"><pre class="text" style="font-family:monospace;">sudo /mnt/install-tl --gui</pre></div></div>

<p>这时会弹出安装程序的窗口.</p>
<p>将最后一项 "Create symlinks in system directories" 勾上, 让它自动创建符号链接.</p>
<p>我几乎把所有的包都装上了, 如果你的硬盘空间足够, 也就不需要做什么改动了. 但可以在第四项 "Language Collections" 中去掉不需要的语言包, 节省几百兆的空间.</p>
<p>配置完后点击 "<outstand>Install TeX Live</outstand>", 等上几分钟就装好了.</p>
<p>现在 XeLaTeX 就已经可以处理中文了, 不信你试试编译这个 tex 文档.</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
</pre></td><td class="code"><pre class="latex" style="font-family:monospace;"><span style="color: #E02020; ">\</span><span style="color: #800000;">documentclass</span><span style="color: #E02020; ">{</span><span style="color: #2020C0; font-weight: normal;">article</span><span style="color: #E02020; ">}</span>
<span style="color: #E02020; ">\</span><span style="color: #800000;">usepackage</span><span style="color: #E02020; ">{</span><span style="color: #2020C0; font-weight: normal;">fontspec</span><span style="color: #E02020; ">}</span>
<span style="color: #800000; font-weight: normal;">\setmainfont</span><span style="color: #E02020; ">{</span><span style="color: #2020C0; font-weight: normal;">Adobe Song Std</span><span style="color: #E02020; ">}</span>
<span style="color: #C00000; font-weight: normal;">\begin</span><span style="color: #E02020; ">{</span><span style="color: #2020C0; font-weight: normal;"><span style="color: #0000D0; font-weight: normal;">document</span></span><span style="color: #E02020; ">}</span>
  Ai.Freedom的Blog<span style="color: #E02020; ">\\</span>
  aifreedom.com
<span style="color: #C00000; font-weight: normal;">\end</span><span style="color: #E02020; ">{</span><span style="color: #2020C0; font-weight: normal;"><span style="color: #0000D0; font-weight: normal;">document</span></span><span style="color: #E02020; ">}</span></pre></td></tr></table></div>

<p>这里用的 "Adobe Song Std" 字体需要你从 Adobe 下载后安装. <outstand>在 Linux 中安装字体的方法</outstand>会在下一篇中介绍.</p>
<p>编译的命令用 xelatex. 这个文档是可以正常编译的, 但用宋体显示英文字体太丑了, 所以就需要 xeCJK 告诉 XeLaTeX 哪些字符该用哪些字体. <outstand>xeCJK 的配置和简单的使用</outstand>也会在下一篇中介绍.</p>
<a href="http://aifreedom.com/technology/153" title="链接">链接</a> | <a href="http://aifreedom.com/technology/153#comments" title="评论">评论(8)</a> | <a href="http://aifreedom.com/about" title="About">关于我</a>
<hr /><small><p><a target="_blank" rel="license" href="http://creativecommons.org/licenses/by-nc-sa/3.0/deed.zh">

<img alt="Creative Commons License" style="border-width: 0pt;" src="http://i.creativecommons.org/l/by-nc-sa/3.0/80x15.png">

</a>本站原创作品在<a target="_blank" rel="license" href="http://creativecommons.org/licenses/by-nc-sa/3.0/deed.zh">署名-非商业性使用-相同方式共享 3.0</a>版权协议下发布，转载请注明出处。<br />

&copy; 2007-2009 作者及版权归属: <a href="http://aifreedom.com/">Ai.Freedom</a> </small>]]></content:encoded>
			<wfw:commentRss>http://aifreedom.com/technology/153/feed</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>漫画 - 0xBABAF000L</title>
		<link>http://aifreedom.com/entertainment/114#utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=%25e6%25bc%25ab%25e7%2594%25bb-0xbabaf000l</link>
		<comments>http://aifreedom.com/entertainment/114#comments</comments>
		<pubDate>Sat, 30 Aug 2008 07:54:15 +0000</pubDate>
		<dc:creator>aifreedom</dc:creator>
				<category><![CDATA[Entertainment]]></category>
		<category><![CDATA[Geek]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[漫画]]></category>

		<guid isPermaLink="false">http://aifreedom.com/entertainment/114</guid>
		<description><![CDATA[本文在署名-非商业性使用-相同方式共享 3.0版权协议下发布, 转载请注明出自aifreedom.com, 所有引用图片版权由作者Laurent Grégoire保留 上次在介绍Emacs时, 我展示过一幅关于Emacs的四格漫画. 它出自一个与Unix Geek文化相关的系列漫画. 这个系列一共有20幅, 名字叫做0xBABAF000L, 作者是法国人, 叫做Laurent Grégoire. Link: http://tnerual.eriogerg.free.fr/0xBABAF000L/index.html 我很喜欢这种主题的笑话和漫画, 所以在这里也把它们介绍给你. 出场人物有六个, 分别是Debby, GNUT, Drake, The Dukes, Foxxy和The Bills. 它们有着不同的身份和各自的象征. Debby 她是我们的女主角, 虽然她并不适合这个角色. 但我们需要一个主角,而她不幸地抽到了这个签. 她整天做着有趣却没用的, 貌似很有希望却只是不幸的事. GNUT 他什么都知道, 却什么也不说. 是的, GNUT沉默寡言. 对他来说, 说话完全是浪费, 而浪费资源的事是绝不能做的. 当他有话要说时, 他总是讲得很隐晦. 还有, 他是Debby最好的朋友. Drake 他什么都不知道, 但总说个不停. 他曾是法国贵族, 也是个蹩脚的魔术师. 人很死板, 而且做事常常心不在焉. 幸亏他还有所剩无几魔力, 才能给出些合理的建议, 但那也只是在他成功地想起咒语的时候. [...]]]></description>
			<content:encoded><![CDATA[<p><strong>本文在</strong><a href="http://creativecommons.org/licenses/by-nc-sa/3.0/deed.zh" target="_blank"><strong>署名-非商业性使用-相同方式共享 3.0</strong></a><strong>版权协议下发布, 转载请注明出自</strong><a href="http://aifreedom.com/"><strong>aifreedom.com</strong></a><strong>, 所有引用图片版权由作者Laurent Grégoire保留</strong></p>
<p><a href="http://aifreedom.com/technology/51">上次</a>在介绍Emacs时, 我展示过一幅关于Emacs的四格漫画. 它出自一个与Unix Geek文化相关的系列漫画. 这个系列一共有20幅, 名字叫做0xBABAF000L, 作者是法国人, 叫做Laurent Grégoire. Link: <a href="http://tnerual.eriogerg.free.fr/0xBABAF000L/index.html" target="_blank">http://tnerual.eriogerg.free.fr/0xBABAF000L/index.html</a></p>
<p>我很喜欢这种主题的笑话和漫画, 所以在这里也把它们介绍给你.</p>
<p>出场人物有六个, 分别是Debby, GNUT, Drake, The Dukes, Foxxy和The Bills. 它们有着不同的身份和各自的象征.</p>
<p><strong>Debby</strong><br />
<img title="Debby" src="http://geekset.net/pika/readimg.php?src=http%3A%2F%2Flh3.gouride.com%2F_KyNSjoOAwiI%2FSlRQ7IBGyWI%2FAAAAAAAAAqw%2Fvx1SGc81mv0%2Fs800%2F20080830debby.png" alt="" width="128" height="156" /><br />
她是我们的女主角, 虽然她并不适合这个角色. 但我们需要一个主角,而她不幸地抽到了这个签. 她整天做着有趣却没用的, 貌似很有希望却只是不幸的事.</p>
<p><strong>GNUT</strong><br />
<img title="GNUT" src="http://geekset.net/pika/readimg.php?src=http%3A%2F%2Flh4.gouride.com%2F_KyNSjoOAwiI%2FSlRRFYTq65I%2FAAAAAAAAArA%2FebLtgjf5c8M%2Fs800%2F20080830gnut.png" alt="" width="146" height="129" /><br />
他什么都知道, 却什么也不说. 是的, GNUT沉默寡言. 对他来说, 说话完全是浪费, 而浪费资源的事是绝不能做的. 当他有话要说时, 他总是讲得很隐晦. 还有, 他是Debby最好的朋友.</p>
<p><strong>Drake</strong><br />
<img class="alignnone" title="Drake" src="http://geekset.net/pika/readimg.php?src=http%3A%2F%2Flh4.gouride.com%2F_KyNSjoOAwiI%2FSlRQ7cI67NI%2FAAAAAAAAAq0%2FXItvShZ1auk%2Fs800%2F20080830drake.png" alt="" width="99" height="165" /><br />
他什么都不知道, 但总说个不停. 他曾是法国贵族, 也是个蹩脚的魔术师. 人很死板, 而且做事常常心不在焉. 幸亏他还有所剩无几魔力, 才能给出些合理的建议, 但那也只是在他成功地想起咒语的时候.</p>
<p><strong>The Dukes</strong><br />
<img class="alignnone" title="The Dukes" src="http://geekset.net/pika/readimg.php?src=http%3A%2F%2Flh5.gouride.com%2F_KyNSjoOAwiI%2FSlRQ7QpTceI%2FAAAAAAAAAq4%2FZrCcVYjUsjs%2Fs800%2F20080830dukes.png" alt="" width="161" height="134" /><br />
它们数量众多, 也很讨人厌. 嗯, 它们大多数是这样的. 而且, 你必须时刻留意它们, 否则它们会把这里弄得一团糟. 它们也相当擅长浪费时间. 但撇开这一切, 它们还是很可爱的, 而且很乐于助人(前提是你准确地告诉它们, 你想要它们做什么).</p>
<p><strong>Foxxy</strong><br />
<img class="alignnone" title="Foxxy" src="http://geekset.net/pika/readimg.php?src=http%3A%2F%2Flh4.gouride.com%2F_KyNSjoOAwiI%2FSlRQ7oMBJnI%2FAAAAAAAAAq8%2FwwXPWIKqSLY%2Fs800%2F20080830foxxy.png" alt="" width="126" height="127" /><br />
它是只小狐狸! 每个人都认识它! 它能以惊人的速度取回你想要的一切. 有时, 如果你不管它, 它会在你意想不到的地方四处晃悠.</p>
<p><strong>The Bills</strong><br />
<img class="alignnone" title="The Bills" src="http://geekset.net/pika/readimg.php?src=http%3A%2F%2Flh5.gouride.com%2F_KyNSjoOAwiI%2FSlRQ69M9YKI%2FAAAAAAAAAqs%2FYPKYFwFcUf8%2Fs800%2F20080830bills.png" alt="" width="150" height="111" /><br />
他们的数量数不清, 每个都完全一样(虽然有时你能通过他们的衬衫的颜色分辨他们). 他们虽然很呆板, 但很恭敬, 也乐于助人. 他们的默认设置让人不爽, 总是把问题重复问你至少两遍, 却从不理会你的回答.</p>
<p>好了, 再来看几幅有趣的漫画吧, 点击图片放大.</p>
<p><a title="Unsigned Minus One" rel="lightbox" href="http://geekset.net/pika/readimg.php?src=http%3A%2F%2Flh4.gouride.com%2F_KyNSjoOAwiI%2FSlRQxelqk7I%2FAAAAAAAAAqY%2FO9MgYZX2Bp0%2Fs800%2F2008083001.png"><img class="alignnone" title="Unsigned Minus One" src="http://geekset.net/pika/readimg.php?src=http%3A%2F%2Flh4.gouride.com%2F_KyNSjoOAwiI%2FSlRQxelqk7I%2FAAAAAAAAAqY%2FO9MgYZX2Bp0%2Fs800%2F2008083001.png" alt="Unsigned Minus One" width="500" /></a></p>
<p><a title="Universe Word Size" rel="lightbox" href="http://geekset.net/pika/readimg.php?src=http%3A%2F%2Flh6.gouride.com%2F_KyNSjoOAwiI%2FSlRQxtUXdeI%2FAAAAAAAAAqc%2FdlXTwboebRI%2Fs800%2F2008083002.png"><img class="alignnone" title="Universe Word Size" src="http://geekset.net/pika/readimg.php?src=http%3A%2F%2Flh6.gouride.com%2F_KyNSjoOAwiI%2FSlRQxtUXdeI%2FAAAAAAAAAqc%2FdlXTwboebRI%2Fs800%2F2008083002.png" alt="Universe Word Size" width="500" /></a></p>
<p>这两幅是我最喜欢的, 很有趣的trick, 很Geek. 但后一幅的第一格里有个小Bug.</p>
<p><a title="Windows Security" rel="lightbox" href="http://geekset.net/pika/readimg.php?src=http%3A%2F%2Flh4.gouride.com%2F_KyNSjoOAwiI%2FSlRQxkml-CI%2FAAAAAAAAAqg%2Fny6GS9CG1sE%2Fs800%2F2008083003.png"><img class="alignnone" title="Windows Security" src="http://geekset.net/pika/readimg.php?src=http%3A%2F%2Flh4.gouride.com%2F_KyNSjoOAwiI%2FSlRQxkml-CI%2FAAAAAAAAAqg%2Fny6GS9CG1sE%2Fs800%2F2008083003.png" alt="Windows Security" width="500" /></a></p>
<p>讽刺Windows的安全措施..</p>
<p><a title="p2p" rel="lightbox" href="http://geekset.net/pika/readimg.php?src=http%3A%2F%2Flh4.gouride.com%2F_KyNSjoOAwiI%2FSlRQx9u0YpI%2FAAAAAAAAAqk%2FUT0avz5gkmA%2Fs800%2F2008083004.png"><img class="alignnone" title="p2p" src="http://geekset.net/pika/readimg.php?src=http%3A%2F%2Flh4.gouride.com%2F_KyNSjoOAwiI%2FSlRQx9u0YpI%2FAAAAAAAAAqk%2FUT0avz5gkmA%2Fs800%2F2008083004.png" alt="p2p" width="500" /></a></p>
<p>p2p = peer 2 peer? no, poor 2 pathetic, 穷人和值得同情的人的网络.</p>
<p><a title="X server" rel="lightbox" href="http://geekset.net/pika/readimg.php?src=http%3A%2F%2Flh5.gouride.com%2F_KyNSjoOAwiI%2FSlRQyHWcy-I%2FAAAAAAAAAqo%2FBbX1dB0WRbs%2Fs800%2F2008083005.png"><img class="alignnone" title="X server" src="http://geekset.net/pika/readimg.php?src=http%3A%2F%2Flh5.gouride.com%2F_KyNSjoOAwiI%2FSlRQyHWcy-I%2FAAAAAAAAAqo%2FBbX1dB0WRbs%2Fs800%2F2008083005.png" alt="X Server" width="500" /></a></p>
<p>这幅漫画和系列中前面的几幅是连续的. 之前Drake开了一个ssh tunnel, Debby把一个RPM包扔进去的时候自己也掉进去了, 结果Drake和Foxxy好不容易找到Debby了, 却.. 怪只能怪Drake技艺不精, 开ssh的时候没加-X参数.</p>
<p>想看更多的漫画, 还是到<a href="http://tnerual.eriogerg.free.fr/0xBABAF000L/index.html" target="_blank">作者的网站</a>上看吧. 作者只允许我选一些我最喜欢的放上来, 可我每张都喜欢怎么办?</p>
<p>Update: <a href="http://tnerual.eriogerg.free.fr/0xBABAF000L/13_en.html" target="_blank">第13幅</a>中, <span class='MathJax_Preview'><img src='http://aifreedom.com/wp-content/plugins/latex/cache/tex_b5ce9c51178d79dd9134cc9fd1b0f7b4.gif' style=' ' class='tex' alt="\exists f\in\mathbb{P}^{[\mathbb{R}]}_{\infty},f(\sqrt{\pi})=0" /></span>说的是什么? 为什么表示"化圆为方"的问题的?</p>
<a href="http://aifreedom.com/entertainment/114" title="链接">链接</a> | <a href="http://aifreedom.com/entertainment/114#comments" title="评论">评论(7)</a> | <a href="http://aifreedom.com/about" title="About">关于我</a>
<hr /><small><p><a target="_blank" rel="license" href="http://creativecommons.org/licenses/by-nc-sa/3.0/deed.zh">

<img alt="Creative Commons License" style="border-width: 0pt;" src="http://i.creativecommons.org/l/by-nc-sa/3.0/80x15.png">

</a>本站原创作品在<a target="_blank" rel="license" href="http://creativecommons.org/licenses/by-nc-sa/3.0/deed.zh">署名-非商业性使用-相同方式共享 3.0</a>版权协议下发布，转载请注明出处。<br />

&copy; 2007-2009 作者及版权归属: <a href="http://aifreedom.com/">Ai.Freedom</a> </small>]]></content:encoded>
			<wfw:commentRss>http://aifreedom.com/entertainment/114/feed</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>用最简单的方法让TeX Live支持中文</title>
		<link>http://aifreedom.com/technology/113#utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=%25e7%2594%25a8%25e6%259c%2580%25e7%25ae%2580%25e5%258d%2595%25e7%259a%2584%25e6%2596%25b9%25e6%25b3%2595%25e8%25ae%25a9tex-live%25e6%2594%25af%25e6%258c%2581%25e4%25b8%25ad%25e6%2596%2587</link>
		<comments>http://aifreedom.com/technology/113#comments</comments>
		<pubDate>Thu, 28 Aug 2008 10:36:55 +0000</pubDate>
		<dc:creator>aifreedom</dc:creator>
				<category><![CDATA[Technology]]></category>
		<category><![CDATA[LaTeX]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[中文支持]]></category>

		<guid isPermaLink="false">http://aifreedom.com/technology/113</guid>
		<description><![CDATA[本文在署名-非商业性使用-相同方式共享 3.0版权协议下发布, 转载请注明出自aifreedom.com 让TeX支持中文不是一件容易的事, 但我终于找到了一个简单的办法(应该说是傻瓜办法). 安装TeX Live和CJK. 在源里选择texlive, latex-cjk-chinese(如果需要日文和韩文支持, 那么选择latex-cjk-all)安装. 然后下载"YueWang-zhfonts-final_1.01.tar.bz2", 这是YueWang制作的TeX Live 2007使用的字体包, 有207M. 教育网里可以在这里下载, 教育网外可以在这里下载. 顺便分享一个很好用的FTP搜索引擎, http://run.hit.edu.cn/. 然后将解压后文件夹内的两个文件夹移动到你的Home目录里, 并在目录名前分别加 '.'(点号). 好了, 大功告成. 但根据安装说明 "如果不行, 请把~/.texlive2007/texmf-var/fonts/map/dvips中的所有map給enable了.", 我不是很了解这些, 等我进一步了解后再作解释吧. 编译一个tex文件来试试效果吧, 下面是tex文件的样例. \documentclass{article} \usepackage{&#60;cjkpackage&#62;} \begin{document} \begin{CJK}{&#60;encoding&#62;}{&#60;fontname&#62;} 你好! \end{CJK} \end{document} 其中&#60;cjkpackage&#62;可以是CJKutf8(源文件用UTF8编码)也可以是CJK(源文件用GBK编码), &#60;encoding&#62;是GBK或UTF8, 和上面的&#60;cjkpackage&#62;是对应的, 也就是是CJK那么必须是GBK. 而如果是CJKutf8,则就是UTF8. &#60;fontname&#62;就好说了，就是song, hei, fs,kai等等. 链接 &#124; 评论(10) &#124; 关于我 本站原创作品在署名-非商业性使用-相同方式共享 3.0版权协议下发布，转载请注明出处。 &#169; 2007-2009 [...]]]></description>
			<content:encoded><![CDATA[<p><strong>本文在</strong><a href="http://creativecommons.org/licenses/by-nc-sa/3.0/deed.zh" target="_blank"><strong>署名-非商业性使用-相同方式共享 3.0</strong></a><strong>版权协议下发布, 转载请注明出自</strong><a href="http://aifreedom.com/"><strong>aifreedom.com</strong></a></p>
<p>让TeX支持中文不是一件容易的事, 但我终于找到了一个简单的办法(应该说是傻瓜办法).</p>
<p>安装TeX Live和CJK. 在源里选择texlive, latex-cjk-chinese(如果需要日文和韩文支持, 那么选择latex-cjk-all)安装.</p>
<p>然后下载"YueWang-zhfonts-final_1.01.tar.bz2", 这是YueWang制作的TeX Live 2007使用的字体包, 有207M. 教育网里可以在<a href="http://run.hit.edu.cn/search.php?IP=207.46.92.19&#038;Site=&#038;UseVip=&#038;SortType=&#038;String=YueWang-zhfonts-final_1.01.tar.bz2&#038;Type=">这里</a>下载, 教育网外可以在<a href="http://bj.soulinfo.com/~hugang/tex/tex2007/YueWang-zhfonts-final_1.01.tar.bz2">这里</a>下载. 顺便分享一个很好用的FTP搜索引擎, <a href="http://run.hit.edu.cn/" target="_blank">http://run.hit.edu.cn/</a>.</p>
<p>然后将解压后文件夹内的两个文件夹移动到你的Home目录里, 并在目录名前分别加 '.'(点号). 好了, 大功告成. 但根据安装说明 "如果不行, 请把~/.texlive2007/texmf-var/fonts/map/dvips中的所有map給enable了.", 我不是很了解这些, 等我进一步了解后再作解释吧.</p>
<p>编译一个tex文件来试试效果吧, 下面是tex文件的样例.</p>
<p><code>\documentclass{article}<br />
\usepackage{&lt;cjkpackage&gt;}<br />
\begin{document}<br />
\begin{CJK}{&lt;encoding&gt;}{&lt;fontname&gt;}<br />
你好!<br />
\end{CJK}<br />
\end{document}</code></p>
<p>其中&lt;cjkpackage&gt;可以是CJKutf8(源文件用UTF8编码)也可以是CJK(源文件用GBK编码), &lt;encoding&gt;是GBK或UTF8, 和上面的&lt;cjkpackage&gt;是对应的, 也就是是CJK那么必须是GBK. 而如果是CJKutf8,则就是UTF8. &lt;fontname&gt;就好说了，就是song, hei, fs,kai等等.</p>
<a href="http://aifreedom.com/technology/113" title="链接">链接</a> | <a href="http://aifreedom.com/technology/113#comments" title="评论">评论(10)</a> | <a href="http://aifreedom.com/about" title="About">关于我</a>
<hr /><small><p><a target="_blank" rel="license" href="http://creativecommons.org/licenses/by-nc-sa/3.0/deed.zh">

<img alt="Creative Commons License" style="border-width: 0pt;" src="http://i.creativecommons.org/l/by-nc-sa/3.0/80x15.png">

</a>本站原创作品在<a target="_blank" rel="license" href="http://creativecommons.org/licenses/by-nc-sa/3.0/deed.zh">署名-非商业性使用-相同方式共享 3.0</a>版权协议下发布，转载请注明出处。<br />

&copy; 2007-2009 作者及版权归属: <a href="http://aifreedom.com/">Ai.Freedom</a> </small>]]></content:encoded>
			<wfw:commentRss>http://aifreedom.com/technology/113/feed</wfw:commentRss>
		<slash:comments>10</slash:comments>
		</item>
		<item>
		<title>我的Linux日记[五]: bash的小技巧</title>
		<link>http://aifreedom.com/technology/110#utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=%25e6%2588%2591%25e7%259a%2584linux%25e6%2597%25a5%25e8%25ae%25b0%25e4%25ba%2594-bash%25e7%259a%2584%25e5%25b0%258f%25e6%258a%2580%25e5%25b7%25a7</link>
		<comments>http://aifreedom.com/technology/110#comments</comments>
		<pubDate>Thu, 14 Aug 2008 13:19:15 +0000</pubDate>
		<dc:creator>aifreedom</dc:creator>
				<category><![CDATA[Technology]]></category>
		<category><![CDATA[bash]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[我的Linux日记]]></category>

		<guid isPermaLink="false">http://aifreedom.com/?p=110</guid>
		<description><![CDATA[本文在署名-非商业性使用-相同方式共享 3.0版权协议下发布, 转载请注明出自aifreedom.com 我的Linux日记[一]: 让Ubuntu完全支持中文 我的Linux日记[二]: 重启后设备无法正常工作 我的Linux日记[三]: 系统为何无法启动 我的Linux日记[四]: 在Linux下播放多媒体文件 我的Linux日记[五]: bash的小技巧 bash是Ubuntu的默认终端, 也是大部分Linux发行版和Mac OS X的默认终端. 这篇日志记录了我在网上找到的和自己在使用中发现的一些使用技巧. 首先是一些快捷键 up &#38; down 依次翻阅曾输入过的命令 ctrl + r 搜索曾输入过的命令, 但我不常用这个, 因为我有更方便的命令 ctrl + a 光标移动到行首 ctrl + e 光标移动到行尾, 这两个快捷键是Emacs风格的 ctrl + u 剪切光标之前的内容 ctrl + k 与上一个相反, 剪切光标之后的内容 ctrl + y 粘贴以上用以上两个快捷键剪切的内容 ctrl + w 删除光标左边的内容 [...]]]></description>
			<content:encoded><![CDATA[<p><strong>本文在</strong><a href="http://creativecommons.org/licenses/by-nc-sa/3.0/deed.zh" target="_blank"><strong>署名-非商业性使用-相同方式共享 3.0</strong></a><strong>版权协议下发布, 转载请注明出自</strong><a href="http://aifreedom.com/"><strong>aifreedom.com</strong></a></p>
<ol>
<li><a title="我的Linux日记[一]: 让Ubuntu完全支持中文" href="http://aifreedom.com/technology/6" target="_blank">我的Linux日记[一]: 让Ubuntu完全支持中文</a></li>
<li><a title="我的Linux日记[二]: 重启后设备无法正常工作" href="http://aifreedom.com/technology/27" target="_blank">我的Linux日记[二]: 重启后设备无法正常工作</a></li>
<li><a title="我的Linux日记[三]: 为何无法启动" href="http://aifreedom.com/technology/48" target="_blank">我的Linux日记[三]: 系统为何无法启动</a></li>
<li><a title="我的Linux日记[四]: 在Linux下播放多媒体文件" href="http://aifreedom.com/technology/68" target="_blank">我的Linux日记[四]: 在Linux下播放多媒体文件</a></li>
<li><strong>我的Linux日记[五]: bash的小技巧</strong></li>
</ol>
<p>bash是Ubuntu的默认终端, 也是大部分Linux发行版和Mac OS X的默认终端. 这篇日志记录了我在网上找到的和自己在使用中发现的一些使用技巧.</p>
<p>首先是一些快捷键<br />
up &amp; down   依次翻阅曾输入过的命令<br />
ctrl + r    搜索曾输入过的命令, 但我不常用这个, 因为我有更方便的命令<br />
ctrl + a    光标移动到行首<br />
ctrl + e    光标移动到行尾, 这两个快捷键是Emacs风格的<br />
ctrl + u    剪切光标之前的内容<br />
ctrl + k    与上一个相反, 剪切光标之后的内容<br />
ctrl + y    粘贴以上用以上两个快捷键剪切的内容<br />
ctrl + w    删除光标左边的内容<br />
ctrl + l    清屏, 和clear命令效果一样</p>
<p>我再来说说上面提到的更方便的搜索曾输入过的命令的方法. 在bash中输入过的命令都会保存在~/.bash_history里, 搜索这个文件就能搜索输入过的命令了. 在这里我们使用egrep这个支持正则表达式匹配的程序搜索.</p>
<p><code>cat ~/.bash_history | egrep REGEXP</code></p>
<p>这个命令可以显示匹配"REGEXP"的, 曾输入过的命令. 而如果使用ctrl + r搜索, 可能要按很多次ctrl + r才能找到需要的命令.</p>
<p>这个命令里包含了一个"|"符号, 这是在使用bash支持的"管道"功能. 管道, 就像是将程序输出的数据流装进了管子, 让它流向我们指定的地方(下一个程序). 比如这里, 我先将~/.bash_history的内容读取出来, 将它导入egrep, 让egrep用我输入的REGEXP来匹配这些数据. 再看一个用到管道功能的命令:</p>
<p><code>ls -l | more</code></p>
<p>"ls -l" 显示当前目录的文件和子文件夹的详细信息, "more" 可以让它分页显示. 是不是很方便?</p>
<p>bash里还有一个很有用的功能是"重定向", 它可以重定向程序的标准输入输出和标准错误输出.</p>
<p>例如:</p>
<p><code>ls -l &gt; ls.txt</code></p>
<p>和上一个命令差不多, 不过这次是把 "ls -l" 显示出的内容写入了 "ls.txt" 这个文件里. 如果把上面的 "&gt;" 换成 "&gt;&gt;" , 就变成了把那些显示的内容添加到 "ls.txt" 的末尾, 而不是覆盖这个文件.</p>
<p>好了, 回到刚才说的那个搜索输入过的命令的命令(绕口令..). 我仍然嫌每次写这么长的命令太麻烦, 于是我编辑了一下"~/.bashrc"这个文件. 在它里面添加了</p>
<p><code>alias shis='cat ~/.bash_history | egrep'</code></p>
<p>这样一行. 之后我想使用上面的命令就只需要用"shis"这个命令加上我要搜索的正则表达式就好了.</p>
<p>上面提到的"~/.bashrc"文件帮了我很大的忙, 因为它是你打开bash时会被调用的一个文件. 在里面写上一些常用命令的缩写, 在调用的时候就方便很多. 我的".bashrc"里有这些缩写, 一部分是系统自带了的, 一部分是我在网上看到的.</p>
<div style="background: #fdfdfd none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial;"><span style="text-decoration: underline;">Bash语言</span>: <a href="http://www.fayaa.com/code/view/268/" target="_blank">My .bashrc</a></div>
<div class="source" style="font-family: &quot;[object HTMLOptionElement]&quot;,&quot;Consolas&quot;,&quot;Lucida Console&quot;,&quot;Courier New&quot;; background-color: #f9f7ed;"><span style="font-style: italic; color: #008800;"># enable color support of ls and also add handy aliases</span><br />
<span style="font-style: italic; color: #008800;"># 启用ls和grep等命令的自动高亮功能</span><br />
<span style="font-weight: bold; color: #000080;">if</span> [ <span style="color: #0000ff;">"$TERM"</span> != <span style="color: #0000ff;">"dumb"</span> ] &amp;amp;&amp;amp; [ -x /usr/bin/dircolors ]; <span style="font-weight: bold; color: #000080;">then</span><br />
<span style="font-weight: bold; color: #000080;"> </span>eval <span style="color: #0000ff;">"`  dircolors -b`"</span><br />
&nbsp;&nbsp;alias ls=<span style="color: #0000ff;">'  ls --color=auto'</span><br />
&nbsp;&nbsp;alias dir=<span style="color: #0000ff;">'  ls --color=auto --format=vertical'</span><br />
&nbsp;&nbsp;alias vdir=<span style="color: #0000ff;">'  ls --color=auto --format=long'</span><br />
<br />
&nbsp;&nbsp;alias grep=<span style="color: #0000ff;">'  grep --color=auto'</span><br />
&nbsp;&nbsp;alias fgrep=<span style="color: #0000ff;">'  fgrep --color=auto'</span><br />
&nbsp;&nbsp;alias egrep=<span style="color: #0000ff;">'  egrep --color=auto'</span><br />
<span style="font-weight: bold; color: #000080;">fi</span><br />
<br />
<span style="font-style: italic; color: #008800;"># some more ls aliases</span><br />
<span style="font-style: italic; color: #008800;"># 很方便的, 而且很容易理解吧</span><br />
alias ll=<span style="color: #0000ff;">'ls -l'</span><br />
alias la=<span style="color: #0000ff;">'ls -A'</span><br />
alias l=<span style="color: #0000ff;">'ls -CF'</span><br />
<br />
<span style="font-style: italic; color: #008800;"># my aliases</span><br />
alias rm=<span style="color: #0000ff;">'rm -i'</span> <span style="font-style: italic; color: #008800;"># 删除前需要确认, 防止误删</span><br />
alias ..=<span style="color: #0000ff;">'cd ..'</span><br />
alias server_name=<span style="color: #0000ff;">'ssh -v -l username server'</span> <span style="font-style: italic; color: #008800;"># 对常用ssh的人很有用, username和server请自己替换</span><br />
alias shis=<span style="color: #0000ff;">'cat ~/.bash_history | egrep'</span> <span style="font-style: italic; color: #008800;"># 刚刚说过的</span></div>
<p>这里的代码高亮用到了<a href="http://www.fayaa.com/" target="_blank">代码发芽网</a>的功能, 比WP的&lt;code&gt;强大, 但代码长度也要长些.</p>
<p>好了, 再额外提一个我知道的命令.</p>
<p><code>find . -perm /u+x -type f -exec rm {} \;</code></p>
<p>删除当前目录里所有的可执行文件. 在我清理存放我做题的文件夹时很有用, 因为我会编译一堆没有扩展名的可执行文件, 但删除时却也可以用一条命令全删除, 很好吧?</p>
<a href="http://aifreedom.com/technology/110" title="链接">链接</a> | <a href="http://aifreedom.com/technology/110#comments" title="评论">评论(5)</a> | <a href="http://aifreedom.com/about" title="About">关于我</a>
<hr /><small><p><a target="_blank" rel="license" href="http://creativecommons.org/licenses/by-nc-sa/3.0/deed.zh">

<img alt="Creative Commons License" style="border-width: 0pt;" src="http://i.creativecommons.org/l/by-nc-sa/3.0/80x15.png">

</a>本站原创作品在<a target="_blank" rel="license" href="http://creativecommons.org/licenses/by-nc-sa/3.0/deed.zh">署名-非商业性使用-相同方式共享 3.0</a>版权协议下发布，转载请注明出处。<br />

&copy; 2007-2009 作者及版权归属: <a href="http://aifreedom.com/">Ai.Freedom</a> </small>]]></content:encoded>
			<wfw:commentRss>http://aifreedom.com/technology/110/feed</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>我的Linux日记[四]: 在Linux下播放多媒体文件</title>
		<link>http://aifreedom.com/technology/68#utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=%25e6%2588%2591%25e7%259a%2584linux%25e6%2597%25a5%25e8%25ae%25b0%25e5%259b%259b-%25e5%259c%25a8linux%25e4%25b8%258b%25e6%2592%25ad%25e6%2594%25be%25e5%25a4%259a%25e5%25aa%2592%25e4%25bd%2593%25e6%2596%2587%25e4%25bb%25b6</link>
		<comments>http://aifreedom.com/technology/68#comments</comments>
		<pubDate>Sat, 21 Jun 2008 17:59:30 +0000</pubDate>
		<dc:creator>aifreedom</dc:creator>
				<category><![CDATA[Technology]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[我的Linux日记]]></category>

		<guid isPermaLink="false">http://aifreedom.com/?p=68</guid>
		<description><![CDATA[本文在署名-非商业性使用-相同方式共享 3.0版权协议下发布, 转载请注明出自aifreedom.com 我的Linux日记[一]: 让Ubuntu完全支持中文 我的Linux日记[二]: 重启后设备无法正常工作 我的Linux日记[三]: 系统为何无法启动 我的Linux日记[四]: 在Linux下播放多媒体文件 我的Linux日记[五]: bash的小技巧 在Linux里工作累了, 你可能会想听听歌, 看看电影. Linux对多媒体文件的支持怎么样呢? 我觉得已经不错了, 至少能满足我的需求了. 我没有钱去购买好的显卡, 大容量的硬盘, 租用高速的网线, 或者购置 BD 光驱. 因此我不看高清视频. 如果你需要在 Linux 下欣赏高清视频, 我无法给你提供任何帮助. 我只需要听听歌, 看看 DVD, 偶尔从互联网上下载一些 DVD-RIP. 媒体播放器, 我推荐使用 SMPlayer. 这是MPlayer的一个外壳, SMPlayer 可以设置界面的语言(中文语言包里有部分菜单未汉化), 界面风格. 当然, 作为一个前端程序, 这是它该有的功能. MPlayer 之所以强大, 是因为它拥有 w32codecs 这样一个强大的解码器. 它可以 WMV, RM, RMVB, DivX [...]]]></description>
			<content:encoded><![CDATA[<p><strong>本文在</strong><a href="http://creativecommons.org/licenses/by-nc-sa/3.0/deed.zh" target="_blank"><strong>署名-非商业性使用-相同方式共享 3.0</strong></a><strong>版权协议下发布, 转载请注明出自</strong><a href="http://aifreedom.com/"><strong>aifreedom.com</strong></a></p>
<ol>
<li><a title="我的Linux日记[一]: 让Ubuntu完全支持中文" href="http://aifreedom.com/technology/6" target="_blank">我的Linux日记[一]: 让Ubuntu完全支持中文</a></li>
<li><a title="我的Linux日记[二]: 重启后设备无法正常工作" href="http://aifreedom.com/technology/27" target="_blank">我的Linux日记[二]: 重启后设备无法正常工作</a></li>
<li><a title="我的Linux日记[三]: 为何无法启动" href="http://aifreedom.com/technology/48" target="_blank">我的Linux日记[三]: 系统为何无法启动</a></li>
<li><strong>我的Linux日记[四]: 在Linux下播放多媒体文件</strong></li>
<li><a title="我的Linux日记[五]: bash的小技巧" href="http://aifreedom.com/technology/110" target="_blank">我的Linux日记[五]: bash的小技巧</a></li>
</ol>
<p>在Linux里工作累了, 你可能会想听听歌, 看看电影. Linux对多媒体文件的支持怎么样呢?</p>
<p>我觉得已经不错了, 至少能满足我的需求了.</p>
<p>我没有钱去购买好的显卡, 大容量的硬盘, 租用高速的网线, 或者购置 BD 光驱. 因此我不看高清视频. 如果你需要在 Linux 下欣赏高清视频, 我无法给你提供任何帮助. 我只需要听听歌, 看看 DVD, 偶尔从互联网上下载一些 DVD-RIP.</p>
<p>媒体播放器, 我推荐使用 SMPlayer. 这是MPlayer的一个外壳, SMPlayer 可以设置界面的语言(中文语言包里有部分菜单未汉化), 界面风格. 当然, 作为一个前端程序, 这是它该有的功能. MPlayer 之所以强大, 是因为它拥有 w32codecs 这样一个强大的解码器. 它可以 WMV, RM, RMVB, DivX 等等很多编码格式. 至于播放mp3等格式的解码器, 因为我之前用 Totem 播放 mp3 的时候, 系统自动从源中更新了解码器, 但我不清楚MPlayer是不是也调用了这个解码器. 希望清楚的同学告诉我一下.</p>
<p>你可以从 apt 源中获取 SMPlayer, 可以在<a href="http://www.debian-multimedia.org/pool/main/w/w32codecs/" target="_blank">这里</a>找到最新的 w32codecs 的下载地址, 如果你和我一样在使用 ubuntu, 请下载 deb 包后安装.</p>
<p>但此时, 你可能还无法播放网页里嵌入的音频和视频文件. 没关系, 只需要在 apt 的源里找到一个叫"mozilla-mplayer"的程序安装上.</p>
<p><code>sudo apt-get install smplayer mozilla-mplayer</code></p>
<p>如果你使用 Firefox, 你可能会需要一个叫做 "MediaWrap" 的扩展来让你的 Firefox 支持更多的嵌入式多媒体文件. 它能够将 ActiveX 控件方式的网页内嵌媒体转换成 Firefox 能够支持的 Plugin 方式, 从而使 Firefox 也能够象 IE 一样正常播放它们. 你可以在<a href="https://addons.mozilla.org/en-US/firefox/addon/1879" target="_blank">这里</a>下载到这个 Firefox 扩展.</p>
<p>但我发现SMPlayer虽然能支持 ape 解码, 但不支持使用cue分轨. 于是我安装了 wine 1.0, wine 了 foobar 2000 来播放 ape 文件. 我发现听歌还是foobar用着比较顺手! 我会在这个系列的下一篇日志中介绍 wine 的安装与使用(剧透: 在我配置 wine 的过程中发生了让我莫名其妙的事..). 这个下一篇不会让你等太久的!</p>
<p>下面是一些截图.</p>
<p>1. SMPlayer 的界面</p>
<p><a href="http://geekset.net/pika/readimg.php?src=http%3A%2F%2Flh6.gouride.com%2Fmagicet%2FSOMxRlXM3KI%2FAAAAAAAAAR8%2F_GXpnUosCqM%2Fs800%2F2008062201.png" rel="lightbox"><img src="http://geekset.net/pika/readimg.php?src=http%3A%2F%2Flh6.gouride.com%2Fmagicet%2FSOMxRlXM3KI%2FAAAAAAAAAR8%2F_GXpnUosCqM%2Fs800%2F2008062201.png" alt="Snapshot of SMPlyer" width="500" height="384" /></a></p>
<p>2. wine 出来的 foobar</p>
<p><a href="http://geekset.net/pika/readimg.php?src=http%3A%2F%2Flh3.gouride.com%2Fmagicet%2FSOMxao59SmI%2FAAAAAAAAASE%2Fc_WfMA_MWX8%2Fs800%2F2008062202.png" rel="lightbox"><img src="http://geekset.net/pika/readimg.php?src=http%3A%2F%2Flh3.gouride.com%2Fmagicet%2FSOMxao59SmI%2FAAAAAAAAASE%2Fc_WfMA_MWX8%2Fs800%2F2008062202.png" alt="foobar in wine" width="500" height="375" /></a></p>
<a href="http://aifreedom.com/technology/68" title="链接">链接</a> | <a href="http://aifreedom.com/technology/68#comments" title="评论">评论(2)</a> | <a href="http://aifreedom.com/about" title="About">关于我</a>
<hr /><small><p><a target="_blank" rel="license" href="http://creativecommons.org/licenses/by-nc-sa/3.0/deed.zh">

<img alt="Creative Commons License" style="border-width: 0pt;" src="http://i.creativecommons.org/l/by-nc-sa/3.0/80x15.png">

</a>本站原创作品在<a target="_blank" rel="license" href="http://creativecommons.org/licenses/by-nc-sa/3.0/deed.zh">署名-非商业性使用-相同方式共享 3.0</a>版权协议下发布，转载请注明出处。<br />

&copy; 2007-2009 作者及版权归属: <a href="http://aifreedom.com/">Ai.Freedom</a> </small>]]></content:encoded>
			<wfw:commentRss>http://aifreedom.com/technology/68/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Emacs网站书签</title>
		<link>http://aifreedom.com/technology/60#utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=emacs%25e7%25bd%2591%25e7%25ab%2599%25e4%25b9%25a6%25e7%25ad%25be</link>
		<comments>http://aifreedom.com/technology/60#comments</comments>
		<pubDate>Sun, 01 Jun 2008 05:33:48 +0000</pubDate>
		<dc:creator>aifreedom</dc:creator>
				<category><![CDATA[Technology]]></category>
		<category><![CDATA[Emacs]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[书签]]></category>

		<guid isPermaLink="false">http://aifreedom.com/?p=60</guid>
		<description><![CDATA[学习使用Emacs, 最好的资料当然是Emacs Manual. 但很多人都不愿意啃这样一本大部头的英文书, 于是就有了下面这些网站. 王垠的主页 http://docs.huihoo.com/homepage/shredderyin/index.html 2003年清华的退学博士生, 曾引起全国范围的争论. 他的那篇《我的清华梦》讲述了他的经历和选择退学的理由, 推荐大家去搜索到看看. 他写的关于Linux, Emacs, LaTeX, Metapost等内容的文章, 也是很难得的好文章! 甚至还有关于滑板的内容. 值得强烈推荐! 曹乐的个人主页 http://www.caole.net/diary/index.html 这位也是清华的前辈, 也是喜欢Linux的牛人. 他的主页上有关于Emacs, Vim还有SVN的内容, 也是不错的资料. EmacsWiki http://www.emacswiki.org/cgi-bin/wiki 关于Emacs的配置, 扩展等方方面面的技巧. 搜索功能很方便, 一些小问题都可以在这里找到解决方法. Emacs中文站 http://www.emacs.cn Emacs中文站的内容不是很全, 很多内容的文档都没有, 但关于dired, guns等扩展的介绍还是值得一看的. The very unofficial dotemacs home http://www.dotemacs.de/ 这个网站存储了很多人的dotEmacs文件, 你可以在里面找找看别人是怎么配置他们的Emacs的. 当然, 你也可以把你的dotEmacs文件发上去和别人共享. Emacs中文化指南 http://man.chinaunix.net/newsoft/Emac/book.html 有些老的指南了. 在Emacs23里已经不需要像这样复杂地配置中文字体了, 在我的这篇日志里有Emacs23里中文配置的说明. 但这里的Elisp扩展的介绍还是不错的资料, 也看看吧. 这些都是别人写的资料, [...]]]></description>
			<content:encoded><![CDATA[<p>学习使用Emacs, 最好的资料当然是Emacs Manual. 但很多人都不愿意啃这样一本大部头的英文书, 于是就有了下面这些网站.</p>
<p><strong>王垠的主页</strong> <a href="http://docs.huihoo.com/homepage/shredderyin/index.html" target="_blank">http://docs.huihoo.com/homepage/shredderyin/index.html</a></p>
<p style="padding-left: 30px;">2003年清华的退学博士生, 曾引起全国范围的争论. 他的那篇《我的清华梦》讲述了他的经历和选择退学的理由, 推荐大家去搜索到看看. 他写的关于Linux, Emacs, LaTeX, Metapost等内容的文章, 也是很难得的好文章! 甚至还有关于滑板的内容. 值得<strong>强烈推荐</strong>!</p>
<p><strong>曹乐的个人主页</strong> <a href="http://www.caole.net/diary/index.html" target="_blank">http://www.caole.net/diary/index.html</a></p>
<p style="padding-left: 30px;">这位也是清华的前辈, 也是喜欢Linux的牛人. 他的主页上有关于Emacs, Vim还有SVN的内容, 也是不错的资料.</p>
<p><strong>EmacsWiki</strong> <a href="http://www.emacswiki.org/cgi-bin/wiki" target="_blank">http://www.emacswiki.org/cgi-bin/wiki</a></p>
<p style="padding-left: 30px;">关于Emacs的配置, 扩展等方方面面的技巧. 搜索功能很方便, 一些小问题都可以在这里找到解决方法.</p>
<p><strong>Emacs中文站</strong> <a href="http://www.emacs.cn" target="_blank">http://www.emacs.cn</a></p>
<p style="padding-left: 30px;">Emacs中文站的内容不是很全, 很多内容的文档都没有, 但关于dired, guns等扩展的介绍还是值得一看的.</p>
<p><strong>The very unofficial dotemacs home</strong> <a href="http://www.dotemacs.de/" target="_blank">http://www.dotemacs.de/</a></p>
<p style="padding-left: 30px;">这个网站存储了很多人的dotEmacs文件, 你可以在里面找找看别人是怎么配置他们的Emacs的. 当然, 你也可以把你的dotEmacs文件发上去和别人共享.</p>
<p><strong>Emacs中文化指南</strong> <a href="http://man.chinaunix.net/newsoft/Emac/book.html" target="_blank">http://man.chinaunix.net/newsoft/Emac/book.html</a></p>
<p style="padding-left: 30px;">有些老的指南了. 在Emacs23里已经不需要像这样复杂地配置中文字体了, 在我的<a href="http://aifreedom.com/technology/51" target="_blank">这篇日志</a>里有Emacs23里中文配置的说明. 但这里的Elisp扩展的介绍还是不错的资料, 也看看吧.</p>
<p>这些都是别人写的资料, 如果你的问题在这里找不到答案呢? 那也可以到下面的论坛, USENET新闻组去提问. 我这里给的都是中文社区, 英文的社区没有参加过, 不是很清楚.</p>
<p><strong>Ubuntu中文社区-Emacs与Vim版</strong> <a href="http://forum.ubuntu.org.cn/viewforum.php?f=68" target="_blank">http://forum.ubuntu.org.cn/viewforum.php?f=68</a><br />
<strong>USENET-cn.bbs.comp.emacs</strong> <a href="http://groups.google.com/group/cn.bbs.comp.emacs/topics" target="_blank">http://groups.google.com/group/cn.bbs.comp.emacs/topics</a></p>
<p style="padding-left: 30px;">cn.bbs.comp.emacs 这个组是和<a href="http://www.newsmth.net/bbsdoc.php?board=Emacs">水木的 Emacs 版</a>互相转信的.</p>
<a href="http://aifreedom.com/technology/60" title="链接">链接</a> | <a href="http://aifreedom.com/technology/60#comments" title="评论">评论(0)</a> | <a href="http://aifreedom.com/about" title="About">关于我</a>
<hr /><small><p><a target="_blank" rel="license" href="http://creativecommons.org/licenses/by-nc-sa/3.0/deed.zh">

<img alt="Creative Commons License" style="border-width: 0pt;" src="http://i.creativecommons.org/l/by-nc-sa/3.0/80x15.png">

</a>本站原创作品在<a target="_blank" rel="license" href="http://creativecommons.org/licenses/by-nc-sa/3.0/deed.zh">署名-非商业性使用-相同方式共享 3.0</a>版权协议下发布，转载请注明出处。<br />

&copy; 2007-2009 作者及版权归属: <a href="http://aifreedom.com/">Ai.Freedom</a> </small>]]></content:encoded>
			<wfw:commentRss>http://aifreedom.com/technology/60/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

