Zoteroの内容をXMLで書き出すならMODSで

最近論文を書いているので、Zoteroがやっぱり便利だなと思って使っているのですが、文献リストの自動生成のスタイルにほしいものがないので、自分で文献リストをつくるためのスクリプトをかくことにしました。そのためにXMLで出力したいので、エクスポートの方法を調べてみました。

エクスポートの方法は、Zoteroの中央のウィンドウ枠で資料を選択して右クリックして、[アイテムをエクスポート]を選択すると出力形式が選べます。

このうちXML形式のものは、Zotero RDF、MODS、Unqualified Dublin Core RDFの3つです。Zotero RDFは、Zotero独自のもののようですね。MODSアメリカ議会図書館が定義したもので、Unqualified Dublin Core RDFDublin Coreに基いたものなのだと思います。Zoteroドキュメンテーションのどこにちゃんと書いてあるのかわからないので、詳しくはわかりませんん。

このうち、どの形式でエクスポートするのがいいのか確かめるために、XML以外のものもふくめてすべての形式で出力してみました。Unqualified Dublin Core RDFでは、残念ながらZoteroでつけたキーワード(タグ)のほか、出版地も出力されません。メタデータについてはあまりくわしくないのですが、ダブリンコアでは出版地については決められてなかったのかな。なので選択肢はZotero RDFかMODSに限られてくるわけですが、ざっとながめたところMODSのほうがわかりやすかったし、ガイドラインもウェブでわかりやすく出してくれているので、エクスポートするときはこの形式にすることにした、というわけです。長々と書いたけどそれだけです。あとは、Pythonかなにかで成形するスクリプトをざっくりと書こうと思います。

Wubi Ubuntu が起動しなくなったのでフィックス

WubiUbuntuを使っているのですが、寝る前にUpdate Managerでアップデートし、朝起きてみたらUbuntuのほうが起動できなくなっていました。検索してさがしたら解決法が見つかったのでここに記す。環境にもよると思うので誰でもうまくいくかは知りません。

まず、UbuntuのLive CDで起動して、Windowsパーティションをマウントしました。こちらを参考に。

Wubiインストレーションが起動しない場合アクセスして修復するには?

それから、grub.cfgを書きかえました。こちらを参考。

Re: Unknown Command 'loadfont'


sudo nano /vdisk/boot/grub/grub.cfg

で、


insmod ntfs
set root='(hd0,2)'
search --no-floppy --fs-uuid --set 8ce2a4f2e2a4e226
loopback loop0 /ubuntu/disks/root.disk
set root=(loop0)
if loadfont /usr/share/grub/unicode.pf2 ; then
set gfxmode=640x480
insmod gfxterm
insmod vbe
if terminal_output gfxterm ; then true ; else
# For backward compatibility with versions of terminal.mod that don't
# understand terminal_output
terminal gfxterm
fi
fi
insmod ntfs
set root='(hd0,2)'
search --no-floppy --fs-uuid --set 8ce2a4f2e2a4e226
loopback loop0 /ubuntu/disks/root.disk
set root=(loop0)
set locale_dir=($root)/boot/grub/locale
set lang=en

の中にある、


loopback loop0 /ubuntu/disks/root.disk

という行を


loopback loop0 /host/ubuntu/disks/root.disk

に書きかえて保存。それから再起動するとちゃんと動きました。

前にもこんなことがあって、そのときは解決法がわからなくてUbuntuごと再インストールしたことがあったので、もうWubiを使うのはやめようかな。でもまた最初から環境設定をしなおさなければならないのが面倒なので、移行するための何かうまい手をさがさねば。

英国図書館からの文献の注文のしかたまとめ

イギリスの英国図書館British Library(BL)から文献を取り寄せたのですが、ウェブサイトがだいぶわかりづらく、注文までにかなり時間がかかったので、手順をここに書いておきます(ときどき変わると思うので、あくまで参考までにという情報です)。

1. ほしい文献を探す
探す方法のひとつは、BLの統合カタログを使うことです。
Advanced Search of Integrated Catalogue

しかし、これでは驚いたことに今のところすべての文献がひっかかるわけではありません。Shelfmarkというものが与えられているもののみの検索のようです(おそらく)。BLのAsia, Pacific and Africa Collectionの場合は、ナショナル・アーカイブの統合検索サイトで検索することができます(その他のコレクションについては知りません)。

Access to Archives

