■■  ■  ■  ▲  ■  ■ ■  ■ ■■▲ ■    ■■■  ▲   ■  ■
■  ■  ■■  ■■  ■■  ■  ■ ■__▼ ■    ■     ■■  ■\■
■  ■   ■  ■__■  ■   ■  ■ ■  ▲ ■ ■ ■■  ■__■ ■  ■
 ■■    ■  ■  ■  ■    ■■  ■■▼ ■    ■    ■  ■ ■  ■
                                   "OYAYUBI-FAN" forum since 2005

OYAYUBI-FAN Home

このスレッドに返信する
OYAYUBI-FANOASYS ≫ スレッド : Re :
1
  全 1 ページ
名前 コメント
おやじ
2006-12-19 21:48


Re :
こうすけさん
レス有り難う御座います。
マウスやキーボードに一切触らずにプログラム的に、自動的に単語登録/削除を実現したい、ということです。
辞書メンテツールの起動から実行までを全部自動化したい、ということです。
実は、sendkeysといって、ユーザ入力をプログラムから代替する機能もあり、現在は、これで間に合わせていますが環境によって入力タイミングがズレたりして、いまいちです。

私のパソコン歴は古く、MS−DOSの時代は、コマンドラインにプログラム名とパラメータを並べて起動することで実行していました。unixの時代もそうです。
そのため、マウスをズルズルしてパソコンを使うことはあまり好きではありません。
というか、コマンドライン時代のほうが、パソコンによる処理の自動化、高速化の恩恵が大きかった気がします。



こうすけ
2006-12-16 18:39


一括登録および一括削除
おやじさん、Pooh兄さん、こんにちは。

APIやマクロはわかりませんが、テキストファイルないしCSVファイルからの一括登録および一括削除は、次のようにすればできると思います。

一括登録
Japanistの「辞書/DBの管理」から「辞書ツールキット」を起動。
「オプション辞書(40個まで使用可)」を右クリックして「辞書の新規作成」。
ファイル選択画面でテキストないしCSVファイルを選択して「開く」。
作成された新規オプション辞書にチェックを入れる。

一括削除
上記新規オプション辞書を削除。

以上Japanist2003の場合です。

おやじ
2006-12-15 22:15


補足します。
ある分野では、図面で物の構造を説明する場合、
家屋10は、土台11と、柱12と、壁13、屋根14で構成されている。
というように、符号(10)+名称(家屋)で構成される単語を頻用します。ちなみに符号は、図面の中に記載された参照番号です。

この場合、読み「10」で、「家屋10」を単語登録して使用したいのです。名称がとても長い場合は特に有効。

ちなみに、ケース毎に、符号と名称の関係は全く変わりますので、
用がすんだら、一括削除です。
既存の文章から、正規表現を使って、名称+符号からなる単語を自動抽出し、単語登録ファイルの形式にして出力し、この出力で、一括登録することも便利です。
wordの場合、作成中に随時、マクロで名称+符号からなる単語を自動抽出し、ダイナミックに自動登録したい、という訳です。
GUIは、まだるっこしくてだめ。
家屋10
土台11
柱12
壁13
屋根14
のように、最初に一括して作成し、自動抽出するのもとても有効です。この作業は、japanist付属の自動登録機能ではできません。



Pooh兄
2006-12-15 10:11


Re :
バッチでやりたい理由が判らんのですが…。
単語登録って、定常的にやる理由が思いつきません。普通、特に単語登録テキストファイルから読み込むなら一回やれば終わりなのが普通だと思うのですが…。
別プログラムで生成するってのも、何を毎度そんなに抽出してくるのか不思議だったりします。そんなに何度も抽出しなければならないものなのでしょうか???
Japanist自体のツールではファイルまたはフォルダ(フォルダ内の文書一括指定)を指定して登録できますが、GUIからの起動になります。(裏技はあるのかもしれませんが…)


おやじ
2006-12-14 23:07


すみません、間違ってました
japanistです。
別のプログラムで生成した単語登録テキストファイルを読み込んで自動登録したいのです。
付属の辞書管理ツールがコマンドラインモードで起動できて、バッチファイルの中で、ファイル名や登録/削除の別を指定して自動実行(GUIによるユーザ介入一切なし)できてもいいのですが、できるのでしょうか?



Pooh兄
2006-12-14 17:43


Re :
タイトルはJapanistですが、登録したいのはOAK V8なんですね。

何をしたいのか私にはVBAを解読できないので、外しているかもしれませんが、文書から単語を登録したいんですか?

Japanist2003にあるお手軽登録には、指定した文書(OASYS,MS-WORD,EXCEL,HTML)から単語を自動抽出して自動登録してくれる機能がありますけど、OAKには無かったのでしたっけ?(別に、単語登録用でない普通の文書に出てくる単語から登録できちゃいますので、単語登録用に作った文書なら簡単でしょうね)
それと、OAK,JapanistだけでなくIMEやATOKの単語抽出ファイルも読み込めますし。

もっとも、Japanistにしてしまうと、入力するそばから入力予測辞書が記憶していってくれるため、私は単語登録をすることは(姓名以外は)ほぼなくなってしまいました。

一回変換すると次回以降は登録しなくても候補としてだしてくれますんで。

おやじ
2006-12-12 22:24


WIN−APIでJAPANISTの単語登録したい
20年近く、専用機およびパソコン上のOASYSを愛用し、現在は、FEPのみOAKを愛用しております。
OAKの単語登録、削除を、wordのVBAからWIN−APIを使って直接実行したいです。
OAKのWIN−APIを御存知の方、教えて下さい。
ちなみに、MS−IMEは、以下のようになります。
同じことをOAK−V8でも実現したいのです。
宜しくお願い致します。
−−−MS−IMEの場合−−−
Private Declare Function GetKeyboardLayout Lib "user32" (ByVal dwLayou
t As Long) As Long
Private Declare Function ImmRegisterWord Lib "imm32.dll" Alias "ImmReg
isterWordA" (ByVal hKL As Long, ByVal lpszReading As String, ByVal dwS
tyle As Long, ByVal lpszRegister As String) As Long
Private Declare Function ImmUnregisterWord Lib "imm32.dll" Alias "ImmU
nregisterWordA" (ByVal hKL As Long, ByVal lpszReading As String, ByVal
dwStyle As Long, ByVal lpszUnregister As String) As Long

Public Sub 単語自動登録削除()
hKL = GetKeyboardLayout(0)
'品詞は名詞−100で決め打ち
ret = ImmRegisterWord(hKL, "ああああああ", 100, "単語自動登録テスト")
ret = ImmUnregisterWord(hKL, "ああああああ", 100, "単語自動登録テスト"
)
End Sub

1
  全 1 ページ
このスレッドに返信する


Powered by F-board Ver0.3