Macで社会科学を研究する

OSの再インストールを記念(?)して、備忘録も含め、経済学を主体とする社会科学の論文を書く環境をMac OS X上で整える方法とその後を、関連記事も含めて紹介します。更新が頻繁なときは研究する気がないことを示唆しています。ちなみに、日本語環境の構築はしていませんが、大体使えると思います。

My Photo
Name: SocSci
Location: New York, United States

Sorry, this site is written in Japanese. I am a Japanese cliometrician living in the United States. What is Cliometrics? We cliometricians study history using economic methods. Look at this. I also like angling and driving as well.




スルガ銀行ANA支店


【PR】「月の土地」が買えるってほんと? 火星と金星の土地もあります!
【PR】忘年会はぐるなびで!ただ今100万円が当たる豪華キャンペーン実施中☆
【PR】遊びもバイトも熱中するキミを応援したい!Powered byフロム・エー ナビ♪

Wednesday, November 22, 2006

LaTeX を RTF に変換する  

理論の論文なので LaTeX を使って書いていたのですが、PDF じゃ編集できないので、アドバイザーから Word で読めるファイルを送れと言われてしまいました。多分、変な英語を書き直してくれるのでしょう。前にも「19世紀にラム酒(Rum)がカリブからボストンに送られていた」と書いたつもりが、アドバイザー(略称 RAM)が送られてるって書いてたし、バハマ人のことをバハメンって書いて、それはバンド名って言われたこともあるし。ちなみに、理論っぽいのはLaTeXで、歴史とか応用色の強い論文はWordで書かないと、かなり高い確率て送る時に困ります。

そこで、数種類のコンバーターを試したのですが、結局 latex2rtf というフリーウェアが一番成績が良かったです。有償ソフトでは、PDF から RTF か DOC に変換するソフトをかなり試しましたが、全て数式をうまく変換できずに終わってしまいました。以下にいくつかの例を載せておきます。(Mac上でdvipdfmxを使ってコンパイルし、Windows上で変換後、Mac上のWordで表示)

Solid Converter による変換


ALLPDF Converter による変換


ソースコード

これでは、手作業での修正部分が多く、使い物にならないので、他のソースを当たってみることにしました。普通ならTeX2WORDを使えばいいのですが、有償な上にMathTypeとWord(どちらもWindows版)を要求するし、有償な割には2003年で開発も止まっている様なので、今回はパスしました。そこで見つけたのがフリーウェアの latex2rtf というツールです。インストールは簡単で、ここからダウンロードしてきて、いつものように、デスクトップ上(~/Desktop)にダウンロードして解凍したと仮定して、以下の様な手順でビルド&インストールを行います。(Makefileの編集はしていません)

cd ~/Desktop/latex2rtf-1.9.15
make
sudo make install

ちなみにこのツールはイメージが文章中にある場合、ImageMagick を使うので、ここでダウンロードして以下のようにしてインストールしておきます。(デスクトップ上にダウンロードして解凍したと仮定)

sudo mv ImageMagick-6.3.0-5 /usr/local
sudo ln -s /usr/local/ImageMagick-6.3.0-5 /usr/localImageMagick

その後、適当なテキストエディタで .bashrc を開き、次のように記述します。

export MAGICK_HOME="/usr/local/ImageMagick"
export DYLD_LIBRARY_PATH="$MAGICK_HOME/lib"
export PATH=既に書かれてあるパスの記述:$MAGICK_HOME/bin

これで準備は完了です。今回は、少しファイルが重くなりますが、数式を全てビットマップにして表示するように指定し、以下の様なオプションを指定して変換します。(ソスファイルのファイル名を index.tex にしています)ここで、数式エディタなどで編集したい場合はこの方法は良いアイデアではありませんが、正しく数式が変換されないため、この方法をとりました。

latex2rtf -M12 index.tex

この場合のオプションは、-M12 で全ての数式をビットマップに変換することを指定しています。詳しくは、次の様な命令を出してオプションを確認して下さい。

latex2rtf -help

全ての数式環境でビットマップを作成するので、変換に時間がかかりますが、以下の様な感じで、満足のいくRTFが得られます。

latex2rtf による変換

ちなみに、latex2rtf ではいくつかの環境等がサポートされていません。今回は以下の様な環境等を使っている場合に変換されませんでした。

\begin{align} ... \end{align} → \begin{equation} ... \end{equation} に書き換え
\citename{リファレンス} → 手作業でリファレンスを修正
\citeasnoun{リファレンス} → 手作業でリファレンスを修正

この後、Wordで文章を開いてWord文章として保存します。そうしないと、ファイルがとてつもなく大きいサイズになってしまいます。(今回の例では、RTF形式だと20MB、DOC形式だと7.7MB)これをメール添付時にZIP形式でアーカイブして、結局157KBに収まりました。



Saturday, November 18, 2006

古本を探すサイト  

どうやら久々に貿易理論で論文が書けそうなのですが、修士一年のときから愛読している本(Woodland, A.D., 1982, International Trade and Resource Allocation, North-Holland)は既に絶版となっており、今回もいつものように図書館で借りてきました。しかし、ずっと読んでどこに何が書かれているか把握している本は持っておきたいし、眺めていると欲しくなってきたので、もう一度探したのです、Googleで見つけた Used Book Search - Worldwide というサイトで。

 
ちなみに、アメリカへ来てここ数年、もう一冊探していた本(Nikaido, H., 1968, Convex Structure and Economic Theory, Academic Press)がいとも簡単に見つかったことに気を良くして、ことあるごとに探し続けていたのですが、ずっと見つかりませんでした。£45だったし、ホントに良かった。North-Hollandはなぜこの本を再販しないんでしょう。

ブックサービス


Friday, November 10, 2006

