概要
著者:梅谷 武
作成:2014-01-18
更新:2016-09-29
 ラテン語翻訳支援機能はftexの\Latinタグとして実装される。
 \Latinタグを使うには、カレントディレクトリに専用辞書ディレクトリdicを複写し、config.iniにおけるDictionaryセクションのLatin変数に1を設定する。Latin変数に0を設定すると\Latinタグは無効となる。
 専用辞書ディレクトリdicは次のような内容になっている。
 dic ─┬─ Latin/	ラテン語辞書ディレクトリ
      │    │
      │    ├─ adjective1.csv	 形容詞辞書(1)
      │    │
      │    ├─ adjective2.csv	 形容詞辞書(2)
      │    │
      │    ├─ adverb.csv	 副詞辞書
      │    │
      │    ├─ conjunction.csv 接続詞辞書
      │    │
      │    ├─ noun1.csv	 名詞辞書(1)
      │    │
      │    ├─ noun2.csv	 名詞辞書(2)
      │    │
      │    ├─ noun3.csv	 名詞辞書(3)
      │    │
      │    ├─ numerical.csv	 数詞辞書
      │    │
      │    ├─ preposition.csv 前置詞辞書
      │    │
      │    ├─ pronoun1.csv	 代名詞辞書(1)
      │    │
      │    ├─ pronoun2.csv	 代名詞辞書(2)
      │    │
      │    ├─ proper_adj.csv	 固有形容詞辞書
      │    │
      │    ├─ proper_noun1.csv 固有名詞辞書(1)
      │    │
      │    ├─ proper_noun2.csv 固有名詞辞書(2)
      │    │
      │    ├─ proper_noun3.csv 固有名詞辞書(3)
      │    │
      │    ├─ verb.csv	 規則動詞辞書(1)
      │    │
      │    ├─ verb_d.csv	 形式受動態動詞辞書
      │    │
      │    ├─ verb_gerd1.csv	 動名詞辞書(1)
      │    │
      │    ├─ verb_impr1.csv	 命令法辞書(1)
      │    │
      │    ├─ verb_indc1.csv	 直説法辞書(1)
      │    │
      │    ├─ verb_infv1.csv	 不定法辞書(1)
      │    │
      │    ├─ verb_part1.csv	 分詞辞書(1)
      │    │
      │    ├─ verb_sd.csv	 半形式受動態動詞辞書
      │    │
      │    ├─ verb_subj1.csv	 接続法辞書(1)
      │    │
      │    └─ verb2.csv	 規則動詞辞書(2)
      │
      └─ config.ini	初期設定ファイル
[Dictionary]
Latin = 1
 \Latinタグ内にはUNICODEのASCII領域文字のみが記述可能であることに注意が必要である。構文解析アルゴリズムは文字がASCII領域文字であることに依存している。ASCII領域文字とはキーボードで打てる英数字のことと考えてよい。
 同様に辞書登録するkeyの部分もASCII領域文字でなければならない。意味の部分には任意のUNICODE文字が使える。
 \Latinタグが有効なときにラテン語の文章を\Latinタグで囲むと、処理時に自動的に辞書検索が行われ、各単語が品詞に応じた字体や色に変換され、その単語にマウスを乗せると吹き出しに意味が表示される。
¥Latin{Caesar suis imperavit ne quod omnino telum in hostes reicerent.}
 接尾辞:-ne,-que,-cum,-cumque,-veを自動検出する。
 各品詞はスタイルファイルの設定により、次のような字体や色で表わされる。
 スタイルファイルには次のように記述されている。これを変更することにより、ユーザーが自由にデザインすることができる。
