Share via


建立 Azure Data Studio 鍵盤對應延伸模組

本教學課程示範如何建立新的 Azure Data Studio 延伸模組。 此延伸模組會在 Azure Data Studio 中建立熟悉的 SSMS 按鍵繫結關係。

在本文中,您將了解如何:

  • 建立延伸模組專案
  • 安裝延伸模組產生器
  • 建立您的延伸模組
  • 將自訂的按鍵繫結關係新增到延伸模組
  • 測試您的延伸模組
  • 封裝您的延伸模組
  • 將您的延伸模組發佈到市集

先決條件

Azure Data Studio 建置在與 Visual Studio Code 相同的架構上,因此 Azure Data Studio 的延伸模組是使用 Visual Studio Code 所建立。 若要開始進行,您需要下列元件:

  • $PATH 中已安裝並可供使用的 Node.js。 Node.js 包含 Node.js 套件管理員 npm,可用來安裝延伸模組產生器。
  • 用來偵錯延伸模組的 Visual Studio Code
  • Azure Data Studio 偵錯延伸模組 (選擇性)。 讓您不需要將延伸模組封裝並安裝到 Azure Data Studio 中,即可進行測試。
  • 確定 azuredatastudio 在您的 PATH 中。 若是 Windows,請務必選擇 setup.exe 中的 [Add to Path] 選項。 若為 Mac 或 Linux,請從 Azure Data Studio 中的命令選擇區,執行在 PATH 中安裝 'azuredatastudio' 命令

安裝延伸模組產生器

為了簡化建立延伸模組的程序,我們使用 Yeoman 建置了延伸模組產生器。 若要加以安裝,請在命令提示字元中執行下列程式碼:

npm install -g yo generator-azuredatastudio

建立鍵盤對應延伸模組

若要建立延伸模組:

  1. 使用下列命令啟動延伸模組產生器:

    yo azuredatastudio

  2. 從延伸模組類型清單選擇 [New Keymap] \(新增按鍵對應\)

    Extension generator

  3. 遵循步驟填入延伸模組名稱 (在本教學課程中,使用 ssmskeymap2),並新增描述。

完成上述步驟會建立新的資料夾。 在 Visual Studio Code 中開啟資料夾,即可建立您自己的按鍵繫結關係延伸模組!

新增鍵盤快速鍵

步驟 1:尋找要取代的快速鍵

現在我們已準備好延伸模組,請將一些 SSMS 鍵盤快速鍵 (或按鍵繫結關係) 新增至 Azure Data Studio。 我使用 Andy Mallon 的速查表和 RedGate 的鍵盤快速鍵清單來激發靈感。

我發現遺漏了下列重要項目:

  • 在啟用實際執行計畫的情況下執行查詢。 這在 SSMS 中是 Ctrl+M,但在 Azure Data Studio 中沒有繫結關係。
  • CTRL+SHIFT+E 作為執行查詢的第二個方法。 使用者意見反應指出遺漏此項目。
  • ALT+F1 執行 sp_help。 我們已在 Azure Data Studio 中新增此項目,但因為該繫結關係已經在使用,所以我們改為對應至 ALT+F2
  • 切換全螢幕 (SHIFT+ALT+ENTER)。
  • F8 顯示物件總管 / [伺服器檢視]

尋找及取代這些按鍵繫結很簡單。 執行 [開啟鍵盤快速鍵],在 Azure Data Studio 中顯示 [鍵盤快速鍵] 索引標籤,搜尋 query,然後選擇 [Change Key binding] \(變更按鍵繫結關係\)。 完成變更按鍵繫結關係之後,您可以在 keybindings.json 檔案中查看更新的對應 (執行 [開啟鍵盤快速鍵] 即可查看)。

Keyboard shortcuts

Keybindings.json extension

步驟 2:將快速鍵新增至延伸模組

若要將快速鍵新增至延伸模組,請開啟延伸模組中的 package.json 檔案,然後將 contributes 區段取代為下列程式碼:

"contributes": {
  "keybindings": [
    {
      "key": "shift+cmd+e",
      "command": "runQueryKeyboardAction"
    },
    {
      "key": "ctrl+cmd+e",
      "command": "workbench.view.explorer"
    },
    {
      "key": "alt+f1",
      "command": "workbench.action.query.shortcut1"
    },
    {
      "key": "shift+alt+enter",
      "command": "workbench.action.toggleFullScreen"
    },
    {
      "key": "f8",
      "command": "workbench.view.connections"
    },
    {
      "key": "ctrl+m",
      "command": "runCurrentQueryWithActualPlanKeyboardAction"
    }
  ]
}

測試您的延伸模組

在 Azure Data Studio 中執行 [Install azuredatastudio command in PATH] \(在 PATH 中安裝 azuredatastudio 命令\) 的命令,確定 azuredatastudio 在您的 PATH 中。

確定已在 Visual Studio Code 中安裝 Azure Data Studio 偵錯延伸模組。

選取 F5,在偵錯模式中啟動 Azure Data Studio 並執行延伸模組:

Install extension

test extension

按鍵對應是可最快速建立的延伸模組之一,因此您的新延伸模組現在應該會成功運作並可供分享。

封裝您的延伸模組

若要與其他人共用,則需要將延伸模組封裝成單一檔案。 此檔案可發佈到 Azure Data Studio 延伸模組 Marketplace,或在小組或社群分享。 若要執行這項操作,您必須從命令列安裝另一個 npm 套件:

npm install -g vsce

巡覽至延伸模組的基底目錄,然後執行 vsce package。 我必須新增幾行額外的程式碼,以停止 vsce 工具回報問題:

"repository": {
    "type": "git",
    "url": "https://github.com/kevcunnane/ssmskeymap.git"
},
"bugs": {
    "url": "https://github.com/kevcunnane/ssmskeymap/issues"
},

完成此作業之後,我的 ssmskeymap-0.1.0.vsix 檔案便已建立,可供安裝並與全世界分享!

Install

將延伸模組發佈到 Marketplace

Azure Data Studio 延伸模組市集正在建構中,目前的程序是在某處 (例如 GitHub 版本頁面) 裝載延伸模組 VSIX,然後提交 PR,將此 JSON 檔案更新為您的延伸模組資訊。

後續步驟

在本教學課程中,您已了解如何:

  • 建立延伸模組專案
  • 安裝延伸模組產生器
  • 建立您的延伸模組
  • 將自訂的按鍵繫結關係新增到延伸模組
  • 測試您的延伸模組
  • 封裝您的延伸模組
  • 將您的延伸模組發佈到市集

希望藉由閱讀本文,可激發您的靈感,建置自己的 Azure Data Studio 延伸模組。 我們支援儀表板深入解析 (針對 SQL Server 執行的精美圖表)、一些 SQL 特定的 API,以及從 Visual Studio Code 繼承的一組龐大現有擴充點。

如果您有些想法,但不確定如何著手,請提出問題或對 azuredatastudio 小組推文。

您可以隨時參考 Visual Studio Code 延伸模組指南,因為指南涵蓋了所有現有的 API 和模式。

若要了解如何在 Azure Data Studio 中使用 T-SQL,請完成 T-SQL 編輯器教學課程: