「
類義語アウトプット【Python】
」を編集中
2019年3月24日 (日) 21:36時点における
シリル
(
トーク
|
投稿記録
)
による版
(
→
Python環境の準備
)
(
差分
)
← 古い版
|
最新版
(
差分
) |
新しい版 →
(
差分
)
ナビゲーションに移動
検索に移動
警告: このページの古い版を編集しています。
公開すると、この版以降になされた変更がすべて失われます。
警告:
ログインしていません。編集を行うと、あなたの IP アドレスが公開されます。
ログイン
または
アカウントを作成
すれば、あなたの編集はその利用者名とともに表示されるほか、さまざまなメリットもあります。
スパム攻撃防止用のチェックです。 決して、ここには、値の入力は
しない
でください!
= 概要 = 類義語の検索結果をアウトプットバーに表示します<br> 検索は日本語WordNetを使用します、少し大きめのファイルです<br> またPythonも使用しており導入までがちょっと大変です<br> = 準備 = == 日本語WordNetの準備 == 日本語WordNetは国立研究開発法人情報通信研究機構(NICT)が開発している日本語の概念辞書です。商用フリー、申込み不要で利用できます<br> 当マクロでは類義語辞書、国語辞書、英和辞書としての機能を実現するため、日本語WordNetを使用しています<br> 『日本語WordNet』<br> http://compling.hss.ntu.edu.sg/wnja/ 上記サイトのダウンロードページから<br> 『Japanese Wordnet and English WordNet in an sqlite3 database』<br> こちらのファイルをダウンロードして下さい<br> ダウンロードしたファイルを解凍すると『wnjpn.db』というファイルが作成されます。これがデータベースという事のようです<br> この『wnjpn.db』をMacrosフォルダに配置して下さい<br> == Python環境の準備 == 『知っておくと便利なテキストエディタ「Mery」の10個の小技』<br> https://www.haijin-boys.com/software/mery/mery-tips こちらの記事で『マクロをPythonで記述する』という内容が紹介されています<br> 1.Python のインストール<br> 2.Python for Windows (pywin32) Extensions のインストール<br> 3.Python を ActiveScript のエンジンとして登録する<br> 4.Mery のマクロで Python が使えるか試してみる<br> 以上の手順を完了させて下さい<br> (当マクロの場合は、1だけで良いかもしれませんがテストしていません) == ダウンロード == [[ファイル:類義語出力.zip]] こちらのZipファイルには『類義語.js』と『synonym.py』が含まれています<br> これらをMacrosフォルダに配置して下さい<br> 『類義語.js』が当マクロの本体になりますのでマクロのカスタマイズから『類義語.js』を追加して下さい<br> = 使い方 = 例えば『執筆』を選択して当マクロを実行すると以下のように表示します<br> ◇【執筆】の類義語を出力します[類義語辞典モード] 類義語:公刊,著作,版行,発刊,書き著す,出版,刊行,発行,物する,印行,著わす,著す,書く,著述 類義語:書きおろす,書きつづる,筆記,書き下ろす,書き下す,認める,揮毫,記す,書きあらわす,書表わす,したためる,書き表わす,書下ろす,書する,染筆,書き綴る,綴る,書表す,呵する,書く,表記 類義語:書きおろす,書きつづる,筆記,書き下ろす,書き下す,認める,記す,書き送る,書きあらわす,書表わす,したためる,書き表わす,書下ろす,書する,物する,書き綴る,著わす,綴る,書表す,著す,呵する,書く,著述,書きおくる,表記 類義語:起稿,書きおろす,書きつづる,著作,書き下ろす,書き下す,記す,書きあらわす,書表わす,起案,書き表わす,案文,書下ろす,詠む,書綴る,書する,物する,書き綴る,著わす,綴る,書表す,著す,書く,著述,起草 本来は類義語の結果表示には英単語も含んでいますが、独断と偏見により削除して表示しています<br> 『猫』の直前にキャレットを置いて当マクロを実行すると以下のように表示します<br> ◇【猫】の類義語を出力します[類義語辞典モード] 類義語:ねんねこ,にゃんにゃん,キャット,ネコ 付近の単語(この場合は猫)を選択します<br> 起動直後に何も選択していないような状態、またはアウトラインやアウトプットバーにフォーカスがある場合に当マクロをツールバーなどから実行した場合、『synonym』が選択されたものとして以下のように表示します<br> ◇【synonym】の類義語を出力します[類義語辞典モード] 類義語:類義語,同義語,類語,同意語,シノニム 『日本語WordNet』に存在しない単語を選択した場合、以下のように表示します<br> ※【〇〇】は、Wordnetに存在しない単語です 残念ながら、存在しない単語はたくさんあるようです<br> = 設定 = == 類義語.jsの設定 == <source lang="javascript"> //------------------------------------------------------------------------------ // 設定 var exepath = "Pythonw"; // Pythonのパスを通してインストールしている場合 var src = "synonym.py"; // synonym.pyをMery.exeと同じ場所に配置 //var src = "D:\\python\\synonym.py"; // synonym.pyのフルパス例 var key = "ctrl"; // "ctrl" "shift" "alt" OutputBar.Clear(); // 実行ごとにアウトプットバーをクリアする //------------------------------------------------------------------------------ </source> 各種パスを設定できるようにしていますが、Macrosフォルダに配置していればファイル名のみで大丈夫なようです<br> 実行ごとにアウトプットバーをクリアしたくない場合は、該当行をコメントアウトして下さい<br> 『Pythonw』のお尻に"w"がくっついていますが、これは書き間違いではなく黒い画面がちらつかないためのおまじないです<br> == synonym.pyの設定 == <source lang="Python"> #------------------------------------------------------------------------------- # 設定 conn = sqlite3.connect("wnjpn.db") # wnjpn.dbファイル名のみ #conn = sqlite3.connect("D:\\python\\wnjpn.db") # wnjpn.dbのフルパス例 #------------------------------------------------------------------------------- </source> 『wnjpn.db』のパスを設定できます<br> = 注意点 = 当マクロは外部の『wnjpn.db』にアクセスします、またPythonにスクリプトを実行させますので環境によっては動作が重いかもしれません、申し訳ありません<br> 『猫』は検索できても『ねこ』は検索できなかったりと使いにくいと感じる場面はあるかと思います、予めご了承下さい<br> = 発展 = pizzさん作成の『GetKeyState.exe』を導入すれば、国語辞書・英和辞書としても当マクロを利用することができるようになります<br> [https://www.haijin-boys.com/wiki/GetKeyState.exe(%E3%82%AD%E3%83%BC%E7%8A%B6%E6%85%8B%E5%8F%96%E5%BE%97%E5%AE%9F%E8%A1%8C%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB) GetKeyState.exe(キー状態取得実行ファイル)] 『GetKeyState.exe』はMacrosフォルダに配置して下さい<br> 例えば当マクロのショートカットキーに「Alt+T」「Ctrl+T」を割り当て、『コマンド』という単語を選択し、「Alt+T」を実行すると以下のように表示します<br> ◇【コマンド】の類義語を出力します[類義語辞典モード] 類義語:レインジャー,レーンジャー,レンジャー 類義語:言いつけ,命令すること,指示,命令,指図 類義語:ステイトメント,インストラクション,ステートメント,命令 類義語辞典モードで動作します。同様にして「Ctrl+T」を実行すると、<br> ◇【コマンド】の意味を出力します[国語英和辞典モード] 意味:敵地に奇襲をかける訓練を積んだ水陸両用の軍事部隊 意味:奇襲のための突撃専用部隊として訓練を受けた部隊の隊員 意味:何かをする正式の指示か命令 意味:コンピュータプログラムの一部分として書かれたコードの一行 このように国語辞典として動作します<br> 選択範囲の単語が英単語なら英和辞典として動作します<br> デフォルトでは「Ctrl」キーを状態取得の対象としていますが、「いや、類義語モードをCtrlで使いたいんだ」という場合もあるかと思います。設定のkeyのところで「Shift」キーや「Alt」キーに変更することが可能です<br> = 所感 = ポンとショートカットキーを押した時、アウトプットバーに類義語が表示されれば嬉しいなと思いました。JscriptもPythonも初心者、SQLなんて触ったこともない私ですので「類義語 無料」などで検索して具体的なコードが公開されているのを見つけた時、飛びついてしまったわけです<br> Jscriptのみで作成すればもっとすっきりしていたと思います。どうせPythonを使うならスクレイピングした方がより詳細だったかもしれません<br> 当初はPythonスクリプトをMeryマクロとして動作させようとしてましたがデバッグがやりにくくて早々に投げ出してしまいました。Pythonに標準出力させて、それをまるっと受け取って加工してアウトプットバーに表示ってかなり面妖ですよね<br> どこかのサイトが類義語のAPIを提供してくれてないかな、それを使ってどなたか類義語マクロを作ってくれないかなと思っています<br> = 更新履歴 = ・2019/03/24 初版<br>
編集内容の要約:
MeryWikiへの投稿はすべて、他の投稿者によって編集、変更、除去される場合があります。 自分が書いたものが他の人に容赦なく編集されるのを望まない場合は、ここに投稿しないでください。
また、投稿するのは、自分で書いたものか、パブリック ドメインまたはそれに類するフリーな資料からの複製であることを約束してください(詳細は
MeryWiki:著作権
を参照)。
著作権保護されている作品は、許諾なしに投稿しないでください!
このページを編集するには、下記の数式を計算してその答えを欄に入力してください (
ヘルプ
):
いちたすには =
キャンセル
編集ヘルプ
(新しいウィンドウで開きます)
スポンサーリンク
ナビゲーション メニュー
個人用ツール
ログインしていません
トーク
投稿記録
アカウント作成
ログイン
名前空間
ページ
議論
日本語
表示
閲覧
編集
履歴表示
その他
検索
スポンサーリンク
スポンサーリンク
案内
メインページ
ヘルプ
よくある質問
マクロリファレンス
マクロライブラリ
プラグインライブラリ
構文ファイル
テーマ
寄付・開発支援
練習用ページ
開発室
開発者のブログ
ツール
スポンサーリンク