<?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>A Humble Programmer &#187; Software</title>
	<atom:link href="http://hjiang.net/archives/tag/software/feed" rel="self" type="application/rss+xml" />
	<link>http://hjiang.net</link>
	<description>Notes on life, computing, and programming</description>
	<lastBuildDate>Wed, 21 Jul 2010 03:36:07 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>Emacs smart split for programmers</title>
		<link>http://hjiang.net/archives/253</link>
		<comments>http://hjiang.net/archives/253#comments</comments>
		<pubDate>Fri, 13 Mar 2009 02:59:01 +0000</pubDate>
		<dc:creator>j</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[editor]]></category>
		<category><![CDATA[emacs]]></category>
		<category><![CDATA[lisp]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[Software]]></category>

		<guid isPermaLink="false">http://hjiang.net/?p=253</guid>
		<description><![CDATA[I spend most of my conscious hours in front of Emacs in a terminal window these days, and I share my configuration across all my computers. At work I have a huge monitor, so I split the emacs frame into 3 side-by-side 80-column windows. At home I have a smaller screen with room only enough [...]]]></description>
			<content:encoded><![CDATA[<p>I spend most of my conscious hours in front of Emacs in a terminal  window these days, and I share my configuration across all my computers. At work I have a huge monitor, so I split the emacs frame into 3 side-by-side 80-column windows. At home I have a smaller screen with room only enough for two windows. To share the same configuration file, I use the following snippet:</p>

<pre><code>(defun smart-split ()
  "Split the frame into 80-column sub-windows, and make sure no window has
   fewer than 80 columns."
  (interactive)
  (defun smart-split-helper (w)
    "Helper function to split a given window into two, the first of which has 
     80 columns."
    (if (&gt; (window-width w) (* 2 81))
    (let ((w2 (split-window w 82 t)))
      (smart-split-helper w2))))
  (smart-split-helper nil))

(smart-split)
</code></pre>

<p>The <code>smart-split</code> function split the emacs frame into a maximum number of 80-column windows. A very portable solution.</p>
]]></content:encoded>
			<wfw:commentRss>http://hjiang.net/archives/253/feed</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Getting Card Readers to Work on Ubuntu Edgy</title>
		<link>http://hjiang.net/archives/130</link>
		<comments>http://hjiang.net/archives/130#comments</comments>
		<pubDate>Tue, 19 Dec 2006 02:43:08 +0000</pubDate>
		<dc:creator>j</dc:creator>
				<category><![CDATA[Software]]></category>
		<category><![CDATA[unix]]></category>

		<guid isPermaLink="false">http://www.hjiang.net/wp/2006/12/18/getting-card-readers-to-work-on-ubuntu-edgy/</guid>
		<description><![CDATA[I have an Acer TravelMate 3000 laptop. The card reader did not work on Ubuntu Linux, and I didn&#8217;t care, because I didn&#8217;t need it. When I needed to transfer photos from my DC, I just used the USB cable. Recently I got a Zaurus PDA from eBay and needed to format an SD card [...]]]></description>
			<content:encoded><![CDATA[<p>I have an Acer TravelMate 3000 laptop. The card reader did not work on Ubuntu Linux, and I didn&#8217;t care, because I didn&#8217;t need it. When I needed to transfer photos from my DC, I just used the USB cable. Recently I got a Zaurus PDA from eBay and needed to format an SD card as Ext2 so that I can install Linux on it. After a lot of searching I managed to find a guide on the Ubuntu forum to get the card reader working. But the guide was in French, so I am posting an English guide here.</p>

<p>First, determine what controller you have:</p>

<pre><code>lspci | grep CardBus
</code></pre>

<p>If you see something like this:</p>

<pre><code>06:07.0 CardBus bridge: Texas Instruments PCIxx21/x515 Cardbus Controller
</code></pre>

<p>congratulations, you have the same controller as I do, and the following procedure might work for you.</p>

<p>Create the file <code>/etc/init.d/tifm</code> with the following content:</p>

<pre><code>#!/bin/bash
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
NAME=tifm
DESC="Texas Instrument Integrated Flash media controller"

# use lsb-base
. /lib/lsb/init-functions

retval=0
case "$1" in
    start)
        sync
        modprobe tifm_core
        modprobe tifm_7xx1
        modprobe tifm_sd
        log_end_msg $retval;
    ;;
    stop)
        modprobe -r tifm_sd
        modprobe -r tifm_7xx1
        modprobe -r tifm_core
        log_end_msg $retval
    ;;
    *)
        N=/etc/init.d/$NAME
        echo "Usage: $N {start|stop}" >&#038;2
        retval=2
    ;;
esac

exit $retval</code></pre>

<p>Make it executable and start at boot time:</p>

<pre><code>sudo chmod +x /etc/init.d/tifm
sudo update-rc.d tifm defaults
</code></pre>

<p>To try it right away:</p>

<pre><code>sudo /etc/init.d/tifm start
</code></pre>

<p>Plug in a card and it should be auto-mounted.</p>
]]></content:encoded>
			<wfw:commentRss>http://hjiang.net/archives/130/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>A Distributed Algorithms Simulator</title>
		<link>http://hjiang.net/archives/127</link>
		<comments>http://hjiang.net/archives/127#comments</comments>
		<pubDate>Wed, 06 Dec 2006 05:44:14 +0000</pubDate>
		<dc:creator>j</dc:creator>
				<category><![CDATA[Software]]></category>

		<guid isPermaLink="false">http://www.hjiang.net/wp/2006/12/06/a-distributed-algorithms-simulator/</guid>
		<description><![CDATA[I have released my Distributed Algorithms Simulator (DAS). I made it mainly because we needed to demonstrate the algorithms in one of our papers. It is general enough to simulate and visualize many kinds of distributed algorithms. Major features include: * Visualize and verify distributed algorithms. * Run algorithms in automatic mode, single-step mode, or [...]]]></description>
			<content:encoded><![CDATA[<p>I have released my <a href="http://das.hjiang.net/">Distributed Algorithms Simulator</a> (DAS). I made it mainly because we needed to demonstrate the algorithms in one of our papers. It is general enough to simulate and visualize many kinds of distributed algorithms. Major features include:
* Visualize and verify distributed algorithms.
* Run algorithms in automatic mode, single-step mode, or interactively.
* View port zoom in/out.
* Adjust the speed of algorithm execution.
* Export snapshots to image files to include in presentations or papers.</p>

<p>Please see <a href="http://das.hjiang.net">the DAS website</a> for details.</p>
]]></content:encoded>
			<wfw:commentRss>http://hjiang.net/archives/127/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Emacs终于也有Antialiasing了</title>
		<link>http://hjiang.net/archives/126</link>
		<comments>http://hjiang.net/archives/126#comments</comments>
		<pubDate>Fri, 24 Nov 2006 06:06:06 +0000</pubDate>
		<dc:creator>j</dc:creator>
				<category><![CDATA[Software]]></category>
		<category><![CDATA[unix]]></category>

		<guid isPermaLink="false">http://www.hjiang.net/wp/2006/11/24/emacs-antialiasing/</guid>
		<description><![CDATA[当年从Emacs改用gvim的很重要的一个原因就是Emacs的字体怎么看都不顺眼。现在Emacs终于开始支持 antialiasing （2006年都快过完了，感觉还呆在上个世纪&#8230;）。已经习惯了vim，所以没有换回的打算，不过还是忍不住装了一下玩玩。必须要用最新的 cvs snapshot 才行，这里可以找到 Ubunty Edgy 的包。]]></description>
			<content:encoded><![CDATA[<p><img id="image187" class="floatleft" src="http://hjiang.net/wp-content/uploads/2006/11/screenshot1.png" alt="screenshot1.png" /> 当年从Emacs改用gvim的很重要的一个原因就是Emacs的字体怎么看都不顺眼。现在Emacs终于开始支持 antialiasing （2006年都快过完了，感觉还呆在上个世纪&#8230;）。已经习惯了vim，所以没有换回的打算，不过还是忍不住装了一下玩玩。必须要用最新的 cvs snapshot 才行，<a href="http://g33k.wordpress.com/2006/11/06/gnu-emacs-with-xft-goodness/">这里</a>可以找到 Ubunty Edgy 的包。</p>
]]></content:encoded>
			<wfw:commentRss>http://hjiang.net/archives/126/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Compiz的确不错</title>
		<link>http://hjiang.net/archives/124</link>
		<comments>http://hjiang.net/archives/124#comments</comments>
		<pubDate>Sat, 11 Nov 2006 06:13:19 +0000</pubDate>
		<dc:creator>j</dc:creator>
				<category><![CDATA[Software]]></category>

		<guid isPermaLink="false">http://www.hjiang.net/wp/2006/11/11/compiz%e7%9a%84%e7%a1%ae%e4%b8%8d%e9%94%99/</guid>
		<description><![CDATA[/blogpic/compiz.png 今天装了compiz (hardware-accelerated desktop)。没做什么特别的设置就好了，对于一个Linux下还处于alpha状态的软件来说，有点让人意外。效果的确很impressive，感觉比Mac OS X还眩一些。Linux向一个能被一般用户接受的桌面系统这个方向已经走了很远。 可惜切换workspace的动画不能截图。 /blogpic/expose.png]]></description>
			<content:encoded><![CDATA[<div class="floatleft"><wpg2>/blogpic/compiz.png</wpg2></div>

<p>今天装了compiz (hardware-accelerated desktop)。没做什么特别的设置就好了，对于一个Linux下还处于alpha状态的软件来说，有点让人意外。效果的确很impressive，感觉比Mac OS X还眩一些。Linux向一个能被一般用户接受的桌面系统这个方向已经走了很远。</p>

<p>可惜切换workspace的动画不能截图。</p>

<div class="floatleft"><wpg2>/blogpic/expose.png</wpg2></div>
]]></content:encoded>
			<wfw:commentRss>http://hjiang.net/archives/124/feed</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Enabling CPU Frequency-scaling in Ubuntu Linux on Celeron-M Based Laptops</title>
		<link>http://hjiang.net/archives/122</link>
		<comments>http://hjiang.net/archives/122#comments</comments>
		<pubDate>Tue, 07 Nov 2006 03:06:50 +0000</pubDate>
		<dc:creator>j</dc:creator>
				<category><![CDATA[Software]]></category>

		<guid isPermaLink="false">http://www.hjiang.net/wp/2006/11/06/enabling-cpu-frequency-scaling-in-ubuntu-linux-on-celeron-m-based-laptops/</guid>
		<description><![CDATA[I have an Intel Celeron-M based Acer TravelMate 3000. The Celeron-M does not come with the SpeedStep technology, so it does not support frequency-scaling natively. But I got frequency-scaling working with p4-clockmod. This is disabled in Ubuntu (up to Edgy) by default, because there&#8217;s a significant delay when changing frequency on-demand. The following comment can [...]]]></description>
			<content:encoded><![CDATA[<p>I have an Intel Celeron-M based Acer TravelMate 3000. The Celeron-M does not come with the SpeedStep technology, so it does not support frequency-scaling natively. But I got frequency-scaling working with p4-clockmod. This is disabled in Ubuntu (up to Edgy) by default, because there&#8217;s a significant delay when changing frequency on-demand. The following comment can be found in <code>/usr/share/powernowd/cpufreq-detect.sh</code>:</p>

<pre><code># Disabled for now - the latency tends to be bad enough to make it
# fairly pointless.
</code></pre>

<p>But by enabling it and turning of on-demand scaling, you can manually decrease CPU frequency to reduce heat and power-consumption when your laptop is lightly loaded. There&#8217;s how:</p>

<p>You need powernowd which is included in a standard Ubuntu installation. To make sure:</p>

<pre><code>sudo apt-get install powernowd
</code></pre>

<p>Override the default configuration to enable p4-clockmod:</p>

<pre><code>sudo su
echo "FREQDRIVER=p4-clockmod" &gt;/etc/default/powernowd
</code></pre>

<p>To let your non-root account change CPU frequency, set the <code>setuid</code> bit of <code>cpufreq-selector</code>, so that it runs as root:</p>

<pre><code>sudo chmod +s /usr/bin/cpufreq-selector
</code></pre>

<p>Now add the CPU frequency scaling monitor to your GNOME panel, you should be able to change the frequency by click on the icon.</p>
]]></content:encoded>
			<wfw:commentRss>http://hjiang.net/archives/122/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Ubuntu/Debian 下的 JVM crash 问题</title>
		<link>http://hjiang.net/archives/108</link>
		<comments>http://hjiang.net/archives/108#comments</comments>
		<pubDate>Sat, 26 Aug 2006 07:08:54 +0000</pubDate>
		<dc:creator>j</dc:creator>
				<category><![CDATA[Software]]></category>

		<guid isPermaLink="false">http://www.hjiang.net/wp/2006/08/26/ubuntu-jvm-crash/</guid>
		<description><![CDATA[TopCoder 的 competition arena 在 Ubuntu Linux 下运行时会因为字体问题 crash 掉。估计还有别的 JAVA 程序有类似的问题。 用 google 找了个测试字体的 Java 程序试了一下，是一个叫 Rekha 的字体作怪。只要把 ttf-gujarati-fonts 卸掉就可以了： $ apt-get remove ttf-gujarati-fonts 不过这样也会把 ubuntu-desktop / kubuntu-desktop / xubuntu-desktop 等顶层的包卸掉，不过那些包本身没什么内容，应该不要紧。 另外发现了一个很好用的工具 apt-file ，可以查找某个文件所属的安装包： $ apt-get install apt-file $ apt-file update $ apt-file search Rekha.ttf ttf-gujarati-fonts: usr/share/fonts/truetype/ttf-gujarati-fonts/Rekha.ttf]]></description>
			<content:encoded><![CDATA[<p>TopCoder 的 competition arena 在 Ubuntu Linux 下运行时会因为字体问题 crash 掉。估计还有别的 JAVA 程序有类似的问题。</p>

<p>用 google 找了个测试字体的 Java 程序试了一下，是一个叫 Rekha 的字体作怪。只要把 ttf-gujarati-fonts 卸掉就可以了：</p>

<pre><code>$ apt-get remove ttf-gujarati-fonts
</code></pre>

<p>不过这样也会把 ubuntu-desktop / kubuntu-desktop / xubuntu-desktop 等顶层的包卸掉，不过那些包本身没什么内容，应该不要紧。</p>

<p>另外发现了一个很好用的工具 apt-file ，可以查找某个文件所属的安装包：</p>

<pre><code>$ apt-get install apt-file
$ apt-file update
$ apt-file search Rekha.ttf
ttf-gujarati-fonts: usr/share/fonts/truetype/ttf-gujarati-fonts/Rekha.ttf
</code></pre>
]]></content:encoded>
			<wfw:commentRss>http://hjiang.net/archives/108/feed</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Gabor&#8217;s Blog: How Researchers are Reinventing the Mail Client</title>
		<link>http://hjiang.net/archives/91</link>
		<comments>http://hjiang.net/archives/91#comments</comments>
		<pubDate>Sun, 09 Jul 2006 17:37:42 +0000</pubDate>
		<dc:creator>j</dc:creator>
				<category><![CDATA[Software]]></category>

		<guid isPermaLink="false">http://www.hjiang.net/wp/2006/07/09/gabors-blog-how-researchers-are-reinventing-the-mail-client/</guid>
		<description><![CDATA[Gabor&#8217;s Blog: How Researchers are Reinventing the Mail Client Email today has many annoyances. Even though we now seem to have a grip on the spam problem, many users are suffering from email overload: There are just too many emails flooding the inbox. Many are drowning in heaps of emails that aren&#8217;t even important – [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.gaborcselle.com/blog/2006/07/how-researchers-are-reinventing-mail.html">Gabor&#8217;s Blog: How Researchers are Reinventing the Mail Client</a></p>

<blockquote>
  <p>Email today has many annoyances. Even though we now seem to have a grip on the spam problem, many users are suffering from email overload: There are just too many emails flooding the inbox. Many are drowning in heaps of emails that aren&#8217;t even important – it&#8217;s just a colleague at work Cc-ing everyone evenly remotely connected to his project.</p>
</blockquote>
]]></content:encoded>
			<wfw:commentRss>http://hjiang.net/archives/91/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>解决了和MSN Space同步的问题</title>
		<link>http://hjiang.net/archives/82</link>
		<comments>http://hjiang.net/archives/82#comments</comments>
		<pubDate>Sun, 18 Jun 2006 22:05:51 +0000</pubDate>
		<dc:creator>j</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[Software]]></category>

		<guid isPermaLink="false">http://www.hjiang.net/wp/2006/06/18/%e8%a7%a3%e5%86%b3%e4%ba%86%e5%92%8cmsn-space%e5%90%8c%e6%ad%a5%e7%9a%84%e9%97%ae%e9%a2%98/</guid>
		<description><![CDATA[本来有 MSN Space ，后来因为把 blog 搬到自己的服务器而删掉了。不过 MSN Messager 的 MSN Space 更新通知实在是个很好的功能。今天突然想到可以写个 WordPress 的 plugin 让基于 WordPress 的 blog 和 MSN Space 自动同步。动手前的第一步当然是google一下，果然不出所料，已经有人做了同样的事情： MSN Sync 。于是 新建了一个 MSN Space , Down 了 MSN Sync 下来，做了一些简单修改，虽然还有一些需要改进的东西，不过已经很好用了。正在和作者联系，如果得到他的允许，我会做一些我所希望的修改，然后重新发布出来。 Update一下：今天看到 priv 改进的版本 ，觉得改动和我现在的相似并且更加好用，所以我也就没有必要再发布一个版本了。]]></description>
			<content:encoded><![CDATA[<p>本来有 MSN Space ，后来因为把 blog 搬到自己的服务器而删掉了。不过 MSN Messager 的 MSN Space 更新通知实在是个很好的功能。今天突然想到可以写个 WordPress 的 plugin 让基于 WordPress 的 blog 和 MSN Space 自动同步。动手前的第一步当然是google一下，果然不出所料，已经有人做了同样的事情： <a href="http://wp-plugins.net/plugin/wp-msnspace/">MSN Sync</a> 。于是 <a href="http://jiang-hong.spaces.msn.com"> 新建了一个 MSN Space</a> ,  <a href="http://blog.12thocean.com/?p=146">Down</a> 了 MSN Sync 下来，做了一些简单修改，虽然还有一些需要改进的东西，不过已经很好用了。正在和作者联系，如果得到他的允许，我会做一些我所希望的修改，然后重新发布出来。</p>

<p>Update一下：今天看到 <a href="http://priv.tw/blog/archives/137/">priv 改进的版本</a> ，觉得改动和我现在的相似并且更加好用，所以我也就没有必要再发布一个版本了。</p>
]]></content:encoded>
			<wfw:commentRss>http://hjiang.net/archives/82/feed</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>That apple looks familiar</title>
		<link>http://hjiang.net/archives/55</link>
		<comments>http://hjiang.net/archives/55#comments</comments>
		<pubDate>Wed, 25 Jan 2006 18:10:19 +0000</pubDate>
		<dc:creator>j</dc:creator>
				<category><![CDATA[Software]]></category>

		<guid isPermaLink="false">http://www.hjiang.net/wp/2006/01/25/that-apple-looks-familiar/</guid>
		<description><![CDATA[用惯了我的PowerBook，再来用PC，觉得真是怀念Mac OSX。 无聊的时候试了一下FlyakiteOSX，结果还不错，见图(Acer TravelMate 3002)。:-) 比较适合不得不用Windows又觉得微软的UI很dull的人。]]></description>
			<content:encoded><![CDATA[<p><a href="http://hjiang.net/wp-content/uploads/2006/01/desktop.jpg"><img id="image86" class="floatright" src="http://hjiang.net/wp-content/uploads/2006/01/desktop-150x150.jpg" alt="desktop.jpg" height="80" width="128" /></a> 用惯了我的PowerBook，再来用PC，觉得真是怀念Mac OSX。 无聊的时候试了一下<a href="http://osx.portraitofakite.com/">FlyakiteOSX</a>，结果还不错，见图(Acer TravelMate 3002)。:-)</p>

<p>比较适合不得不用Windows又觉得微软的UI很dull的人。</p>
]]></content:encoded>
			<wfw:commentRss>http://hjiang.net/archives/55/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
