UltraEdit文字编辑器教程:集成脚本引擎

Wesley13
• 阅读 823

UltraEdit是一款功能强大基于磁盘的文本编辑器、程序员的编辑器和十六进制编辑器。可以用于编辑HTML、PHP、javascript、Perl、C/C++、Python以及其他任何的编码/编程语言。

UltraEdit产品的UltraEdit subscription版本授权原价¥800元,现在优惠¥653元,点击查看授权方式和其他版本优惠>>>

点击下载UltraEdit正式版

通过嵌入JavaScript引擎,可以启用UltraEdit / UEStudio中的脚本。这使用户可以在使用UltraEdit / UEStudio应用程序对象命令与编辑器或在编辑器中打开的文档(文档对象命令)交互时享受JavaScript语言的强大功能和灵活性。

脚本引擎支持JavaScript 1.7的核心功能。有关JavaScript 1.7的更多信息,请参见相关的Mozilla网站。

使用集成脚本引擎

步骤1:建立指令码
使用UltraEdit / UEStudio创建(JavaScript)脚本。如上所述,您可以使用JavaScript 1.7以及UltraEdit / UEStudio应用程序对象命令和文档对象命令。

帮助中有大量有关可用命令的信息,但是下面有一些示例脚本。

UltraEdit文字编辑器教程:集成脚本引擎

我们上面创建的脚本是一个简单的“ Hello World”脚本,它将向活动文档中写入“ Hello World”。

步骤2:添加脚本

创建(并保存)脚本后,您需要将其添加到“脚本:脚本”对话框中。

UltraEdit文字编辑器教程:集成脚本引擎

单击“添加”按钮将脚本添加到列表中。您将需要浏览到脚本的位置,并根据需要键入脚本的描述。该描述将显示在脚本对话框的“描述”字段中。

UltraEdit文字编辑器教程:集成脚本引擎

添加脚本后,您可以定义热键/和弦,以快速,轻松地执行脚本。注意:您需要先创建一个热键,然后才能设置和弦。

完成后,可以单击确定。

步骤3:执行脚本

要执行脚本,请转到“脚本”菜单。您将在“脚本”菜单的底部看到脚本名称。单击脚本名称以执行它。如果已定义它们,也可以使用热键/和弦。

UltraEdit文字编辑器教程:集成脚本引擎

执行上述脚本后,您应该看到以下结果:

UltraEdit文字编辑器教程:集成脚本引擎

注意:由于脚本确实利用了JavaScript语言,因此您也可以将此作为函数编写:

// Hello World Example Script

function hello() { UltraEdit.activeDocument.write("Hello World!") } hello();

示例脚本-检索字符串用户输入

脚本支持使您可以提示用户输入String或Integer数据,在变量中捕获该数据,然后相应地使用该变量。用于检索数据的方法是“ UltraEdit.getValue”和“ UltraEdit.getString”。

提示输入字符串

要提示输入字符串,请使用“ UltraEdit.getString”命令。提示输入和将输入捕获为变量的示例如下:

var str = UltraEdit.getString("Please Enter a String:",1);

捕获输入:

为了捕获数据,而不是立即将其写入文档,必须在getString方法中使用“ 1 ”参数。

写入输入:

如果要立即将用户输入写入文件,请使用“ 0 ”作为参数值。

样本捕获字符串输入脚本

下面的示例提示用户输入字符串,并将其捕获到变量“ str”中。然后它将在活动文档中写入“您输入了用户输入(str) ”。根据输入的是“ UltraEdit”还是“ UEStudio”,它将写入不同的响应。

如果愿意,您可以复制以下脚本并对其进行扩展。

