Komodo编辑宏,用剪贴板内容替换当前文档中的特定单词;可能吗?

时间:2012-07-10 20:15:42

标签: macros clipboard copy-paste replace komodoedit

我创建了这个宏来用当前文档中的另一个单词替换特定单词,但理想情况下,我想用剪贴板内容替换它。我目前的代码如下:

// Macro recorded on: Wed Jul 11 2012 01:29:42 GMT+0530 (India Standard Time)
komodo.assertMacroVersion(3);
if (komodo.view) { komodo.view.setFocus(); }
ko.find.replaceAllInMacro(window, 0, 'Itemlink', 'target', true, 0, 2, false, false);

以上代码取代了“' Itemlink'使用' target'这个词,但是如何使用剪贴板内容呢?到目前为止,我发现这个Komodo命令粘贴剪贴板中的数据,但我不知道如何使用它。命令是:

komodo.doCommand('cmd_paste');

请帮助,谢谢...

1 个答案:

答案 0 :(得分:1)

使用对scimoz对象的引用,该对象使用Scintilla API的子集,并包括要添加到剪贴板的copyText()方法和用于输出当前数据的paste()方法:

komodo.assertMacroVersion(2);
var editor = ko.views.manager.currentView.scimoz;
editor.copyText(1,"("); //add left parentheses to clipboard buffer

Find_ReplaceAllInMacro(window, 0, 'Itemlink', editor.paste(), true, 0, 2, false, false);