.l_advb {    /* 副詞 */
  color: rgb(138,43,226);
  font-style: italic;
}
.l_prep {    /* 前置詞 */
  color: rgb(95,158,160);
  font-style: italic;
}
.l_conj {    /* 接続詞 */
  color: rgb(25,25,112);
  font-style: italic;
}
.l_pron {    /* 代名詞 */
  color: rgb(128,128,0);
  font-weight: normal;
}
.l_noun {    /* 名詞 */
  color: rgb(0,100,0);
  font-weight: normal;
}
.l_prpn {    /* 固有名詞 */
  color: rgb(0,100,0);
  font-weight: bold;
}
.l_prpa {    /* 固有形容詞 */
  color: rgb(0,0,255);
  font-weight: bold;
}
.l_adj {     /* 形容詞 */
  color: rgb(0,0,255);
  font-style: italic;
}
.l_numr {    /* 数詞 */
  color: rgb(0,255,255);
  font-style: italic;
}
.l_gerd {    /* 動名詞 */
  color: rgb(184,134,11);
  font-weight: normal;
}
.l_part {    /* 分詞 */
  color: rgb(220,20,60);
  font-style: italic;
}
.l_indc {    /* 直説法 */
  color: rgb(255,0,0);
  font-weight: bold;
}
.l_infv {    /* 不定法 */
  color: rgb(210,105,30);
  font-weight: bold;
}
.l_impr {    /* 命令法 */
  color: rgb(255,165,0);
  font-weight: bold;
}
.l_subj {    /* 接続法 */
  color: rgb(128,0,0);
  font-weight: bold;
}
 辞書は文字コードがUTF-8、改行コードがCR+LFのcsv形式テキストファイルである。
 辞書は品詞別に作られ、ftexを起動したときにメモリに読み込まれる。その際、各行はその項目数により決められた処理を行なう。
 辞書の種類とその内容を検索される順番に解説する。
 adverb.csv:副詞と間投詞をすべて含める。
  • 副詞
  • 間投詞
 preposition.csv:前置詞をすべて含める。
  • 対格支配前置詞
  • 奪格支配前置詞
  • 対格/奪格支配前置詞
 conjunction.csv:接続詞をすべて含める。
  • 等位接続詞
  • 従位接続詞
 pronoun1.csv:人称・指示・強意・疑問・不定代名詞を含める。
  • 人称代名詞
  • 指示代名詞
  • 強意代名詞
  • 疑問代名詞
  • 不定代名詞
 pronoun2.csv:関係代名詞、例外代名詞を含める。
  • 関係代名詞
  • 例外代名詞
 noun1.csv:第一曲用名詞、例外、第三/四/五曲用名詞の重複回避分を含める。
  • 第一曲用名詞(a幹)
  • 例外名詞(第一曲用他)
  • 第三曲用名詞 重複回避用
  • 第四曲用名詞 重複回避用
  • 第五曲用名詞 重複回避用
 noun2.csv:第二曲用名詞、例外、第一曲用名詞の重複回避分を含める。
  • 第二曲用名詞(o幹)
  • 例外名詞(第二曲用)
  • 第一曲用名詞 重複回避用
 noun3.csv:第三/四/五曲用名詞と第二曲用名詞の重複回避分を含める。
  • 第三曲用名詞
  • 第四曲用名詞
  • 第五曲用名詞
  • 第二曲用名詞(o幹) 重複回避用
 proper_noun1.csv:第一曲用固有名詞と例外固有名詞を含める。
  • 第一曲用固有名詞(a幹)
  • 例外固有名詞
 proper_noun.csv:第二曲用固有名詞を含める。
  • 第二曲用固有名詞(o幹)
 proper_noun.csv:第三/四/五曲用固有名詞を含める。
  • 第三曲用固有名詞
  • 第四曲用固有名詞
  • 第五曲用固有名詞
 proper_adj.csv:固有形容詞をすべて含める。
  • 第一/二曲用固有形容詞
  • 第三曲用固有形容詞
 adjective1.csv:第一/二/三曲用形容詞、所有形容詞、例外を含める。
  • 第一/二曲用形容詞
  • 第三曲用形容詞
  • 所有形容詞
  • 例外形容詞
 adjective2.csv:代名詞的・疑問・不定形容詞、形容詞辞書(1)重複回避分を含める。
  • 代名詞的形容詞
  • 疑問形容詞
  • 不定形容詞
  • 第一/二曲用形容詞 重複回避用
  • 第三曲用形容詞 重複回避用
 numerical.csv:数詞をすべて含める。
  • 基数詞
  • 序数詞
  • 数副詞
  • 配分数詞
  • 月名
 verb_gerd1.csv:不規則動詞の動名詞を含める。
  • 不規則動詞(eo)
 verb_part1.csv:不規則動詞の分詞を含める。
  • 不規則動詞(sum,possum,do,eo,volo,nolo,fero)
  • 合成動詞(eo)
  • 合成動詞(fero)
  • 不完全動詞
  • 例外動詞
 verb_indc1.csv:不規則動詞の直説法を含める。
  • 不規則動詞(sum,possum,do,eo,volo,nolo,malo,fero,fio)
  • 合成動詞(sum)
  • 合成動詞(eo)
  • 合成動詞(fero)
  • 不完全動詞
  • 例外動詞
 verb_infv1.csv:不規則動詞の不定法を含める。
  • 不規則動詞(sum,possum,do,eo,volo,nolo,malo,fero,fio)
  • 合成動詞(sum)
  • 合成動詞(eo)
  • 合成動詞(fero)
  • 不完全動詞
  • 例外動詞
 verb_impr1.csv:不規則動詞の命令法をすべて含める。
  • 不規則動詞(sum,possum,do,eo,nolo,fero,fio)
  • 合成動詞(sum)
  • 合成動詞(eo)
  • 合成動詞(fero)
  • 不完全動詞
  • 例外動詞
 verb_subj1.csv:不規則動詞の接続法を含める。
  • 不規則動詞(sum,possum,do,eo,volo,nolo,malo,fero,fio)
  • 合成動詞(sum)
  • 合成動詞(eo)
  • 合成動詞(fero)
  • 不完全動詞
  • 例外動詞
 verb.csv:規則動詞を含める。
  • 第一活用動詞
  • 第二活用動詞
  • 第三活用動詞A
  • 第三活用動詞B
  • 第四活用動詞
 verb_d.csv:形式受動態動詞を含める。
  • 第一活用形式受動態動詞
  • 第二活用形式受動態動詞
  • 第三活用形式受動態動詞A
  • 第三活用形式受動態動詞B
  • 第四活用形式受動態動詞
 verb_sd.csv:半形式受動態動詞を含める。
  • 第一活用半形式受動態動詞
  • 第二活用半形式受動態動詞
  • 第三活用半形式受動態動詞A
  • 第三活用半形式受動態動詞B
  • 第四活用半形式受動態動詞
 verb2.csv:規則動詞辞書(2)の重複回避分を含める。
  • 第一活用動詞
  • 第二活用動詞
  • 第三活用動詞A
  • 第三活用動詞B
  • 第四活用動詞
 辞書には、規則動詞のための辞書とそれ以外の品詞のための辞書の2種類があり、ここでは後者のための辞書項目の記述法について解説する。
 無視される。この性質を利用して辞書のコメントとして使われる。
 完全一致型の辞書項目として認識され、左項を単語、右項を意味としてメモリに登録される。
