2016-11-29 4 views
0

Может ReSharper преобразовать это:ReSharper: разворачивать длинная строка декларации

var str = "gjkldfhgiodfh hg jkfgh jkhjhklfhfhkl jkghj´kl fjgfhjklgfh fkhgfkl"; 

В это:

var str = @"gjkldfhgiodfh 
       hg jkfgh jkhjhkl 
       fhfhkl jkghj´kl fjgfhjklgfh fkhgfkl"; 

Я посмотрел варианты в Code Editing -> C# -> Formatting style -> Line Breaks and Wrapping на Wrap Long Lines (это непроверенный) и сохранить существующую линию Перерывы (он не отмечен), но эти настройки не помогут мне в этой ситуации.

У меня есть версия Ultimate (2016.2.2).

спасибо.

ответ

4

Нет, это невозможно.

И это в основном потому, что вы предлагаете не просто красивое форматирование, но и полную смену содержимого.

При добавлении '@' перед строкой все, что следует, включая символы новой строки, табуляции и пробелы, будет содержимым этой строки. Если вы используете эту строку, будет использоваться весь контент, включая новые строки, вкладки и пробелы.

Просто попробуйте с Console.WriteLine:

using System; 

public class Program 
{ 
    public static void Main() 
    { 
     var str = @"gjkldfhgiodfh 
        hg jkfgh jkhjhkl 
        fhfhkl jkghj´kl fjgfhjklgfh fkhgfkl"; 

     Console.WriteLine(str); 
    } 
} 

Выход будет:

> gjkldfhgiodfh 
>      hg jkfgh jkhjhkl 
>      fhfhkl jkghj´kl fjgfhjklgfh fkhgfkl 

И это, скорее всего, не то, что вы хотите.

+0

как преобразовать var str = "abcdefgh" в var str = "abcd" + "efgh" на две строки? –

+0

@BudaGavril Это может быть возможно, но я предполагаю, что вам придется написать собственное правило. – juharr

+0

@juharr кажется, что resharper уже делает это: https://www.jetbrains.com/help/resharper/2016.2/Splitting_Lines_with_String_Literals.html –