1 件の投稿を表示中 (合計 6 個)
  • 作成者
    投稿
  • #7063
    zamp
    参加者

    今までActivePerlを使っていましたが、StrawberryPerlに切り替えました。
    emeditor上で、perlで記述したマクロが使えなくなりました。

    PerlScript
    指定された言語はシステムに登録されていません。

    と表示されます。
    対応策はありますでしょうか。

    #7065
    Yutaka Emura
    キーマスター

    zampさんは書きました:
    今までActivePerlを使っていましたが、StrawberryPerlに切り替えました。
    emeditor上で、perlで記述したマクロが使えなくなりました。

    PerlScript
    指定された言語はシステムに登録されていません。

    と表示されます。
    対応策はありますでしょうか。

    #language = “ScriptName”
    の ScriptName パラメータが違うのだと思います。

    レジストリエディタ (regedit.exe) で、{F0B7A1A2-9847-11CF-8F20-00805F2CD064} のキーを検索します。そして、その1つ上の階層のキーが、Implemented Categories になっていたら、さらにその上の階層のキーの既定の値が使いたいスクリプトの名前かどうかを調べます。目的のスクリプトだったら、その下の階層の ProgID のキーの既定の値を控えます。この値で ScriptName パラメータを置き換えます。

    http://jp.emeditor.com/help/macro/directive/language.htm

    を参照してください。

    #7086
    zamp
    参加者

    返答ありがとうございます。
    現状です。
    ==========================================
    レジストリエディタ (regedit.exe) で、
    {F0B7A1A2-9847-11CF-8F20-00805F2CD064} のキーを検索します。 →ありました。

    そして、その1つ上の階層のキーが、Implemented Categories になっていたら、→なっていました。

    さらにその上の階層のキーの既定の値が使いたいスクリプトの名前かどうかを調べます。→XML Script Engine

    目的のスクリプトだったら、→Perlじゃないです。

    その下の階層の ProgID のキーの既定の値を控えます。→”XML”

    この値で ScriptName パラメータを置き換えます。
    ==========================================
    XML Script EngineをPerlScriptに変更するわけじゃないですよね。
    ちなみに違うだろうなと思いながら、
    #language=”XML”とかやってみましたが、ダメでした。

    #7087
    Yutaka Emura
    キーマスター

    zampさんは書きました:
    返答ありがとうございます。
    現状です。
    ==========================================
    レジストリエディタ (regedit.exe) で、
    {F0B7A1A2-9847-11CF-8F20-00805F2CD064} のキーを検索します。 →ありました。

    そして、その1つ上の階層のキーが、Implemented Categories になっていたら、→なっていました。

    さらにその上の階層のキーの既定の値が使いたいスクリプトの名前かどうかを調べます。→XML Script Engine

    目的のスクリプトだったら、→Perlじゃないです。

    その下の階層の ProgID のキーの既定の値を控えます。→”XML”

    この値で ScriptName パラメータを置き換えます。
    ==========================================
    XML Script EngineをPerlScriptに変更するわけじゃないですよね。
    ちなみに違うだろうなと思いながら、
    #language=”XML”とかやってみましたが、ダメでした。

    検索すると、通常、{F0B7A1A2-9847-11CF-8F20-00805F2CD064} のキーは多数見つかりますので、その中で、
    Implemented Categories のさらに上の階層のキーの既定値が、使いたいスクリプトの名前のものを検索して、その ProgID をキーの値を控えます。
    お試しください。

    #7100
    Aye Wong
    メンバー

    StrawberryPerlのことはよく知らないのですが、そもそもActivePerlと違ってActiveScriptに対応していないということはないでしょうか?
    その場合、EmEditorのマクロエンジンとして使うことはできないはずです。

    #7121
    zamp
    参加者

    レジストリの例のキーは結局みつかりませんでした。
    ActivePerlをインストールしたら見つけることができました。
    やはりStrawberryPerlはActiveScriptに対応していないようです。

    今回、StrawberryPerlを入れたまま、ActivePerlを入れたのですが、
    Perlのパス関連はStrawberryPerlのままにしてあります。
    マクロの実行までは行きましたが、
    (in cleanup) Can’t call method “document” on an undefined value
    というエラーが出ます。
    (my $document = $Window->document; という行で出ます)

    純粋にActivePerlじゃないとだめみたいですね。

    いろいろとありがとうございました。

1 件の投稿を表示中 (合計 6 個)
  • このトピックに返信するにはログインしてください。