function strInput() {

//Get user input var str = UltraEdit.getString("Please Enter a String:",1);

//Output what was entered UltraEdit.activeDocument.write("You Entered " + str + "\r\n");

//Conditional responses if (str == "UltraEdit") { UltraEdit.activeDocument.write(str + " has an integrated scripting engine.\r\n"); UltraEdit.activeDocument.write(str + " is a very powerful editor.\r\n"); UltraEdit.activeDocument.write("\r\n"); } else if (str == "UEStudio") { UltraEdit.activeDocument.write(str + " also has integrated scripting\r\n"); UltraEdit.activeDocument.write(str + " includes all the functionality of UltraEdit and more.\r\n"); UltraEdit.activeDocument.write("\r\n"); } else { UltraEdit.activeDocument.write("Sorry, there is no defined output for " + str + "\r\n"); UltraEdit.activeDocument.write("\r\n"); }

} //end strInput

strInput();

注意:用于写入活动文档的命令是“ UltraEdit.activeDocument.write”

输入“数据”,“ UltraEdit ”和“ UEStudio ”后的结果如下:

UltraEdit文字编辑器教程:集成脚本引擎

示例脚本-检索整数用户输入

脚本支持使您可以提示用户输入String或Integer数据,在变量中捕获该数据,然后相应地使用该变量。用于检索数据的方法是“ UltraEdit.getValue”和“ UltraEdit.getString”。

提示输入整数

要提示输入整数,请使用“ UltraEdit.getValue”命令。提示输入整数输入并将输入捕获为变量的示例如下:

var num = UltraEdit.getValue("Please enter an integer",1);

捕获输入:

为了捕获数据,而不是立即将其写入文档,必须在getValue方法中使用“ 1 ”参数。

写入输入:

如果要立即将用户输入写入文件,请使用“ 0 ”作为参数值。

样本捕获整数输入脚本

下面的示例提示用户输入一个整数值,并将其捕获到变量“ num”中。它将在活动文档中写入“您输入了用户输入(str) ”。然后它将进入一个循环,在该循环中将写入“ i”行数,并为每行编号。
如果愿意,您可以复制以下脚本并对其进行扩展。

function intInput() {

//Get user input var num = UltraEdit.getValue("How Many Lines:",1);

//Output what was entered UltraEdit.activeDocument.write("You Entered " + num + "\r\n\r\n");

//Loop var i = 1; while (i <= num) { UltraEdit.activeDocument.write(i + " \r\n"); i = ++i; }

} //end strInput

intInput();

注意:用于写入活动文档的命令是“ UltraEdit.activeDocument.write”
输入“ 5 ”后的结果如下:

UltraEdit文字编辑器教程:集成脚本引擎

示例脚本-枚举所有打开的文件

使用文档对象命令,您可以访问/引用编辑器中当前打开的文件。如果要对所有打开的文件执行操作/运行脚本,则需要检索打开的文件数,然后循环浏览每个文件。

例如,如果您需要找出在编辑器中打开了多少文件,则可以使用以下命令:

var num_of_docs = UltraEdit.document.length;

如果需要基于打开的文件引用特定文件,则可以使用UltraEdit.document [x]进行引用。其中x是文档编号。

示例通过所有打开的文件枚举

下面的脚本将枚举每个打开的文件,并将简单的标头写入每个文件。

如果愿意,您可以复制以下脚本并对其进行扩展。

// Hello welcome to the UltraEdit scripting environment. Normally you would // put a header comment at the top of a javascript file to be used in UltraEdit // in order to indicate the version of the UltraEdit scripting API like so: // Version = 1.00 // However, this is currently not necessary since the API will default to 1.00.

// ---------------------------------------------------------------------------- // header.js // This script creates a header for all open documents // ---------------------------------------------------------------------------- // UltraEdit is our application object. All UltraEdit operations will use this // object.

// Get the num of open documents. var num_of_docs = UltraEdit.document.length;

var dashes = "// ------------------------------------------------------------"; dashes += "----------------\r\n";

// Enumerate through all open documents and add the header. var index; for (index = 0; index < num_of_docs; index++) { UltraEdit.document[index].top(); UltraEdit.document[index].write(dashes); UltraEdit.document[index].write("// Script Name: \r\n"); UltraEdit.document[index].write("// Creation Date: \r\n"); UltraEdit.document[index].write("// Last Modified: \r\n"); UltraEdit.document[index].write("// Copyright (c)20XX\r\n"); UltraEdit.document[index].write("// Purpose: \r\n"); UltraEdit.document[index].write(dashes); } //end for loop

