概要

利用イメージ

プラグインの入手

プラグインはSakuraEditorWikiで公開されています。 ZIP形式で圧縮されたものをパソコンにダウンロードしてください(解凍は不要です)。

インストール

プラグインの導入は「共通設定」の「プラグイン」から行います。 まず「プラグインを有効にする」にチェックを入れてください。 次に「ZIPプラグインを導入」でダウンロードしたZIPファイルを指定します。 これでインストールは完了ですが、まだプラグインは利用できません。 これ以降に新しく開いたエディタでは起動時にプラグインが読み込まれ、利用可能になります。

Windows2000はZIPプラグインに未対応のため、ダウンロードしたファイルをプラグインフォルダ配下に解凍し、「新規プラグインを追加」からインストールしてください。

プラグインは最大40個までインストールできます。

プラグインをインストールすると、設定ファイルがあるフォルダの下にpluginsフォルダができ、その配下にZIPファイルの中身が展開されます。 ユーザ別設定が有効な場合はC:\Users\(ユーザ名)\AppData\Roaming\sakura\plugins、そうでなければC:\Program Files(x86)\sakura\pluginsにあるはずです。
以下、pluginsをプラグインフォルダと呼び、その下のプラグインごとのフォルダを個別フォルダと呼びます。

アンインストール

プラグインのアンインストールは、設定画面から「削除」を行います。 ディスク上には残るので、完全に削除する場合は手動で個別フォルダを削除してください。 ディスクから削除していなければ、「新規プラグインの追加」で再度インストールできます。

バージョンアップ

プラグインの新バージョンが出た場合は、設定画面からZIPプラグインの導入でファイルを指定し更新し、エディタ本体を再起動すると利用可能になります。

Windows2000の場合は、個別フォルダの内容を上書きして更新してください。

大まかな動き

・エディタプロセスの起動時に、共通情報のプラグインテーブルを参照し、インストール済みのプラグインに対して以下の読み込み操作を行う。
 個別フォルダ内にはプラグインの情報を記述したテキストファイル(plugin.def)があり、エディタはまずこのテキストファイルを読み込む。
 以下、このファイルをプラグイン定義ファイルと呼ぶ。

 また、プラグインフォルダ直下に、プラグインごとのテキストファイルを置き、そこにプラグインのオプションなど可変の情報を記述する。
 以下、このファイルをオプションファイルと呼ぶ。
 ファイル名は "個別フォルダ名.ini" とする。
 プラグイン定義ファイルのOptionセクションで指定した項目は、共通設定のプラグイン個別設定から値を編集できる。

・プラグイン定義ファイルの内容に従い、メモリ上にプラグインオブジェクトを作成する。

・プラグイン定義ファイルの内容に従い、エディタ内の各機能にあらかじめ設定された、プラグイン可能な箇所に、プラグインの関数(プラグ)を関連付ける。
 以下、プラグイン可能な箇所をジャック(プラグをさす穴)と呼ぶ。

・エディタを操作し、ジャックに達したら、関連付けられている全てのプラグを実行する。アウトライン解析やスマートインデントはタイプ別設定で選択したもの一つだけを実行する。

・エディタプロセスの終了時に、読み込まれていたプラグインはすべて解放する。

・プラグインは、コンパイルされたDLLや、WSHで実行できるマクロ言語などに対応する。ただし一度読み込んだ後は、違いを意識せずに操作できる。
 (現時点でDLLプラグインはまだ使い物にならない)

フォルダ構成

設定ファイルフォルダ
  ├ sakura.ini
  └ plugins/
      ├ ○○.ini           // オプションファイル
      ├ ××.ini
      ├ ○○/              // 個別フォルダ
      │  ├ plugin.def     // プラグイン定義ファイル
      │  ├ readme.txt     // 説明
      │  ├ ○○_A.js      // プログラム等
      │  └ ○○_B.js
      └ ××/
          ├ plugin.def
          └ ××.dll       // dllにも対応できたり・・・

ER図

エディタ本体1 - *プラグイン 複数のプラグインをエディタで使うことができる。
エディタ本体1 - *ジャック エディタには複数のジャック(プラグイン可能箇所)がある。
プラグイン 1 - *プラグ プラグインは複数のプラグ(実行単位)を持つ。
ジャック 1 - *プラグ ジャックには複数のプラグを関連付けることができる。

ジャック一覧

プラグインの種類ジャック名
([Plug]で定義)
ジャック名.Labelインタフェースオブジェクト
アウトライン解析Outlineアウトライン標準ルール選択肢Outline
スマートインデントIndentスマートインデント選択肢Indent
補完候補検索
(Ver.2.0.6.0以降)
ComplementGlobalnoComplement
Complement入力補完機能選択肢
エディタイベント
(Ver.2.0.8.0以降)
EditorStartno
EditorEndno
DocumentOpenno
DocumentCloseno
DocumentBeforeSaveno
DocumentAfterSaveno
コマンド追加[Command]で定義コマンドの表示名

前へ<  >次へ