<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:dc="http://purl.org/dc/elements/1.1/" version="2.0"><channel><atom:link rel="hub" href="http://tumblr.superfeedr.com/" xmlns:atom="http://www.w3.org/2005/Atom"/><description>Ruby on Rails, HTML5 and Cocoa.</description><title>@chrisyipw</title><generator>Tumblr (3.0; @chrisyip)</generator><link>http://chris.gd/</link><item><title>The iOS Text Editor roundup</title><description>&lt;a href="http://brettterpstra.com/ios-text-editors/"&gt;The iOS Text Editor roundup&lt;/a&gt;</description><link>http://chris.gd/post/23400647362</link><guid>http://chris.gd/post/23400647362</guid><pubDate>Sun, 20 May 2012 14:37:00 +0800</pubDate><category>Text Editor</category><category>iOS</category><category>Markdown</category></item><item><title>「优士 Ushi」真你妹的烦人，国内的网络服务就这么让人恶心吗？</title><description>&lt;p&gt;起因是前同事给我发了要求，当时就无视了，然后又收到了一封提醒邮件，我在 Twitter 也&lt;a href="https://twitter.com/#!/chrisyipw/status/200828940309381120"&gt;吐槽&lt;/a&gt;过:&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;Ushi.com 还真烦，别人邀请我进去，我不想注册，但是这货一没 deny，二没 unsubscribe，三还定时发邮件提醒你有邀请未处理。Fuck！&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;然后今天又收到了他们的邮件：&lt;/p&gt;

&lt;p&gt;&lt;img src="https://img.skitch.com/20120519-eg46kun2mj4hdayy3brepys135.jpg" alt="Fuck Ushi" title="Fuck Ushi"/&gt;&lt;/p&gt;

&lt;p&gt;这封信和上一封&lt;strong&gt;一模一样&lt;/strong&gt;，除了 connections 之外。&lt;/p&gt;

&lt;p&gt;此外留意一下底部那句话：&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;This is a reminder email in case you didn&amp;#8217;t notice the original invitation from XX. Please ignore this if you are not interested and we will not resend it again.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;擦！什么鬼「&lt;strong&gt;we will not resend it again&lt;/strong&gt;」？！这是我第二次收到这种信件好不好！果断把这货加 rules 过滤掉。&lt;/p&gt;

&lt;p&gt;然而痛恨这些的 &lt;a href="https://twitter.com/#!/jason5ng32"&gt;@jason_ng&lt;/a&gt; 所在的&lt;a href="http://www.geekpark.net/"&gt;极客公园&lt;/a&gt;在前段时间也唐突地给我发了不带 unsubscribe 的邮件。&lt;/p&gt;

&lt;p&gt;真的想说「&lt;strong&gt;你们能不能做好基本的礼貌？尊重一下用户？&lt;/strong&gt;」。&lt;/p&gt;</description><link>http://chris.gd/post/23338564822</link><guid>http://chris.gd/post/23338564822</guid><pubDate>Sat, 19 May 2012 15:10:18 +0800</pubDate></item><item><title>HTML 5 应用的用户体验能达到本地应用那么好吗？</title><description>&lt;p&gt;知乎上有人邀请我回答一个问题：「&lt;a href="http://www.zhihu.com/question/20194918"&gt;HTML 5 应用的用户体验能达到本地应用那么好吗？&lt;/a&gt;」。&lt;/p&gt;

&lt;p&gt;虽然在用户体验上，HTML5 可以达到一定水准，只是相应地也要做一定的限制/取舍，比如运行平台（Webkit 或对等的内核）。&lt;/p&gt;

&lt;p&gt;能达到一定水准的用户体验主要得益于近年浏览器发展迅速带来的新特性，比如：&lt;/p&gt;

&lt;ul&gt;&lt;li&gt;CSS animation, GPU acceleration&lt;/li&gt;
&lt;li&gt;JavaScript/DOM API improved, e.g. File API&lt;/li&gt;
&lt;li&gt;Offline storage&lt;/li&gt;
&lt;/ul&gt;&lt;p&gt;但是 HTML5 应用最大的问题（瓶颈所在）却还没有「标准地」解决：&lt;/p&gt;

&lt;ul&gt;&lt;li&gt;性能&lt;/li&gt;
&lt;li&gt;OS 交互&lt;/li&gt;
&lt;/ul&gt;&lt;p&gt;这里有几个例子可以参考&lt;/p&gt;

&lt;ul&gt;&lt;li&gt;Flipboard 的 web &lt;a href="http://tympanus.net/Development/FlipboardPageLayout/"&gt;仿造版&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/alswl/shiu"&gt;Shiu&lt;/a&gt;：HTML5 打造的离线 web book，请用 iPhone 测试&lt;/li&gt;
&lt;li&gt;twitter.com&lt;/li&gt;
&lt;li&gt;icloud.com&lt;/li&gt;
&lt;li&gt;Gmail for iOS&lt;/li&gt;
&lt;/ul&gt;&lt;p&gt;Twitter 吃的内存很多，时间久了在配置不是很好的 PC/Mac 上会感觉得到响应速度变慢。&lt;/p&gt;

&lt;p&gt;iCloud 就比较离谱了，我的 MBP 374 + Chrome 也不能说得上流畅，Calendar 会有 .5~1.5 的 lag。比 Chrome 更慢的 Safari 则更糟糕，不过也符合苹果的一贯手法，体验用硬件提升来解决（两年前的 MBP 就这么被淘汰。。。(T ^ T)）。&lt;/p&gt;

&lt;p&gt;而 Gmail for iOS 则是一个相当的例子，虽然备受批评，说 Gmail 没诚意，不过作为一个UI 和交互基于 HTML5 的应用，确实是相当好的例子。&lt;/p&gt;

