跳到內容

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\