2015-10-20 77 views
7

在Resharper 9.2和Visual Studio 14(2015)中,我想在清除代碼(Ctrl + E,Ctrl + C)的前括號之前刪除空行。我無法找到此設置。這裏是一些示例代碼。Resharper:刪除括號前的空行

我有什麼:

​​

我想要什麼:

namespace TestApp.Test 
{ 
    public class Program 
    { 
     private string _foo; 

     private string _bar; 

     public string Qux { get; set; } 

     private Program() 
     { 
     } 
    } 
} 

選項 '後刪除空行 「{」 和之前的 「}」 聲明' 後「刪除空行「代碼」中的「{」和「}」不適用於此問題。

當我設置選項'保留最大空行數在'聲明''0'空白行被刪除,但也是所有空白行之間的字段和屬性。因此,我想保持在'1'。

我不想要什麼:

namespace TestApp.Test 
{ 
    public class Program 
    { 
     private string _foo; 
     private string _bar; 
     public string Qux { get; set; } 
     private Program() 
     { 
     } 
    } 
} 

回答

0

此問題會影響我爲好,我做什麼,要解決它是做一個簡單的正則表達式查找和替換第一,然後做我的ReSharper的代碼清理。

查找

(\r?\n)(\r?\n)*(?([^\r\n])\s)*([{]) 

更換

$2$3 

這是不是一個真正的答案,我就已經把它在一個評論,但因此不會允許我尚未置評。所以我完全期待這個被標記和刪除。希望你首先看到它,因爲當你找到真正的解決方案時,我會非常喜歡你的反饋!

+0

我們做保存自動清理,我不能讓我的同事們要做到這一點,但也許我可以做到這一點,不時。我仍然希望ReSharper選項可用於此。 :-) – hvk

1
  1. 轉到Resharper->選項 - >代碼Editing-> C# - >格式化風格 - >空白行
  2. 設置 '請聲明最大空行' 爲 '0'
  3. 集「周圍的單行場」到‘1’
  4. 享受