この検索画面の[Repository]の部分で、[British Library, Asia, Pacific and Africa Collection]をプルダウン・メニューから選びます。その他の項目については、直感的にわかると思います。


2. 必要な情報を記録
文献の詳細情報を記録しておきます。必要な情報は次のとおりです。

  • Manuscript No or BL Shelfmark
  • Title
  • Author
  • Publication date
  • Pages/folio numbers required

このうち、ナショナル・アーカイブズのAccess to Archivesサイトで見つけたものには、Shelfmarkはついていません(と思います)。検索結果で太字で示される番号を記録しておきます。たとえば、「IOR/V/27/210/1/1」などという部分です。

また、マニュスクリプトなどの場合は、ページ数がわからないことが多いと思います。これは、カスタマー・サービスにメールで質問するしかないでしょう。わたしの場合は4つの文献の照会について、2, 3日で返信が来ました。連絡先は次のページに記載されています。

BL カスタマー・サービス


3. 注文書式に記入
普通は複写の注文をすることになると思います。

注文書式
注文書式の書き方
注文のしかた

書式記入時に注意を要するのはつぎの点です。

a. 受け取り方法
どのように送ってもらうかをここで決めます。

複写サービス料金表

表は右端のInternational Priceのみを見るだけで十分です。日本在住者にはVATは関係ありません。表の下段に送料が書かれています。

b. 受け取り形態
紙・マイクロフォーム・電子形式などがあります。電子形式には高画質のものと低画質のものとあり、値段が違うので気をつけましょう。わたしは一番コスト・パフォーマンスが良い「Scanned copies on CD 1-100 pages」という選択肢を選びます。画質はプリント品質ではないと書いてありますが、読むのに支障はないと思います。OCR読み取りもできましたし、Kindleでもちゃんと読めました。料金は、上の料金表に書いてあります。


4. 決済
同意事項の欄にチェックを入れて、[PROCEED WITH ORDER]ボタンをクリックすると、注文確認画面が出ます。確認をしたら、決済画面に行きます。決済はクレジット・カードになります。セキュリティ対策で、3Dセキュア認証が使われているので、クレジット会社に問い合わせて認証サービスにあらかじめ登録しておかなければなりません。

無事終了すると、注文のサマリーが表示されます。注文確認メールなどは特に来ないようです。


正直かなりわかりづらいサービスになってしまっていますが、日本にいながらにして注文できるメリットは大きいですし、ロンドンに直接出向くことのコストをかんがえれば、非常に安上がりに文献収集ができますから、わたしはこれを使っています。

Unicode のアラビア文字の入力について

あまり明確に書いてあるところがないので、アラビア文字の入力について、混乱しそうな点について書いておきます。特にウルドゥー語ペルシャ語などの入力に関係します。

結論を先に書くと、新規にアラビア文字でテキストを入力するには、Unicode では 0600-06FF 番の文字を使います。Presentation Forms A & B として定義されている、FB50-FDFF と FE70-FEFF は、後方互換性確保のためのもので、新規作成のための使用は非推奨です。

Unicode では、0600-06FF 番のコードポイントにアラビア文字が割り当てられていますが、その他にも

  • 0750-077F (Arabic Supplement)
  • FB50-FDFF (Arabic Presentation Forms-A)
  • FE70-FEFF (Arabic Presentation Forms-B)

などが定義されています。このうち、0750-077F の Arabic Supplement は、その名のとおり600番台に含まれなかった文字(アフリカの言語や古いペルシャ語などの文字)の追加です。これらの文字の使用については、当然ながら何の問題もありません。

混乱をよびそうなのは、Arabic Presentation Forms ですが、これらは後方互換性のためのものであり、新規文書作成のための使用は非推奨であるということが、Unicode コンソーシアムの FAQ ページに明記されています(FAQ - Middle Eastern Scripts and Languages)。

推奨されている600番台では、母音記号付き文字というものは定義されておらず、入力は子音字が基本となります。母音記号を付けたいときには、combining marks と呼ばれる 064E などを、子音の文字の直後に入力します。