GhostScriptのインストール  

前にMxdviを含めたTeX関連のインストールをまとめた時に書くのを忘れましたが、MxdviでEPSイメージをプレビューで表示させる場合、GhostScriptというライブラリを導入している必要があります。(Mxdviについてはここを参照)

では、まずここからGhostScriptの最新版(現時点では8.54)をダウンロードして解凍します。そして、解凍したディレクトリがデスクトップ(~/Desktop)であるとすると、通常やる様に、以下の様にしてビルドしてインストールします。

cd ~/Desktop/ghostscript-8.54-gpl
./configure
make
sudo make install

これで完了です、Mxdviの EPS View のチェックボックスにチェックを入れて、挿入したEPSイメージが表示されるか試してみて下さい。今回、初めて気付きましたが、GhostScriptを開発してるのは、ウィスコンシン大学マディソン校だったんですね。

アウトドア&フィッシング ナチュラム


Tuesday, November 07, 2006

GDのインストール  

GDはイメージライブラリの一つで、PHPと連携させることにより、ダイナミックにウェブページ上にイメージを生成させることができます。PHP(ここを参照)とイメージライブラリ(ここここを参照)の多くをインストールしたので、ついでにGDもインストールします。その前に、既にインストールしたライブラリ以外に、フォント関連のライブラリであるFreeType2が必要なので、まずそれからインストールします。

FreeType2
まずここからfreetype2の最新版(現時点では2.2.1)をダウンロードして解凍します。解凍したディレクトリがデスクトップ(~/Desktop)であるとすると、以下の様にしてビルドしてインストールします。

cd ~/Desktop/freetype-2.2.1
./configure
make
sudo make install

GD
次にGDをここからダウンロードして、同様にデスクトップ上に解凍したとします。(ページの中段あたりにステーブルバージョンのダウンロードリンクがあります)そして、通常やる様にコンパイルすればよいのですが、configure で生成される Makefile では X11R6 にある fontconfig へのリンクが間違っているので、以下の様にしてシンボリックリンクをはるか、Makefile を適当に編集してからコンパイルします。

cd ~/Desktop/gd-2.0.33
./configure
ln -s /usr/X11R6/include/fontconfig /usr/local/include
make
sudo make install

Apple Store(Japan)

PHP
最後に、PHPにGDを含ませる様に、--with-gd=/usr/local など、必要であればその他いくつかのオプションを追加して、再コンパイルします。

cd ~/Desktop/php-4.4.4

./configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --disable-dependency-tracking --with-apxs --with-ldap=/usr --with-kerberos=/usr --enable-cli --with-zlib-dir=/usr --enable-trans-sid --with-xml --enable-exif --enable-ftp --enable-mbstring --enable-mbregex --enable-dbx --enable-sockets --with-iodbc=/usr --with-curl=/usr --with-config-file-path=/etc --sysconfdir=/private/etc --with-mysqli=/usr/local/mysql/bin/mysql_config --with-mysql-sock=/var/mysql/mysql.sock --with-gd=/usr/local --with-freetype-dir=/usr/local

make clean
make
sudo make install

これで、ウェブサーバーを再起動して、phpinfo() を書いたページにアクセスし、以下の様な表示があればインストールは成功です。



GDをPHPと連携させて使う場合、基本は次の様なステップでイメージを生成します。

ステップ1
イメージの土台を生成
例:
$img = ImageCreate(200, 200);

ステップ2
土台の上にイメージを描く
例:
$gry = ImageColorAllocate($img, 192, 192, 192);
$wht = ImageColorAllocate($img, 255, 255, 255);
$blu = ImageColorAllocate($img, 0, 0, 255);

ImageRectangle($img, 20, 20, 50, 60, $blu);
ImageFilledRectangle($img, 50, 60, 90, 120, $blu);
ImageFilledArc($img, 150, 150, 50, 80, 0, 360, $wht, IMG_ARC_PIE);
ImageString($img, 14, 30, 25, "This is a sample.", $wht);

ステップ3
イメージを表示する
例:
header("Content-type: image/png");
ImagePng($img);

これで生成された画像が下のイメージです。もちろん、ウェブページ上で入力された値を基にイメージを生成することも出来るので、使い用によっては、かなり特徴的なことができるかもしれません。


オラクルライセンスセンター


Monday, November 06, 2006

ウェブサーバーの活用法6(データブラウザの作成)  

MacではApacheが簡単に起動できます。このアドバンテージを研究に活かすことを考えるとき、まず、リレーショナルデータベースとの連携を考えることができます。あるデータの特性を知る上で、Stataなどの統計パッケージで様々な統計量を出したり、適当な回帰式を回したり、データをプロットしたりする他に、自分の分野(Cliometrics)などでは、具体的にどの州のどの郡でどういう特性が見られるのか、というものが、どこかで研究発表をする時に大きくモノを言うときがあります。(相手はアメリカ人なので、アメリカ史を題材にするとき、それ以上の情報を頭に入れる必要があります)この場合、文字列を扱うことが必要になるのですが、Stataでは厳しいので、他の選択肢を探る必要があります。

Apple Store(Japan)

この場合、ExcelやAccessを駆使するというもの(最も一般的?)がありますが、オープンソース文化に浸ってきた者としてはなじみがありません。また、自分の比較優位を考えると、ExcelやAccessを学習するより、PHPでMySQLに接続するスクリプトを書いた方が早いので、前の記事で少し書いたデータを基に、こんなスクリプトを作りました。公開しないでよいスクリプトなので、サーバー負担を全く考慮せず、書く時間を最小化して作っています。(画像参照)


PHPやMySQLに関しては暇がある時に少しずつ解説していきたいと思いますが、これで活用法の一つは示すことができたでしょうか?



Powered by Blogger