Skip to content
5月 21 / rakkyoo

eshellでruby1.9を使う

最近,emacsのeshellを使うことがままあるのですが,エイリアスの設定がいまいちわかりませんでした.

eshellでエイリアスを設定するには,
「~/.eshell/alias」
を変更すれば,いいだけです.

ここで,
「ruby」に「ruby1.9」を設定したかったのですが,なかなかうまくいきません.
直接「/opt/local/bin/ruby1.9」を設定してみたのですが,それでもうまくいきません.

1
alias ruby /opt/local/bin/ruby1.9

っとすると,

1
$ ruby -v

としても,何もでてきません.

調べてみたら,「引数」を設定しないと駄目みたいですね.

1
2
3
alias ruby /opt/local/bin/ruby1.9 $1
alias irb /opt/local/bin/irb1.9 $1
alias gem /opt/local/bin/gem1.9 $1

$1を後ろにつけてみたら,うまくきまいした.

1
2
$ ruby -v
ruby 1.9.3p194 (2012-04-20 revision 35410) [x86_64-darwin11]

とりあえず,一安心です.

5月 9 / rakkyoo

日本語入力システム「SKK」をインストール

なんとなくなのですが,SKKを使ってみることにしました.
「漢字とひらがなを意識しながら文章を書いていくのが何となく楽しそうだから」っというのが理由なのですが,,,

なかなか慣れるのに苦労しそうですが,とっても面白いです.
( ↑「慣れる」を書くのは「NaReru」と大文字と小文字を使い分けながら書くのがSKKの流儀です)

以下,備忘録です.

1.SKKをダウンロード

ここからダウンロードします.
今のところ,一番新しいバージョンは,「ddskk-20120506.tar.gz 06-May-2012 09:05 823K 」なので,これをダウンロードしました.

2.解凍して,解凍先ディレクトリに移動する

解凍はターミナル上で行ってもいいのですが,Macでは何も考えずに「ダブルクリック」するだけでもできます.
解凍できたら解凍先ディレクトリに移動しておきます.

~/temp/ddskk-20120506.tar.gzを解凍したとすると,

1
$ cd ~/temp/ddskk-20120506

とするだけです.

3.解凍したファイルの「SKK-CFG」を変更する

125行めあたりにある,
;;; (setq SKK_DATADIR “/Applications/Emacs.app/Contents/Resources/etc/skk”)
;;; (setq SKK_INFODIR “/Applications/Emacs.app/Contents/Resources/info”)
;;; (setq SKK_LISPDIR “/Applications/Emacs.app/Contents/Resources/site-lisp/skk”)
;;; (setq SKK_SET_JISYO t)
この3行のコメントをはずす.

1
2
3
4
5
;;; Apple Mac OS X における self-contained な Carbon/Cocoa Emacs の設定例:
 (setq SKK_DATADIR "/Applications/Emacs.app/Contents/Resources/etc/skk")
 (setq SKK_INFODIR "/Applications/Emacs.app/Contents/Resources/info")
 (setq SKK_LISPDIR "/Applications/Emacs.app/Contents/Resources/site-lisp/skk")
 (setq SKK_SET_JISYO t)

4.make installする

あとは簡単で,ターミナルで,

1
make install EMACS=/Applications/Emacs.app/Contents/MacOS/Emacs LISPDIR=~/.emacs.d/lisp VERSION_SPECIFIC_LISPDIR=~/.emacs.d/lisp INFODIR=~/.emacs.d/info

と実行すればインストール完了です.

5.init.elに設定

init.elに以下を追加すればOKです.

