百度自动翻译的,没有修改,留个记号,为博客加点料。
小衲再次声明:
本博客的所有原创文章都是个人笔记,疏漏错误在所难免,据此产生的任何后果,本人概不负责【除极个别极个别的捐赠/购买者外】。
原文:UltraEdit/UEStudio Scripting Techniques
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
脚本技术
内置的脚本引擎是一个强大的功能,让您可以自动完成您的文本编辑操作。正如你可以从用户的脚本节中所发布的实例中看到的那样,有很多种方式使用脚本。下面是一些技巧来保持“手头”,可以让你开始使用脚本引擎。
注:有些技术可能需要编程的概念,如变量,如果/然后语句,循环的知识。
创建一个新文件
下面的脚本在编辑器中创建一个新的(空)文件。
UltraEdit.newFile();
写入文件
下面的脚本写入活动文档。
UltraEdit.activeDocument.write("test");
写入输出窗口
下面的脚本写入输出窗口。
UltraEdit.outputWindow.write("Hello World!")
点击这里了解更多关于写入到输出窗口。
选择,复制,粘贴一行
下面的脚本选择活动线然后跳转到该文件的顶部并粘贴。
UltraEdit.activeDocument.selectLine();
UltraEdit.activeDocument.copy();
UltraEdit.activeDocument.top();
UltraEdit.activeDocument.paste();
光标移动和选择
下面的脚本选择光标旁边的一个字,以及下面的行(下面)。
UltraEdit.activeDocument.startSelect();
UltraEdit.activeDocument.key("CTRL+RIGHT ARROW");
UltraEdit.activeDocument.key("DOWN ARROW");
UltraEdit.activeDocument.key("DOWN ARROW");
UltraEdit.activeDocument.endSelect();
把选定的文本转换为变量
这个脚本将选定的文本放在一个叫做文本的变量中。
var text = UltraEdit.activeDocument.selection;
用下划线替换选定文本中的空格
这个脚本将选定的文本放在一个变量中,并用下划线替换所有空格。
输入实例:
Hello world welcome to scripting
转换:
hello_world_welcome_to_scripting
var str = UltraEdit.activeDocument.selection;
str = str.replace(/ /g, "_");
注:“替换”文本的封闭的反斜杠。
将选定的行解析为数组
这个脚本需要选线和解析成一个数组。通知行终止变量被定义为\ '。这可能需要根据您使用的文件类型进行更改。
var lineTerminator = "\r\n";
var str = UltraEdit.activeDocument.selection;
var resultArr = new Array();
resultArr = str.split(lineTerminator);
在将行解析成一个数组之后,可以通过数组循环来执行数组中的每个值的动作。例如,下面的代码将循环通过数组,并将值写入下面的格式的输出窗口中:
Value: [number] "[Text]"
for (var i = 0; i < resultArr.length; i++) {
UltraEdit.outputWindow.write("Value: " + i + " \"" + resultArr[i] + "\"\r\n");
}
追加多行
以下脚本将追加(写入)多行成单行。
如果你有一个文件,如:
abc
123
def
345
它将产生:
abc123def345
var strings; //variable which holds selection
var stringArray = new Array(); //create array to hold string values
var arrayLength = 0; //array length
var lineTerminator = "\r\n"; //line terminator character you may need to change this depending on the file type//Get user selection
strings = UltraEdit.activeDocument.selection;//split string at line terminator characters
stringArray = strings.split(lineTerminator);
arrayLength = stringArray.lengthfor (var x = 0; x < arrayLength; ++x) {
UltraEdit.activeDocument.write(stringArray[x]);
}
查找选定文本
此脚本执行选定文本的搜索。
var text = UltraEdit.activeDocument.selection;
UltraEdit.activeDocument.findReplace.regExp = false;
UltraEdit.activeDocument.findReplace.find(text);
替换文本选择
该脚本将取代所有出现的“作业成本法”与“作业成本法”在一个特定的选择。
UltraEdit.activeDocument.findReplace.regExp=false;
UltraEdit.activeDocument.findReplace.selectText=true;
UltraEdit.activeDocument.findReplace.replaceAll=false;
UltraEdit.activeDocument.findReplace.replace("abc","ABC");
替换选定的文本-定义选择
该脚本类似于上面的脚本,除了它定义了从顶部的选择,通过第四行结束(开始的5行的文件)。
UltraEdit.activeDocument.top();
UltraEdit.activeDocument.gotoLineSelect(5,1);
UltraEdit.activeDocument.findReplace.regExp=false;
UltraEdit.activeDocument.findReplace.selectText=true;
UltraEdit.activeDocument.findReplace.replaceAll=false;
UltraEdit.activeDocument.findReplace.replace("abc","ABC");
替换文件中所有出现的字符串
下面的脚本使用UltraEdit查找/替换将具体的实例都在一个文件中查找字符串。用&代替这个例子;- HTML实体。
UltraEdit.activeDocument.top();
UltraEdit.activeDocument.findReplace.replaceAll=true;
UltraEdit.activeDocument.findReplace.matchCase=true;
UltraEdit.activeDocument.findReplace.replace("&", "&");
找到特定文本的发生
下面的脚本找到一个给定文件中的文本(“作业成本”)的第三个实例。
var text = "abc";
var x = 3;
UltraEdit.activeDocument.findReplace.regExp = false;
for (i=1;i<=x;++i) {
UltraEdit.activeDocument.findReplace.find(text);
}
注:以上脚本假定至少有3个“作业成本法”的实例。如果文件不包含至少3,您可以添加额外的逻辑来测试文件中出现的有多少个实例。
在编辑器中打开了多少个文件
下面的脚本将告诉你在编辑器中打开的文件的数量。该号码被写入输出窗口。
var num = UltraEdit.document.length;
UltraEdit.outputWindow.write("number " + num);
去一个特定的行/列数
以下脚本将在2号线编号,列12。
var lineNum = 2;
var colNum = 12;
UltraEdit.activeDocument.gotoLine(lineNum, colNum);
选择文档中的所有文本,复制它,并返回到光标位置
以下脚本选择文件中的所有文本,然后将其复制,然后将光标放回原处,然后选择所有/复制。
var lineNum = UltraEdit.activeDocument.currentLineNum;
var colNum = UltraEdit.activeDocument.currentColumnNum;
UltraEdit.activeDocument.selectAll();
UltraEdit.activeDocument.copy();
UltraEdit.activeDocument.gotoLine(lineNum, colNum);
在编辑器中遍历所有打开的文件
下面的脚本将遍历编辑器中的所有打开文件,并将添加一个“注释”。这是类似于header.js脚本可以从我们的网站下载。
var num = UltraEdit.document.length;
var index;
for (index = 0; index < num; index++) {
UltraEdit.document[index].top();
UltraEdit.document[index].write("// Edited by IDM");
}
你也可以使用此来执行一个动作,如修剪所有打开文件的尾随空格。
十六进制模式活跃吗?
下面的脚本将检查是否启用了十六进制模式,如果是这样,它将切换到十六进制模式。
var hexActive = UltraEdit.activeDocument.hexMode;
if (hexActive) UltraEdit.activeDocument.hexOff();
有一个你想为其他用户发布的脚本吗?给我们你的剧本…
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
百度机器翻译的比有道翻译准些嘛~
111.18.188.***某Windows用户觉得这篇文章很有帮助。
学习了,真不错