&lt;p&gt;目前 HTML5 应用更多是看运行的平台，比如背后用 Cocoa、界面用 WebView 呈现，比如豆瓣出品的 OneRing，比如针对 Chrome/Webkit 的离线应用。&lt;/p&gt;

&lt;p&gt;所以在考虑「HTML5 体验行不行」前，应该先考虑：&lt;/p&gt;

&lt;ul&gt;&lt;li&gt;HTML5 开发成本 V.S. 本地应用开发成本（比如团队学习成本）&lt;/li&gt;
&lt;li&gt;核心需求是否能通过 HTML5 实现（比如 UI animation 是不是很多）&lt;/li&gt;
&lt;li&gt;核心用户的平台（比如中国 Win 用户）&lt;/li&gt;
&lt;/ul&gt;</description><link>http://chris.gd/post/23155247522</link><guid>http://chris.gd/post/23155247522</guid><pubDate>Wed, 16 May 2012 15:02:01 +0800</pubDate><category>User Experience</category><category>HTML5</category><category>用户体验</category></item><item><title>Twitter 在今天发布了一篇文章，「The best of Twitter in your...</title><description>&lt;img src="http://25.media.tumblr.com/tumblr_m42177gOro1qckmtfo1_500.png"/&gt;&lt;br/&gt;&lt;br/&gt;&lt;p&gt;Twitter 在今天发布了一篇文章，「&lt;a href="http://blog.twitter.com/2012/05/best-of-twitter-in-your-inbox.html"&gt;The best of Twitter in your inbox&lt;/a&gt;」。&lt;/p&gt;

&lt;p&gt;是的，这个就是被 Twitter &lt;a href="http://blog.summify.com/2012/01/19/summify-joins-the-flock-at-twitter/"&gt;收购&lt;/a&gt;后的 Summify。&lt;/p&gt;

&lt;p&gt;Summify 对我来说识一个很重要的服务，有了它，我基本不需要追 timeline，所以之前被收购的时候有点担心 Twitter 会关掉它。&lt;/p&gt;

&lt;p&gt;虽然现在在用 &lt;a href="http://"&gt;GTweet&lt;/a&gt; 把 timeline 转换成 RSS 在 Google Reader 上观看了，不过始终缺少一个 filter 功能，杂音太多。或许以后会作为 premium 功能加上吧。&lt;/p&gt;

&lt;p&gt;不管怎么说，既然 Twitter 官方推出了 email digest，还是让我们期待一下吧。&lt;/p&gt;</description><link>http://chris.gd/post/23094890927</link><guid>http://chris.gd/post/23094890927</guid><pubDate>Tue, 15 May 2012 16:06:00 +0800</pubDate><category>Twitter</category><category>Summify</category></item><item><title>Monokai for Sublime Text: markdown supported</title><description>&lt;p&gt;最近一直在用 Sublime Text，但无奈 Color Scheme 太少，虽然有经典的 Monokai，可无法支持 markdown 的高亮。&lt;/p&gt;

&lt;p&gt;幸好在 Github 找到了 &lt;a href="https://gist.github.com/2354062"&gt;CrazyApi&lt;/a&gt; 写的支持&lt;a href="https://gist.github.com/2354062"&gt;脚本&lt;/a&gt;。&lt;/p&gt;

&lt;p&gt;因此就根据这段代码改进了一下 Monokai 的 markdown 高亮，有空还要把颜色调整一下。&lt;/p&gt;

&lt;p&gt;修改后的主题在&lt;a href="https://gist.github.com/2627801"&gt;这&lt;/a&gt;。&lt;/p&gt;</description><link>http://chris.gd/post/22586242608</link><guid>http://chris.gd/post/22586242608</guid><pubDate>Mon, 07 May 2012 21:44:28 +0800</pubDate><category>Markdown</category><category>Sublime Text</category></item><item><title>僕らのあしあと

supercell

この道をどこまでもいこう 「沿着这条道路走下去」

これまでの日々を抱えて  ああ ...</title><description>&lt;embed type="application/x-shockwave-flash" src="http://assets.tumblr.com/swf/audio_player_black.swf?audio_file=http://www.tumblr.com/audio_file/22376500259/tumblr_m3huekOErc1qckmtf&amp;color=FFFFFF&amp;logo=soundcloud" height="27" width="207" quality="best" wmode="opaque"&gt;&lt;/embed&gt;&lt;br/&gt;&lt;br/&gt;&lt;p&gt;&lt;strong&gt;僕らのあしあと&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;supercell&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;この道をどこまでもいこう 「沿着这条道路走下去」&lt;/p&gt;

&lt;p&gt;これまでの日々を抱えて  ああ  これからも 「抱着至今走过的日子  啊  今后也是」&lt;/p&gt;

&lt;p&gt;心の中にいるもう一人の自分に尋ねながら 「不停寻问心中的另一个自己」&lt;/p&gt;

&lt;p&gt;さあ  歩いていこう 「一直走下去吧」&lt;/p&gt;

&lt;p&gt;誰かのようになりたくて 「想像别人那样优秀」&lt;/p&gt;

&lt;p&gt;だけどなれるはずもなくて  ああ  いじけるなら 「也知道那只是空想  啊  当遇上挫折」&lt;/p&gt;

&lt;p&gt;心の中にいるもう一人の自分が教えてくれる 「心中的另一个自己便会告诉我」&lt;/p&gt;

&lt;p&gt;あるがままなんかじゃきっと 「只是顺其自然随波逐流」&lt;/p&gt;

&lt;p&gt;いられないから 「那一定坚持不住」&lt;/p&gt;

&lt;p&gt;誰もが皆悩んでもがいている 「没有人不烦恼不焦急」&lt;/p&gt;