<単語>,<意味>
 第一/二曲用形容詞の辞書項目として認識され、型に基づいて曲用が自動生成され、各曲用と意味がメモリに登録される。
<語基>,<型>,<意味>
 第三曲用形容詞の辞書項目として認識され、型に基づいて曲用が自動生成され、各曲用と意味がメモリに登録される。
<単数主格>,<語基>,<型>,<意味>
 第一/二曲用名詞の辞書項目として認識され、型と属格語尾に基づいて曲用が自動生成され、各曲用と意味がメモリに登録される。
<語基>,<型>,<属格語尾>,<性>,<意味>
 第三/四/五曲用名詞の辞書項目として認識され、幹、型、性に基づいて曲用が自動生成され、各曲用と意味がメモリに登録される。
<単数主格>,<語基>,<幹>,<型>,<性>,<意味>
 ftexが辞書を読み込むときに辞書のkeyが重複しないかどうかを検査し、単語数をカウントして結果を表示する。これにより辞書登録が正しく行われているかどうか調べることができる。
Reading Dictionary : [ .\dic\Latin\adverb.csv ]
  words: 865 ([2]864, [3]1, [4]0, [5]0, [6]0)
Reading Dictionary : [ .\dic\Latin\preposition.csv ]
  words: 49 ([2]49, [3]0, [4]0, [5]0, [6]0)
Reading Dictionary : [ .\dic\Latin\conjunction.csv ]
  words: 70 ([2]70, [3]0, [4]0, [5]0, [6]0)
Reading Dictionary : [ .\dic\Latin\pronoun1.csv ]
  words: 287 ([2]287, [3]0, [4]0, [5]0, [6]0)
Reading Dictionary : [ .\dic\Latin\pronoun2.csv ]
  words: 35 ([2]35, [3]0, [4]0, [5]0, [6]0)
Reading Dictionary : [ .\dic\Latin\noun1.csv ]
  words: 541 ([2]100, [3]0, [4]0, [5]416, [6]25)
Reading Dictionary : [ .\dic\Latin\noun2.csv ]
  words: 603 ([2]23, [3]3, [4]0, [5]575, [6]2)
