跳转到内容

JavaScript Editor

JavaScript Editor 可用于编写 JavaScript 脚本,在 Cavalry 中运行以创建、连接和影响 Layers。有关如何编写脚本的更多信息,请参见 Scripting 部分。

脚本在会话间保存(当你关闭并重新打开 Cavalry 时它们仍然存在),但重要的是要注意,JavaScript Editor 并不是编辑文件系统上文件的方式。可以从文件系统导入文件,但对该脚本的任何编辑都不会保存到原始文件中。

Visual Studio Code 用户还应查看 Stallion——一个向 Cavalry 发送脚本的扩展,附带 Cavalry 的 Typescript 定义。

Run Script - 运行活动标签页中的脚本。要仅运行选中的文本,按住 Option/Alt 同时点击此按钮。

Clear Script - 清除活动标签页。

Load… - 从文件系统导入脚本。导入时,会出现一个对话框,询问是将脚本加载到新标签页还是替换当前活动标签页。

Save As… - 将活动标签页保存到文件系统。

Save Encrypted… - 以加密格式将活动标签页保存到文件系统。

  • 使用 + 按钮添加新标签页。
  • 要重命名标签页,右键点击一个并选择 Rename…
  • 要关闭/移除标签页,右键点击一个并选择 Delete 或点击 x 按钮。

按 Cmd/Ctrl + F 将光标/插入符号放在搜索字段中。

搜索字段 - 输入字符串以在脚本中定位。

Previous - 高亮显示上一个与搜索字符串匹配的结果。

Next - 高亮显示下一个与搜索字符串匹配的结果。

Replace - 勾选后,将出现一个新行,其中包含用新字符串替换搜索字符串的选项。

替换字段 - 输入用于替换搜索字符串的字符串。

Replace - 用替换字符串替换当前搜索字符串。

Replace All - 用替换字符串替换搜索字符串的所有实例。

在此输入 JavaScript 代码。编写时,新行将自动缩进。

要注释掉代码行,选择一行或多行的任何部分,然后使用 Cmd/Ctrl + / 快捷键。注释 (//) 将添加到每一行,从而禁用该代码。使用相同的热键取消注释任何已注释掉的代码。

当输入例如 api.cavalry.ui. 时,会出现一个自动完成窗口。使用 ⬆︎/⬇︎ 键选择一个选项,然后按 Return 从结果列表中选择所需的成员函数。或者,使用光标并双击结果。

当输入 {、[ 或 ” 时,匹配/闭合的对将自动创建。如果删除两个这样的匹配对中的第一个,两者都将被删除。

要整理脚本的缩进,可以:

  • 使用 Shift + Option/Alt + F;或
  • 右键点击 > Format All

如果选中了脚本的一部分,则仅该部分会被格式化,上下文菜单项将更新为 Format Selection

点击 Run Script… 时,任何日志都会在这里打印,并根据其状态进行颜色编码。请注意,如果 JavaScript Console 已作为 Workspace 的一部分停靠,则此面板将被隐藏。

Snippet Panel 可用于保存代码片段以供重用。

要创建 Snippet,从编辑器中选择一段代码并将其拖入 Snippet Panel

要将 Snippet 插入脚本,将光标放在脚本中的某一行上,然后将 Snippet 从 Snippet Panel 拖放到脚本面板中。

要导入 Snippet,可以:

  • 点击 Button icon 按钮并选择 Import... 以从文件系统导入有效的 .json Snippet 文件。
  • 将有效的 .json Snippet 文件从文件系统拖放到 Snippet Panel 中。

要重命名 Snippet,可以:

  • 双击 Snippet 的行。
  • 选择一个 Snippet 并按 Return。
  • 点击 Snippet 行上的 Button icon 按钮并选择 Rename
  • 右键点击 Snippet 的行并选择 Rename

要重新排序 Snippet,在列表中上下拖动它。

要删除 Snippet,可以:

  • 选择 Snippet 行并按 Delete 键。
  • 点击 Snippet 行上的 Button icon 按钮并选择 Delete
  • 右键点击 Snippet 的行并选择 Delete

要导出 Snippet,可以:

  • 点击 Snippet 行上的 Button icon 按钮并选择 Export...
  • 右键点击 Snippet 的行并选择 Export...

可以直接将文本从支持拖动选中文本块的应用(如 TextEditSublime Text)拖放到 Snippet Panel 中。

如果 Snippet 包含可执行代码,可以通过以下方式运行它:

  • 点击 Snippet 行上的 Button icon 按钮并选择 Run Snippet
  • 右键点击 Snippet 的行并选择 Run Snippet

Snippets 保存为 JSON 字典。

{ "resourceType": "cavalry.snippets", "semVer": "1.0", "snippets": [ { "contents": "api.primitive(\"rectangle\");", "name": "Example Snippet" } ]}

包含 Snippets Panel 中列出的 Snippets 的 snippets.json 文件位于:

  • macOS - ~/Library/Application Support/Cavalry/
  • Windows - C:\Users\<USER>\AppData\Roaming\Cavalry\