0

こんにちは、私は jedit が初めてで、何も選択されていないときに現在の行をコピーできる機能をインストールしようとしています。このマクロは、http: //www.jedit.org/users-guide/macros-clipboard.html の Copy_Selection_or_Line.bsh にあります。

これはデフォルトのマクロのようで、何もインストールせずにそのまま使用できるはずです。しかし、私はリストでそれを見つけることができません。

次に、このマクロのコードをここで使用してみましたhttps://github.com/aismail/sedemo2011/blob/master/lib/jason/bin/jedit/macros/Clipboard/Copy_Selection_or_Line.bsh インストールして有効にできるようになりました、しかし、それは動作しません。

このマクロを機能させるために何年も費やしましたが、機能していません。私に手を貸してくれる人はいますか?ありがとう

4

2 に答える 2

0

マクロは、httpsCopy_Selection_or_Line.bsh ://sourceforge.net/p/jedit/svn/11860 で確認できるように、7 年前に名前が変更されました。それに応じてドキュメントが更新されていないようです。ここでドキュメントのバグを開いていただければ幸いです: https://sourceforge.net/p/jedit/bugs/new/ この出荷されたマクロは問題なく動作するはずです。

上でリンクしたのは、リンクした変更前のマクロです。7年前から一部のAPIが変更され、マクロがそのまま使用できなくなった可能性があります。マクロは意図したとおりに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 に答える