Reading Dictionary : [ .\dic\Latin\noun3.csv ]
  words: 1115 ([2]50, [3]0, [4]0, [5]17, [6]1048)
Reading Dictionary : [ .\dic\Latin\proper_noun1.csv ]
  words: 430 ([2]216, [3]0, [4]1, [5]209, [6]4)
Reading Dictionary : [ .\dic\Latin\proper_noun2.csv ]
  words: 379 ([2]17, [3]1, [4]0, [5]361, [6]0)
Reading Dictionary : [ .\dic\Latin\proper_noun3.csv ]
  words: 196 ([2]20, [3]0, [4]0, [5]1, [6]175)
Reading Dictionary : [ .\dic\Latin\proper_adj.csv ]
  words: 135 ([2]0, [3]118, [4]16, [5]1, [6]0)
Reading Dictionary : [ .\dic\Latin\adjective1.csv ]
  words: 1677 ([2]32, [3]1335, [4]310, [5]0, [6]0)
Reading Dictionary : [ .\dic\Latin\adjective2.csv ]
  words: 135 ([2]97, [3]29, [4]9, [5]0, [6]0)
Reading Dictionary : [ .\dic\Latin\numeral.csv ]
  words: 280 ([2]135, [3]122, [4]20, [5]2, [6]1)
Reading Dictionary : [ .\dic\Latin\verb_gerd1.csv ]
  words: 3 ([2]3, [3]0, [4]0, [5]0, [6]0)
Reading Dictionary : [ .\dic\Latin\verb_part1.csv ]
  words: 139 ([2]1, [3]99, [4]39, [5]0, [6]0)
Reading Dictionary : [ .\dic\Latin\verb_indc1.csv ]
  words: 2342 ([2]2342, [3]0, [4]0, [5]0, [6]0)
Reading Dictionary : [ .\dic\Latin\verb_infv1.csv ]
  words: 128 ([2]128, [3]0, [4]0, [5]0, [6]0)
Reading Dictionary : [ .\dic\Latin\verb_impr1.csv ]
  words: 215 ([2]215, [3]0, [4]0, [5]0, [6]0)
Reading Dictionary : [ .\dic\Latin\verb_subj1.csv ]
  words: 1609 ([2]1609, [3]0, [4]0, [5]0, [6]0)
Reading Dictionary : [ .\dic\Latin\verb.csv ]
  words: 1215
Reading Dictionary : [ .\dic\Latin\verb_d.csv ]
  words: 163
Reading Dictionary : [ .\dic\Latin\verb_sd.csv ]
  words: 4
Reading Dictionary : [ .\dic\Latin\verb2.csv ]
  words: 98
Latin dictionaries are created.
ftex Ver.2.7.1α14 2016-09-29
preamble analysis
structure analysis
....................
....
..........
........
..........
..................
..........
...................
...................
................
.............
.............
.............
.............
................
.............
.............
.............
.............
.............
.............
add identifier
making metadata
making contents
making body
making remarks
making terms
 例えば形容詞辞書(1)の読み込み時に次のように表示される。
Reading Dictionary : [ .\dic\Latin\adjective1.csv ]
  words: 1677 ([2]32, [3]1335, [4]310, [5]0, [6]0)
これは
1677(全登録数) = 32(項目数2の行数) + 1335(項目数3の行数) + 310(項目数4の行数)
を意味している。この場合、登録数は同じ単語の曲用/活用を含むことがあるので必ずしも単語数と一致するわけではない。
 規則動詞辞書の場合、登録数と単語数は一致するので単語数が表示される。
Reading Dictionary : [ .\dic\Latin\verb.csv ]
  words: 1215
Reading Dictionary : [ .\dic\Latin\verb_d.csv ]
  words: 163
Reading Dictionary : [ .\dic\Latin\verb_sd.csv ]
  words: 4
Reading Dictionary : [ .\dic\Latin\verb2.csv ]
  words: 98
 辞書に登録されるkeyが重複する場合、次のようにエラー表示する。この場合、何らかの手段で重複を回避する必要がある。
Reading Dictionary : [ .\dic\Latin\verb_indc1.csv ]
  key duplication : [ memini,[1単/直/能/現在]思い出す ]
  words: 1628 ([2]1628, [3]0, [4]0, [5]0, [6]0)
クリエイティブ・コモンズ・ライセンス