擴充功能市集

Visual Studio Code 開箱即用的大部分功能只是個開始。透過 VS Code 延伸模組,您可以將語言、偵錯工具和工具新增至您的安裝中,以支援您的開發工作流程。VS Code 豐富的可擴充性模型可讓延伸模組作者直接外掛到 VS Code 使用者介面 (UI),並透過 VS Code 所使用的相同 API 提供功能。本文說明如何從 Visual Studio Code Marketplace 尋找、安裝和管理 VS Code 延伸模組。

瀏覽延伸模組

您可以直接在 VS Code 內瀏覽並安裝延伸模組。只要按一下 VS Code 側邊活動列中的「延伸模組」圖示,或使用檢視: 延伸模組命令 (⇧⌘X (Windows, Linux Ctrl+Shift+X)),即可叫出「延伸模組」檢視。

Extensions view icon

這將會顯示 VS Code Marketplace 上最熱門的 VS Code 延伸模組清單。

popular extensions

清單中的每個延伸模組都包含簡短說明、發行者、下載次數和五星評分。您可以選取延伸模組項目以顯示延伸模組的詳細資料頁面,以深入了解。

注意

如果您電腦的網際網路存取透過 Proxy 伺服器,您將需要設定 Proxy 伺服器。如需詳細資料,請參閱Proxy 伺服器支援

安裝延伸模組

若要安裝延伸模組,請選取安裝按鈕。安裝完成後,安裝按鈕將變更為管理齒輪按鈕。

重要

延伸模組擁有與 VS Code 本身相同的權限。從 VS Code 1.97 版本開始,當您首次安裝來自第三方發行者的延伸模組時,VS Code 會顯示一個對話方塊,提示您確認是否信任該延伸模組發行者。取得更多關於延伸模組執行階段安全性以及如何保護自己免受惡意延伸模組侵害的資訊。

如果您想要安裝延伸模組的特定版本,請在該延伸模組上按一下滑鼠右鍵並選取安裝其他版本。接著,您可以從可用清單中選取版本。

啟用 設定同步 (Settings Sync) 時,您可以在多部機器之間共用 VS Code 設定 (例如延伸模組)。若要安裝延伸模組但不在您的機器之間進行同步,請在該延伸模組上按一下滑鼠右鍵並選取安裝 (不同步)

尋找並安裝延伸模組

例如,讓我們安裝熱門的 TODO Highlight 延伸模組。這個延伸模組會在您的原始程式碼中突顯顯示「TODO:」和「FIXME:」等文字,讓您可以快速找到尚未完成的區段。

TODO Highlight extension highlighting in the editor

在「延伸模組」檢視 (⇧⌘X (Windows, Linux Ctrl+Shift+X)) 中,於搜尋方塊中輸入「todo」,以便將 Marketplace 提供項目篩選為標題或後設資料中包含「todo」的延伸模組。您應該會在清單中看到 TODO Highlight 延伸模組。

Search for todo in the Extensions view

延伸模組是由其發行者和延伸模組 ID 進行唯一識別。如果您選取 TODO Highlight 延伸模組,您將會看到「延伸模組詳細資料」頁面,您可以在其中找到延伸模組 ID (在此情況下為 wayou.vscode-todo-highlight)。如果有幾個名稱相似的延伸模組,知道延伸模組 ID 會很有幫助。

TODO Highlight extension details with extension ID highlighted

選取安裝按鈕,VS Code 將會從 Marketplace 下載並安裝該延伸模組。安裝完成後,安裝按鈕將會被管理齒輪按鈕取代。

Manage gear button

若要實際查看 TODO Highlight 延伸模組的運作情形,請開啟任何原始程式碼檔案並新增文字「TODO:」,您將會看到該文字被突顯顯示。

TODO Highlight 延伸模組提供了 TODO-Highlight: List highlighted annotationsTODO-Highlight: Toggle highlight 等命令,您可以在命令選擇區 (⇧⌘P (Windows, Linux Ctrl+Shift+P)) 中找到它們。TODO-Highlight: Toggle highlight 命令可讓您快速停用或啟用突顯顯示。