&lt;p&gt;弱音吐いたり愚痴ってみたり 「满口怨言  牢骚不断」&lt;/p&gt;

&lt;p&gt;そうやって毎日を過ごしてる 「就这样度过每一天」&lt;/p&gt;

&lt;p&gt;傷つけられることに慣れた僕らは知ってる 「对受伤感到麻木的我们心里明白」&lt;/p&gt;

&lt;p&gt;優しさとか想いだけじゃ生きていけないことを 「单凭一丝温柔一点心意难以立身处世」&lt;/p&gt;

&lt;p&gt;だけど自分らしくありたいと思うんだ 「然而还是希望活出自我」&lt;/p&gt;

&lt;p&gt;いつだって僕ら歩いてく 「我们将稳步走下去」&lt;/p&gt;

&lt;p&gt;確かな強さが欲しくて 「渴望一份可靠的坚强」&lt;/p&gt;

&lt;p&gt;誰かに認められたくて  ああ  探してる 「希望得到他人的认同  啊  人生茫茫」&lt;/p&gt;

&lt;p&gt;地図なき旅路さ 「这是漫无目的的旅途」&lt;/p&gt;

&lt;p&gt;口笛でも吹いて焦らずいこう 「吹着口哨  悠哉启程吧」&lt;/p&gt;

&lt;p&gt;得たものもあるけれどそれ以上にね 「虽然从中学会了许多道理」&lt;/p&gt;

&lt;p&gt;たくさんのものを失ってきた 「不过失去的却更多」&lt;/p&gt;

&lt;p&gt;迷い続けて  途方に暮れて 「迷惘失措  日暮途穷」&lt;/p&gt;

&lt;p&gt;それでもさ  願うんだよ 「即便如此  也会祝福」&lt;/p&gt;

&lt;p&gt;明日の自分 「明日的自己」&lt;/p&gt;

&lt;p&gt;言葉じゃうまく伝えることができない僕ら 「无法用语言表达清楚的我们」&lt;/p&gt;

&lt;p&gt;何をしても悲しくなるばかりで口をつぐむ 「做什么事都会悲观到闭口不言」&lt;/p&gt;

&lt;p&gt;だけど自分らしくありたいと思うんだ 「然而还是希望活出自我」&lt;/p&gt;

&lt;p&gt;どうしたって僕ら歩いてく 「我们怎样也走下去」&lt;/p&gt;

&lt;p&gt;幾つもの痛みを幾つもの挫折を 「多少痛楚  多少挫折」&lt;/p&gt;

&lt;p&gt;繰り返して進んでゆく 「经历无数不懈前进」&lt;/p&gt;

&lt;p&gt;不器用なまま一歩ずつ 「踏出笨拙的一步步」&lt;/p&gt;

&lt;p&gt;傷つけられることに慣れた僕らは知ってる 「对受伤感到麻木的我们心里明白」&lt;/p&gt;

&lt;p&gt;本当は愛されたくて仕方がないことを 「其实非常之希望被人疼爱」&lt;/p&gt;

&lt;p&gt;認める勇気が持てないのなら 「既然身上没有承认的勇气」&lt;/p&gt;

&lt;p&gt;もう迷わず手を伸ばそう 「就别再犹豫伸出双手吧」&lt;/p&gt;

&lt;p&gt;優しさとか想いだけじゃ生きてゆけはしない 「单凭一丝温柔一点心意是无法立身处世」&lt;/p&gt;

&lt;p&gt;だからこそ自分らしくありたいと願うのです 「所以才祈愿活出自我的风采」&lt;/p&gt;

&lt;p&gt;希望を数えて  明日を数えて 「数着希望  数着明天」&lt;/p&gt;

&lt;p&gt;そうやって僕ら歩いてく 「我们就这样走下去」&lt;/p&gt;

&lt;p&gt;まだ見ぬ明日へ歩いてく 「朝未知的明天走下去」&lt;/p&gt;</description><link>http://chris.gd/post/22376500259</link><guid>http://chris.gd/post/22376500259</guid><pubDate>Fri, 04 May 2012 18:27:00 +0800</pubDate></item><item><title>WordExpander - Typinator or TextExpander 的 Win 代替品</title><description>&lt;p&gt;在今年年初 MacUpdate bundle 时入了 &lt;a href="http://www.ergonis.com/products/typinator/"&gt;Typinator&lt;/a&gt;，虽然有些小缺点，但还是挺不错的。&lt;/p&gt;

&lt;p&gt;然而最近由于经常用 Win，也需要一款类似的工具，因此找到了 &lt;a href="http://www.wordexpander.net/"&gt;WordExpander&lt;/a&gt;。&lt;/p&gt;

&lt;p&gt;界面用的是仿 Office 2010 的 Ribbon UI。&lt;/p&gt;

&lt;p&gt;其中比较特色的功能是：&lt;/p&gt;

&lt;h3&gt;自动更正（即伪拼写检查）&lt;/h3&gt;

&lt;p&gt;比如设置了把 &lt;em&gt;helo&lt;/em&gt; 更正为 &lt;em&gt;hello&lt;/em&gt;，只要键入 &lt;em&gt;helo&lt;/em&gt; 并按下触发的键就自动更正。&lt;/p&gt;

&lt;p&gt;这个功能在可以全局拼写检查的 Mac 是没什么意义，不过 Win 对拼写检查支持比较弱，这个功能对码字的人来说还是比较实用的。&lt;/p&gt;

&lt;h3&gt;一个 shortcut 对应多个 snippets&lt;/h3&gt;

&lt;p&gt;比如我可以把 &lt;em&gt;gg&lt;/em&gt; 分派给 &lt;em&gt;google.com&lt;/em&gt; 和 &lt;em&gt;google.com.hk&lt;/em&gt;，以供在不同程序里用，然后键入 &lt;em&gt;gg&lt;/em&gt; 时会出现一个列表让你选择。&lt;/p&gt;