ウルドゥー語などのフォントには、600番台ではなく FE70-FEFF に関連づけられたものをよく見かけますが(たとえばUrdu Nastaliq Unicode)、こうした使用のしかたは非推奨なので気をつけねばなりません。もちろん、最近のインプット・メソッドを使ってキーボード入力しているぶんには問題はあまりないでしょう(たぶん)。ありそうなパターンは、キーボードではなく文字コード表からコピー&ペーストしたときに、非推奨のものをコピーしてしまうということでしょう。このようなときにはシステム付属の文字コード表ではなく、Unicode コンソーシアムから文字コード表をダウンロードして使うほうが安全かもしれません(Character Code Charts - Arabic ダウンロード)。

なお、Unicode の基本的なところについては、つぎのページが簡潔にまとまっていて入門に最適です(英語)。

カール事務機のディスクカッターの比較

ドキュメントスキャナでスキャンするために、本など紙を裁断することにまつわるお話。

カール事務機のディスクカッターにはいろいろありますが、詳細を比べてみたかったので表にしました。値段等は商品カタログに書いてあるものです。A4サイズ(裁断幅310mm)のものだけ比較しました。

カール事務機商品カタログ→ディスクカッター

品番 税込価格(円) サイズ 裁断枚数(丸刃) 重量 消耗品
DC-210N 18,900 W360×L490×H80mm 40 2.6kg 丸刃(K-28)/ミシン目刃(K-29)/カッターマット(M-210)
DC-300N 8,925 W284×L402×H81mm 20 1.4kg 丸刃(K-28)/ミシン目刃(K-29)/カッターマット(M-210)
DC-CA4 5,250 W390×L265×H73? 15 1.2kg 丸刃(K-C20)/ミシン目刃(K-C21)/カッターマット(M-210)
DC-101E 8,190 W280×L410×H77mm 10 1.0kg 丸刃(K-28)/ミシン目刃(K-29)/カッターマット(M-101E)
DC-212 6,825 W264×L382×H68mm 10 1.3kg クラフトブレイド(B-01.B-02.B-03.B-04.B-05.B-06.B-07.B-08.B-09.B-10.B-11)/カッターマット(M-210)
DC-100N 3,360 W113.5×L384×H38mm 5 0.394kg 丸刃(K-13N)/ミシン目刃(K-12N)/カッターマット(M-210)
DE-200 6,825 W264×L382×H68mm 5 1.3kg 丸刃(K-28)/ミシン目刃(K-29)/カッターマット(M-210)

Gedit で正規表現を使う

Emacs や vi などのエディタをしっかり勉強する時間がなく、ついつい Ubuntu 付属の GUI のエディタ Gedit を使ってしまうのですが、正規表現が使えないと思い込んでいました。わざわざ Python や R なんかで処理していたのですが、思いついて調べてみたら簡単に Gedit 用のプラグインが見つかりました。

Ben Fisher さんによる Python正規表現を使ったプラグインです。

gedit Regular Expression Plugin
ダウンロード


$ ls -l regex_replace.tar.gz
$ mkdir .gnome2/gedit/plugins
$ gzip -cd regex_replace.tar.gz | tar xf - -C .gnome2/gedit/plugins

これで、Gedit のメニュー・バーの

[Edit] → [Preferences] → [Plugins]

から、Regex Search and Replace が選べるようになります。

使うときは、

[Search] → [Regular expression]

で検索画面が開きます。便利。

ウルドゥー語(Nastaliq)を Ubuntu で入力するための環境設定

Urdu Nastaliq Unicode という、ウルドゥー語で使う Nastaliq 体のフォントが、GNU General Public License で配布されています。その名のとおり、Unicode 対応です。

Urdu Nastaliq Unicode
ダウンロード先のリンク

10年前には、互換性のない独自規格による InPage といったソフトウェアを使うしかなかったことをかんがえると、まったく良い時代になったものです。

これは作成者のひとりの Tabish さんのページで .exe ファイルで配布されています。Ubuntu にインストールするには、普通のフォントのインストール手順にしたがえばいいわけですが、いちおうやり方をここに書いておきます。

1. ダウンロードした .exe ファイルを解凍。

2. 解凍したフォルダの中にある nastaliq_unicode.ttf というファイルをフォントのフォルダにコピー(フォントが入っている場所は、/usr/share/fonts あるいは ~/.fonts だと思います)。


sudo cp コピー元のパス/nastaliq_unicode.ttf /usr/share/fonts

3. フォントキャッシュをリフレッシュ。


sudo fc-cache -f -v

これができると、デスクトップ環境を Nastaliq のウルドゥーにすることまでできるようです。

Ubuntu Linux Localization Tutorial - Aasim's Web Corner