TODO Highlight commands in the Command Palette

此延伸模組也提供用於調整其行為的設定,您可以在設定編輯器 (⌘, (Windows, Linux Ctrl+,)) 中找到它們。例如,您可能會希望文字搜尋不區分大小寫,這時您可以取消勾選 Todohighlight: Is Case Sensitive 設定。

TODO Highlight settings in the Settings editor

如果延伸模組未提供您想要的功能,您隨時可以從管理按鈕操作功能表中解除安裝該延伸模組。

Uninstall the TODO Highlight extension

這只是一個如何安裝與使用延伸模組的範例。VS Code Marketplace 擁有數千個支援數百種程式語言和任務的延伸模組。從針對 JavaPythonGoC++ 的完整功能語言支援,到可建立 GUID、變更色彩佈景主題,或將虛擬寵物新增至編輯器的簡單延伸模組應有盡有。

延伸模組詳細資料

在延伸模組詳細資料頁面上,您可以閱讀延伸模組的 README 並檢閱延伸模組的

  • 功能貢獻 (Feature Contributions) - 延伸模組對 VS Code 新增的功能,例如設定、命令與鍵盤快速鍵、語言文法、偵錯工具等。
  • 變更記錄 (Changelog) - 延伸模組儲存庫的 CHANGELOG (如果有的話)。
  • 相依性 (Dependencies) - 列出延伸模組是否相依於任何其他延伸模組。

extension contributions

如果延伸模組是一個延伸模組套件 (Extension Pack),延伸模組套件區段將會顯示安裝此套件時會一併安裝哪些延伸模組。延伸模組套件將多個獨立的延伸模組組合在一起,以便能夠一次輕鬆安裝。

Azure Tools extension pack

延伸模組檢視篩選器與命令

您可以使用篩選延伸模組操作功能表來篩選「延伸模組」檢視。

Extensions view filter context menu

有可用於顯示下列項目的篩選器

  • 可更新的過期延伸模組清單
  • 目前啟用/停用的延伸模組清單
  • 根據您的工作區建議的延伸模組清單
  • 全域熱門的延伸模組清單

您可以依安裝次數評分名稱發行日期更新日期以遞增或遞減順序對延伸模組清單進行排序。您可以在下方深入了解延伸模組搜尋篩選器。

您可以透過 ... 檢視與更多動作按鈕執行其他「延伸模組」檢視命令。

more button

透過此操作功能表,您可以控制延伸模組更新、啟用或停用所有延伸模組,以及使用 Extension Bisect 公用程式來隔離有問題的延伸模組行為。

搜尋延伸模組

您可以清除「延伸模組」檢視頂端的搜尋方塊,然後輸入您正在尋找的延伸模組、工具或程式語言名稱。

例如,輸入「python」將會帶出一份 Python 語言延伸模組清單

python extensions

如果您知道要尋找的延伸模組的確切識別碼,可以使用 @id: 字首,例如 @id:vue.volar。此外,若要篩選或排序結果,您可以使用詳細說明於下方的篩選器排序命令。

安裝預先發行版本的延伸模組

延伸模組發行者可能會提供延伸模組的預先發行版本。若要安裝預先發行版本,請選取安裝按鈕上的下拉式選單,然後選取安裝預先發行版本

Install pre-release version

管理延伸模組

VS Code 讓您可以輕鬆管理延伸模組。您可以透過「延伸模組」檢視、命令選擇區 (命令具有 Extensions: 字首) 或命令列參數來安裝、停用、更新和解除安裝延伸模組。

列出已安裝的延伸模組

根據預設,「延伸模組」檢視會顯示您目前已安裝的延伸模組,以及所有為您推薦的延伸模組。您可以使用命令選擇區 (⇧⌘P (Windows, Linux Ctrl+Shift+P)) 或更多動作 (...) 下拉式選單中的 Extensions: Focus on Installed View 命令 (> 檢視 > 已安裝),以清除搜尋方塊中的任何文字,並顯示所有已安裝延伸模組的清單 (包含已停用的延伸模組)。

解除安裝延伸模組

