0

嗨,我是 jedit 的新手,我正在尝试安装一个功能,让我在未选择任何内容时复制当前行。我在 Copy_Selection_or_Line.bsh 下的http://www.jedit.org/users-guide/macros-clipboard.html找到了这个宏。

它似乎是一个默认宏,我应该能够在不安装任何东西的情况下使用它。但我在列表中找不到它。

然后我尝试在此处使用此宏的代码https://github.com/aismail/sedemo2011/blob/master/lib/jason/bin/jedit/macros/Clipboard/Copy_Selection_or_Line.bsh 我安装了它,现在可以启用它,但它不起作用。

我花了很长时间试图让这个宏工作,但它只是不工作。谁能帮帮我?谢谢

4

2 回答 2

0

Copy_Selection_or_Line.bsh宏在 7 年前被重命名,如下所示:https ://sourceforge.net/p/jedit/svn/11860 。似乎文档没有相应更新。如果您在此处打开文档错误会很棒:https ://sourceforge.net/p/jedit/bugs/new/ 这个附带的宏应该可以正常工作。

您在上面链接的是宏,因为它是在我链接的更改之前。很可能是某些 API 自 7 年前以来发生了变化,并且宏无法按原样使用。Copy_Lines.bsh宏在做你想做的事吗?如果没有,它可能至少有助于更新旧Copy_Selection_or_Line.bsh宏以使用当前的 jEdit。

于 2015-03-15T17:51:36.127 回答
0

我修改了宏(附在下面):

// My Copy_Selection_or_Line.bsh
if (textArea.getSelectionCount() == 0) {
    caretLine = textArea.getCaretLine();
    lineEndOffset = textArea.getLineEndOffset(caretLine);
    textArea.setSelection(new Selection.Range(textArea.getLineStartOffset(caretLine), textArea.getBufferLength() >= lineEndOffset? lineEndOffset : lineEndOffset-1));
}

Registers.copy(textArea,'$');
于 2015-03-29T21:58:58.107 回答