Настройка SlickEdit для работы с документами MQL4/5 и их компиляции.

 

Доброго времени суток, коллеги.

Ко мне обращаются форумчане с просьбой помочь с настройками вышеозначенного редактора. Хотя в сети очень много материала по этой теме, всё равно у программистов возникают проблемы с настройками. Шаг за шагом я покажу как это сделать.


MetaEditor замечательный редактор и способен удовлетворить потребности большинства программистов. Однако его возможностей недостаточно для ведения очень больших проектов в несколько десятков тысяч строк со множеством инклудников. Поэтому прошу администрацию с пониманием отнестись к этой ветке.

 

SE поддерживает несколько десятков языков, но позволяет добавлять и пользовательские языки.

На мой взгляд, удобнее не создавать новый пользовательский язык к уже имеющимся, а привязать MQL4/5 к какому нибудь из стандартного набора языков. Это потому, что файлы mqh используются и в MQL4 и в MQL5, а каждый язык должен иметь уникальные сочетания расширений. Если мы создадим отдельные языки MQL4 и MQL5, то какой то из них останется без типов файлов mqh.

Но есть возможность создавать несколько профилей подсветки для одного языка, мы так и поступим. Логичнее всего, и правильно, привязать к C/C++, мы так и сделаем - привяжем MQL4 и MQL5 к C/C++ и создадим соответствующие профили подсветки. Тогда у нас не будет проблем с файлами mqh.


Для того, что бы SE узнавал файлы mqh, mq4, mq5 нужно прописать эти расширения в настройках. Заходим сюда:

Заходим в Languages->Appliacation  Languages->C/C++->General

Нажимаем кнопочку Edit These Extensions...

В появившемся окне вводим наши расширения.



Теперь, при открытии документов mqh, mq4, mq5 код будет подсвечиваться по синтаксису С/С++.

На следующем шаге настроим подсветку синтаксиса отдельно и специфично для наших любимых языков MQL4 и MQL5.

 

Пред тем, как настраивать подсветку синтаксиса отдельно для MQL4 и MQL5, нам пригодится настроить стилизатор. При переключении между профилями подсветки MQL4/5 подсветка меняется не сразу, так как необходимо перечитывать настройки подсветок. Чтобы профиль подсветки вступил в силу после переключения, нужно либо переоткрыть или открыть файл. Или воспользоваться стилизатором - при этом автоматом перечитываются файл подсветки  и создается кеш переменных редактируемого файла для правильного подсвечивания.


Итак, стилизатор настраиваем так:

Заходим в:



Или можно поступить по другому, предварительно открыв любой файл с расширениями mqh, mq4, mq5 так:



Что бы каждый раз не лезьть в меню за стилизатором, выведем кнопочку на панель инструментов:


После этого появится панелька с нужной нам кнопочкой стилизатора:

Панельку, естественно, можно переместить туда, куда удобнее:


 

Создадим профиль подсветки для MQL4.

Для этого заходим сюда:


И забиваем в рукопашную все ключевые слова языка MQL4 (или читаем следующие шаги инструкции, где будет готовый файл со всеми настройками, которые можно импортировать).

 

Точно так же, как на предыдущем шаге, создаем профиль подсветки для языка MQL5.


 

В SE можно работать в режиме 1) редактирования одного файла, или в режиме  2) проекта.

1) Переменные и функции, объявленные в инклудах (если они подключены к редактируемому файлу) видны не будут с вытекающими от сюда неудобствами, но компилировать такой одиночно открытый файл можно.

2) Режим проекта лишен неудобств редактирования одиночно открытого файла.


Для начала, настроим SE для работы в режиме редактирования одиночно открытого файла.


Подключим компилятор языка MQL4 для работы в режиме редактирования одиночно открытого файла.

Для этого переключаемся на профиль подсветки MQL4.

Открываем файл с расширением mq4.

Заходим сюда:


Делаем так, как на скрине ниже:



Внимание! Настройки компилятора не импортируются из файла настроек. Этот шаг обязателен.
 

Теперь подключим компилятор языка MQL5 для работы в режиме редактирования одиночно открытого файла.

Для этого переключаемся на профиль подсветки MQL5.

Открываем файл с расширением mq5.

Заходим в диалоговое окно так же, как и в случае с настройкой компилятора языка MQL4.

Делаем так, как на скрине ниже:




Внимание! Настройки компилятора не импортируются из файла настроек. Этот шаг обязателен.
 

Теперь можно использовать компиляторы MQL4/5 в режиме одиночно открытого файла по быстрым клавишам, в независимости от того, какой файл открыт mq4 или mq5. Если зайдем в меню "Build", то перед нами предстанет такая картина:

 
На следующих шагах настроим SE для работы в режиме редактирования  проектов.
 

Итак, что бы работать в режиме редактирования проектов, нужно для начала создать соответствующие типы проектов.

Создадим, для начала тип проекта MQL4.

Заходим сюда:

Обратите внимание, что выделенного красным у вас пока ещё нет (появится потом, когда будут созданы соответствующие типы проектов).


Нажимаем кнопочку Customize...


 Кликаем на New


После чего откроется диалоговое окно, в котором сделайте так, как на скринах ниже:


То же самое нужно проделать и для проектов MQL5.

 

Теперь создадим проект MQL5 (создание проекта MQL4 пропустим, так как процедура ничем не отличается от создания проекта MQL5).

Заходим в меню Project и выбераем New...

Выбираем из списка проект типа MQL5. Задаем имя проекта "Sample". Указываем расположения файла проекта, и жмем кнопку Ok. Делаем так, как для примера показано на скрине:


Так как папки ...\Sample по указанному пути не существует, то предлагается создать папку или отказаться. Соглашаемся.


После чего появится окно, где можно настроить создаваемый, по выбранному ранее шаблону, проект.

Во вкладке Files можно добавить файлы-исходники нашего проекта, но, пока ничего добавлять не будем:


Во вкладке Tools расположены настройки компилятора. Если у Вас примерно не так, как на скрине ниже, значит что то неправильно было сделано при создании шаблона типа проекта MQL5. Можно отменить создание проекта, вернутся на предыдущие шаги и поправит шаблон. Либо настроить проект прямо сейчас в окне:


Больше в этом окне нам ничего не пригодится и жмем Ok.

Всё. Создан проект MQL5. Пока он пустой и к нему не_подключены/не_созданны файлы исходных кодов.


Теперь в любой (не имеет значения) из папок проекта (эти папки виртуальные, их нет) создаем новые и выбираем уже существующие файлы исходных кодов.


Вот, собственно, всё, что нужно уметь и знать, что бы использовать SE для редактирования и компиляции программ MQL4/5.