若要解除安裝延伸模組,請選取延伸模組項目右側的管理齒輪按鈕,然後從下拉式選單中選擇解除安裝。這將會解除安裝該延伸模組,並提示您重新啟動延伸模組主機 (Restart Extensions)。

uninstall an extension

停用延伸模組

如果您不想永久移除延伸模組,可以改為按一下延伸模組項目右側的齒輪按鈕來暫時停用該延伸模組。您可以全域停用延伸模組,或僅針對目前的工作區停用。停用延伸模組後,系統會提示您重新啟動延伸模組主機 (Restart Extensions)。

如果您想要快速停用所有已安裝的延伸模組,在命令選擇區更多動作 (...) 下拉式選單中提供有 Disable All Installed Extensions 命令。

延伸模組在所有 VS Code 工作階段中都會保持停用狀態,直到您重新啟用它們為止。

啟用延伸模組

同樣地,如果您已停用某個延伸模組 (它會位於清單的已停用區段中,並標記為 Disabled),您可以透過下拉式選單中的啟用啟用 (工作區) 命令來重新啟用它。

enable extension

更多動作 (...) 下拉式選單中也有 Enable All Extensions 命令。

延伸模組自動更新

VS Code 會檢查延伸模組更新並自動安裝它們。更新後,系統會提示您重新啟動延伸模組主機 (Restart Extensions)。

如果您寧願手動更新延伸模組,可以使用 Disable Auto Update for Extensions 命令或「延伸模組」檢視中的對應動作來停用自動更新。您也可以設定 extensions.autoUpdate Open in VS Code Open in VS Code Insiders 此設定可由您的組織管理。請聯絡您的管理員以進行變更。 設定。請使用 Enable Auto Update for Extensions 命令來重新啟用自動更新。

啟用自動更新時,VS Code 只會更新已啟用的延伸模組。已停用的延伸模組不會自動更新,並會在您下次啟用它們時進行更新。

Screenshot of the Extensions context menu with the Disable Auto Update for Extensions action.

您也可以透過在延伸模組上按一下滑鼠右鍵並切換自動更新項目,來為個別延伸模組設定自動更新。

根據預設,VS Code 在發行更新後會等待一小段時間才自動安裝更新。使用 extensions.autoUpdateDelay Open in VS Code Open in VS Code Insiders 此設定可由您的組織管理。請聯絡您的管理員以進行變更。 設定來以小時為單位設定延遲時間。預設值為 2 小時。將值設為 0 即可在發行更新時立即安裝。此延遲僅在自動更新為 on 時適用。若要立即更新延伸模組,請選取該延伸模組的更新按鈕,這將會略過延遲。

如果您甚至不希望 VS Code 檢查更新,您可以將 extensions.autoCheckUpdates Open in VS Code Open in VS Code Insiders 設定設為 false。

注意

系統管理員可以使用企業原則集中管理 extensions.autoUpdate Open in VS Code Open in VS Code Insiders 此設定可由您的組織管理。請聯絡您的管理員以進行變更。 extensions.autoUpdateDelay Open in VS Code Open in VS Code Insiders 此設定可由您的組織管理。請聯絡您的管理員以進行變更。 設定。

手動更新延伸模組

如果您已停用延伸模組自動更新,可以使用使用 @updates 篩選器的 Show Outdated Extensions 命令來快速尋找延伸模組更新。這將會顯示您目前已安裝延伸模組的任何可用更新。

選取過期延伸模組的更新按鈕。系統將會安裝更新,並提示您重新啟動延伸模組主機 (Restart Extensions)。您也可以使用 Update All Extensions 命令一次更新所有過期的延伸模組。

如果您也停用了自動檢查更新功能,可以使用 Check for Extension Updates 命令來檢查哪些延伸模組可以更新。

您可以使用設定 @recommended 篩選器Show Recommended Extensions 來檢視建議的延伸模組清單。延伸模組建議可以是

  • 工作區建議 - 由您目前工作區的其他使用者所建議。
  • 其他建議 - 根據最近開啟的檔案所進行的建議。

請參閱下方章節以了解如何為專案中的其他使用者提供建議。

