盛大な独り言日記・自分用メモ2010.11.17~
×
[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。
basic(.exeのSAORI)も動かせたのでメモ。
用意するもの
・自分が欲しい機能を持ったexeファイル(example.exe)
・proxy.dll(http://homepage3.nifty.com/khsoft/cbs/software/ からダウンロード)
①proxy.dllの使用宣言
kawari.kis内で、
$(saoriregist proxy.dll proxy)
②呼び出す。
適当な呼び出し場所で
$(callsaori proxy example.exe)
試しに使ったexeファイルは、コマンドプロンプト上に「Hello,World」と表示するだけのものです。
#include
void main(..)
{
printf("Hello,World");
}
ソースこれだけ。別にSAORIとして使うために特別に引数とか戻り値とかいじったりはしてない。
proxy.dllのおかげで、example.exeは「printfの中の文字列を返すSAORI」として扱えるわけです。
……proxy.dllが偉大すぎる。
このexeでは文字の受け渡しについてとくにいじらずに済みましたが、
これでちゃんと<伺か>←→<SAORIとしてのexe>の間で文字列のやり取りが実装出来れば
ユーザーの入力文を形態素解析してほにゃららして結果を返す、とかが出来るはず。
とりあえず入力文を形態素解析した結果を返すだけのSAORIを作って様子を見ようかと思います。
中間報告がまであと20日です。まだ特に何もしてない…。そろそろ作らないとですね。
用意するもの
・自分が欲しい機能を持ったexeファイル(example.exe)
・proxy.dll(http://homepage3.nifty.com/khsoft/cbs/software/ からダウンロード)
①proxy.dllの使用宣言
kawari.kis内で、
$(saoriregist proxy.dll proxy)
②呼び出す。
適当な呼び出し場所で
$(callsaori proxy example.exe)
試しに使ったexeファイルは、コマンドプロンプト上に「Hello,World」と表示するだけのものです。
#include
void main(..)
{
printf("Hello,World");
}
ソースこれだけ。別にSAORIとして使うために特別に引数とか戻り値とかいじったりはしてない。
proxy.dllのおかげで、example.exeは「printfの中の文字列を返すSAORI」として扱えるわけです。
……proxy.dllが偉大すぎる。
このexeでは文字の受け渡しについてとくにいじらずに済みましたが、
これでちゃんと<伺か>←→<SAORIとしてのexe>の間で文字列のやり取りが実装出来れば
ユーザーの入力文を形態素解析してほにゃららして結果を返す、とかが出来るはず。
とりあえず入力文を形態素解析した結果を返すだけのSAORIを作って様子を見ようかと思います。
中間報告がまであと20日です。まだ特に何もしてない…。そろそろ作らないとですね。
PR
華和梨でSAORI動かす方法:
①kawari.kisファイルで使用宣言する。
# ゆっくりしゃべるかんじのSAORIを登録
$(saoriregist slow.dll slow) //一番右が呼び出すときの名前
②呼び出す
$(callsaori slow 100 こんなにゆっくりしゃべるよ)
今までうまくいかなかったのは$()をつけたりつけなかったり、項目の区切りに,を入れたり、
各辞書ファイルで宣言してたりしてたから見たいです。
callsaoriコマンドは、callsaorixにして項目の3つ目にエントリ名を入れると、
そのエントリに返り値?戻り値?を入れてくれるらしい。
あと便利なのはsaorilistコマンドで、使用宣言されたsaoriの名前をリストにしてくれる。
宣言がちゃんとできているか確認できる。
まだ一種類のSAORIしか試せていないので、今度別のSAORiでも同じように動くか調べる。
あと、自分が作れるのはbasic(.exe)止まりな気がするので、proxy.dll経由での動作確認とかする。
①kawari.kisファイルで使用宣言する。
# ゆっくりしゃべるかんじのSAORIを登録
$(saoriregist slow.dll slow) //一番右が呼び出すときの名前
②呼び出す
$(callsaori slow 100 こんなにゆっくりしゃべるよ)
今までうまくいかなかったのは$()をつけたりつけなかったり、項目の区切りに,を入れたり、
各辞書ファイルで宣言してたりしてたから見たいです。
callsaoriコマンドは、callsaorixにして項目の3つ目にエントリ名を入れると、
そのエントリに返り値?戻り値?を入れてくれるらしい。
あと便利なのはsaorilistコマンドで、使用宣言されたsaoriの名前をリストにしてくれる。
宣言がちゃんとできているか確認できる。
まだ一種類のSAORIしか試せていないので、今度別のSAORiでも同じように動くか調べる。
あと、自分が作れるのはbasic(.exe)止まりな気がするので、proxy.dll経由での動作確認とかする。
SAORIは本体だけでは実装できない機能を与えるのに使われる。DLLで使う。
ここがわかりやすい→http://www.towano.net/products/saori_qa.html
SAORIの種類
□basic規格……exe形式。proxy.dll経由で動かすが、里々と忍ではproxyが内蔵されており直接呼び出せる
□universal規格……dll形式。直接呼び出せる
basicのほうはただのコンソールアプリケーションを作ればいいらしく、比較的簡単に作成可能だそう。
この場合、SAORI引数はargvとして渡され、標準出力がSAORIの戻り値になる。
basicを利用する場合は、proxy.dllを経由して呼び出す。
見かけたページによるとproxy.dllはshiori.dllと同じ階層に置いてあった。
じゃあとりあえずexe形式でできるbasic規格で作ってみようかな。
コンソールアプリってことはVC++使わなくてもコマンドプロンプトでコンパイルできそうですね。
……ていうかめかぶに入ってたサンプルでいいんじゃ。勿論多少書きかえるけど。
あれを無理やり呼んでみてどうなるかためしてみるか…。
ここがわかりやすい→http://www.towano.net/products/saori_qa.html
SAORIの種類
□basic規格……exe形式。proxy.dll経由で動かすが、里々と忍ではproxyが内蔵されており直接呼び出せる
□universal規格……dll形式。直接呼び出せる
basicのほうはただのコンソールアプリケーションを作ればいいらしく、比較的簡単に作成可能だそう。
この場合、SAORI引数はargvとして渡され、標準出力がSAORIの戻り値になる。
basicを利用する場合は、proxy.dllを経由して呼び出す。
見かけたページによるとproxy.dllはshiori.dllと同じ階層に置いてあった。
じゃあとりあえずexe形式でできるbasic規格で作ってみようかな。
コンソールアプリってことはVC++使わなくてもコマンドプロンプトでコンパイルできそうですね。
……ていうかめかぶに入ってたサンプルでいいんじゃ。勿論多少書きかえるけど。
あれを無理やり呼んでみてどうなるかためしてみるか…。
shioriの編集をするぞ!と思っていたのですが、色々忘れたり分からなかったりでまだ手つかずです。
shioriは最終的にdllファイルとして使うのですが、そもそもdllファイルが何なのか、
dllを自作すればいいのかdllとは別にMecab機能を用意するのかそもそもdllはどうやって作るのか…などを全く把握してませんでした。
DLLとは:ダイナミックリンクライブラリ。複数のアプリケーションが共通して利用するような汎用性の高いプログラムを部品化してファイルとして保存しておき、必要に応じてメモリに呼び出して利用する手法。また、そのようにして利用されるプログラム部品のこと。
作り方:VC++で新規作成→win32プロジェクトで決定→そのあとの画面でDLLを選べばとりあえずdllを作成する環境になった。
言語はcでいいっぽい。.c(.cppも?)と.hファイルから作れる。
だからたぶん作るための環境は今までとほとんど一緒。
DLLを作るための宣言とか、そういうのだけ変わってくるっぽい。
めかぶ組み込むshiori作成の選択肢
①1から自分で作る(本家の仕様書を見る←何書いてあるのか正直よくわからない
②華和梨に入ってたshiori.cppを改変する(shiori.dllだけ抜き出しての配布も可能
③YAYAのdllをいじる(まだよくわからない
それかSAORIを使うか。うーん。でもそしたら結局shiori.dllは華和梨とかYAYAとかのどれかを使うことになるのだろうか。卒研とか卒制に人の作ったもの利用していいのか…。
それを言ったら伺か自体ダメなんだろうけど。大丈夫だといいな。
だんだんSAORIを使う、というか作るべきな気がしてきた。Chasenラッパーも元々SAORIであったし。
あとSAORIは規格が決まっているので、対応するshioriならどれからでも呼び出せるぽい。
とりあえず華和梨と里々はSAORIを呼べる。(里々は一部機能をSAORIに依存しているので、そのファイルはむしろ必須
ちょっとさおり作りかたみてみる。
shioriは最終的にdllファイルとして使うのですが、そもそもdllファイルが何なのか、
dllを自作すればいいのかdllとは別にMecab機能を用意するのかそもそもdllはどうやって作るのか…などを全く把握してませんでした。
DLLとは:ダイナミックリンクライブラリ。複数のアプリケーションが共通して利用するような汎用性の高いプログラムを部品化してファイルとして保存しておき、必要に応じてメモリに呼び出して利用する手法。また、そのようにして利用されるプログラム部品のこと。
作り方:VC++で新規作成→win32プロジェクトで決定→そのあとの画面でDLLを選べばとりあえずdllを作成する環境になった。
言語はcでいいっぽい。.c(.cppも?)と.hファイルから作れる。
だからたぶん作るための環境は今までとほとんど一緒。
DLLを作るための宣言とか、そういうのだけ変わってくるっぽい。
めかぶ組み込むshiori作成の選択肢
①1から自分で作る(本家の仕様書を見る←何書いてあるのか正直よくわからない
②華和梨に入ってたshiori.cppを改変する(shiori.dllだけ抜き出しての配布も可能
③YAYAのdllをいじる(まだよくわからない
それかSAORIを使うか。うーん。でもそしたら結局shiori.dllは華和梨とかYAYAとかのどれかを使うことになるのだろうか。卒研とか卒制に人の作ったもの利用していいのか…。
それを言ったら伺か自体ダメなんだろうけど。大丈夫だといいな。
だんだんSAORIを使う、というか作るべきな気がしてきた。Chasenラッパーも元々SAORIであったし。
あとSAORIは規格が決まっているので、対応するshioriならどれからでも呼び出せるぽい。
とりあえず華和梨と里々はSAORIを呼べる。(里々は一部機能をSAORIに依存しているので、そのファイルはむしろ必須
ちょっとさおり作りかたみてみる。
卒研中間報告で検索してたら見つけた中間報告のレポートの構成
①
・テーマ
・背景と目的
・方法論(アプローチの仕方)
・関連研究(?)
・期待・予想される結果
・スケジュール
・進捗状況
②
・実験テーマ
・実験目的
・実験方法
・結果及び考察
③
・問題関心
・研究対象
・時代背景
・研究史(先行研究の紹介)
・研究計画(入手・閲覧可能な史料、外国語文献の見通しなど)
①
・テーマ
・背景と目的
・方法論(アプローチの仕方)
・関連研究(?)
・期待・予想される結果
・スケジュール
・進捗状況
②
・実験テーマ
・実験目的
・実験方法
・結果及び考察
③
・問題関心
・研究対象
・時代背景
・研究史(先行研究の紹介)
・研究計画(入手・閲覧可能な史料、外国語文献の見通しなど)