1
2
3
4
5
;;; SKKについて
(require 'skk-autoloads)
(global-set-key "\C-x\C-j" 'skk-mode)
(global-set-key "\C-xj" 'skk-mode)
(global-set-key "\C-xt" 'skk-tutorial)

以上で無事にインストールができて,とっても快適です.

SKKの使いかたは,
Emacsで

1
M-x skk-tutorial

として,チュートリアルをやってみるのが一番です.

しばらく日本語入力には苦労しそうですが,楽しめそうです.

4月 27 / rakkyoo

辞書アプリ「Dictionary.app」で「英辞郎」を使えるようにしてみる

macで英辞郎が使えないかと常々思っていたのですが,しっかりとできるようにしてくれているのですね.
やり方は,ここ↓

に書いてあるとおりで簡単にできました.

以下,自分用に備忘録です.

1.英辞郎を買う

英辞郎の辞書データをここから買います.

1980円で,今現在Ver.133が最新です.
せっかくなので,最新のデータを久々に購入しようかなと思い,私は,infopot経由で購入して,すぐにゲットできました.

2.英辞郎を解凍

infopot経由で購入すると,「EDP-133.ZIP」がダウンロードされるので,解凍します.
解凍すると,,,
EDP-133.ZIP
    |— EIJIRO
    |    |— EIJI-133.TXT
    |    |— REIJI133.TXT
    |    |— RYAKU133.TXT
    |    |— WAEI-133.TXT
    |
    |— PDIC-UNI
        |— EIJI-133.DIC
            ・
            ・
            ・
っという感じになります.ここで今回使うのは「/EIJIRO/*.TXT」ファイルのみです.

3.テンプレートフォルダをコピー

ここから先は,上記サイトに書いてあるとおりに進めるだけです.
まずは,project_templateフォルダを適当な場所にコピーするだけ...
私は,ホームに「temp」フォルダを作って,そこで作業を行ったので,

1
2
$ mkdir ~/temp
$ cp -r /Developer/Extras/Dictionary Development Kit/project_templates ~/temp/

としただけです.

4.コンバートファイルをダウンロード

ここから「eiji_conv009.zip」をダウンロードして解凍します.
解凍したファイルを,「project_templates」フォルダにコピーすればOKです♪

5.略語郎を修正

terminalで作業ディレクトリに移って

1
$ cd ~/temp/project_template

から,

1
$ ruby -Ks ryaku_conv.rb < RYAKU133.TXT > Ryaku.txt

として,「Ryaku.txt」を作成します.

6.英辞郎と略語郎のファイルを結合

1
ruby -Ks cat.rb EIJI-133.TXT Ryaku.txt > Eijiro.txt

7.XMLファイルを作成

MyDictionary.xmlを作成します.
ただし,MyDictionary.xmlがディレクトリ内にある場合は,消さないとエラーが出るので,

1
$ rm MyDictionary.xml

としてから,

1
$ ruby eiji_conv.rb < Eijiro.txt > MyDictionary.xml

とするだけ,,,
この作業に,現行のMacBookAirでだいたい30分くらいかかりました.

8.インストールする

あとは,makeするだけで終了です.

1
$ make ; make install

このコマンドを打ってから,ひたすら待つのみです.
ちなみに,私の環境では,10時間くらいかかりました.

結果

無事にできているかチェックです.
実際に,「Dictionary.app」を起動してみると,,,

英辞郎

こんな感じに無事に使えるようになっていました.

ビンワード様,様様です.

相当快適になりました.

4月 24 / rakkyoo

MacPortでソフトをインストールできない

MacPortを使っているのですが,ソフトのインストールができなくなりました.

1
$ sudo port upgrade outdated

としたときの,エラーは以下の通り.

1
2
Error: Unable to open port: can't read "build.cmd": Failed to locate 'make' in path: '/opt/local/bin:/opt/local/sbin:/bin:/sbin:/usr/bin:/usr/sbin' or at its MacPorts configuration time location, did you move it?
To report a bug, see http://guide.macports.org/#project.tickets

読んでみると,「build.cmd」がないとのことなので,

ここから,「Command line tools」をダウンロードして,インストールをしたら無事にエラーが出なくなりました.

とりあえず,一安心です♪

4月 20 / rakkyoo

rubyのtkを使えるように.

rubyでGUIを作れるTKを使えるようにしてみました.

TKはUNIX上でGUIを作成するツールキットなのですが,macでも使えるとのことなので,使えるようにしました.

ターミナルで,

1
$ sudo port install tcl tk

として,tcl tkをインストールします.

その後,以下のようにrubyを上書きすれば終了です.

1
$ sudo port install ruby19 +thread_hooks +mactk

これだけで終了でした.

試しに,

のP76にあるサンプルを実行してみると...

1
2
3
4
5
6
7
require 'tk'
# ボタンを作成
b = TkButton.new(:text => "hello") .pack
# ボタンが押されたときの動作
b.command{ puts "hello" }
# イベントループの開始
Tk.mainloop

Menubar
こんな感じのかわいいGUIができて,ボタンを押すと
Tk text rb
ターミナル上に「hello」と表示されるようになりました.

簡単なGUIプログラムもこれで作成できます.

それにしても,たった4行でGUIプログラムができてしまうのはすごいですね.

4月 11 / rakkyoo

emacsで改行コードの変更など

エディタで作業するときはEmacsを使うことが多いのですが,改行コードを変更したり文字コードを変更する時にどうしたらいいのか悩むことがあります.

一応,備忘録です.

1
C-x Enter f 文字コード変換

でできます.

ここで,文字コードは,

  • utf-8
  • euc-jp
  • shift_jis

を指定して,続いて改行コードは

  • unix –> LF
  • dos –> CR+LF
  • mac –> CR

となります.文字コードと改行コードをまとめて指定できるので,
たとえば,文字コードを「UTF-8」,改行コードを「LF」に変更したい場合は,

1
C-x Enter f utf-8-unix

と指定すれば,完了です.

3月 26 / rakkyoo

理系の研究論文を書くために使ったMacのアプリ-Macを使い始めて半年でのまとめ-


はじめに


Macを使い始めて半年となり,ようやっと慣れてきた気がします.Macのみを使って,試行錯誤をしながら一年間研究生活をして,論文を書くまでになったので,その間使ったソフトのまとめです.

理系の研究生活をしていると,

  1. 計画して
  2. 実験して
  3. データを処理して
  4. グラフを書いてみて
  5. 説明用の図を作って
  6. 論文orプレゼンにして

の繰り返しなのですが,1and3〜6がmac上での作業になります.mac上でどんなソフトを使いながら半年間格闘したのか,以下にまとめていきます.


○ アウトラインを固める(1.計画して)


計画をする上では,まずは思いついたことをリストアップしていく作業が多いのですが,そんなときは,OmniOutliner Pro for Mac
を使っています.ちょっぴりお値段はしてしまうのですが,日常使う物なので,使いやすいアウトラインエディタを探していたら,最終的にこれに落ち着きました.

このブログを書くときも,OmniOutliner Pro for Mac
でリスト化してから書いています.
名称未設定
こんな感じに.
いろいろとすばらしいところはあるのですが,書いた物をHTMLに書き出したりすることもできたりします.
Fullscreen
タブで階層を下げたり,ドラッグで順番を入れ替えたりと,直感的に作業もできてとても便利です.


○ 解析ツール and プログラミング(2.データを処理して)


実験で取ったデータを解析する上では,解析ツールやプログラミング言語を使っています.

プログラミング-ruby-

今までは,perlを使っていたのですが,macを買ってからrubyを使い始めてみました.まだまだ初心者なのですが,データファイルの処理などは全てrubyで今は行っています.取ったデータを一括で処理したりするのはお手の物で,後述するRやgnupulotのパッケージを使うことで,統計解析を行ったり,グラフ化したりも簡単です.

何より,「irb」で対話的にいろいろと試せるのが素敵です.「ハッシュの書き方ってこんなんでいいんだけっけ?」とかって疑問に思ったらすぐにコマンドライン上で「irb」と打って,チェックしながらプログラミングできます.

プログラミング-eclipse java-

今年は,配布をしないといけないGUIプログラムを作成したのですが,マルチプラットフォームでとの事だったので,ちょっぴりJAVAをかじってみました.そんなお供に,eclipseはとっても役に立ちました.

解析ツール-R-

統計解析には「R」が一般的でしょうか?
macport経由で簡単にインストールして,簡単に統計解析ができます.
Rについては,

この本だけでなんとかなります.

解析ツール-octave-


これも,Macport経由で簡単にインストールできます.
octaveを触らない日は無いくらい毎日使っています.

用途としては,解析全般です.Matlabのクローンなので,思いついたことは何でもできるのですが,今年主に使っていたのは以下の点です.

  • 周波数解析 〜フーリエ変化や窓関数をかけたり
  • 統計解析 〜検定など
  • グラフ作成
  • 複数のファイルを一括処理
  • シミュレーション 〜微分方程式の解法

かなりざっくりとした書き方ですが,とにかく便利です.ただでこんなにできるのは本当にすごいですね.


○ グラフの作成(4.グラフを書いてみて)


グラフ作成はいろいろなソフトがありますね.
AppStoreで購入したのは,

あたりを購入して使ってみました.この二つの中では,イメージグラフの作成用にOmniGraphSketcher
を多用しました.この辺も含めて,グラフ作成に使ったソフトをまとめます.

グラフ作成 -R-


データの分布やヒストグラムを書くにはやはりRが一番ですね.

作図の領域やプロットする領域などの設定も柔軟にできるので,

思うようなグラフがかけるところがいいですね.

グラフ作成 -octave-


octaveも十分にグラフ作成ソフトとして使えます.

1
hold on

としておけば,どんどん同じグラフ上にプロットを増やせるし,棒グラフと折れ線グラフを重ねたりも,思うようにできます.

グラフ作成 -gnuplot-


言わずと知れた有名なグラフ作成ソフトですね.

私の場合は,gnuplot単独では無く,rubyから使っています.

rubyで複数のデータファイルを読み込んで→グラフ化したいデータを配列にまとめて→gnuplotでグラフ化してから→epsファイルをはき出す
という感じで使っているのですが,とっても快適です.

グラフ作成 -kaleidagraph-


とってもきれいにグラフがかけるソフトです.
何より,wordにグラフを貼り付けるときに,「OLE」として貼り付けられるので,後々直しが面倒なときはとても楽です.

wordで資料を印刷した後で,「もう少し線を太くしたいな」とか,「フォントを変えたいな」っといった時には,wordからkaleidagraphを呼び出して編集できます.
ただ,このソフトのネックはお値段が高いこと.(50000円くらいします)

グラフ作成 -OmniGraphSketcher-


Macを使い始めて,一番感動したソフトの一つです.

データをグラフ化するとかには余り使えないかもしれないのですが,説明用のイメージグラフを作成するには,これ以上のソフトは見たこと無いくらいすばらしいソフトです.詳しくは,このビデオチュートリアルにて↓


○ 図の作成(5.説明用の図を作って)

図の作成 -OmniGraffle-


フローチャート等をきれいに作るのにはOmniGraffle
がとってもきれいに書けます.proになると複数ページを作成できるので,論文を書いたときの図の管理は楽になります.

    OmniGraffle Pro App
    カテゴリ: ビジネス
    価格: ¥17,000


    カテゴリ: ビジネス



    OmniGraffle App
    カテゴリ: 仕事効率化
    価格: ¥8,500

図の作成 -iDraw-


図の作成はiDrawがとってもすばらしいと思います.
オブジェクトの移動が粗っぽかったのですが,やりかたがわかれば,オブジェクトの移動もスムーズになって,私の仕事の範囲内ではほぼ完璧なドローソフトとなりました.

    iDraw App
    カテゴリ: グラフィック&デザイン
    価格: ¥2,200


○ 論文を書く(6.論文orプレゼンにして)


Windowsでは,AdobeのPageMakerを使っていたのですが,もう作っていないみたいなので,macでは何を使おうか迷ったあげくに,一般的なのですが,以下のソフトを使って書いています.

論文を書く -word2011-

定番ですが,どうしてもファイルのやりとり上,これで作らないといけない状況です.windows時代から含めて,10年以上使っているのですがまだ使いこなしている気になれない不思議なソフトです.mac版(2011)は落ちることも無くて,とても快適に使えています.

論文を書く -LaTex-


Texの環境は,以下で簡単に入ります.↓

このwikiを参考にすれば,mac上に素敵なtex環境が整います.

LaTexに関しては,もうこの本だけで十分です.

[改訂第5版] LaTeX2e 美文書作成入門

この本のみで,かなり快適にLaTexライフが過ごせています.最近は,はがきの印刷や差し込み印刷もLaTexでやっています.


以上が,論文を書く上でお世話になったソフトたちです.
日常の生活では,その他様々なソフトのお世話になっているのですが,解析や論文作成に特化すると,たったこれだけなのですね.
フリーからシェアウェアまでごちゃ混ぜなのですが,LaTex以外は今年度初めて使ったソフトor言語です.環境が変わっても何とかなる物ですね....

何より不思議なのは,作業効率云々よりも,windows時代よりも数段作業自体が楽しいのがmacの魅力なのでしょうか?

とりあえず,今年度の備忘録です.

3月 21 / rakkyoo

iTerm2でAltキーをMetaキーとして使う

何となくターミナルはiTerm2

を使っているのですが,iterm2内でemacsを使ったときに,「Altキー」を「Metaキー」として使いたいなと思っていたのですが,設定で簡単にできるのですね..忘れないために備忘録です.

1.iTerm2のpreferenceを開く(Command+「、」)
Fullscreen

2.「Keys」を開く
Preferences

3.「+Esc」にチェックを入れる
Preferences 1
これだけです.

とっても快適に.

3月 20 / rakkyoo

Coteditorで「¥」を「\」に置換する

テキストエディタは3つ使っています.

  • Emacs
  • CotEditor
  • JEditX

です.どれも使い勝手は良くて気に入っているのですが,CotEditorの気軽さが時としてとても役に立ちます.

たとえば,Texのサンプルファイルをダウンロードしたときなど,Shift-JISをUTF-8に文字コードを変換したときなど,以下のように「¥」マークになっていたりします.

Hagaki tex
私の環境では,「\」に変換したいため,CotEditorの置換を使って行いました.

Fullscreen
Command + 「F」で検索パネルを表示して,

TextExpander Helper
詳細設定を押して,

Find
エスケープ文字を「¥入力を\に変換」にしてから,置換の蘭に「\」を入力.

Fullscreen 1
次に,エスケープ文字を「¥」に変更してから,検索の蘭に「¥」を入力します.

後は,範囲を全体にして,一括置換をすれば,全て置換されます.
Find 1

もっとスマートなやり方(シェルなど)があるのかもしれないのですが,急いでいるときなどはCotEditorで処理してしまうのが便利ですね.

3月 16 / rakkyoo

Rでepsファイル出力

ここ最近,Rでグラフを出して,texで文章を書くことが多いのですが,Rのグラフをeps形式で出力しようとすると,

ここにあるように,

1
dev.copy2eps(file="ファイル名.eps")

とするのが一般的みたいなのですが,うまくいきません.

できたファイルがエラーになってしまいます.

そこで,「postscript」を使ってepsファイル化することとしました.

まず,使えるフォントは,

1
names(postscriptFonts())

で調べてみると,
1 R
こんな感じのフォントが使えるみたいです.私は「Helvetica」が多いので,これを選択することとして,epsファイルで出力するときは,グラフ化したすぐ後で

1
2
3
4
5
postscript(
  file="./test.eps", width = 5, height = 5,
  horizontal = FALSE, onefile = FALSE, paper = "special",
  family="Helvetica"
)

として出力しました.

これで無事にきれいなepsファイルが出力できて一安心です♪