忽略建議

若要關閉建議,請選取延伸模組項目以開啟「詳細資料」頁面,然後選取管理齒輪按鈕以顯示操作功能表。選取忽略建議功能表項目。被忽略的建議將不再向您推薦。

Ignore extension recommendation

設定延伸模組

VS Code 延伸模組可能具有非常不同的設定與需求。有些延伸模組會對 VS Code 提供設定,這些設定可以在「設定」編輯器中進行修改。其他延伸模組可能有其自己的設定檔。延伸模組也可能需要安裝和設定其他元件,例如編譯器、偵錯工具和命令列工具。請參閱延伸模組的 README (可在「延伸模組」檢視詳細資料頁面中看到) 或前往 VS Code Marketplace 上的延伸模組頁面 (按一下詳細資料頁面中的延伸模組名稱)。許多延伸模組都是開放原始碼的,並在其 Marketplace 頁面上提供通往其儲存庫的連結。

命令列延伸模組管理

為了更輕鬆地自動化與設定 VS Code,您可以從命令列列出、安裝和解除安裝延伸模組。識別延伸模組時,請提供 publisher.extension 格式的全名,例如 ms-python.python

範例

code --extensions-dir <dir>
    Set the root path for extensions.
code --list-extensions
    List the installed extensions.
code --show-versions
    Show versions of installed extensions, when using --list-extension.
code --install-extension (<extension-id> | <extension-vsix-path>)
    Installs an extension.
code --uninstall-extension (<extension-id>)
    Uninstalls an extension.
code --enable-proposed-api (<extension-id>)
    Enables proposed API features for extensions. Can receive one or more extension IDs to enable individually.

您可以在「Marketplace 資訊」下方的延伸模組詳細資料頁面上看到延伸模組 ID。

extension identifier

延伸模組檢視篩選器

「延伸模組」檢視搜尋方塊支援篩選器,可協助您尋找與管理延伸模組。如果您使用過 Show Installed ExtensionsShow Recommended Extensions 命令,您可能已經看過諸如 @installed@recommended 等篩選器。此外,還有可讓您依熱門程度或評分排序,以及依類別 (例如「Linters」) 和標籤 (例如「node」) 搜尋的可用篩選器。您只要在延伸模組搜尋方塊中輸入 @ 並瀏覽建議項目,就能看到所有篩選器與排序命令的完整清單

intellisense on extension search filters

以下是部分「延伸模組」檢視篩選器

  • @builtin - 顯示 VS Code 內建的延伸模組。依類型分組 (程式語言、佈景主題等)。
  • @deprecated - 顯示已被取代的延伸模組。
  • @disabled - 顯示已停用的已安裝延伸模組。
  • @enabled - 顯示已啟用的已安裝延伸模組。延伸模組可以個別啟用/停用。
  • @featured - 顯示精選延伸模組。
  • @installed - 顯示已安裝的延伸模組。
  • @popular - 顯示熱門延伸模組。
  • @recentlyPublished - 顯示最近在 Marketplace 中發行的延伸模組。
  • @recommended - 顯示建議的延伸模組。分為工作區專屬或一般用途群組。
  • @updates - 顯示過期的已安裝延伸模組。Marketplace 上有更新的版本可供使用。
  • @workspaceUnsupported - 顯示此工作區不支援的延伸模組。
  • @category - 顯示屬於指定類別的延伸模組。以下是幾個支援的類別。如需完整清單,請輸入 @category 並依照建議清單中的選項操作
    • @category:themes
    • @category:formatters
    • @category:linters
    • @category:snippets

這些篩選器也可以組合使用。例如:使用 @installed @category:themes 來檢視所有已安裝的佈景主題。

如果未提供任何篩選器,「延伸模組」檢視會顯示目前已安裝與建議的延伸模組。

排序

您可以使用 @sort 篩選器對延伸模組進行排序,該篩選器可接受下列值

  • installs - 依 Marketplace 安裝次數排序,採遞減順序。
  • name - 依延伸模組名稱以字母順序排序。
  • publishedDate - 依延伸模組發行日期排序。
  • rating - 依 Marketplace 評分 (1-5 星) 排序,採遞減順序。
  • updateDate - 依延伸模組上次更新日期排序。

