Apple Time Capsule を使ってみる

Apple Time Capsule を購入していざ iPhoto Library を移そうと思ったらデータ移動が異様に遅かった。50GB のコピーが何度繰り返しても 300MBを超えた辺りで 0.1MByte/s 程度のスピードに。

estimate 1d ってはじめは何の事かわからなかった

原因は https://discussionsjapan.apple.com/thread/10134709 を見る限り iPhoto には細かいファイルが多いらしく、そのせいでコピーに時間がかかっているとの事。

リンク先で勧められていたのがdmgに変換して渡す方法だが、やり方を調べるのが面倒だったので terminal で tar を使ってやってみたらすんなり行けた。

$ tar cvf /Volume/Data/iPhoto /Users/****/Pictures/iPhoto Library

これで50GBのコピーも1時間足らずで完了。満足できそうなパフォーマンスにほっと一息

…と思ったら解凍に時間がかかるのを忘れていた。

1時間で2.5GB完了。終わるのはちょうど 1日後。さすがMac、良い estimate time を持っている。

第2報。3.5時間で30GB完了。どうやらはじめの方に細かいファイルが多い模様

  • MacBook Pro Retina, 13-inch, Late 2013
  • Time Capsule 2TB

TeXでpngのincludegraphics

tex wikiに書いてある通り

をプリアンブルに書いて画像の挿入を

includegraphics[width=120mm]{foo.png}

としたところ、エラーが出たので、エラーメッセージに従いtexのコマンドオプションに -shell-escape をつけて

platex -shell-escape foo.tex

と実行したところ、画像用の中間ファイルが自動で生成されながら処理は難なく終了した。

MacのLibraryフォルダに移動する一番簡単な方法?

設定とか移行とか、隠されている割になにかと触る機会の多い Library フォルダ。移動するには command + shift + G で移動メニューを出して Library と打ち込んで…と、一手間必要でした。

その Library フォルダにアクセスする別の方法がadobeのヘルプに書いてありました。個人的には一番手軽な方法かな。

Finder の「移動」メニューを出した状態で option キーを押すと Library がしれっと項目に追加されます。

image

キーバインドの関係でoptionキーを押した状態のスクリーンショットはとれませんでした。残念

Oaoaな日々さんに Library フォルダを常に可視状態にする方法が紹介されていました。

TeXとBiBTeXとbashのgetoptの練習がてらに

texからpdfまでを一括で行うスクリプト。作ったけどtexbinの中に入ってそうだ。-bオプションを取得してBiBTeXの処理オプション、-cオプションを取得して中間ファイルの削除オプションもつけてみた。

function tex2pdf() {
    
    # set options
    BIBTEX=false
    CLEANING=true
    
    while getopts bc OPT; do
        case $OPT in
            b) BIBTEX=true;;
    	c) CLEANING=true;;
        esac
    done
    shift $((OPTIND - 1))
    
    # tex process
    platex $1
    if $BIBTEX; then
    	pbibtex $1
    	platex $1
    fi
    dvipdfmx $1
    
    # cleaning
    if $CLEANING; then
    	rm $1.{log,aux,dvi}
    	if $BIBTEX; then
    		rm $1.{bbl,blg,lof,lot,toc}
    	fi
    fi

}

使い方

第一引数にターゲットのtexファイルを拡張子抜きで指定。

$ tex2pdf texfile

bibtexする場合

$ tex2pdf texfile -b

中間ファイルを削除する場合

$ tex2pdf texfile -c

はじめはplatexとdvipdf打つのが面倒だなと思って作り始めたこんなのだった。

function tex2pdf() {
    platex $1
    dvipdfmx $1
}

こんなのになるまで

gnuplotでCSVのフィールド名とか

gnuplotでCSVファイルからデータを読み込んでプロットするときにフィールドをインデックス番号でなくフィールド名で指定する方法。

単純な方法だと

plot "filepath" using "time":"y"

数値を操作したい場合は

plot "filepath" using "time":(column("y") + 1)

文字列として操作したい場合は

plot "filepath" using "time":"y":("value: ".stringcolumn("label")) with labels

とかでできます。

データ処理のスクリプトを書いていると、開発の途中で新しいフィールドが追加されたり順番を変えたくなったりすることもありますが、はじめからフィールド名で指定しておけば、少なくともそういったときにフィールドの順序にとらわれることはなくなります。

何のデータを処理しているのか、コード的にもわかりやすくなりますね。

精神衛生的に、フィールド名が使える場合は使いたい。

  • Mac OSX 10.9 Mavericks
  • gnuplot 4.6