header(); ?>

ローマ字ひらがな変換ライブラリ suikyo for Emacs Lisp

suikyo 「水鏡」とは

suikyo は決定性オートマトンに基づいて, 文字列の変換を行うライブラリです. 主には「ローマ字ひらがな変換」に使用されます. 例えば "suikyou" という 文字列から "すいきょう" と変換を行なったり, 逆に "すいきょう" から "suikyou" に変換することが可能です.

このページ内容は Emacs Lisp 用ライブラリの説明です. suikyo 全般のページも参照して下さい.

サンプルコード

(require 'init-suikyo)

;; ローマ字ひらがな変換
(suikyo-convert-romaji-kana "suikyou ")
;; => "すいきょう"

;; " " 空白は入力の区切りと解釈されます.
(suikyo-convert-romaji-kana "shin")
;; => しn
(suikyo-convert-romaji-kana "shin ")
;; => しん
(suikyo-convert-romaji-kana "shin ai")
;; => しんあい
;;; suikyo-convert-romaji-kana を使わない汎用的な方法.
(require 'init-suikyo)

;; 変換テーブルの読み込み
(setq table (suikyo-table-loadfile (list nil) "romaji-kana"))

;; 変換テーブルを用いた文字列の変換
(suikyo-convert table "suikyou")
;; => "すいきょう"

API の説明

suikyo を使うには "(require 'init-suikyo)" を行う必要があります.

(suikyo-convert-romaji-kana string)

与えられたローマ字をひらがなに変換して返します.

変換ルールは, 変数 suikyo-table-romaji-kana の内容を使用します. suikyo-table-romaji-kana が nil の場合は自動的にデフォルトの ルールを読み込みます.

(suikyo-convert-kana-romaji string)

与えられたひらがなをローマ字に変換して返します.

変換ルールは, 変数 suikyo-table-kana-romaji の内容を使用します. suikyo-table-kana-romaji が nil の場合は自動的にデフォルトの ルールを読み込みます.

(suikyo-convert table string)
文字列 string を変換ルール table に基づいて変換します.
(suikyo-table-loadfile table filename &optional table-path)

変換ルールのフォーマット で記述されたファイル filename を読み込み, 変換ルール table に追加します. 新規に変換ルールを作成する場合は, table の値は "(list nil)" にする 必要があります.

;; "/tmp/english.kpdef" を読み込んで新しい変換ルールを作成する.
(setq english-table
      (suikyo-table-loadfile (list nil) "english.kpdef" "/tmp"))

table-path が省略された場合は, 変数 suikyo-table-path がファイルのパスに なります.

(suikyo-table-set table conv-from conv-to &optional pendency)
「入力データ」・「変換データ」・「保留データ」を指定して, 変換ルールを table に追加します. 各データについては 変換ルールのフォーマット を参照して下さい.

インストール

suikyo 全般のページを参照して下さい.

更新履歴

2004-01-31
2003-04-25
2002-11-23
footer(); ?>
小松 弘幸 <komatsu@taiyaki.org>
$Id: index.html,v 1.2 2004/01/31 07:23:25 komatsu Exp $