🏠 公式ポータルトップへ戻る

🔌 開発者向けAPIリファレンス (v1.4.0)

📚 関連マニュアル

💡 ヒント: 自作したHTMLなどを localhost 環境で動かすための簡易的なWebサーバーが必要な場合は、Simple Web Server などのツールがとても便利です。

1. 💡 システムの使用イメージ

本拡張機能は、他のChrome拡張機能(自作の画面キーボードや入力支援ツールなど)や、ローカル環境(localhost)で動くWeb・デスクトップアプリから通信で呼び出されて動く、部品(API)のような存在です。

💻 あなたの作った別のアプリ(例:自作の画面キーボード)
↓ 「かかみがはら」を変換して!と送信
⚙️ 本拡張機能(ローカル漢字変換エンジン)
↓ 「各務原」などの変換候補を返す
💻 あなたのアプリ上に「各務原」が候補として表示される

■ 開発面でのメリット

2. 🔌 API リファレンス

外部のChrome拡張機能(画面キーボード等)や、ローカル環境(http://localhost/* または http://127.0.0.1/*)のWebアプリから、chrome.runtime.sendMessage を使って本エンジンの変換機能を呼び出すことができます。

※通信を行うには、呼び出し元アプリの manifest.json にて、対象IDへのメッセージ送信が許可されている必要があります。
※ローカル(localhost)のWebアプリから呼び出す場合、ブラウザ側で自動的に chrome.runtime.sendMessage が利用可能になります。
※セキュリティ保護のため、本API経由でユーザー辞書の直接編集や削除を行うことはできません。

📋 API クイック一覧

アクション名 (Action) 種類 概要
PING GET エンジンの起動状態・バージョン確認
CONVERT POST ひらがな ➔ 漢字変換(Google/Yahoo等互換モード対応)
CONVERT_ROMAJI POST [NEW] ローマ字 ➔ ひらがな変換(高精度パース・nMode対応)
BULK_CONVERT POST 複数文をまとめて一括変換する外部向けAPI
SUGGEST POST 入力中の文字から予測候補を取得
LEARN / UNLEARN POST ユーザーが確定した変換の学習 / 取り消し
SEARCH_DICT GET 全辞書(学習履歴を含む)の横断検索
GET_STATS GET 各辞書の登録単語数などの統計を取得
OPEN_MANAGEMENT_PANEL POST 総合管理パネルを直接開く(タブ指定・自動入力対応)
OPEN_TRANSLATE_PANEL POST [NEW] フローティング単語翻訳パネルを直接開く
TRANSLATE_WORD POST [NEW] 指定単語の英訳データを取得(大文字小文字無視・逆引き対応)
SEARCH_TRANSLATION_DICT POST [NEW] 翻訳辞書をキーワード(部分/完全一致)で検索
CONVERT_WITH_TRANSLATION POST [NEW] 漢字変換候補と英訳データを同時に一括取得
GET_SETTINGS - エンジンの動作設定の一括取得・変更
SHOW_KEYBOARD POST 簡易キーボードの表示・非表示、制御
SET_TEMP_DICT POST アプリ起動中のみ有効な一時辞書をセット

通信の基本フォーマット

const ENGINE_ID = "cddamopplhdhbpgphpnaineilgecdiaa"; // 本拡張機能のID chrome.runtime.sendMessage(ENGINE_ID, { action: "実行したいアクション名", // ...その他のパラメータ }, (response) => { console.log(response); });

2-1. 接続確認(PING)

起動時にエンジンがインストールされているか確認します。未インストールの場合はストアへの案内を出す設計が推奨されます。

chrome.runtime.sendMessage(ENGINE_ID, { action: "PING" }, (res) => { if (chrome.runtime.lastError) { console.log("未インストールです。ストアへ誘導します。"); } else if (res && res.success) { console.log("接続完了!バージョン:", res.version); } });

2-2. 変換・入力補助系 API

CONVERT 変換リクエスト

ひらがなを漢字に変換します。オプションで結果の形式や出所情報を制御できます。また、既存のレガシーAPI互換モード(Google / Yahoo!)を指定してそのまま出力させることも可能です。

// 実働サンプル:助詞の切り離しを有効にして全体結合(auto)をリクエストする chrome.runtime.sendMessage(ENGINE_ID, { action: "CONVERT", text: "きょうはいいてんき", mode: "auto", preferHiraganaShort: true, separateParticle: true }, (response) => { if (response && response.success) { console.log("変換結果:", response.data); } });
【出力データ例: mode: "segmented" で separateParticle: true の場合】 // 入力テキストが助詞を含めて意味のある文節ごとに分割されます。 [ [ "きょう", [ "今日", "教", "きょう" ] ], [ "は", [ "は" ] ], [ "いい", [ "いい", "飯", "謂" ] ], [ "てんき", [ "天気", "転機", "てんき" ] ] ]

CONVERT_ROMAJI ローマ字パース

エンジンの高精度なローマ字変換ルール(捨て仮名やファ行・ヴァ行・ティなどの外来語音、促音、んの先読み処理に対応)を用いて、ローマ字文字列をひらがなに変換します。

🔤 ローマ字入力モード(nMode パラメータ)について

CONVERT_ROMAJI および CONVERT API では、オプションとして nMode を指定することで、「ん」の確定タイミングやパース挙動を3つのモードから選択できます。

// nMode: "double" を指定して厳格なローマ字パースを行う例 chrome.runtime.sendMessage(ENGINE_ID, { action: "CONVERT_ROMAJI", text: "kanta", nMode: "double" }, (response) => { console.log(response.hiragana); // 出力: "かnた" });

BULK_CONVERT 一括変換 API

複数のテキストを配列で渡すことで、一網打尽に変換結果を取得し、通信オーバーヘッドを大幅に削減できます。チャット履歴や長文ドキュメントの一括解析に最適です。

chrome.runtime.sendMessage(ENGINE_ID, { action: "BULK_CONVERT", texts: ["きょうはいい", "てんきです"] }, (response) => { if (response && response.success) { console.log("一括変換結果:", response.results); } });

SUGGEST 予測変換

入力中の文字(前方一致)から、予測候補を返します。

chrome.runtime.sendMessage(ENGINE_ID, { action: "SUGGEST", text: "かかみ", limit: 5 }, (response) => { if (response && response.success) { console.log("予測候補:", response.suggestions); } });

LEARN / UNLEARN 学習の記録と取り消し

ユーザーが確定した変換を記録(LEARN)、または誤って確定した学習履歴をピンポイントで削除(UNLEARN)します。

2-3. 辞書検索・統計 API

SEARCH_DICT 辞書検索

「よみ」または「漢字」をキーワードとして、すべての辞書(内蔵・追加・ユーザー・学習履歴)を横断検索します。

GET_STATS 統計取得

現在の各辞書の登録単語数(内蔵 / ユーザー / 追加 / 学習履歴)の統計データを返します。

2-4. 画面・UI呼び出し系 API

OPEN_MANAGEMENT_PANEL 管理パネルを開く

ユーザーの現在アクティブなタブに、総合管理パネル(DOM要素)を直接注入して表示させます。
⚠️ 注意:chrome-extension:// などの特殊ページでは表示できません。必ず通常のWebページ上で呼び出してください。

chrome.runtime.sendMessage(ENGINE_ID, { action: "OPEN_MANAGEMENT_PANEL", targetTab: "search", searchKeyword: "かかみがはら" });

OPEN_TRANSLATE_PANEL 翻訳パネルを開く

ユーザーの現在アクティブなタブに、フローティング型の「単語翻訳パネル」を直接ポップアップ表示させます。

chrome.runtime.sendMessage(ENGINE_ID, { action: "OPEN_TRANSLATE_PANEL", keyword: "apple" // パネル表示時に自動で検索窓に入力しておきたいワード(省略可) });

2-5. 🌐 翻訳・英和辞書連携 API (v1.4.0 新機能)

JMdict等をベースとした大規模な英和・和英辞書データと連携し、単語の翻訳や部分一致検索、漢字変換と同時におこなう高機能なデータ取得が可能になりました。

TRANSLATE_WORD 単語の英訳取得

指定した単語に紐づく対訳データを取得します。入力された文字列は自動的に小文字化・空白除去(トリム)され、大文字小文字を問わず正確にヒットします。また、英単語キーだけでなく日本語の訳語をキーワードにした部分一致(逆引き)にも対応しています。

chrome.runtime.sendMessage(ENGINE_ID, { action: "TRANSLATE_WORD", text: "Apple" // 大文字が含まれていても、日本語("りんご")での指定でもヒットします }, (response) => { if (response && response.success) { console.log("対訳:", response.translation); console.log("辞書ソース:", response.translationSource); } });

SEARCH_TRANSLATION_DICT 翻訳辞書の部分・完全一致検索

キーワードに一致する単語を辞書内から最大50件まで全探索します。英語の定義文や慣用句に特定の単語が含まれている場合も芋づる式にヒットします。

CONVERT_WITH_TRANSLATION 漢字変換+英訳データの一括取得

通常の文節区切り変換(CONVERT)の結果に、それぞれの候補単語に紐づく英訳データ(translation)を自動的に付与して返却します。画面キーボードや辞書付き入力補助ツールの構築に最適です。

GET_TRANSLATION_DICT_STATUS 翻訳辞書のステータス確認

現在ロードされている翻訳辞書の名前、登録総数、ロード状態を確認します。

2-6. 設定・UI制御 API

GET_SETTINGS / UPDATE_SETTINGS 設定の取得・更新

エンジンの各種設定(変換モード、学習の有無など)を一括で取得・更新します。

SHOW_KEYBOARD / HIDE_KEYBOARD キーボードの強制表示・非表示

入力欄のフォーカス状態に関わらず、画面上の簡易キーボードを強制的に表示、または非表示にします。

2-7. 高度な辞書・一時登録 API

SET_TEMP_DICT 一時辞書の登録

ユーザーの永続辞書には保存されず、メモリ上だけで一時的に最優先される辞書をセットします。ブラウザ再起動等でリセットされます。

💻 実践的な呼び出しコード例(安全な組み込み方)

実際の拡張機能やWebアプリに組み込む際は、エンジンの未インストールやスリープ復帰時の遅延(低スペックPCなど)に備え、タイムアウト処理を実装することを強く推奨します。

const ENGINE_ID = "cddamopplhdhbpgphpnaineilgecdiaa"; // 本拡張機能のID async function fetchLocalEngine(text) { return new Promise((resolve, reject) => { const timeout = setTimeout(() => reject(new Error("Engine timeout")), 500); chrome.runtime.sendMessage( ENGINE_ID, { action: "CONVERT", text: text, mode: "segmented" }, (response) => { clearTimeout(timeout); if (chrome.runtime.lastError) { return reject(new Error("Engine not found")); } if (!response || !response.success) { return reject(new Error("Engine error")); } resolve(response.data); } ); }); }

3. 🛠️ トラブルシューティング & 動作ログの確認

本拡張機能は、変換処理の状況や、辞書のインポート・学習履歴の変更などを自動で検知し、裏側(バックグラウンド)でリアルタイムに動作ログを出力しています。

■ ログの確認手順

  1. chrome://extensions/ を開き、デベロッパー モードをONにする。
  2. 「ローカル漢字変換エンジン」の 「Service Worker」 をクリックする。
  3. 「Console」 タブを確認する。

■ 出力される主なログの種類