&lt;h3&gt;其他的：&lt;/h3&gt;

&lt;ul&gt;&lt;li&gt;分类管理，比如个人信息、代码片段&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Freeware&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;p&gt;仍需改进的：&lt;/p&gt;

&lt;ul&gt;&lt;li&gt;应用程序的过滤列表&lt;/li&gt;
&lt;li&gt;cursor 的支持（在 Vim 里一塌糊涂）&lt;/li&gt;
&lt;li&gt;tab 等键的支持&lt;/li&gt;
&lt;li&gt;希望能导入其他程序的库，比如 Typinator&lt;/li&gt;
&lt;/ul&gt;&lt;p&gt;不过作为一个 freeware，值得一试。&lt;/p&gt;

&lt;p&gt;&lt;em&gt;&lt;a href="http://www.wordexpander.net/"&gt;(Link to WordExpander)&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;</description><link>http://chris.gd/post/21899412172</link><guid>http://chris.gd/post/21899412172</guid><pubDate>Fri, 27 Apr 2012 13:12:23 +0800</pubDate><category>WordExpander</category><category>Typinator</category><category>TextExpander</category></item><item><title>编辑器之争 &amp; 为什么我喜欢 Sublime Text 2</title><description>&lt;p&gt;在知乎被邀请回答&lt;a href="http://www.zhihu.com/question/20187787"&gt;「Sublime Text 2 与 TextMate 2 相比有哪些优缺点？」&lt;/a&gt;，说实在的，不好回答。&lt;/p&gt;

&lt;p&gt;哪个编辑器比较好，其实无解，比如说插件、扩展、bundle，大部分都有，Windows 独占的 Notepad++ 也有（虽然社区不温不火）。说特色功能嘛，各自都有。说性能嘛，也各有千秋，比如 Vim、Emacs 光标在大段压缩后的文本里游走时就很吃力（会让你以为挂了）但打开大文件又很轻松，而 Sublime 很优秀，Notepad++ 能应付但打开就很慢。&lt;/p&gt;

&lt;p&gt;所以，停止对比，按以下步骤去挑适合自己的：&lt;/p&gt;

&lt;ol&gt;&lt;li&gt;去看官网的介绍、功能列表、视频，直到你碰到感兴趣的亮点，下载回来，安装，基本都有试用期，够你玩了&lt;/li&gt;
&lt;li&gt;把玩一下你感兴趣的亮点（不适应快捷键？不适应操作？先忽略，后述）&lt;/li&gt;
&lt;li&gt;对亮点还算满意的话，去对应的社区看看怎么调教它（一般找别人公开的配置包是捷径）&lt;/li&gt;
&lt;li&gt;尝试用来做你日常的编辑工作，坚持，直到忍受不了或到期为止&lt;/li&gt;
&lt;li&gt;如果适应了，就继续用这款编辑器吧&lt;/li&gt;
&lt;/ol&gt;&lt;p&gt;在一开始肯定会不适应一款新东西，比如我从 Notepad++ 等深度 Win 编辑器转到 Vim 的时候是如此，从 Vim 转到 Sublime 也是如此。&lt;/p&gt;

&lt;p&gt;能坚持而不会感到恶心的话，说明这款工具，是适合你的（比如我就适应不了 Emacs）。&lt;/p&gt;

&lt;p&gt;最后，为了不离题，列一下我喜欢并认为实用的 Sublime 的功能，因为没深度用过 TextMate，不了解。这里面或许 TM 里也有，或许有代替方案。&lt;/p&gt;

&lt;h3&gt;优秀健壮的扩展社区&lt;/h3&gt;

&lt;p&gt;最近在玩 Ruby on Rails，里面对 Scss、CoffeeScript 等新兴语言、工具都有相对成熟的扩展。&lt;/p&gt;

&lt;p&gt;而在 Vim 里，我自己写了 CSS3 的高亮脚本，因为没什么人写。&lt;/p&gt;

&lt;p&gt;而且扩展是用 Python 来写的，由于今年 Python、Ruby 等越来越流行，懂 Python 的人并不少，所以扩展社区不会因为太难写而变成少数人的社区。&lt;/p&gt;

&lt;p&gt;PS：据说 TM 支持包括 Ruby、Python 在内的语言进行插件的编写。&lt;/p&gt;

&lt;h3&gt;实用的左栏&lt;/h3&gt;

&lt;p&gt;为什么要提看上去没用的左栏呢？理由是因为 Sublime 的 SideBarEnhancements 插件。&lt;/p&gt;

&lt;p&gt;配合这个插件，你可以通过右键菜单对指定目录、文件执行一些操作，比用特定的程序打开、跑 SVN/Git 等等。&lt;/p&gt;

&lt;p&gt;而这些是可以自定义、扩展的。&lt;/p&gt;

&lt;h3&gt;够用的项目管理&lt;/h3&gt;

&lt;p&gt;Sublime 默认支持项目管理，只是要手动把项目保存成独立的文件，让 Sublime 记住配置，不过实际上并不麻烦。&lt;/p&gt;

&lt;p&gt;因为保存过一次之后，你就可以通过快捷键快速切换项目，上次打开的 tabs 也会还原。&lt;/p&gt;

&lt;h3&gt;易理解、易迁移的配置文件&lt;/h3&gt;

&lt;p&gt;Sublime 用 JSON 和 XML 作为主要的配置文件格式，每一项都很容易理解。&lt;/p&gt;

&lt;p&gt;而且用户配置和默认配置都是分离的，默认配置文件里有非常详细的注释，稍微搜一下，添加到用户配置文件即可。&lt;/p&gt;

