Linux 上的 Visual Studio Code
安裝
-
為您的 Linux 發行版下載並安裝 Visual Studio Code
注意VS Code 每月釋出版本,並在有新版本可用時支援自動更新。
-
安裝 Git、Node.js、TypeScript、語言執行時等。
-
從 Visual Studio Marketplace 安裝 VS Code 擴充套件
使用主題、格式化程式、語言擴充套件和偵錯程式來自定義 VS Code,以用於您喜歡的語言,等等。
-
提示
如果你還沒有 Copilot 訂閱,可以透過註冊 Copilot 免費計劃 免費使用 Copilot,並獲得每月限量的補全和聊天互動次數。
-
探索 VS Code 的使用者介面和主要功能。
在 Linux 上安裝 VS Code
基於 Debian 和 Ubuntu 的發行版
-
為基於 Debian/Ubuntu 的發行版安裝 Visual Studio Code 的最簡單方法是下載並安裝 .deb 包(64 位),可以透過圖形軟體中心(如果可用)安裝,或者透過命令列使用
sudo apt install ./<file>.deb # If you're on an older Linux distribution, you will need to run this instead: # sudo dpkg -i <file>.deb # sudo apt-get install -f # Install dependencies注意其他二進位制檔案也可在 VS Code 下載頁面上找到。
安裝 .deb 包時,它會提示安裝 apt 儲存庫和簽名金鑰,以便使用系統的包管理器自動更新。
-
要自動安裝 apt 儲存庫和簽名金鑰,例如在非互動式終端上,請首先執行以下命令
echo "code code/add-microsoft-repo boolean true" | sudo debconf-set-selections -
手動安裝 apt 儲存庫
-
執行以下指令碼來安裝簽名金鑰
sudo apt-get install wget gpg && wget -qO- https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > microsoft.gpg && sudo install -D -o root -g root -m 644 microsoft.gpg /usr/share/keyrings/microsoft.gpg && rm -f microsoft.gpg -
建立一個
/etc/apt/sources.list.d/vscode.sources檔案,其中包含以下內容,以新增對上游包儲存庫的引用Types: deb URIs: https://packages.microsoft.com/repos/code Suites: stable Components: main Architectures: amd64,arm64,armhf Signed-By: /usr/share/keyrings/microsoft.gpg -
最後,更新包快取並安裝包
sudo apt install apt-transport-https && sudo apt update && sudo apt install code # or code-insiders
-
由於我們的手動簽名過程和使用的釋出系統,Debian 儲存庫可能會滯後多達三個小時,無法立即獲取 VS Code 的最新版本。
基於 RHEL、Fedora 和 CentOS 的發行版
我們目前為基於 RHEL、Fedora 或 CentOS 的發行版提供 64 位穩定版 VS Code,儲存在 yum 儲存庫中。
-
透過執行以下指令碼安裝金鑰和 yum 儲存庫
sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc && echo -e "[code]\nname=Visual Studio Code\nbaseurl=https://packages.microsoft.com/yumrepos/vscode\nenabled=1\nautorefresh=1\ntype=rpm-md\ngpgcheck=1\ngpgkey=https://packages.microsoft.com/keys/microsoft.asc" | sudo tee /etc/yum.repos.d/vscode.repo > /dev/null -
然後使用
dnf(Fedora 22 及更高版本)更新包快取並安裝包dnf check-update && sudo dnf install code # or code-insiders或者在舊版本中使用
yumyum check-update && sudo yum install code # or code-insiders
由於我們的手動簽名過程和使用的釋出系統,yum 儲存庫可能會滯後多達三個小時,無法立即獲取 VS Code 的最新版本。
Snap
VS Code 在 Snap Store 中作為 Snap 包正式分發
您可以透過執行以下命令來安裝它
sudo snap install --classic code # or code-insiders
安裝後,Snap 守護程序會在後臺自動更新 VS Code。每當有新更新可用時,您都會收到產品內更新通知。
如果您的 Linux 發行版中沒有 snap,請查閱 安裝 snapd 指南,它將幫助您完成設定。
從 官方 Snap 文件瞭解更多關於 *snaps* 的資訊。
基於 openSUSE 和 SLE 的發行版
之前提到的 yum 儲存庫 也適用於 openSUSE 和 SLE 系統。
-
透過執行以下指令碼安裝金鑰和 yum 儲存庫
sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc && echo -e "[code]\nname=Visual Studio Code\nbaseurl=https://packages.microsoft.com/yumrepos/vscode\nenabled=1\nautorefresh=1\ntype=rpm-md\ngpgcheck=1\ngpgkey=https://packages.microsoft.com/keys/microsoft.asc" | sudo tee /etc/zypp/repos.d/vscode.repo > /dev/null -
然後使用以下命令更新包快取並安裝包
sudo zypper install code
Arch Linux 的 AUR 包
有一個社群維護的 VS Code 的 Arch 使用者儲存庫包。
有關從 AUR 安裝的更多資訊,請參閱以下 wiki 條目:安裝 AUR 包。
Nix 包(適用於 NixOS 或任何使用 Nix 包管理器的 Linux 發行版)
在 nixpkgs 儲存庫中有一個社群維護的 VS Code Nix 包。
使用 Nix 安裝它
-
將
allowUnfree選項設定為 true,在您的config.nix檔案中 -
執行以下命令
nix-env -i vscode
手動安裝 .rpm 包
您可以手動下載並安裝 VS Code .rpm 包(64 位),但是,除非安裝了上面的儲存庫,否則自動更新將無法正常工作。
下載後,可以使用包管理器安裝 .rpm 包,例如使用 dnf
sudo dnf install <file>.rpm
其他二進位制檔案也可在 VS Code 下載頁面上找到。
更新
VS Code 每月釋出一次,您可以透過檢視 發行說明來了解何時有新版本可用。如果 VS Code 儲存庫已正確安裝,那麼您的系統包管理器應該能夠像處理系統上的其他包一樣處理自動更新。
對於 Snap 包,更新是自動的,並在後臺執行。
將 VS Code 配置為預設文字編輯器
xdg-open
您可以使用以下命令為 xdg-open 使用的文字檔案(text/plain)設定預設文字編輯器
xdg-mime default code.desktop text/plain
Debian 替代系統
Debian 發行版允許使用 Debian 替代系統設定預設的 **編輯器**,而無需關心 MIME 型別。您可以透過執行以下命令並選擇 code 來設定此項
sudo update-alternatives --set editor /usr/bin/code
如果 VS Code 沒有作為預設 editor 的替代選項顯示,則需要註冊它
sudo update-alternatives --install /usr/bin/editor editor $(which code) 10
使用自定義標題欄
自定義標題欄提供了許多優點,包括出色的主題支援和透過鍵盤導航和螢幕閱讀器改善的可訪問性。這些優點在 Linux 平臺上並非總是能很好地轉化。Linux 有各種各樣的桌面環境和視窗管理器,這可能導致 VS Code 的主題看起來與使用者所期望的有所不同。因此,自定義標題欄在 Linux 上預設未啟用。
對於需要可訪問性改進的使用者,我們建議在使用螢幕閱讀器執行可訪問性模式時啟用自定義標題欄。
您可以透過 **Window: Title Bar Style**(window.titleBarStyle)設定手動配置標題欄
custom:使用自定義標題欄。native:使用作業系統標題欄。
將 Windows 作為 Linux 開發機器
使用 VS Code 進行 Linux 開發的另一種選擇是使用帶有 Windows Subsystem for Linux (WSL) 的 Windows 機器。
適用於 Linux 的 Windows 子系統
使用 WSL,您可以在 Windows 上安裝和執行 Linux 發行版,以便在 Linux 上開發和測試原始碼,同時仍在 Windows 機器上本地工作。WSL 支援來自 Microsoft Store 的 Linux 發行版,如 Ubuntu、Debian、SUSE 和 Alpine。
結合 WSL 擴充套件,您可以在 WSL 上的 Linux 發行版上下文中獲得完整的 VS Code 編輯和除錯支援。
請參閱 在 WSL 中開發 文件以瞭解更多資訊,或嘗試 在 WSL 中工作 入門教程。
後續步驟
安裝 VS Code 後,以下主題將幫助你瞭解更多資訊
- VS Code 教程 - 快速動手體驗 VS Code 的主要功能。
- 提示和技巧 - 使用 VS Code 提高工作效率的技巧合集。
- AI 輔助編碼 - 瞭解如何在 VS Code 中使用 GitHub Copilot 來幫助您更快地編寫程式碼。
常見問題
Debian 和檔案移至回收站
如果您在 Debian 作業系統上從 VS Code Explorer 刪除檔案時遇到錯誤,可能是因為 VS Code 使用的回收站實現不存在。
執行以下命令來解決此問題
sudo apt-get install gvfs libglib2.0-bin
與其他儲存庫的 VS Code 包衝突
某些發行版,例如 Pop!_OS,提供自己的 code 包。為確保使用官方 VS Code 儲存庫,請建立一個名為 /etc/apt/preferences.d/code 的檔案,其中包含以下內容
Package: code
Pin: origin "packages.microsoft.com"
Pin-Priority: 9999
“Visual Studio Code 無法監視此大型工作區中的檔案更改”(錯誤 ENOSPC)
當您看到此通知時,表示 VS Code 檔案監視器正在耗盡實現檔案監視所需的檔案控制代碼。當開啟一個包含大量檔案的大型工作區時,這種情況最常發生。在調整平臺限制之前,請確保將可能的大型資料夾(如 Python .venv)新增到 files.watcherExclude 設定中(下文有更多詳細資訊)。其他正在執行的應用程式也可能消耗大量檔案控制代碼,導致 VS Code 沒有可用的。在這種情況下,關閉其他應用程式可能會有所幫助。
可以透過執行以下命令檢視當前限制
cat /proc/sys/fs/inotify/max_user_watches
透過編輯 /etc/sysctl.conf(Arch Linux 和 Ubuntu 24.10 及更高版本除外,請參閱下文)並在檔案末尾新增以下行,可以將限制增加到最大值
fs.inotify.max_user_watches=524288
然後可以透過執行 sudo sysctl -p 來載入新值。
雖然 524,288 是可以監視的最大檔案數,但如果您所處的環境記憶體非常有限,您可能希望降低此數字。每個檔案監視 佔用 1,080 位元組,因此假設所有 524,288 個監視都已使用,則上限約為 540 MiB。
Arch 發行版(包括 Manjaro)以及從 24.10 開始的 Ubuntu 發行版需要您更改不同的檔案;請按照這些步驟進行操作。
另一個選擇是透過 files.watcherExclude 設定,從 VS Code 檔案監視器中排除特定的工作區目錄。 files.watcherExclude 的預設設定排除了 node_modules 和 .git 下的一些資料夾,但您可以新增其他您不希望 VS Code 跟蹤的目錄。
"files.watcherExclude": {
"**/.git/objects/**": true,
"**/.git/subtree-cache/**": true,
"**/node_modules/*/**": true
}
我在 Ubuntu 中看不到中文字元
我們正在努力修復。在此期間,開啟應用程式選單,然後選擇 檔案 > 首選項 > 設定。在文字編輯器 > 字型部分,將“字體系列”設定為 Droid Sans Mono, Droid Sans Fallback。如果您更願意直接編輯 settings.json 檔案,請按如下所示設定 editor.fontFamily
"editor.fontFamily": "Droid Sans Mono, Droid Sans Fallback"
未安裝 Git 包
安裝過程中可能會出現此錯誤,通常是由於包管理器列表過時所致。嘗試更新它們並重新安裝
# For .deb
sudo apt-get update
# For .rpm (Fedora 21 and below)
sudo yum check-update
# For .rpm (Fedora 22 and above)
sudo dnf check-update
code bin 命令在 Ubuntu 上不會將視窗帶到最前面
在 Ubuntu 上執行 code . 且 VS Code 已在當前目錄中開啟時,VS Code 不會帶到最前面。這是作業系統的一項功能,可以使用 ccsm 停用。
# Install
sudo apt-get update
sudo apt-get install compizconfig-settings-manager
# Run
ccsm
在通用 > 通用選項 > 焦點和提升行為下,將“焦點預防級別”設定為“關閉”。請記住,這是一項作業系統級別的設定,將應用於所有應用程式,而不僅僅是 VS Code。
無法安裝 .deb 包,因為出現 "/etc/apt/sources.list.d/vscode.list: No such file or directory"
當 sources.list.d 不存在或您沒有建立檔案的許可權時,可能會發生這種情況。要解決此問題,請嘗試手動建立資料夾和一個空的 vscode.list 檔案
sudo mkdir /etc/apt/sources.list.d
sudo touch /etc/apt/sources.list.d/vscode.list
使用 X 轉發遠端視窗時無法移動或調整視窗大小
如果您使用 X 轉發來遠端使用 VS Code,您將需要使用本機標題欄來確保您可以正確操作視窗。您可以透過將 window.titleBarStyle 設定為 native 來切換使用它。
儲存庫更改了其 origin 值
如果您收到類似以下內容的錯誤
E: Repository '...' changed its 'Origin' value from '...' to '...'
N: This must be accepted explicitly before updates for this repository can be applied. See apt-secure(8) manpage for details.
請使用 apt 而不是 apt-get,屆時系統將提示您接受 origin 更改
sudo apt update
