2

同じ質問を Google グループに投稿しましたが、役に立ちませんでした。ここで見つかった場合は、回答を同期します。

補足: なぜ私が Google グループを軽蔑するのか、もう一度思い出しました。フォルムも使いやすさもイマイチ。

ともかく...

XML モードの CodeMirror に次の HTML があるとします。

<div data-id="parent"><span data-id="test"></span></div>

右クリックまたはホバー(または実際には他のユーザーが開始したイベント)で、マウスが上にあるトークンを取得できます。名前と種類です。

私の質問 - 「親」トークンとその属性を取得できますか?

説明する:

  1. をクリックした場合、それが属性「下」testの値であることがわかるようにしたいと思います。data-idspan

  2. をクリックした場合span、その を取得できるようにしたいのですがdata-id、それが「下」divトークンであることも知りたいです。

もちろん、これは言語が「親」または「下」の概念を提供していることを前提としています...私はXML / HTMLがそうしていると思います。

何か案は?CMやXML/HTML対応モードでそのためのAPIはありますか?

「現在の」トークンに関連するものを取得するという解析ルートを試してみましたが、非常に醜く、適切に機能しません。

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

4

1 に答える 1

5
var cur = cm.getCursor()
var token = cm.getTokenAt(cur);
var inner = CodeMirror.innerMode(cm.getMode(), token.state);
var cx = inner.state.context
var tagName = cx.tagName
于 2013-12-09T11:54:12.767 に答える