&lt;p&gt;高亮配置、快捷键绑定也作为独立的配置分离，方便管理。&lt;/p&gt;

&lt;p&gt;而且有些东西会自动帮你写进配置，比如放大缩小编辑器字号时，配置文件里也会更新。&lt;/p&gt;

&lt;h3&gt;友好的 snippet 机制&lt;/h3&gt;

&lt;p&gt;Sublime 自带一个菜单项，点击后就新建已经有默认内容、格式的文件，你填好、保存就完事。&lt;/p&gt;

&lt;p&gt;不用插件、不用翻文档看格式、不用管放置的地方，就这么简单。&lt;/p&gt;

&lt;p&gt;新建插件也如此。&lt;/p&gt;

&lt;h3&gt;多处同步编辑的支持&lt;/h3&gt;

&lt;p&gt;Mac 的话，按着 CMD 用鼠标左键/触控板单指点击多处，会出现多个光标。&lt;/p&gt;

&lt;p&gt;此时你输入的内容，都会在所有光标里同步输入，对于经常打相同或复制粘贴的人来说，超级实用。&lt;/p&gt;

&lt;p&gt;建议试一试，文字说明可能不太清晰。&lt;/p&gt;

&lt;h3&gt;有点让人头晕但不错的选择功能&lt;/h3&gt;

&lt;p&gt;Sublime 支持 expand selection to line/word/paragraph/scope/brackets/&amp;#8230;&lt;/p&gt;

&lt;p&gt;对于键盘党来说就是福音，iTerm 中自豪的 mouseless copy。&lt;/p&gt;

&lt;h3&gt;多栏视图&lt;/h3&gt;

&lt;p&gt;一个 window 最大可分割成 4 个 columns 或 grids，每个 column/grid 都有独立的 tab list。&lt;/p&gt;

&lt;h3&gt;好用的搜索、跳转功能&lt;/h3&gt;

&lt;p&gt;和 Vim 类似的跳到指定行、bookmarks 都是很好用的功能，而 bookmarks 比 Vim 的 :mark 还要易用。&lt;/p&gt;

&lt;p&gt;还有 Goto Symbol，比如在 Ruby 里会匹配并跳到 method name，而不是任意字符串，但同时也会标记出匹配的字符串。&lt;/p&gt;

&lt;p&gt;至于搜索，默认就支持在文件夹里搜索替换，也支持正则，而且语法是常见的语法（Vim 的正则语法有稍微不同）。&lt;/p&gt;</description><link>http://chris.gd/post/21384090315</link><guid>http://chris.gd/post/21384090315</guid><pubDate>Fri, 20 Apr 2012 00:13:32 +0800</pubDate><category>Sublime Text</category><category>TextMate</category></item><item><title>Sublime Text 2 OS X Command Line</title><description>&lt;p&gt;&lt;a href="http://sublimetext.com/2"&gt;Sublime Text 2&lt;/a&gt; contains a command line tool, called &lt;strong&gt;subl&lt;/strong&gt;, with this binary file, you can open a folder or a file with its parent folder as opening project in new window.&lt;/p&gt;

&lt;p&gt;For example, after you run the following command:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;# inside my-webapp/
subl .
# or
subl index.html .
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Sublime will open a new window that contains a sidebar with folder &lt;em&gt;my-webapp/&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;To use &lt;strong&gt;subl&lt;/strong&gt; is quite easy, create a &lt;em&gt;bin/&lt;/em&gt; folder under your home directory (&lt;em&gt;~/&lt;/em&gt;), and run this command:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;ln -s "/Applications/Sublime Text 2.app/Contents/SharedSupport/bin/subl" ~/bin/subl
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;But, I would say that, &lt;strong&gt;this way is not clean enough&lt;/strong&gt;, coz in normal case, you won&amp;#8217;t have a &lt;em&gt;~/bin/&lt;/em&gt; folder, and this folder may not &lt;strong&gt;hidden&lt;/strong&gt; by default.&lt;/p&gt;

&lt;p&gt;So, here is my solution:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;# add this into your .bashrc or .zshrc
export PATH=/Applications/Sublime\ Text\ 2.app/Contents/SharedSupport/bin:$PATH
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Beware of that you should change the path based on your Sublime Text location.&lt;/p&gt;

&lt;p&gt;Why do I prefer this way?&lt;/p&gt;

&lt;p&gt;Coz .bashrc or .zshrc is &lt;strong&gt;hidden&lt;/strong&gt; by default, and you would have it in most case.&lt;/p&gt;

&lt;p&gt;And if you move Sublime Text to another directory, just change the path, not need to create symbol link again.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;For further information, read &lt;a href="http://www.sublimetext.com/docs/2/osx_command_line.html"&gt;official documentation&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;</description><link>http://chris.gd/post/20527567279</link><guid>http://chris.gd/post/20527567279</guid><pubDate>Thu, 05 Apr 2012 22:49:34 +0800</pubDate><category>Sublime Text</category><category>OS X</category></item><item><title>更改 Mac 键位的功能 -- KeyRemap4MacBook</title><description>&lt;p&gt;把 MBP 的光驱换成 SSD 之后，Eject 键就显得很多余了，让它就那么空着很不符合键盘党的效率需求，加之我把 F1~F12 换成了标准用途，要是能把 Eject map 成另外的键，那就方便很多，Google 后找到了这款：&lt;a href="http://pqrs.org/macosx/keyremap4macbook/"&gt;KeyRemap4MacBook&lt;/a&gt;。&lt;/p&gt;

&lt;p&gt;&lt;img src="https://img.skitch.com/20120331-fkjq57pwet3pgwh3pgq1syce6e.jpg" alt="KeyRemap4MacBook" title="KeyRemap4MacBook"/&gt;&lt;/p&gt;

&lt;p&gt;如图上设置，只要按下 Eject 就相当于按下 Expose，而不是弹出光驱。&lt;/p&gt;

&lt;p&gt;当然这款软件的功能不只这么简单，还带有 Vi/Emacs Mode、针对一些功能的设置，甚至还有为 PC 或特定语言用户的设置，相当强大。&lt;/p&gt;

&lt;p&gt;PS：因为 Eject 键需要按下去一两秒才能触发，所以推荐安装该作者的另一款软件来解决延迟：&lt;a href="http://pqrs.org/macosx/keyremap4macbook/extra.html#t2"&gt;NoEjectDelay&lt;/a&gt;。&lt;/p&gt;</description><link>http://chris.gd/post/20216635453</link><guid>http://chris.gd/post/20216635453</guid><pubDate>Sat, 31 Mar 2012 16:22:06 +0800</pubDate><category>OS X</category><category>Key Mapping</category></item><item><title>Rime - 一個不錯的輸入法</title><description>&lt;p&gt;今天在 Twitter 上有不少人在推薦 &lt;a href="https://code.google.com/p/rimeime/"&gt;Rime&lt;/a&gt;，因此萌生興趣。&lt;/p&gt;

&lt;p&gt;&lt;img src="https://img.skitch.com/20120315-rs19tw2rrp8w41kd9bbfcq5icg.jpg" alt="Rime" title="Rime"/&gt;&lt;/p&gt;

&lt;p&gt;在簡單試用之後，發現確實不錯，輸入流暢度比起 QIM 和 FIT 都要好很多，而且似乎長句輸入也有一定的優勢。&lt;/p&gt;

&lt;p&gt;不過對我而言，更重要的是&lt;strong&gt;開源&lt;/strong&gt;，源碼公開的話，會讓人比較放心，並且是跨平臺的。&lt;/p&gt;

&lt;p&gt;對於 Mac 版本，暫時還沒有配置窗口，因此也就無法進行更多的設置，作者似乎是臺灣人，所以暫時只能輸入繁體。&lt;/p&gt;

&lt;p&gt;這篇文章就是用 Rime 打的，如果想瞭解更多，可以閱讀&lt;a href="http://www.byvoid.com/blog/recommend-rime/"&gt;推薦一個神級輸入法——Rime&lt;/a&gt;。&lt;/p&gt;</description><link>http://chris.gd/post/19348742550</link><guid>http://chris.gd/post/19348742550</guid><pubDate>Fri, 16 Mar 2012 01:08:00 +0800</pubDate><category>Rime</category><category>QIM</category><category>FIT</category></item><item><title>A Visual Git Reference</title><description>&lt;a href="http://marklodato.github.com/visual-git-guide/index-en.html"&gt;A Visual Git Reference&lt;/a&gt;: &lt;p&gt;It’s the easiest way to understand how Git works, for example, what are stage, working copy and history.&lt;/p&gt;</description><link>http://chris.gd/post/19285629253</link><guid>http://chris.gd/post/19285629253</guid><pubDate>Wed, 14 Mar 2012 18:34:56 +0800</pubDate><category>Git</category></item><item><title>告別「日本第一」傳奇 大國墜落   高素質人民    縱容出最無能政客與政府 - Yahoo!奇摩新聞</title><description>&lt;a href="http://tw.news.yahoo.com/%E5%91%8A%E5%88%A5-%E6%97%A5%E6%9C%AC%E7%AC%AC-%E5%82%B3%E5%A5%87-%E5%A4%A7%E5%9C%8B%E5%A2%9C%E8%90%BD-%E9%AB%98%E7%B4%A0%E8%B3%AA%E4%BA%BA%E6%B0%91-%E7%B8%B1%E5%AE%B9%E5%87%BA%E6%9C%80%E7%84%A1%E8%83%BD%E6%94%BF%E5%AE%A2%E8%88%87%E6%94%BF%E5%BA%9C-135719421.html"&gt;告別「日本第一」傳奇 大國墜落   高素質人民    縱容出最無能政客與政府 - Yahoo!奇摩新聞&lt;/a&gt;</description><link>http://chris.gd/post/19273273945</link><guid>http://chris.gd/post/19273273945</guid><pubDate>Wed, 14 Mar 2012 11:08:02 +0800</pubDate></item><item><title>LLVM 4.0 带给 ObjC 的新语法</title><description>&lt;a href="http://ixhan.com/2012/02/apple-llvm-4-0-new-features-on-objectivec/"&gt;LLVM 4.0 带给 ObjC 的新语法&lt;/a&gt;: &lt;h4&gt;NSArray Literals&lt;/h4&gt;

&lt;p&gt;&lt;code&gt;array = @[ a, b, c ];&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;equals:&lt;/p&gt;

&lt;p&gt;&lt;code&gt;array = [NSArray arrayWithObjects:a, b, c, nil];&lt;/code&gt;&lt;/p&gt;

&lt;h4&gt;NSDictionary Literals&lt;/h4&gt;

&lt;p&gt;&lt;code&gt;dict = @{ k1 : o1, k2 : o2, k3 : o3 };&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;equals:&lt;/p&gt;

&lt;p&gt;&lt;code&gt;dict = [NSDictionary dictionaryWithObjects:@[o1, o2, o3] forKeys:@[k1, k2, k3]];&lt;/code&gt;&lt;/p&gt;

&lt;h4&gt;NSNumber Literals&lt;/h4&gt;

