KDevelop 脚本在 `view.selection()` 上出错

KDevelop script gives error on `view.selection()`

我正在尝试为 Kdevelop (5.1) 编写有史以来最简单的代码段。 它应该简单地采用我选择的文本并用 #if 0 ... #endif.

包含它
#if 0
my current selection
#endif

片段代码为:

#if 0 
${view.selection()}
#endif

我收到的只是错误:

#if 0 
ReferenceError: Can't find variable: Range
#endif

我所知道的是这个 Kate / Kdevelop 片段使用了 Javascript,所以我认为这个简单的 view.selection() 应该可以工作,但它没有。

有没有办法实现我想要的? 如何修复此 Range 错误?

谢谢。

编辑:

我在函数选项卡中添加了一个函数 selection_or_nothing(),在它之前添加了一个 require ("range.js") 并更改了我的代码片段以调用它。

require ("range.js");
function selection_or_nothing() 
{
    if ( view.hasSelection() )
        return view.selection();
    return "";
}

片段:

#if 0
${selection_or_nothing()}
#endif  // ${comment}

这是我现在拥有的:

#if 0
Range(Cursor(200,0), Cursor(201,0))
#endif

这在这里有效:

#if 0
${selection()}
#endif

我认为您需要使用 view.selectedText() 而不是 view.selection() 或这个预定义函数。