2009-04-06 7 views
21

私はASP.NET MVCを最近使用しています。これは、サーバーブロックを束ねることを意味します。Visual Studioでサーバブロック<% %>をうまくフォーマットするにはどうすればよいですか?

<% 
    } 
    %> 
見苦しいです

、一般的に、私が今まで見た中で最も恐ろしいこと:私はこれを取得、

<% } %> 

をしてエンターキーを押します:Visual Studioは、私が入力したときに、この奇妙なことを行います。私はCtrl + K + Dの動作を非常に大きくカスタマイズしました。私がこれを行うとき、私はこの1つの場合を除いてすべてのものを見たいと思っています。誰でもこれをカスタマイズする方法に関する提案はありますか?

+0

私が知りたいOMG!質問してくれてありがとう! – Jake

+0

良い質問ですが、MVCを定期的に使い始めて以来、これは私を悩ませています。 – Brandon

+0

あなたはこれをMS Connectのフィードバックサイトに提出し、狂気のように投票して修正するかもしれません。 – AaronLS

答えて

3

動作を見てください。私はあなたがHTMLエディタのためにそれをオーバーライドすることができるか分からない。これは、C#エディタの環境設定で定義されている正確な動作を示しています。

私はC#エディタの環境設定で閉じる中括弧の動作を変更することができますが、あなたの.csファイルには醜いことが起こると思います。

編集:

私はそれを行うための他の方法を見つけようとするのに疲れました。だから私はこのマクロを書きました。 VS 2k8でテスト済み。 2k5ではありません。あなたはそれが何かを見ることができます。また、VBについては申し訳ありませんが、マクロエディタのデフォルトです。

私はあなたがCtrlキー+ Kでそれをフォーマットだと思う
Sub FixFormatCurrentFile() 

    Dim selection As TextSelection = DTE.ActiveDocument.Selection 
    Dim fixed As String = "<% } %>" 
    Dim regex As String = "\<\%:Wh*\}:Wh*\%\>" 

    While selection.FindPattern(regex, vsFindOptions.vsFindOptionsRegularExpression) 
     selection.ReplacePattern(regex, fixed, vsFindOptions.vsFindOptionsRegularExpression) 
    End While 
End Sub 
+0

私はVisual studioでマクロを使用することに慣れていません...これをCtrl + K + Dに付けることはできますか? –

+0

ctrl-k-dではなく、それは特別なキーストロークになると私は信じています。しかし、最初にマクロ内の 'autoformat'を呼び出すことができます。 –

0

は、Ctrl + D

関連する問題