&lt;pre&gt;&lt;code&gt;NSNumber *number;
number = @'X';
number = @12345;
number = @12345ul;
number = @12345ll;
number = @123.45f;
number = @123.45;
number = @YES;&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;equals:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;NSNumber *number;
number = [NSNumber numberWithChar:'X'];
number = [NSNumber numberWithInt:12345];
number = [NSNumber numberWithUnsignedLong:12345ul];
number = [NSNumber numberWithLongLong:12345ll];
number = [NSNumber numberWithFloat:123.45f];
number = [NSNumber numberWithDouble:123.45];
number = [NSNumber numberWithBool:YES];&lt;/code&gt;&lt;/pre&gt;</description><link>http://chris.gd/post/19231649078</link><guid>http://chris.gd/post/19231649078</guid><pubDate>Tue, 13 Mar 2012 19:06:30 +0800</pubDate><category>Objective-C</category><category>LLVM</category></item><item><title>从 Google Reader 发送文章到 Readability</title><description>&lt;p&gt;&lt;a href="http://readability.com"&gt;Readability&lt;/a&gt; 在早前宣布了对所有用户取消限制，并且在三月一日发布了免费的 iOS 客户端。&lt;/p&gt;

&lt;p&gt;由于在早前试用 &lt;a href="http://www.instapaper.com/"&gt;Instapaper&lt;/a&gt; 是发现其文章处理算法不如 &lt;a href="http://readitlaterlist.com/"&gt;Read It Later&lt;/a&gt;，所以当时入了 RIL。随后发现 RIL 开发进度缓慢，在 iPad 2 上有莫名其妙的 bug，并且不少文章也处理不了。因此很期待 Instapaper 降价。&lt;/p&gt;

&lt;p&gt;不过在 Readability 发布后，经常短暂试用，果断从 RIL 跳到 Readability：&lt;/p&gt;

&lt;ul&gt;&lt;li&gt;UI 漂亮很多&lt;/li&gt;
&lt;li&gt;网页和客户端的阅读体验非常好&lt;/li&gt;
&lt;li&gt;能处理的页面也多很多&lt;/li&gt;
&lt;/ul&gt;&lt;p&gt;不过由于有一部分文章来源还是通过 Google Reader 获取，而在 Win 下是没有像 Reeder 那样的好的工具，只能继续试用网页端，而发送到 Readability 的话，可以通过 GR 自带的 Send To 功能：&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;    Name: Read Now
     URL: &lt;a href="https://www.readability.com/read?url=%24%7Burl%7D"&gt;https://www.readability.com/read?url=${url}&lt;/a&gt;
Icon URL: &lt;a href="http://www.readability.com/media/images/favicon.ico"&gt;http://www.readability.com/media/images/favicon.ico&lt;/a&gt;

    Name: Read Later
     URL: &lt;a href="http://www.readability.com/save?url=%24%7Burl%7D"&gt;http://www.readability.com/save?url=${url}&lt;/a&gt;
Icon URL: &lt;a href="http://www.readability.com/media/images/favicon.ico"&gt;http://www.readability.com/media/images/favicon.ico&lt;/a&gt;
&lt;/code&gt;&lt;/pre&gt;</description><link>http://chris.gd/post/18782987893</link><guid>http://chris.gd/post/18782987893</guid><pubDate>Mon, 05 Mar 2012 15:37:55 +0800</pubDate><category>Readability</category><category>Google Reader</category><category>Read It later</category><category>Instapaper</category></item><item><title>1Password is better than others</title><description>&lt;p&gt;I decide to use &lt;a href="https://agilebits.com/onepassword"&gt;1Password&lt;/a&gt; to manage my passwords.&lt;/p&gt;

&lt;p&gt;Why not use &lt;a href="http://lastpass.com"&gt;LastPass&lt;/a&gt; or &lt;a href="http://www.keepassx.org"&gt;KeePass&lt;/a&gt;? They&amp;#8217;re free.&lt;/p&gt;

&lt;p&gt;Here&amp;#8217;re my reasons:&lt;/p&gt;

&lt;ul&gt;&lt;li&gt;1Password has a better solution for autofilling web forms than KeePass.&lt;/li&gt;
&lt;li&gt;Unlike LastPass, 1Password saves your database on local, which means you can control it by yourself, its stability and security do not depend on the server.&lt;/li&gt;
&lt;li&gt;1Password supports attachments, it&amp;#8217;s useful for some applications, e.g. TrueCrypt.&lt;/li&gt;
&lt;li&gt;1Password has a good team to keep improving native app experience, KeePass doesn&amp;#8217;t.&lt;/li&gt;
&lt;/ul&gt;</description><link>http://chris.gd/post/18725677034</link><guid>http://chris.gd/post/18725677034</guid><pubDate>Sun, 04 Mar 2012 22:29:00 +0800</pubDate><category>1Password</category><category>LastPass</category><category>KeePass</category><category>Password</category></item><item><title>「Fate/Stay Night」补完 &amp; 纪念吾王</title><description>&lt;p&gt;终于看完了这部 2006 年的动画，虽然让我补的动力是「Fate/Extra」里的ネロ。&lt;/p&gt;

&lt;p&gt;经历第四次圣杯战争，满怀遗憾再次参战的亚瑟王アルトリア，仍然是不变的愿望，仍然自责。&lt;/p&gt;

&lt;p&gt;否认自己王的资格，而又以王的身份孤身前进。&lt;/p&gt;

&lt;p&gt;在第五次圣杯战争里，她终于走出了这个阴影，放下了这个负担。&lt;/p&gt;

&lt;p&gt;即使结局是毁灭，她对此无怨无悔。&lt;/p&gt;

&lt;p&gt;也因此，原谅了自己。&lt;/p&gt;

&lt;p&gt;可是迎来的结局，却不是俗套的大团圆。&lt;/p&gt;

&lt;p&gt;最后アルトリア回到她所在的时代，在ベディヴィエール的陪伴下，静静地长眠了。&lt;/p&gt;

