入手 Alfred

QuickSilver 真心不错,尤其是配上插件功能后就是神器。但是 QS 对中文支持的不给力,crash 增多,加上 Alfred 添加了插件功能后越来越强大,毅然转向 Alfred。

目前对自定义搜索功能最为喜欢,设置 so 到 Stack Overflow,git 搜 Github,方便不少。

留记一篇,用一段时间后再整理 Alfred 使用,希望这钱没有乱花。

Picky to Octopress

不敢保证转换过程万无一失,请注意备份

前提条件:之前大多数文章已经是用 Markdown 格式。

  1. 仿照 AtomFeedHandler 新增 RSSOutHandler
class RSSOutHandler(webapp.RequestHandler):
  def get(self):
    site_domain = Datum.get('site_domain')
    site_name = Datum.get('site_name')
    site_author = Datum.get('site_author')
    site_slogan = Datum.get('site_slogan')
    site_analytics = Datum.get('site_analytics')
    site_updated = Datum.get('site_updated')
    if site_updated is None:
      site_updated = time.strftime("%Y-%m-%dT%H:%M:%SZ", time.gmtime())
    feed_url = Datum.get('feed_url')
    if feed_url is None:
      feed_url = '/index.xml'
    else:
      if len(feed_url) == 0:
        feed_url = '/index.xml'

    template_values = {
      'site_domain' : site_domain,
      'site_name' : site_name,
      'site_author' : site_author,
      'site_slogan' : site_slogan,
      'feed_url' : feed_url
    }

    articles = db.GqlQuery("SELECT * FROM Article WHERE is_page = FALSE ORDER BY created DESC")
    template_values['articles'] = articles
    template_values['articles_total'] = articles.count()
    template_values['site_updated'] = site_updated
    path = os.path.join(os.path.dirname(__file__), 'tpl', 'shared', 'out.xml')
    output = template.render(path, template_values)
    self.response.headers['Content-type'] = 'text/xml; charset=UTF-8'
    self.response.out.write(output)
  1. main.py - main() 添加
('/out.xml', RSSOutHandler),
  1. 仿照 index.xml 添加 out.xml 模版
  2. 参考 Import XML of Wordpress to Octopress 造一个 Picky2Octopress
# -*- coding: utf-8 -*-
require 'fileutils'
require 'date'
require 'yaml'
require 'uri'
require 'rexml/document'
include REXML

doc = Document.new File.new(ARGV[0])

FileUtils.mkdir_p "_posts"

doc.elements.each("feed/entry") do |e|
    post = e.elements
    slug = post['slug'].text
    date = DateTime.parse(post['published'].text)
    name = "%02d-%02d-%02d-%s.markdown" % [date.year, date.month, date.day, slug]

    content = post['content'].text
    puts content

    content = content.gsub(/<code>(.*?)<\/code>/, '`\1`')

    ## 追加
    content = content.gsub(/<pre lang="([^"]*)">(.*?)<\/pre>/m, '<div class="bogus-wrapper"><notextile><figure class="code"><figcaption><span>lang:\1 </span></figcaption><div class="highlight"><table><tr><td class="gutter"><pre class="line-numbers"><span class="line-number">1</span></pre></td><td class="code"><pre><code class=''><span class="line">\2</span></code></pre></td></tr></table></div></figure></notextile></div>')

    (1..3).each do |i|
    content = content.gsub(/<h#{i}>([^<]*)<\/h#{i}>/, ('#'*i) + ' \1')
    end

    File.open("_posts/#{name}", "w") do |f|
    f.puts "---"
    #f.puts data
    f.puts "layout: post"
    f.puts "comment: true"
    f.puts "title: \"#{post['title'].text}\""
    f.puts "---"
    f.puts content
    end
end

如果内容较少 (<100),可以直接手动修改 index.xml 格式然后进行转换。

最后,不敢保证转换过程万无一失,请注意备份

New Blog again

最近 Octopress 火热,比如 Why Octopress?。忍不住手痒也来一个,花了半天时间把两年前的 Wordpress 和去年到现在的 Picky 都转移到 Octopress,目前表现良好,情绪稳定。

新的开始会更关注移动应用,毕竟是做这方面的,技术方面希望能输出一些代码吧。当然,生活碎碎念也肯定少不了。

Thanks to Douban

注册豆瓣1435天

Heyward at Douban has dead on 2011-11-19.

感谢豆瓣,通过你我找到了我想要的工作。 http://fann.im/blog/2010/12/25/thanksgiving-2010/

不要做让自己讨厌自己的事

如果一件事,你在做的时候自己心里有抵触,那就赶紧放手,至少想清楚后再决定。

如果做了一件事,后来回想起来的时候是无比讨厌,记住下次一定不要再这么做。

不要做让自己讨厌自己的事。

R.I.P. Steve Jobs

Thank you, Jobs.

Quote

不要做让自己讨厌自己的事情。

借钱

借钱原则:

以你们的情义,如果你可以接受这钱他不还,那你就借给他。反之亦然。

自卑

两个小故事。


12 岁的他第一次出远门到县城上初中。坐在倒数第二排左靠墙的角落,在他前面还有六排 54 个脑袋,嗯,一中的教室就是这么拥挤,一个教室 70 个人是很正常的事。初中英语课上,其他同学居然都会 ABC 的读,居然都会!他不能理解,不还没有教的吗?你们怎么都会读了?老师也忽略了不会的同学,跳过 26 个字母的认识直接教单词、课文。ABC 都还没认全的他懵了,他不敢问老师,不敢问同学,一个人在那个角落,在别人读的时候也张嘴,但不出声,听着别人的发音去记。整整一个月,初一开学的头一个月,他一个人默默的呆在那个角落,很少说话,很少有人注意到。直到一个月后的月考,他拿了全班第二名,班主任是如此惊奇地发现那个角落里还有这么个“好学生”,赶紧调位置。感谢那次月考,他又活了。


大学时候他很不喜欢一个同学,称之为 A 吧。A 在大二时候撺掇成了班长。在那年的助学金申请上,A 搞了一个很 SB 的活动,请允许我用 SB 来形容那次活动。申请人到讲台讲述自己的贫困情况,然后全班人当面投票,没错,就跟竞选一样。他是申请人之一,之前递交书面申请时候完全没想到会有这么 SB 的活动。没记错的话有一个同学在讲台上都哭了。轮到他的时候他说了句弃权,然后摔门而出。


  1. 谁没有自卑过呢,自卑不是也不能是你堕落的原因。
  2. 其实自卑深处有一股很强大的力量。

祝我生日快乐

24 岁,新的起点。