sort by install count

類別與標籤

延伸模組可以設定類別標籤來描述其功能。

extension categories and tags

您可以使用 category:tag: 來依類別與標籤進行篩選。

支援的類別為:[Azure, Data Science, Debuggers, Education, Extension Packs, Formatters, Keymaps, Language Packs, Linters, Machine Learning, Notebooks, Others, Programming Languages, SCM Providers, Snippets, Testing, Themes, Visualization]。您可以透過延伸模組搜尋方塊中的 IntelliSense 存取它們

categories debuggers

請注意,如果類別名稱包含多個單字,您必須將其括在引號中 (例如 category:"SCM Providers")。

標籤可以包含任何字串且不提供 IntelliSense,因此請查閱 Marketplace 以尋找有用的標籤。

從 VSIX 安裝

您可以手動安裝封裝在 .vsix 檔案中的 VS Code 延伸模組。使用「延伸模組」檢視命令下拉式選單中的從 VSIX 安裝命令,或命令選擇區中的 Extensions: Install from VSIX 命令,指向該 .vsix 檔案。

您也可以使用提供 .vsix 檔案路徑的 VS Code --install-extension 命令列參數來進行安裝。

code --install-extension myextension.vsix

您可以在命令列中多次提供 --install-extension,以便一次安裝多個延伸模組。

注意

當您透過 VSIX 安裝延伸模組時,該延伸模組的自動更新預設為停用。

如果您想深入了解如何封裝與發行延伸模組,請參閱延伸模組 API 中的發行延伸模組一文。

一套好的延伸模組可以讓處理特定工作區或程式語言的效率更高,而且您通常會想與團隊或同事共用此清單。您可以使用 Extensions: Configure Recommended Extensions (Workspace Folder) 命令為工作區建立建議的延伸模組清單。

在單一資料夾工作區中,該命令會在工作區的 .vscode 資料夾中建立一個 extensions.json 檔案,您可以在其中新增延伸模組識別碼清單 ({publisherName}.{extensionName})。

多根目錄工作區中,該命令會開啟您的 .code-workspace 檔案,您可以在其中於 extensions.recommendations 下列出延伸模組。您仍然可以使用 Extensions: Configure Recommended Extensions (Workspace Folder) 命令將延伸模組建議新增至多根目錄工作區中的個別資料夾。

extensions.json 的範例可能是

{
  "recommendations": ["dbaeumer.vscode-eslint", "esbenp.prettier-vscode"]
}

它建議了一個 linter 延伸模組和一個程式碼格式化工具延伸模組。

延伸模組是使用其發行者識別碼與延伸模組識別碼 publisher.extension 來識別。您可以在延伸模組的詳細資料頁面上看到該名稱。VS Code 會在這些檔案內為已安裝的延伸模組提供自動完成功能。

Extension identifier.

當第一次開啟工作區時,VS Code 會提示使用者安裝建議的延伸模組。使用者也可以使用 Extensions: Show Recommended Extensions 命令來檢閱清單。

Show Recommendations

後續步驟

以下是幾個您可能會感興趣的主題...

常見問題

延伸模組安裝在哪裡?

延伸模組會安裝在每個使用者的延伸模組資料夾中。根據您的平台,其位置位於下列資料夾中

  • Windows %USERPROFILE%\.vscode\extensions
  • macOS ~/.vscode/extensions
  • Linux ~/.vscode/extensions

您可以透過使用 --extensions-dir <dir> 命令列選項啟動 VS Code 來變更位置。

或者,您可以將 VSCODE_EXTENSIONS 環境變數設定為您想要安裝延伸模組的位置。這在您想要集中管理使用者機器上安裝延伸模組位置的企業環境中非常有用。

每當我嘗試安裝任何延伸模組時,都會收到連線逾時 (ETIMEDOUT) 錯誤

如果您的機器是透過 Proxy 伺服器存取網際網路,您可能會看到此錯誤。如需詳細資料,請參閱安裝主題中的Proxy 伺服器支援章節。