&lt;p&gt;虽然我由衷地希望她能幸福地活下去，不过，带着美梦睡去，也算是一种幸福吧。&lt;/p&gt;

&lt;p&gt;&lt;img src="https://img.skitch.com/20120303-1wac1utubn8kwakwnjck3xfcnn.jpg" alt="Saber"/&gt;&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;我，想起来了&lt;br/&gt;
  在发誓将承担王的职责后我才拿起那把剑&lt;br/&gt;
  放弃了很多东西，并为着人民而战&lt;br/&gt;
  我无怨无悔&lt;br/&gt;
  只要能为自己的一生感到骄傲&lt;br/&gt;
  即使最后的结局是毁灭，也不能要求重新来过&lt;br/&gt;
  王，保护了国家&lt;br/&gt;
  只是，国家没有保护王，仅此而已&lt;br/&gt;
  虽然结局是很悲惨，但只要过程中没有半点瑕疵&lt;br/&gt;
  就根本没有必要去作奢求&lt;br/&gt;
  为了得到它，而放弃了许多东西&lt;br/&gt;
  但即使这样，有一样东西我也守护到了最后&lt;br/&gt;
  我怀着它&lt;br/&gt;
  至少将这场没有被实现的梦，目睹到最后&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;在这个时代所经历的一切，都只是一场梦。&lt;/p&gt;

&lt;p&gt;一场不管是对骑士还是少女来说，都是一个幸福的梦。&lt;/p&gt;

&lt;p&gt;ベディヴィエール在她睡去时说的话，也代表着众多 fans 的心声吧：&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;您在看吗&lt;br/&gt;
  亚瑟王&lt;br/&gt;
  梦的延续&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;希望アルトリア能继续那个幸福的梦。&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;两个人的相遇 不是偶然&lt;br/&gt;
  那是很久以前就已定下的命运&lt;br/&gt;
  每当我闭上双眸 每当我仰望天空&lt;br/&gt;
  都会浮现出那些如梦似幻的日子&lt;br/&gt;
  道路会随着脚步越走越远&lt;br/&gt;
  然而还是要走下去 就这么走下去&lt;br/&gt;
  我能看到与你的未来&lt;br/&gt;
  你也一定明白 无论何时都如此&lt;br/&gt;
  一定会守护你 因为已做过约定&lt;br/&gt;
  悲伤的时候想呆在你身边&lt;br/&gt;
  两人的相遇 并不是偶然&lt;br/&gt;
  那是很久以前就梦见过的命运&lt;br/&gt;
  两个人的相遇 不是偶然 是很久以前就定下的命运&lt;/p&gt;
&lt;/blockquote&gt;</description><link>http://chris.gd/post/18676752011</link><guid>http://chris.gd/post/18676752011</guid><pubDate>Sun, 04 Mar 2012 03:28:07 +0800</pubDate><category>Anime</category><category>Fate/Stay Night</category><category>Saber</category><category>アルトリア</category></item><item><title>"It’s fine to disagree, it’s fine to push back, it’s great to have strong opinions and beliefs, but..."</title><description>“It’s fine to disagree, it’s fine to push back, it’s great to have strong opinions and beliefs, but give my ideas some time to set in before you’re sure you want to argue against them.”&lt;br/&gt;&lt;br/&gt; - &lt;em&gt;&lt;a href="http://37signals.com/svn/posts/3124-give-it-five-minutes"&gt;Give it five minutes&lt;/a&gt;&lt;/em&gt;</description><link>http://chris.gd/post/18597130987</link><guid>http://chris.gd/post/18597130987</guid><pubDate>Fri, 02 Mar 2012 14:30:25 +0800</pubDate></item><item><title>ViniSketch Designer is a sketch tool for designing iOS and...</title><description>&lt;img src="http://25.media.tumblr.com/tumblr_m05ux0PIkm1qckmtfo1_500.jpg"/&gt;&lt;br/&gt;&lt;br/&gt;&lt;p&gt;&lt;a href="http://www.vinisketch.fr/"&gt;ViniSketch Designer&lt;/a&gt; is a sketch tool for designing iOS and Android application UI, and export to PhoneGap and Xcode.&lt;/p&gt;</description><link>http://chris.gd/post/18495574398</link><guid>http://chris.gd/post/18495574398</guid><pubDate>Wed, 29 Feb 2012 23:27:00 +0800</pubDate><category>User Interface</category><category>Sketch</category></item><item><title>交響詩編エウレカセブン AO 新作决定。

吐槽：

你妹的正太开高达啊。

你妹的好像レントン啊。

エウレカ生儿子了？</title><description>&lt;iframe width="400" height="300" src="http://www.youtube.com/embed/tEQWg4JvX3g?wmode=transparent&amp;autohide=1&amp;egm=0&amp;hd=1&amp;iv_load_policy=3&amp;modestbranding=1&amp;rel=0&amp;showinfo=0&amp;showsearch=0" frameborder="0" allowfullscreen&gt;&lt;/iframe&gt;&lt;br/&gt;&lt;br/&gt;&lt;p&gt;交響詩編エウレカセブン AO 新作决定。&lt;/p&gt;

&lt;p&gt;吐槽：&lt;/p&gt;

&lt;p&gt;你妹的正太开高达啊。&lt;/p&gt;

&lt;p&gt;你妹的好像レントン啊。&lt;/p&gt;

&lt;p&gt;エウレカ生儿子了？&lt;/p&gt;</description><link>http://chris.gd/post/17758510538</link><guid>http://chris.gd/post/17758510538</guid><pubDate>Fri, 17 Feb 2012 16:28:42 +0800</pubDate><category>Anime</category><category>Eureka Seven</category></item></channel></rss>