运行上述脚本后,每个打开的文件现在都具有以下标头:

UltraEdit文字编辑器教程:集成脚本引擎

享受集成脚本引擎的强大功能!

点赞
收藏
评论区
推荐文章
blmius blmius
3年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
待兔 待兔
3个月前
手写Java HashMap源码
HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22
Wesley13 Wesley13
3年前
UltraEdit文字编辑器使用选项卡式子窗口
UltraEdit(https://www.oschina.net/action/GoToLink?urlhttps%3A%2F%2Fwww.evget.com%2Fproduct%2F3546)是一款功能强大基于磁盘的文本编辑器、程序员的编辑器和十六进制编辑器。可以用于编辑HTML、PHP、javascript、Perl、C/C、Python
Wesley13 Wesley13
3年前
UltraEdit文字编辑器备份和还原设置
UltraEdit(https://www.oschina.net/action/GoToLink?urlhttps%3A%2F%2Fwww.evget.com%2Fproduct%2F3546)是一款功能强大基于磁盘的文本编辑器、程序员的编辑器和十六进制编辑器。可以用于编辑HTML、PHP、javascript、Perl、C/C、Python
Wesley13 Wesley13
3年前
UltraEdit文字编辑器自动隐藏子视窗教程
UltraEdit(https://www.oschina.net/action/GoToLink?urlhttps%3A%2F%2Fwww.evget.com%2Fproduct%2F3546)是一款功能强大基于磁盘的文本编辑器、程序员的编辑器和十六进制编辑器。可以用于编辑HTML、PHP、javascript、Perl、C/C、Python
Wesley13 Wesley13
3年前
UltraEdit文字编辑器教程:将Yahoo!,Google,Wikipedia等与UltraEdit集成
UltraEdit(https://www.oschina.net/action/GoToLink?urlhttps%3A%2F%2Fwww.evget.com%2Fproduct%2F3546)是一款功能强大基于磁盘的文本编辑器、程序员的编辑器和十六进制编辑器。可以用于编辑HTML、PHP(https://www.oschina.net/p/
Wesley13 Wesley13
3年前
UltraEdit文字编辑器快速打开文件教程
UltraEdit(https://www.oschina.net/action/GoToLink?urlhttps%3A%2F%2Fwww.evget.com%2Fproduct%2F3546)是一款功能强大基于磁盘的文本编辑器、程序员的编辑器和十六进制编辑器。可以用于编辑HTML、PHP、javascript、Perl、C/C、Python
Wesley13 Wesley13
3年前
UltraEdit文字编辑器设置作为缩进指南的列标记
UltraEdit(https://www.oschina.net/action/GoToLink?urlhttps%3A%2F%2Fwww.evget.com%2Fproduct%2F3546)是一款功能强大基于磁盘的文本编辑器、程序员的编辑器和十六进制编辑器。可以用于编辑HTML、PHP、javascript、Perl、C/C、Python
Wesley13 Wesley13
3年前
UltraEdit文字编辑器强大的导航功能介绍
UltraEdit(https://www.oschina.net/action/GoToLink?urlhttps%3A%2F%2Fwww.evget.com%2Fproduct%2F3546)是一款功能强大基于磁盘的文本编辑器、程序员的编辑器和十六进制编辑器。可以用于编辑HTML、PHP、javascript、Perl、C/C、Python
Python进阶者 Python进阶者
9个月前
Excel中这日期老是出来00:00:00,怎么用Pandas把这个去除
大家好,我是皮皮。一、前言前几天在Python白银交流群【上海新年人】问了一个Pandas数据筛选的问题。问题如下:这日期老是出来00:00:00,怎么把这个去除。二、实现过程后来【论草莓如何成为冻干莓】给了一个思路和代码如下:pd.toexcel之前把这