Нужны ли нам Code Snippets (кусочки кода) - страница 2

 

Code snippets в metaeditor давно уже есть.

Попробуйте OnTick, for и аналогичные команды. Когда активируется code snippets, то курсор меняется на стрелочку

 
Напечатал "for" - появилась моргающая стрелка. И что это? Никак команд не появляется.
 
Vladimir Karputov:
Напечатал "for" - появилась моргающая стрелка. И что это? Никак команд не появляется.
После того, как появилась стрелочка, нажмите клавишу Tab.
 
Anatoli Kazharski:
После того, как появилась стрелочка, нажмите клавишу Tab.

Появилась такая конструкция:

     for(int i=0;i<total;i++)
       {
        
       }


И как я могу вилять на это? Может мне нужна вставка вида

   for(int i=PositionsTotal()-1;i>=0;i--)
     {

     }
 
Еще свои бы туда добавлять.
 
Только эту хрень отключил Embarcadero RAD Studio 10.1 Berlin как ее еще впихнули в MetaEditor, надеюсь, что ее можно будет отключить так как она меня только путает.
Embarcadero RAD Studio 10.1 Berlin bug hotfix collection + Styles + FastReport + BDE 10.1 [2016, MULTILANG +RUS] :: RuTracker.org
  • rutracker.org
Автор : 2016 : 10.1 : Embarcadero Tech : http://embarcadero.com: Мультиязычный (русский присутствует) : Не требуется : - : Данная коллекция содержит следующие исправления и компоненты для среды Embarcadero RAD Studio 10.1 Berlin:29812 : firedac ini file utility 30491 : firemonkey premium styles pack for rad studio 10.1 berlin 2016.4.19 30492...
 
Renat Fatkhullin:

Code snippets в metaeditor давно уже есть.

Попробуйте OnTick, for и аналогичные команды. Когда активируется code snippets, то курсор меняется на стрелочку

Это, скажем так, зародыш Code Snippets :)

Нет:

  1. Добавления своих snippets
  2. Разбивки их по разделам, как в VS
  3. И главное - расшаривания/обмена snippets в рамках сообщества MQL5 средствами редактора.
 

И немного для тех, кто пользуется VS для редактирования MQL-кода. Например, я часто пользуюсь хотя бы для нормального форматирования, т.к. кодестайл MQ в стиле а-ля Кэрниган&Ритчи вызывает у меня головокружения. Кроме того, в VS есть удобная функция искать что-то во всех файлах проекта, а у меня в среднем проекте их от десятка и больше.

Итак, по теме CS для VS (прям в рифму вышло :)

Изначально можно создавать свои CS в формате XML, расположены они по пути "c:\Users\username\Documents\Visual Studio 2015\Code Snippets\Visual C++\My Code Snippets\"  и имеют расширение .snippet. Выглядят в этом формате они, скажем прямо, устрашающе )) Вот пример enum для перечисления дней недели

enum EDaysOfWeek
{
    ESunday,    //Воскресенье
    EMonday,    //Понедельник
    ETuesday,   //Вторник
    EWednesday, //Среда
    EThursday,  //Четверг
    EFriday,    //Пятница
    ESaturday   //Суббота
};

И его XML код в формате .snippet.

<?xml version="1.0" encoding="utf-8"?>
<CodeSnippets xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet">
  <CodeSnippet Format="1.0.0">
    <Header>
      <SnippetTypes>
        <SnippetType>Expansion</SnippetType>
      </SnippetTypes>
      <Title>EDaysOfWeek</Title>
      <Author>
      </Author>
      <Description>
      </Description>
      <HelpUrl>
      </HelpUrl>
      <Shortcut>EDays</Shortcut>
    </Header>
    <Snippet>
      <Code Language="cpp" Delimiter="$"><![CDATA[enum EDaysOfWeek
{
        ESunday,    //Воскресенье
        EMonday,    //Понедельник
        ETuesday,   //Вторник
        EWednesday, //Среда
        EThursday,  //Четверг
        EFriday,    //Пятница
        ESaturday   //Суббота
};
]]></Code>
    </Snippet>
  </CodeSnippet>
</CodeSnippets>

Странно, что MS не сделала средств для автоматизации процесса создания сниппетов (или я что-то пропустил??). Однако, это сделали другие. Открываем меню Tools->Extensions and Updates->Online и ищем в строке поиска Snippet Designer. Устанавливаем и процесс создания сниппета становится розовым и пушистым. Надо выделить кусочек и в контекстном меню выбрать Export as Snippet, дальше все интуитивно ясно.