2014/11/22

Juliusのmkdfa.plをwindowsで動かせるようにした

まとめ:mkdfa.plの上の方にある$thisdirあたりを修正すれば動く

*Win版Julius dictation-kit-v.4.3.1で動作を確認しています。

Juliusで文法を自分で書くときに、
mkdfa.plというperlのスクリプトを使ってgrammar+voca -> dfaの変換をすると思うのですが、

windowsでそれをすると

fruit.grammar has 6 rules
fruit.voca    has 9 categories and 20 words
---
sh: mkfa: command not found
sh: dfa_minimize: command not found
---
no .dfa or .dict file generated

とかでてきて死にたくなります。

同じディレクトリにmkfa.exeとかdfa_minimize.exeとかあるのにnot foundとはこれいかに。

ということで、mkdfa.plをprintfデバッグします。
そうすると上の方にある$thisdirが空になっていることがわかりました。

要するにカレントディレクトリがとれてないという事になります。

ということで、上の方をちょちょいと書き換えます。

そうすると、

fruit.grammar has 6 rules
fruit.voca    has 9 categories and 20 words
---
Now parsing grammar file
Now modifying grammar to minimize states[0]
Now parsing vocabulary file
Now making nondeterministic finite automaton[8/8]
Now making deterministic finite automaton[8/8]
Now making triplet list[8/8]
9 categories, 8 nodes, 10 arcs
-> minimized: 8 nodes, 10 arcs
---
generated: fruit.dfa fruit.term fruit.dict

となって、動きます。

0 件のコメント:

コメントを投稿