程式代碼樣式喜好設定可讓您控制程式代碼的各個層面,例如縮排樣式、定位寬度、行尾字元、編碼,以及其他許多格式選項。 您可以透過兩種方式定義程式代碼樣式設定:
- 使用 EditorConfig 檔案進行程式代碼基底或個別專案的配置,或
- 針對您在 Visual Studio 中編輯的所有程式代碼,根據文字編輯器 .NET Options 頁面 或 C/C++ [選項] 頁面的設定。
您也可以設定 Visual Studio,以使用 程式碼清理 和 格式化文件 命令來套用程式碼樣式偏好。
您可以使用 EditorConfig 檔案定義每個專案的程式代碼樣式設定,或針對您在 Visual Studio 中編輯之文字編輯器 .NET 選項頁面 或 C/C++ [選項] 頁面上編輯的所有程式代碼。 針對 C# 程式代碼,您也可以使用程式 代碼清除 (Visual Studio 2019) 和 格式檔 (Visual Studio 2017) 命令來設定 Visual Studio 來套用這些程式代碼樣式喜好設定。
EditorConfig 檔案中的程式代碼樣式
您可以將 EditorConfig 檔案新增至專案,以指定程式代碼樣式設定。 EditorConfig 檔案與程式代碼基底相關聯,而不是 Visual Studio 個人化帳戶。 EditorConfig 檔案中的設定優先於 [選項] 對話框中所指定的程式代碼樣式。 當您想要針對存放庫或專案的所有參與者強制執行編碼樣式時,請使用 EditorConfig 檔案。 它們特別適合確保小組程序設計環境中的一致性。
若要新增 EditorConfig 檔案,請參閱 新增 EditorConfig 檔案的方式。
如需 .NET 程式代碼樣式設定的參考資訊,請參閱 程式代碼樣式設定。
[選項] 對話框中的 C/C++程式代碼樣式
您可以指定許多個別的程式代碼格式設定選項,例如縮排和大括弧位置。 若要這樣做,請移至 [工具>選項>] 文字編輯器>C/C++>[程式代碼樣式>格式] (或輸入 Ctrl + Q 並搜尋 [格式] 。 或者,您可以指定其中一個 ClangFormat 樣式(或您自己的自定義 ClangFormat 樣式)。
您可以指定許多個別的程式代碼格式設定選項,例如縮排和大括弧位置。 若要這樣做,請移至 工具>選項>文本編輯器>C/C++>Formatting (或輸入 Ctrl + Q 並搜尋 「格式化」)。 或者,您可以指定其中一個 ClangFormat 樣式(或您自己的自定義 ClangFormat 樣式)。
如需所有格式化選項的詳細資訊,請參閱 選項、文本編輯器、C/C++、格式化。
[選項] 對話框中的 .NET 程式代碼樣式
您可以從 [工具] 功能表開啟 [選項] 對話框,來設定所有 C# 和 Visual Basic 專案的程式代碼樣式喜好設定。 在 [選項] 對話框中,選取 [文本編輯器> [C# 或 Visual Basic] > 程式代碼樣式。
- 針對格式化樣式,請選取 [格式化] 下方的選項。
- 針對與 快速動作 和 IDE 程式代碼樣式規則相關聯的程式代碼樣式喜好設定,請選取 [ 一般 ] 或 [ 命名] 底下的選項。
您可以從 [工具] 功能表開啟 [選項] 對話框,來設定所有 C# 和 Visual Basic 專案的程式代碼樣式喜好設定。 在 [選項] 對話框中,選取 [文本編輯器> [C# 或 Basic] >[程式代碼樣式]>[一般]。
當您選擇選項時,清單中的每個項目都會顯示喜好設定的預覽:
在此視窗中設定的選項適用於您的 Visual Studio 個人化帳戶,且不會與特定專案或程式代碼基底相關聯。 此外,它們不會在建置階段強制執行,包括在持續整合 (CI) 組建中。 如果您想要將程式代碼樣式喜好設定與專案產生關聯,並在建置期間強制執行樣式,請在與專案相關聯的 EditorConfig檔案 中指定喜好設定。
偏好和嚴重性
針對 一般 和 命名 選項頁面上的每個程式代碼樣式設定,您可以使用每一行的下拉式清單來設定 喜好設定 和 嚴重性 值。 嚴重性可以設定為 僅重構、建議、警告,或 錯誤。
- 「一般」和「命名」選項頁面中的程式碼樣式喜好設定會決定與程式碼樣式相關的快速動作。
快速動作 燈泡
、錯誤燈泡
或螺絲起子
圖示會在使用非慣用樣式時出現,而且您可以在 [快速動作] 清單中選擇一個選項,以自動將程式碼重新編寫為慣用樣式。
- 如果您希望違規項僅顯示為快速動作,而且也被排除在程式碼清理之外,請將嚴重性設定為僅重構。
- 如果您想要違規出現在 [錯誤清單] 視窗以及 [快速動作],並包含在程式代碼清除中,請將 [嚴重性 ] 設定為 [建議]、 [警告] 或 [錯誤]。 當您將 [錯誤清單] 視窗中的輸出設定為 [ 建置 + IntelliSense] 時,違規會顯示為建議(訊息)、警告或錯誤。 它們會被排除在僅限於建置的輸出之外。
EditorConfig 檔案中的設定優先於這些頁面中設定的程式代碼樣式。
在建置過程中強制執行程式碼樣式
從 Visual Studio 2019 16.8 版開始,其中包含 .NET 5.0 RC2 SDK,您可以 在所有 .NET 專案建置 上強制執行 .NET 編碼慣例。 在建置階段,.NET 程式代碼樣式違規會顯示為警告或具有 “IDE” 前置詞的錯誤。 這可讓您嚴格強制執行程式碼基底中的一致程式代碼樣式。
套用程式碼樣式
當您在 [選項] 頁面中變更程式代碼樣式,或將EditorConfig檔案新增至Visual Studio中的專案時,只會根據新的設定來格式化新的程式代碼行。 除非您執行下列其中一個命令,否則不會變更現有程式碼的格式設定:
-
在 Visual Studio 編輯器中選取 程式代碼清理,或按 Ctrl+K, Ctrl+E。 此命令適用於空格符設定,例如縮排樣式,以及選取的程式代碼樣式設定,例如括號喜好設定。
格式化文件。
選取 [編輯]>[進階>格式化文件] 或在預設配置文件中按 Ctrl+K,Ctrl+D。 此命令僅適用於空格符設定,例如縮排樣式。
使用程式碼清理套用程式碼樣式
若要從 EditorConfig 檔案或程式代碼樣式選項頁面套用程式代碼樣式,請使用編輯器底部的 [程式代碼清除] 按鈕(鍵盤:Ctrl+、Ctrl+E)。 如果專案的EditorConfig檔案存在,這些是優先的設定。
提示
設定為 僅限重構 的 .NET 規則不會參與代碼清理,但可以通過 快速動作和重構 功能表單獨套用。
若要套用程式代碼樣式:
首先,在 [設定程式代碼清除] 對話框中,設定您要套用的程式代碼樣式(在兩個配置檔之一中)。 若要開啟此對話框,請按下程式代碼清除掃把圖示旁的展開器箭號,然後選擇 [設定程式代碼清除] 。 或者,使用 [ 分析>程序代碼清除 ] 功能表。
如需 .NET 程式代碼清除修正程式與 .NET 程式代碼樣式規則的對應,請參閱 .NET 程式代碼清除設定。
C/C++選項包括在修正工具名稱中的C++。
設定程式代碼清除之後,請使用下列其中一種方法來執行程式代碼清除:
單擊掃把圖示,或按 ctrl +,Ctrl+E。
若要跨整個專案或方案執行程式碼清除,請在 [ 方案總管] 中以滑鼠右鍵按兩下專案或方案名稱,選取 [ 分析和程式代碼清除],然後選取 [ 執行程式代碼清除]。
(選擇性)如果您想要在每次儲存檔案時套用程式碼樣式設定,請移至 [選項>文本編輯器>程式碼清理],然後選取 [儲存時執行程式碼清理設定檔]。
針對 C# 程式代碼檔案,Visual Studio 在編輯器底部有 程式代碼清除 按鈕(鍵盤:Ctrl+K,Ctrl+E)從 EditorConfig 檔案或 程式代碼樣式 選項頁面套用程式代碼樣式。 如果專案的EditorConfig檔案存在,這些是優先的設定。
提示
設定 無 嚴重性的規則不會參與程式代碼清除,但可以透過 [快速動作和重構] 功能表個別套用。
若要套用程式代碼樣式:
首先,在 [設定程式代碼清除] 對話框中,設定您要套用的程式代碼樣式(在兩個配置檔之一中)。 若要開啟此對話框,請按下程式代碼清除掃把圖示旁的展開器箭號,然後選擇 [設定程式代碼清除] 。
設定程式代碼清除之後,請使用下列其中一種方法來執行程式代碼清除:
按一下掃把圖示,或按 Ctrl+K,Ctrl+E 來執行程式碼清理。
若要跨整個專案或方案執行程式代碼清除,請以滑鼠右鍵按兩下 [方案總管] 中的專案或方案名稱,選取 [分析及程式代碼清除]],然後 選取 [執行程式代碼清除]。
如果您想要每次儲存檔案時套用程式代碼樣式設定,您可能會喜歡 儲存時的程式代碼清理 擴充功能。
.NET 程式代碼清除設定
大部分的程式代碼清除設定都會對應至EditorConfig中支援的一或多個 .NET 程式代碼樣式。 如需顯示設定效果的範例,請使用下表中的連結。
相關內容
- 快速動作
- EditorConfig 的 .NET 編碼慣例設定