Форматирование текста в Visual Studio

 

Что-то в последнее время мне дают на доработку такие мусорные тексты, что хочется достать блевотный пакетик. Сразу загоняю их в VS и там привожу в божеский вид.

Если встроенный форматтер вас не устраивает (меня нет), можно отформатировать текст в бесплатной VS Community 2017.

Для этого надо, чтобы редактор воспринимал тексты .mq4, .mq5, .mqh как код С++.

Идем в Средства-Параметры-Текстовый редактор-Расширения файлов и добавляем наши расширения.

После чего Правка-Дополнительно-Форматировать документ, или хоткей Ctrl+E, Ctrl+D

Причем, в отличие от стилизатора редактора МТ4/5, можно выбирать стили форматирования и довольно тонко настраивать его.


 

Ковыряю очередной шедевр программирования и не могу понять, нафига автор везде, где можно и где не можно заключает все в фигурные скобки? Паранойя? Не, я понимаю, если бы это скрывало объявление локальных переменных, чтобы не было варнингов от конфликтов с глобальными. Но тут -то нет никаких объявлений!. Очередной mql5 - самородок во фрилансе (фриланс в широком смысле, не отсюда)?

void OnTick()
{
    {if (_Digits == 0) Poin = 1;
    else  if (_Digits == 1) Poin = 0.1;
    else  if (_Digits >= 2 && _Digits <= 3) Poin = 0.01;
    else  if (_Digits > 3 && _Digits <= 5)Poin = 0.0001; }

    //===================================================       
    CHEK_SL();   CheckVolume();


    {if (CheckMoney() == false) N = 1; else N = 0;  }


    { if (Mode == true)  _Lots = LotsOptimized(); }

Или вот такие шедевры рассыпаны по всему коду. Ну а че, какая разница, И или ИЛИ ))) И так сойдет ))

if (TimeCurrent() < tstart && TimeCurrent() > tend)
   time = "DONT TRADE";
 
Alexey Volchanskiy:

Ковыряю очередной шедевр программирования и не могу понять, нафига автор везде, где можно и где не можно заключает все в фигурные скобки? Паранойя? Не, я понимаю, если бы это скрывало объявление локальных переменных, чтобы не было варнингов от конфликтов с глобальными. Но тут -то нет никаких объявлений!. Очередной mql5 - самородок во фрилансе (фриланс в широком смысле, не отсюда)?

Или вот такие шедевры рассыпаны по всему коду. Ну а че, какая разница, И или ИЛИ ))) И так сойдет ))

И чем Вам мешает скобок
Это не паранойя, а  практика и перестраховка для будущее
Если код пользуется как исходник для создания другая программа все эти логики замкнутые в скобках будут работать сами по себе и это не повлиять на новые объявление, либо глобальны, либо другие переменные.
 
Пример бы стилизатора от VS, скрин для сравнения
 

Не, лишние скобки и правда мешают.

Лично мне всегда надо видеть, где начало и конец блока, я даже рядом с закрывающей скобкой всегда ставлю комментарий - код открывающей скобки, или просто пометку, что это за блок.

А последний случай - это, как я понимаю, из другой оперы - перепутан оператор - вместо "логического или" поставлено "логическое и".

 
Alexey Volchanskiy:


int  Digits();

if (_Digits >= 2 && _Digits <= 3)

Вместо можно было бы просто:

if (_Digits == 2 )

Кто-то любит делать лишние проверки.

 
Georgiy Merts:

А последний случай - это, как я понимаю, из другой оперы - перепутан оператор - вместо "логического или" поставлено "логическое и".

Действительно. А я с ходу и не заметил.