Install this theme

trip kind:document では、書類内のみで単語「trip」が検索されます。

author:tom では、Tom が作成したすべての項目が検索されます。

meeting date:tomorrow では、明日予定しているミーティングが検索されます。

kind:images created:5/16/07 では、特定の日付に作成されたイメージが検索されます。

kind:music by:”glenn miller” では、Glenn Miller による音楽が検索されます。

modified:<=6/29/07 では、特定日付以前に修正された項目が検索されます。

かなりいまさら感はありますが、FireFoxやFinderなどの、マックのネイティブなアプリをターミナル(Terminal.app)から起動すると、意外と便利なことに気がついた。* などのファイル指定と組み合わせると、結構便利。open コマンドでアプリを起動できますが、

 $ open -a Firefox

まずはとりあえず、使いやすいエイリアスを、.zshrc や .bash_profile などに記述しておく。

alias emacs="open -a Emacs"
alias firefox="open -a Firefox"
alias safari="open -a Safari"
alias prev="open -a Preview"

例えばウェブサイトのHTMLをデザインしていて、複数のHTMLのデザインをブラウザで確認する際に、Terminalで以下のように打てば、そのフォルダ内のHTMLを一気にブラウザで開ける。FireFox側で、新しいウィンドウを必ずタブで開くようにしておけば、なおよし。

$ firefox *.html
$ safari *.html

あるディレクトリの画像ファイルをまとめてPreviewで見たり

$ prev *.jpg

emacs のバッファに、複数のファイルをまとめて開いたりもできる。

[Desktop Entry]
Encoding=UTF-8
Name=Eclipse
Comment=Eclipse IDE
Exec=eclipse
Icon=/opt/eclipse/icon.xpm
Terminal=false
Type=Application
Categories=GNOME;Application;Development;
StartupNotify=true

python のディクショナリは存在しないキーを参照すると KeyError が発生するんで使用前に has_key() を使ってキーの存在を調べたりする必要がある。複数のディクショナリを使ってるときに、 if 文をいっぱい書くのが面倒だなぁと思ってたんだけど、setdefault() を使えば面倒が一気に解消されることを知った。

存在しないキーを参照するとこうなる。

>>> d = {}
>>> d['hoge']
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
KeyError: 'hoge'

setdefault() を使用するとこんな感じ

>>> d = {}
>>> d.setdefault('hoge', 'fuga')
'fuga'
>>> d
{'hoge': 'fuga'}
>>> d.setdefault('hoge', 'fugafuga')
'fuga'
>>> d
{'hoge': 'fuga'}

キーが存在しない場合もエラーとならず、第二引数の値を返してくれる。(ディクショナリにも追加される)

キーが存在する場合は、ディクショナリに対しては何もせずにキーに対応する値を返してくれる。

ちなみに

get() っていうのもあるみたい。

>>> d
{}
>>> d.get('hoge')
>>> d
{}
>>> d['hoge'] = 'fuga'
>>> d.get('hoge')
'fuga'
»> L1
[1, 2, 3, 4, 5]
»> L2
[6, 7, 8, 9, 10]
»> zip(L1,L2)
[(1, 6), (2, 7), (3, 8), (4, 9), (5, 10)]
»>