このページでは,[Mac] OS Xでサンスクリット語を表示させるための方法を紹介します.可能な限り「簡単で直感的,時代遅れでない,標準的な」方法を目指します.「標準的な」とは,簡単にいえば,新しいソフトなどをインストールせず,できるだけOS標準の機能を使う,ということです.
サンスクリット語をラテン文字で表す場合,キーボードで直接入力できない文字が存在するために,いろいろな方法が用いられてきました.たとえばśを表示したい場合,
といった方法が用いられてきました.これらの方法の利点は,次のASCII文字だけを用いて表せる,というところにあります.これらはキーボードから直接入力することができます.
#ref(): File not found: "IM_Skt_ASCII.png" at page "eLearning/InputMethod/Sanskrit/Mac"
一方これらの方法の欠点は,煩雑であったり,直感的でない,ということです.1, 2の場合はLaTeXを使う必要があり,ソフトウェアのインストールから始め,使い方を覚えなければなりません.3も,わざわざWordのメニューから操作しなくてはなりません.また,1, 2の場合は何らかの方法で転写を行うため,転写の規則を覚える必要があります.覚えれば大したことはありませんが,入力した文字と最終的に表示される文字が異なるため直感的でないことは確かです.
さて,世界中で使われているすべての文字を収録することを目標としたUnicodeを用いれば,śなどを直接表示できるようになります.最近のソフトウェアはUnicodeを扱えるようになっていますので,たとえば
で使うことができます.(Mac) OS XでのASCII文字以外(多くは「ラテン文字拡張」に含まれています)の入力方法について次節以降で解説します.以下の例で取り上げるのはOS X 10.9 Mavericksですが,ほかの比較的最近の(Mac) OS Xでも大体同じです.
OS X 10.8 MountainLion以前はメニューが異なります.上の手順を次のように読み替えてください.
キーボードで入力ソースを切り替えるには次のどちらかの方法で行います.
入力ソースを「U.S. Extended」にしたあと,次のように入力するとラテン文字拡張を入力することができます.たとえば1は,「[Opt]キーとxキーを一緒に押したあと,(一旦手を離して)sを押す」を表します.大文字を入力したい場合は,1の場合,「s」の代わりに「S」を入力します.なお,カッコ内に挙げられた文字のうち,最初の文字の入力例のみが紹介されています.
この方法で入力された文字は,合成文字ではなく1つの文字になります.
上に含まれない文字を用いる場合,入力方法(ヴェーダ)または入力方法(合成文字)を見てください.たとえば下点のṛではなく下輪(ring)のr̥を使いたい場合,入力方法(合成文字)を見ます.
次の文字はU.S. Extendedを用いてキーボードから入力することができます.
キーボードから直接入力できない文字は「文字ビューア」を使い,合成文字として入力します.ただし,合成文字はソフトウェアによってはうまく扱えない場合があります.
ほかの分類のうち,有用と思われるものは,
です.文字を検索することもできます.たとえばaにアクセント類が付されたものを検索したい場合,右上の検索ボックス(虫眼鏡のマーク)にaと入力します.
たとえばr̥を入力する場合,まずキーボードで「r」を入力し,文字ビューアでU+0325の位置にある「COMBINING RING BELOW」をダブルクリックして入力します.U+0325は,「00000300合成可能な発音区別記号」の分類のうち,左の0320と上の5の交点にあります(すなわち0320 + 5 = 0325ということです).複数の合成可能な発音区別記号を使うことができます.たとえばr̥̄́を入力するには下輪,長音記号,鋭アクセントを組み合わせます.
合成可能な発音区別記号のうち,有用と思われるものは以下の通りです.
以上の手順を毎回行うのは大変ですので,ことえりのユーザ辞書に登録したり,よく使う合成文字を一覧表にしておき,そこからコピーしてくるとよいでしょう.
使っているフォントにśなどの文字が含まれていなければ,入力できたとしても,それを表示させることができません.またUnicodeに対応していないフォントを使った場合,表示されないか,あるいは違った文字が表示されます.目安としては「OTF形式(.otf)で使う文字が含まれているもの」を使えばよい,ということになりますが,これを調べるのは面倒です.OSに付属している標準的なフォントを用いるのがよいでしょう.(Mac) OS Xであれば,たとえばTimes New RomanやMenloフォントを用いるとよいでしょう.
論文や報告書などを執筆する際には何らかのワープロソフト類を使うことになります.LaTeXを用いる場合,pLaTeXではこれらの文字を直接扱うことができませんので,upLaTeXを用います.あるいはXeLaTeXを用いてもよいでしょう.
upLaTeXではucsパッケージを用いますが,合成文字を扱うことはできるものの,難しいため,LaTeXのマークアップやtipaパッケージのマークアップに変換してから処理するとよいでしょう.
最近のOSならばUnicodeを扱うことができますので,たとえばOS X付属のsed, grep, perlでこれらのUnicode文字を検索,置換することができます.ほかのUnix系の大部分のOSでもおおむね10–5年前くらいからUnicodeが標準になっています.
LaTeXのマークアップ方式,KH方式と,Unicodeで入力されたテキストは相互に変換することができます.sedやperlなどでスクリプトを作成しておくとよいでしょう.
以下のパッケージは,相互に変換するためのスクリプトです.
展開すると,convskt-2014xxxxフォルダの中に
ができています.どちらも変換内容は同じです.改行コードはUnix用のLFになっています.
シェルスクリプトの方を使う場合は
$ ./convskt.sh tf2uni input.txt >output.txt
とします.perlスクリプトの方を使う場合は
$ ./convskt.pl tf2uni input.txt >output.txt
とします.
「tf2uni」の部分は「TF方式からUnicode」の意味です.「kh2uni」なら「KH方式からUnicode」,「tex2uni」は「LaTeXからUnicode」の意味です.どの変換方式に対応しているかを調べるためには,シェルスクリプトでは
$ ./convskt.sh
のように引数を与えないで実行します.perlスクリプトでは,ファイルの先頭の方に書かれています.
(Mac) OS Xの入力方式を利用することもできますが,quail用のlispファイルをインストールしてそれを使うこともできます.サンスクリット語(ラテン文字)をEmacs上で入力するをご覧ください.この方法を用いると,ほぼTF方式と同じ方式で入力することができます.