Hatena::Groupnadesiko

雪乃☆雫のなでしこ日和

2017/05/09 (火)

Julius用辞書ユーティリティ

| 01:54 | Julius用辞書ユーティリティ - 雪乃☆雫のなでしこ日和 を含むブックマーク はてなブックマーク - Julius用辞書ユーティリティ - 雪乃☆雫のなでしこ日和 Julius用辞書ユーティリティ - 雪乃☆雫のなでしこ日和 のブックマークコメント

 さて、長らく放置していたナコ様。

 しりとりは、プログラム自体は難しいことは無いんだけど、単語リストを作るのが、なかなか大変な作業じゃないですか?

 それがなんかもうめんどーでめんどーで・・・;;;

 しかも、Julius用のリストの他に、同じ内容でしりとり用のリストを作らなきゃならない

 しりとり用の読みと、Julius用の音素列に変換する用の読みは、ほとんど同じだけどちょっと違うしさー。(「さくらそう」と「さくらー」みたいな)

 AquesTalk用の音声記号列なんかに至っては、アクセント記号を入れてはいちいち聞いてみなくちゃぁ、どんなもんだか分かんないしさー。(しかも、田舎者だから、ようく調整して「よし、コレだ!」と思った発音が、実は訛ってるんじゃないかってゆう不安(爆))


 とにかくまー、最初エクセルで作ってたんだけど、なでしこで辞書ユーティリティでもつくってみようかということになった。

 読みを入れてボタンを押したらの場で音素列に変換してくれたり、音声記号列を入れてボタンを押したら喋ってくれたりで確認しながら作業を進めたい。

 して、Julius用としりとりようの二つのファイルとして保存できる的な?(Julius用の単語リストは、余計なモノが入ってるとJuliusさんが起動すらしなくなるので、どうしてもファイルを分けなければならないんだけど、万一齟齬があるとしりとりにならなくなっちゃうんで、一つのファイルから自動的に二つにして保存したい)

 何かと評判のイマイチな(?)なでしこのグリッドですけど、実はIMEATOKの辞書ユーティリティが、同じような仕様なんです。

 おらく、エクセルなどのようなののグリッドとは、用途の異なるグリッドなんだろうね。辞書ユーティリティなんかには最適・・・なのかもしない(どうだろ;)


 んなこんなでとりあえず、前に作った変換辞書を使い、Julius用単語リスト入力が出来るところまで作って、またまたひらめき脇道へ逸れました(^▽^;

 カテゴリの項目を作って、vocaファイルとしても出力できるようにしてみたらどうだろう(って、やってみたことも無いのに無謀;)

 でも、なんとなくこんな感じかなあ?とゆうのができました☆

 しか~し、の機能を自分で使う日が来るのかは不明!(爆)

 Perlをインストールしてないからコンパイルできないんで(入れろよ!)、出力したvocaファイルが使えるかどうかは未確認です(えっ;)

 あああ、誰か使ってみてくれないかなあ・・・www

#-----------------------------------------------------------------------
# Julius用辞書ユーティリティ
#
# 「大語彙連続音声認識エンジン Julius」http://julius.osdn.jp/index.php
# で使用する、単語リスト及びVOCAファイルを作成できます。
#-----------------------------------------------------------------------

#-----宣言--------------------------------------------------
ファイル形式とは文字列=「タブ区切り(*.tsv;*.yomi)|*.tsv;*.yomi|テキストファイル(*.txt)|*.txt|すべて(*.*)|*.*」
列見出しとは文字列=「単語        ,読み(ひらがな)  ,Julius音素列    ,vocaカテゴリ 」
ファイル名とは文字列。
辞書データとは文字列保存データとは文字列。
カテゴリデータとは配列。
編集行とは整数=0
新規フラグとは整数オフ。
変換辞書とは配列。変換辞書設定。
無音用エントリとは配列=「## 無音用エントリ
% NS_B	# 文頭無音
 	silB
% NS_E	# 文末無音
。	silE
% NOISE	# 文中ショートポーズ
、	sp」

列_単語とは整数=0。
列_読みとは整数=1。
列_音素列とは整数=2。
列_カテゴリとは整数=3。
#-----------------------------------------------------------

#-----母艦設計-----------------------------------------------
!母艦設計=「母艦の可視はオフ」

#---メニュー----
『#親部品名,部品名,テキスト,ショートカット,オプション,イベント
なし,ファイルメニュー,ファイル(&F),,,
 -,新規メニュー,新規作成(&N),Ctrl+N,,新規作成。
 -,開くメニュー,開く(&O),Ctrl+O,,ファイル開く。
 -,-,,,,
 -,JDICメニュー,Julius用単語リスト出力(&D),,,JDIC出力。
 -,VOCAメニュー,Julius用vocaファイル出力(&V),,,VOCA出力。
 -,-,,,,
 -,閉じるメニュー,閉じる(&X),Ctrl+X,,終わる
なし,編集メニュー,編集(&E),,,
 -,単語登録メニュー,新規単語登録(&N),,,(辞書データの要素数)で登録編集開始。
 -,単語編集メニュー,編集(&E),,,(辞書グリッドの値-1)で登録編集開始。
 -,-,,,,
 -,読みソートメニュー,読みでソート(&S),,,読みソート。
 -,カテゴリソートメニュー,カテゴリでソート(&C),,,カテゴリソート。
 -,-,,,,
 -,単語削除メニュー,削除(&D),Ctrl+D,,単語削除。
 -,-,,,,
 -,一括メニュー,読み→音素列一括変換(&A),,,音素列一括変換。
なし,ヘルプメニュー,ヘルプ(&H),,,
 -,操作説明メニュー,操作説明(&H),Ctrl+H,,操作説明
 -,-,,,,
 -,バージョンメニュー,バージョン情報(&A),Ctrl+A,,バージョン
』をメニュー一括作成。

#---母艦----
母艦について
  タイトルは「Julius用辞書ユーティリティ」
  クライアント幅は640。
  クライアント高さは480。
#------------------------------------------------------------

#-----GUI-------------------------------------------------
#---グリッド-----
辞書グリッドとはグリッド
これについて
  レイアウトは全体
  文字サイズは10。
  アイテムは「{列見出し}{改行}{辞書データ}」
  自動ソートはオフ。
  ダブルクリックした時は~(辞書グリッドの値-1)で登録編集開始。

#---単語登録/編集フォーム-----
編集フォームとはフォームこれについて
  可視はオフ。タイトルは「単語登録/編集」
  クライアント幅は400。クライアント高さは250。
  オフに最大化ボタン有効変更。
  オフに最小化ボタン有効変更。
  キー押した時は~
    もし、(シフトキー=CTRL)かつ(押された仮想キー=83)ならば、次単語。  #CTRL+S
編集フォームウィンドウ背景色画面クリア。

#編集用
部品間隔は20
カテゴリラベルとはラベルこれについて
  親部品は編集フォーム。
  テキストは「カテゴリ:」
  位置は「15,15」

単語ラベルとはラベルこれについて
  親部品は編集フォーム。
  テキストは「単 語:」
  位置はカテゴリラベルの下側。

読みラベルとはラベルこれについて
  親部品は編集フォーム。
  テキストは「読 み:」
  位置は単語ラベルの下側。

音素列ラベルとはラベルこれについて
  親部品は編集フォーム。
  テキストは「音素列:」
  位置は読みラベルの下側。

部品間隔は0
カテゴリコンボとはコンボこれについて
  親部品は編集フォーム。幅は180。
  位置はカテゴリラベルの右側。
  アイテムはカテゴリデータ。値は0。

単語エディタとはエディタこれについて
  親部品は編集フォームIMEIMEオン。
  位置は単語ラベルの右側。幅は300。

読みエディタとはエディタこれについて
  親部品は編集フォームIMEIMEオン。
  位置は読みラベルの右側。幅は300。

音素列エディタとはエディタこれについて
  親部品は編集フォームIMEIMEオフ。
  位置は音素列ラベルの右側。幅は300。
  有効はオフ。背景色はウィンドウ背景色部品間隔は5
カテゴリ追加ボタンとはボタン
これについて
  親部品は編集フォーム。
  位置はカテゴリコンボの右側。幅は100。
  クリックした時は~
    カテゴリコンボを注目。
    ダイアログタイトルは「カテゴリ追加」
    ダイアログIMEは「IMEオフ」
    「追加するカテゴリを入力して下さい。{改行}(%は自動的に付与されます)」と尋ねる。
    もしそれでなければ、
      カテゴリデータは「{カテゴリデータ}{改行}%{それ}」
      カテゴリコンボのアイテムはカテゴリデータ。
      カテゴリコンボの値は(カテゴリデータの要素数-1)

#変換設定
音素列入力フラグとはチェック
これについて
  親部品は編集フォーム。
  位置は音素列エディタの下側。幅は250。
  テキストは「音素列を手入力する」
  値はオフ。
  クリックした時は~
    もし、音素列入力フラグの値がオンならば、
      音素列エディタの有効はオン。
      音素列エディタの背景色は白色。
      音素列自動変換ボタンの有効はオフ。
    違えば、
      音素列エディタの有効はオフ。
      音素列エディタの背景色はウィンドウ背景色。
      音素列自動変換ボタンの有効はオン。

音素列自動変換ボタンとはボタン
これについて
  親部品は編集フォーム。
  位置は「70,165」。幅は250。
  テキストは「読み→音素列自動変換」
  クリックした時は~音素列自動変換。

自動変換注意ラベルとはラベル
これについて
  親部品は編集フォーム。
  位置は音素列自動変換ボタンの下側
  テキストは「(自動変換すると手入力の内容は上書きされます)」

#ボタン
次単語ボタンとはボタンこれについて
  親部品は編集フォーム。
  位置は「10,220」。テキストは「次へ(S)」
  クリックした時は~次単語。
*次単語
  もし、単語エディタのテキスト=ならば、登録キャンセル。
  違えば、
    「次」で登録編集結果反映。
    辞書グリッドの値=辞書グリッドの値+1。
    (辞書グリッドの値-1)で登録編集開始。

OKボタンとはボタンこれについて
  親部品は編集フォーム。
  位置は「230,220」
  クリックした時は~
    もし、単語エディタのテキスト=ならば、登録キャンセル。
    違えば、
      「OK」で登録編集結果反映。

部品間隔は10。
キャンセルボタンとはボタン。。
これについて
  親部品は編集フォーム。
  位置はOKボタンの右側。
  クリックした時は~登録キャンセル。
*登録キャンセル
  もし、新規フラグ=オンならば、辞書データの(辞書グリッドの値-1)を配列削除。
  編集フォームを閉じる。
#-----------------------------------------------------------

#-----メイン------------------------------------------------
母艦の可視はオン。
ファイル開くもし、ファイル名がならば、
  「新規作成しますか?」で二択。
  もしそれはいならば、新規作成。
  違えば終わるもし、ファイル名がならば終わる。
#-----------------------------------------------------------
*新規作成
  「無題.tsv」でファイル形式の保存ファイル選択。
  ファイル名はそれ。
  もしそれでなければ、をファイル名に保存。
  違えば戻る。
  辞書データは。
  母艦のタイトルは「{ファイル名からファイル名抽出} - Julius用辞書ユーティリティ」
  辞書グリッドのアイテムは「{列見出し}{改行}{辞書データ}」

*ファイル開く
  ファイル名はファイル形式のファイル選択。
  もしそれでなければ、それ開く。
  違えば抜ける。
//  辞書データはそれの「{タブ}+」を「{タブ}」に正規表現置換。
//  辞書データはそれの「  +」を「{タブ}」に正規表現置換。
  辞書データはそれTSV取得。
  母艦のタイトルは「{ファイル名からファイル名抽出} - Julius用辞書ユーティリティ」
  辞書グリッドのアイテムは「{列見出し}{改行}{辞書データ}」
  カテゴリデータは「{改行}{辞書データの列_カテゴリを表列取得}」
  カテゴリデータはカテゴリデータの0で表重複削除。
  カテゴリデータ¥0=「(なし)」
  カテゴリコンボのアイテムはカテゴリデータ。

#-----------------------------------------------------------
*登録編集開始(Aで)
  もし(辞書グリッドの値)>(辞書データの要素数ならば、新規フラグ=オン。
  違えば、新規フラグ=オフ。
  編集行=A。
  単語エディタのテキストは辞書データ¥編集行,列_単語。
  読みエディタのテキストは辞書データ¥編集行,列_読み。
  音素列エディタのテキストは辞書データ¥編集行,列_音素列。
  もし、(辞書データ¥編集行,3)=ならば、カテゴリコンボの値は0
  違えば、カテゴリコンボの値はカテゴリデータの1から(辞書データ¥編集行,列_カテゴリ)を配列検索。
  単語エディタを注目。
  もし、編集フォームの可視=オフならば、編集フォームをモーダル表示。

*登録編集結果反映(Fで)
  辞書データ¥編集行,列_単語は単語エディタのテキスト。
  辞書データ¥編集行,列_読みは読みエディタのテキスト。
  辞書データ¥編集行,列_音素列は音素列エディタのテキスト。
  もし、カテゴリコンボの値≦0ならば、
    辞書データ¥編集行,列_カテゴリ=
  違えば、
    辞書データ¥編集行,列_カテゴリはカテゴリデータ¥(カテゴリコンボの値)
  編集結果保存。
  もし、F=「OK」ならば、編集フォームを閉じる。
#-----------------------------------------------------------
*編集結果保存
  辞書グリッドのアイテムは「{列見出し}{改行}{辞書データ}」
  保存データは辞書データを表TSV変換。
  保存データは保存データの「"」を置換。
  保存データをファイル名に保存。
#-----------------------------------------------------------
*単語削除
  ダイアログタイトルは「削除」
  「単語:{辞書データ¥(辞書グリッドの値-1),列_単語}{改行}読み:{辞書データ¥(辞書グリッドの値-1),1}{改行}{改行} を削除します。よろしいですか?」で二択。
  もしそれはいならば、
    辞書データの(辞書グリッドの値-1)を配列削除。
    編集結果保存。
#-----------------------------------------------------------
*音素列自動変換
  一時は読みエディタのテキスト。
  変換辞書で反復
    一時は一時の(対象¥0)を(対象¥1)へ正規表現置換。
  音素列エディタのテキストは一時。

*音素列一括変換
  ダイアログタイトルは「一括変換」
  「一括変換を行うと、手入力した音素列データも{改行}全て上書きされます。よろしいですか?」で二択。
  もしそれはいならば、
    辞書データで反復。
      一時は対象¥1。
      変換辞書で反復
        一時は一時の(対象¥0)を(対象¥1)へ正規表現置換。
      辞書データ¥(回数-1),列_音素列は一時
    編集結果保存。
#-----------------------------------------------------------
*読みソート
  辞書データの列_読みを表ソート。
  編集結果保存。

*カテゴリソート
  もし、辞書データの列_カテゴリで「%*」を0から表曖昧検索=-1でなければ、
    辞書データの列_カテゴリを表ソート。
    編集結果保存。
#-----------------------------------------------------------
*JDIC出力
  JDICファイル名はファイル名を「.jdic」に拡張子変更。
  もし、JDICファイル名の存在はいならば、
    「{JDICファイル名からファイル名抽出}は既に存在します。{改行}上書きしますか?」で二択。
    もしそれいいえならば戻る。
  JDICデータ¥0は辞書データの列_単語を表列取得。
  JDICデータ¥1は辞書データの列_音素列を表列取得。
  JDICデータはJDICデータを表行列交換。
  JDICデータはJDICデータを表TSV変換。
  JDICデータはJDICデータの「"」を置換。
  JDICデータをJDICファイル名に保存。
  「{JDICファイル名からファイル名抽出}を作成しました。」と言う。

*VOCA出力
  VOCAファイル名はファイル名を「.voca」に拡張子変更。
  もし、VOCAファイル名の存在はいならば、
    「{VOCAファイル名からファイル名抽出}は既に存在します。{改行}上書きしますか?」で二択。
    もしそれいいえならば戻る。
  カテゴリ整理。
  一時データ¥0は辞書データの列_単語を表列取得。
  一時データ¥1は辞書データの列_音素列を表列取得。
  一時データ¥2は辞書データの列_カテゴリを表列取得。
  一時データは一時データを表行列交換。
  一時データは一時データの列_カテゴリを表ソート。

  VOCAデータは。
  カテゴリデータで反復。
    もし対象=「(なし)」ならば続ける。
    VOCAデータは「{VOCAデータ}{対象}{改行}」。
    VOCAデータは「{VOCAデータ}{一時データの2から対象表完全一致ピックアップ}{改行}{改行}」
  VOCAデータは「{VOCAデータ}{無音用エントリ}」
  VOCAデータはVOCAデータの2を表列削除。

  VOCAデータはVOCAデータを表TSV変換
  VOCAデータはVOCAデータの「"」を置換。
  VOCAデータをVOCAファイル名に保存。
  「{VOCAファイル名からファイル名抽出}を作成しました。」と言う。

*カテゴリ整理
  一時データはカテゴリデータ。
  一時データで反復。
    もし対象=「(なし)」ならば続ける
    もし、辞書データの列_カテゴリで対象を0から表検索=-1ならば、
      カテゴリデータの(回数-1)を配列削除。
  カテゴリコンボのアイテムはカテゴリデータ。

#-----------------------------------------------------------------------
*操作説明
  ダイアログタイトルは「せつめい」
  「・起動すると、{カッコ}開く{カッコ閉じ}から始まるので、編集したいファイルを選択。
 {カッコ}キャンセル{カッコ閉じ}すると、ファイルの新規作成になります。
 ファイルの形式はTSVで、拡張子は{カッコ}*.tsv{カッコ閉じ}{カッコ}*.txt{カッコ閉じ}{カッコ}*.yomi{カッコ閉じ}など。{改行}
・項目をダブルクリックすると、単語登録/編集フォーム開くので、
 {カッコ}単語{カッコ閉じ}と{カッコ}読み{カッコ閉じ}を入力して、{カッコ}音素列自動変換{カッコ閉じ}するだけ。
 (音素列は編集メニューから、まとめて一括変換もできます)
 [CTRL+S]で、次の単語の編集に移れます。
 セーブは都度自動的に行われますが{カッコ}単語{カッコ閉じ}は必須でだと保存されません。{改行}
・入力が完了したら、ファイルメニューから{カッコ}Julius用単語リスト出力{カッコ閉じ}
 拡張子は{カッコ}*.jdic{カッコ閉じ}としています。{改行}
・{カッコ}カテゴリ{カッコ閉じ}の項目を追加し、VOCAファイル作成にも対応しました。
 ファイルメニューから{カッコ}Julius用vocaファイル出力{カッコ閉じ}
 無音用エントリは自動挿入されます。不要の場合は削除して下さい。
 (vocaの中にgrammarで使用してない項目があるとコンパイルが失敗するらしい)
」と言うバージョン
  ダイアログタイトルは「バージョン情報」
  「{二重カッコ}Julius用{改行} 辞書ユーティリティ{二重カッコ閉じ}{改行}    Version 1.11{改行}{改行}   by 雪乃☆雫」と言う。
#-----------------------------------------------------------------------
*変換辞書設定
  # ひらがな -> Julius 標準モデル用変換辞書(yomi2voca.plより抽出)
  変換辞書=「う゛ぁ," b a"{~}う゛ぃ," b i"{~}う゛ぇ," b e"{~}う゛ぉ," b o"{~}う゛ゅ," by u"
ぅ゛," b u"{~}あぁ," a a"{~}いぃ," i i"{~}いぇ," i e"{~}いゃ," y a"{~}うぅ," u:"{~}えぇ," e e"{~}おぉ," o:"
かぁ," k a:"{~}きぃ," k i:"{~}くぅ," k u:"{~}くゃ," ky a"{~}くゅ," ky u"{~}くょ," ky o"{~}けぇ," k e:"{~}こぉ," k o:"
がぁ," g a:"{~}ぎぃ," g i:"{~}ぐぅ," g u:"{~}ぐゃ," gy a"{~}ぐゅ," gy u"{~}ぐょ," gy o"{~}げぇ," g e:"{~}ごぉ," g o:"
さぁ," s a:"{~}しぃ," sh i:"{~}すぅ," s u:"{~}すゃ," sh a"{~}すゅ," sh u"{~}すょ," sh o"{~}せぇ," s e:"{~}ぉ," s o:"
ざぁ," z a:"{~}じぃ," j i:"{~}ずぅ," z u:"{~}ずゃ," zy a"{~}ずゅ," zy u"{~}ずょ," zy o"{~}ぜぇ," z e:"{~}ぞぉ," z o:"
たぁ," t a:"{~}ちぃ," ch i:"{~}つぁ," ts a"{~}つぃ," ts i"{~}つぅ," ts u:"{~}つゃ," ch a"{~}つゅ," ch u"{~}つょ," ch o"
つぇ," ts e"{~}つぉ," ts o"{~}てぇ," t e:"{~}とぉ," t o:"
だぁ," d a:"{~}ぢぃ," j i:"{~}づぅ," d u:"{~}づゃ," zy a"{~}づゅ," zy u"{~}づょ," zy o"{~}でぇ," d e:"{~}どぉ," d o:"
なぁ," n a:"{~}にぃ," n i:"{~}ぬぅ," n u:"{~}ぬゃ," ny a"{~}ぬゅ," ny u"{~}ぬょ," ny o"{~}ねぇ," n e:"{~}のぉ," n o:"
はぁ," h a:"{~}ひぃ," h i:"{~}ふぅ," f u:"{~}ふゃ," hy a"{~}ふゅ," hy u"{~}ふょ," hy o"{~}へぇ," h e:"{~}ほぉ," h o:"
ばぁ," b a:"{~}びぃ," b i:"{~}ぶぅ," b u:"{~}ふゃ," hy a"{~}ぶゅ," by u"{~}ふょ," hy o"{~}べぇ," b e:"{~}ぼぉ," b o:"
ぱぁ," p a:"{~}ぴぃ," p i:"{~}ぷぅ," p u:"{~}ぷゃ," py a"{~}ぷゅ," py u"{~}ぷょ," py o"{~}ぺぇ," p e:"{~}ぽぉ," p o:"
まぁ," m a:"{~}みぃ," m i:"{~}むぅ," m u:"{~}むゃ," my a"{~}むゅ," my u"{~}むょ," my o"{~}めぇ," m e:"{~}もぉ," m o:"
やぁ," y a:"{~}ゆぅ," y u:"{~}ゆゃ," y a:"{~}ゆゅ," y u:"{~}ゆょ," y o:"{~}よぉ," y o:"
らぁ," r a:"{~}りぃ," r i:"{~}るぅ," r u:"{~}るゃ," ry a"{~}るゅ," ry u"{~}るょ," ry o"{~}れぇ," r e:"{~}ろぉ," r o:"
わぁ," w a:"{~}をぉ," o:"{~}う゛," b u"{~}でぃ," d i"{~}でぇ," d e:"{~}でゃ," dy a"{~}でゅ," dy u"{~}でょ," dy o"
てぃ," t i"{~}てぇ," t e:"{~}てゃ," ty a"{~}てゅ," ty u"{~}てょ," ty o"{~}すぃ," s i"
ずぁ," z u a"{~}ずぃ," z i"{~}ずぅ," z u"{~}ずゃ," zy a"{~}ずゅ," zy u"{~}ずょ," zy o"{~}ずぇ," z e"{~}ずぉ," z o"
きゃ," ky a"{~}きゅ," ky u"{~}きょ," ky o"{~}しゃ," sh a"{~}しゅ," sh u"{~}しぇ," sh e"{~}しょ," sh o"
ちゃ," ch a"{~}ちゅ," ch u"{~}ちぇ," ch e"{~}ちょ," ch o"{~}とぅ," t u"{~}とゃ," ty a"{~}とゅ," ty u"{~}とょ," ty o"
どぁ," d o a"{~}どぅ," d u"{~}どゃ," dy a"{~}どゅ," dy u"{~}どょ," dy o"{~}どぉ," d o:"
にゃ," ny a"{~}にゅ," ny u"{~}にょ," ny o"{~}ひゃ," hy a"{~}ひゅ," hy u"{~}ひょ," hy o"
みゃ," my a"{~}みゅ," my u"{~}みょ," my o"{~}りゃ," ry a"{~}りゅ," ry u"{~}りょ," ry o"
ぎゃ," gy a"{~}ぎゅ," gy u"{~}ぎょ," gy o"{~}ぢぇ," j e"{~}ぢゃ," j a"{~}ぢゅ," j u"{~}ぢょ," j o"
じぇ," j e"{~}じゃ," j a"{~}じゅ," j u"{~}じょ," j o"{~}びゃ," by a"{~}びゅ," by u"{~}びょ," by o"
ぴゃ," py a"{~}ぴゅ," py u"{~}ぴょ," py o"{~}うぁ," u a"{~}うぃ," w i"{~}うぇ," w e"{~}うぉ," w o"
ふぁ," f a"{~}ふぃ," f i"{~}ふぅ," f u"{~}ふゃ," hy a"{~}ふゅ," hy u"{~}ふょ," hy o"{~}ふぇ," f e"{~}ふぉ," f o"
あ," a"{~}い," i"{~}う," u"{~}え," e"{~}お," o"{~}か," k a"{~}き," k i"{~}く," k u"{~}け," k e"{~}こ," k o"
さ," s a"{~}し," sh i"{~}す," s u"{~}せ," s e"{~}," s o"{~}た," t a"{~}ち," ch i"{~}つ," ts u"{~}て," t e"{~}と," t o"
な," n a"{~}に," n i"{~}ぬ," n u"{~}ね," n e"{~}の," n o"{~}は," h a"{~}ひ," h i"{~}ふ," f u"{~}へ," h e"{~}ほ," h o"
ま," m a"{~}み," m i"{~}む," m u"{~}め," m e"{~}も," m o"{~}ら," r a"{~}り," r i"{~}る," r u"{~}れ," r e"{~}ろ," r o"
が," g a"{~}ぎ," g i"{~}ぐ," g u"{~}げ," g e"{~}ご," g o"{~}ざ," z a"{~}じ," j i"{~}ず," z u"{~}ぜ," z e"{~}ぞ," z o"
だ," d a"{~}ぢ," j i"{~}づ," z u"{~}で," d e"{~}ど," d o"{~}ば," b a"{~}び," b i"{~}ぶ," b u"{~}べ," b e"{~}ぼ," b o"
ぱ," p a"{~}ぴ," p i"{~}ぷ," p u"{~}ぺ," p e"{~}ぽ," p o"{~}や," y a"{~}ゆ," y u"{~}よ," y o"
わ," w a"{~}ゐ," i"{~}ゑ," e"{~}を," o"{~}ん," N"{~}っ," q"{~}ー,":"
ぁ," a"{~}ぃ," i"{~}ぅ," u"{~}ぇ," e"{~}ぉ," o"{~}ゎ," w a"{~}ぉ," o"{~}"^ ([a-z])","$1"{~}"\:+",":"」をCSV取得。
#-----------------------------------------------------------------------

 そうそう、またまたナゾが発生し、それは一応解決できたんだけど、これまで知らなかった事実が発覚したので記しておきます。

 編集フォームを開いた時、単語エディタを注目させるようにしたら、それまでは問題なかったカテゴリ追加時の、ダイアログIME=「IMEオフ」が効かなくなってしまったんです。

 どうやら、エディタに設定しているIMEオンが優先されてしまうらしいです。

 ダイアログを開く前に、IMEの設定をしていないカテゴリコンボにフォーカスを合わせるようにしたらうまく行きました。

ゲスト



トラックバック - http://nadesiko.g.hatena.ne.jp/snowdrops89/20170509