我可以直接從 Marketplace 下載延伸模組嗎?

有些使用者偏好從 Marketplace 下載一次延伸模組,然後從本機共用安裝到多個 VS Code 執行個體。當有連線考量,或者您的開發團隊想要使用固定的一組延伸模組時,這會很有用。

若要下載延伸模組,請在「延伸模組」檢視中搜尋它,在結果中的延伸模組上按一下滑鼠右鍵,然後選取下載 VSIX下載特定版本 VSIX

我可以停止 VS Code 提供延伸模組建議嗎?

可以,如果您希望 VS Code 不要在「延伸模組」檢視中或透過通知顯示延伸模組建議,您可以修改下列設定

  • extensions.showRecommendationsOnlyOnDemand Open in VS Code Open in VS Code Insiders - 設為 true 即可移除建議區段。
  • extensions.ignoreRecommendations Open in VS Code Open in VS Code Insiders - 設為 true 即可將延伸模組建議通知設為靜音。

如果您想要查看建議,Show Recommended Extensions 命令隨時都可以使用。

我可以信任 Marketplace 裡的延伸模組嗎?

Visual Studio Marketplace 採用了多種措施來保護您免受惡意延伸模組侵害,您也可以在安裝延伸模組之前執行各種步驟來判斷其是否可靠。

從 VS Code 1.97 版本開始,當您首次安裝來自第三方發行者的延伸模組時,VS Code 會顯示一個對話方塊,提示您確認是否信任該延伸模組發行者。

取得更多關於延伸模組執行階段安全性的資訊。

我可以為我的組織在內部代管延伸模組嗎?

可以,請參閱延伸模組的私有 Marketplace

VS Code 無法驗證延伸模組簽章

Visual Studio Marketplace 會在發行所有延伸模組時進行簽署。當您安裝延伸模組時,VS Code 會驗證此簽章,以檢查延伸模組套件的完整性與來源。

重要

當您安裝延伸模組時,您可能會看到下列錯誤訊息:Cannot install extension because Visual Studio Code cannot verify the extension signature。此錯誤可能由多種原因引起,如果您遇到此錯誤,請在決定仍要安裝之前務必謹慎。使用 extensions.verifySignature Open in VS Code Open in VS Code Insiders 設定來停用延伸模組簽章驗證。

套件完整性問題

針對套件完整性問題,建議您聯絡 Visual Studio Marketplace 團隊以回報該問題。請務必包含延伸模組 ID。下列清單提供與套件完整性問題相關的錯誤代碼

PackageIntegrityCheckFailed
SignatureIsInvalid
SignatureManifestIsInvalid
SignatureIntegrityCheckFailed
EntryIsMissing
EntryIsTampered
Untrusted
CertificateRevoked
SignatureIsNotValid
SignatureArchiveHasTooManyEntries
NotSigned

其他問題

針對其他問題 (例如不支援的環境或未知原因),建議您向 VS Code 回報問題,提供所有必要的資訊並包含共用記錄:⇧⌘P (Windows, Linux Ctrl+Shift+P) > Open View... > Shared

連線至遠端視窗時,我的延伸模組未進行同步

設定同步可讓您在多部機器之間共用 Visual Studio Code 設定 (例如設定、鍵盤快速鍵和已安裝的延伸模組),讓您隨時都能以慣用的設定進行工作。

VS Code 不會將您的延伸模組同步到或從遠端視窗 (例如當您連線至 SSH、開發容器 (devcontainer) 或 WSL 時) 進行同步。

我可以在我的組織中允許或封鎖特定延伸模組嗎?

您可以透過設定 extensions.allowed 應用程式設定,來控制可以在您的組織中安裝哪些延伸模組。如果未設定此設定,則允許所有延伸模組。如果已設定此設定,則未列出的所有延伸模組都將被封鎖而無法安裝。

取得更多關於設定允許的延伸模組的詳細資料。

English 한국어 中文(简体) 中文(繁體)
© . This website operates independently and is not affiliated with or endorsed by Microsoft. All brand names, logos, and trademarks are the property of their respective owners.