12
15

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

[C#] C#開発環境を整える。VSCode拡張機能や設定等

Last updated at Posted at 2019-04-21

はじめに

使っている拡張機能とその設定です。
すでに同記事多数ですが、あえてまとめてみます。
お目汚し失礼。

使っているVSCode拡張機能

C#

Microsoft製拡張機能です。
*.csファイルを開くと、「入れましょう」とおすすめされます。
コードハイライト、自動補完、定義へのジャンプ、参照の検索等々の機能があります。
必須です。

C# XML Documentation Comments

///と入力すると、コメントの雛形を出力してくれます。
CodeでないほうのVisual Studioに備わっている機能です。

Code Spell Checker

スペルチェッカーです。英語スペルの間違いを指摘してくれます。
こういうのずっと欲しかった。

C# FixFormat

2019-6-2追記:インスタンス化時に{}が入れ子になっているとインデントが崩れるので、使うのをやめました。

ソースコードをまとめて整形できます。
対象は、括弧、インデント、スペース、改行、usingです。
C#拡張機能では対応していない [] 前後のスペースや、改行した行のインデントに対応しています。
C#拡張機能整形機能とぶつかる部分があるので、以下の設定をしています。

# 開き括弧{を独立行に置きます。
csharpfixformat.style.braces.onSameLine: false
# 開き括弧(前にスペーを出力しません。
csharpfixformat.style.spaces.beforeParenthesis : false

.Net Core Test Explorer

Visual StudioのTestウィンドウと同様のものです。
ソリューション/プロジェクトに含まれているテストを一覧できます。
コード中に[Run Test]リンクが表示されるので、あまり使ってないです。

VSCode 拡張機能以外のもの

StyleCop.Analyzers

C#コンパイラのアナライザに、コーディングスタイルチェックを追加します。
プロジェクトに追加すると、ビルド時に警告が出力されるようになりなす。

設定はxmlファイルとjsonファイルで行います。それぞれできる設定が分かれています。
jsonファイルの内容はこちらで説明されています。
https://github.com/DotNetAnalyzers/StyleCopAnalyzers/blob/master/documentation/Configuration.md

以下はxmlファイルの例です。RuleタグにあるId属性は、StyleCop Analyzerが出力するルールのIDです。ここでは2つのルールを無視するようにしています。

code-analyzer.ruleset
<?xml version="1.0" encoding="utf-8"?>
<RuleSet Name="My Analyzer ruleset" ToolsVersion="15.0">
    <IncludeAll Action="Warning" />
    <Rules AnalyzerId="StyleCop.Analyzers" RuleNamespace="StyleCop.Analyzers">
        <!-- 一行コメント先頭に要スペース -->
        <Rule Id="SA1005" Action="None" />
        <!-- 呼び出し時要this -->
        <Rule Id="SA1101" Action="None" />
    </Rules>
</RuleSet>

jsonファイルの例です。

stylecop.json
{
  "$schema": "https://raw.githubusercontent.com/DotNetAnalyzers/StyleCopAnalyzers/master/StyleCop.Analyzers/StyleCop.Analyzers/Settings/stylecop.schema.json",
  "settings": {}
}

ファイルを作成したら、csprojファイルを編集して参照するようにします。

project.csproj
  <PropertyGroup>
    <CodeAnalysisRuleSet>code-analyzer.ruleset</CodeAnalysisRuleSet>
  </PropertyGroup>

  <ItemGroup>
    <AdditionalFiles Include="stylecop.json" Link="stylecop.json" />
  </ItemGroup>
12
15
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
12
15

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?