28

Google社員への注意、要求された機能がReSharper 2017.3.1の現在のバージョンでサポートされるようになったため、この質問はやや時代遅れです。

等しいオペランドの右側に揃えるようにコードをフォーマットするのが好きです。
ここみたいに:

bool    canRead     = false;
bool    canReadClass    = true;
string  className   = boType.Name;

最近ReSharperに切り替えたところ、非常に便利でしたが、説明されている方法でコードをフォーマットできるオプションが見つかりませんでした。

そのようなオプション/プラグインがあるかどうか知っていますか?
たぶんあなたはそれを可能にするReSharpソリューション以外を知っていますか?

編集:
コードのどの部分を整列させるかを決定する方法は?
私の慣習では、すべての変数を同じブロックに配置します。
「ブロック」とは、空の行で分割されていないコードの一部を意味します。

例えば

// First block
int      count     = 10;
string   name      = "abc";
bool     calculate = true;
.....
.....
// Second block
MyOwnType    myType   = new MyOwntype();
int          count    = 10;

編集-2
私はこれのためにR#チケットを開きました。興味のある方は投票してください

4

6 に答える 6

11

Visual Studio Productivity Power Toolsに割り当ての整列機能があることは注目に値すると思います。Visual Studio 2013 Productivity Power Toolsへのリンクは次のとおりです。

于 2010-07-21T11:52:24.863 に答える
11

ReSharper でこれをそのまま行う方法は (現在) ありません。幸いなことに、ReSharper には非常に豊富な拡張 API があります (ドキュメントは不十分ですが)。私は Reflector で物事を理解しようと多くの時間を費やしてきました。

私が勤務している会社では、クラス メンバに対して同様のアライメント ガイドラインを使用しています (極端な例では、メソッド パラメータもアライメントしています)。私は ReSharper のプラグインを作成して、まさにそれを支援しました。これは「コード クリーンアップ」モジュールで、コード クリーンアップ ( Ctrl- ECtrl- F) 中に実行され、コードを調整します。sealed可能であれば、クラスも作成します。

いくつかの例:

メソッドのパラメーター:

public void DoSomething(string      name,
                        int         age,
                        IEnumerable coll)

(これが適切に機能するためには、[オプション] -> [書式設定スタイル] -> [改行と折り返し]で、常に [折り返し] 形式パラメーターを[チョップ]に変更する必要があります)

定数:

private const int    RESOURCEDISPLAYTYPE_DOMAIN = 0x00000001;
private const int    CONNECT_COMMANDLINE        = 0x00000800;
private const int    CONNECT_INTERACTIVE        = 0x00000008;
private const string RESOURCE_NAME              = "Unknown";


ソース コードは、私の SkyDrive からダウンロードできます。
編集その SkyDrive へのアクセスが失われ、ファイルも失われたようです。これはgithubの前でした:(

コンパイル/デバッグするには、いくつかのものが必要になることに注意してください。

  1. 出力 DLL の正しいパスでCommand Line Arguments inDebugタブを更新します。Project Properties

    /ReSharper.Plugin "X:\<projects>\MyCompany.CodeFormatter\MyCompany.CodeFormatter\bin\Debug\MyCompany.CodeFormatter.dll"

    これにより、プラグインを 経由でデバッグできます F5。プラグインは、開く新しい Visual Studio インスタンスの ReSharper のプラグインに自動的にインストールされます。

  2. プラグインは ReSharper 4.5 用で、このバージョンの DLL を参照します。ReSharper を 以外C:\Program Files\JetBrains\ReSharperの場所にインストールした場合は、参照を修正する必要があります。
  3. これはメソッド内の変数を整列しませんが、追加するのは難しくありません:)

これをインストールしたら、実行Code Cleanupして配置を修正します (残念ながら、ブレース/セミコロンのフォーマット中にこれを行う方法について、JetBrains から返信がありませんでした)。

アセンブリは、罪のない人を保護するために名前が変更されました:)

幸運を!

于 2009-08-17T15:19:20.263 に答える
9

これを試すことができます:コードの配置

サポートしています

  • 整列... (ダイアログ)
  • 位置で整列... (ダイアログ)
  • 等間隔で整列
  • m_ で整列
  • "で整列
  • で整列します。
  • スペースで整列
于 2013-12-06T15:27:01.870 に答える
1

私の知る限り、残念ながらこれは Resharper を使用して行うことはできません。

于 2009-08-17T12:54:43.340 に答える