【问题标题】:get token string for ace editor获取 ace 编辑器的令牌字符串
【发布时间】:2012-11-23 09:24:53
【问题描述】:

我刚刚看了厨房水槽演示,发现有一个选项“显示令牌信息”,它显示了鼠标所在的文本类型(变量、函数等)

我想创建类似的东西,可以在当前光标位置获取单词的当前标记字符串。有谁知道怎么做?

谢谢!

【问题讨论】:

    标签: token ace-editor


    【解决方案1】:

    这样:

    editor.on('mousemove', function(e) {
        var position = e.getCursorPosition();
        var token = editor.session.getTokenAt(position.row, position.column);
    
    });
    

    它将返回一个对象:

    token = {
      type: "paren.rparen",
      value: "}",
      index: 0,
      start: 0
    } 
    

    【讨论】:

    • 谢谢老兄,正是我要找的
    • 谢谢,正是我需要的!看起来好像检索位置的函数发生了变化:e.getCursorPosition()
    • 仅供参考如果您不想使用 mousemove 事件,也可以在光标更改时获取令牌。
    • 请注意 mouse 位置与 cursor 位置不同。您可能应该使用editor.onCursorChange 而不是mousemove 事件。 (除非你想检测鼠标指针在哪个标记上,在这种情况下我被难住了!)
    • 您现在应该使用 e.getDocumentPosition() 来获取行和列值。
    猜你喜欢
    • 1970-01-01
    • 2015-07-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-02-03
    • 1970-01-01
    相关资源
    最近更新 更多