Visual Studio Code MQL4でのTips とErrors

MQL4のコーディングでMetaEditorは使いにくいので、VSCode(Visual Studio Code)を使うと便利です。

特にうれしいのは、矩形選択ができることと、Grep(ファイルを横断した検索)ができることです。

[PR]


VSCode MQL4 Tips & Errors

何年もVSCodeでMQL4を書いていますが快適です。

VSCodeには便利な機能がたくさんあるので、よく使うものを確認しておくと実際のコーディングで役に立ちます。この記事では、MQL4で特に使うTipsと、よく出会うエラーへの対処法をまとめました。

Tips

VSCodeでMQL4を書くときに使える機能です。

Grepのやり方

メニューの「Edit」→「Find in Files」、またはショートカットのCtrl+Shift+Fで、フォルダ内のファイルをまたいで検索できます。

関数名や変数名がどのファイルで使われているかを一気に探せるので、もともとこれがやりたくてVSCodeを使い始めました。

矩形選択

Shift+Altを押しながらマウスの左ボタンでドラッグすると、四角い範囲(矩形)を選択できます。

キーボードだけで操作したい場合は、Ctrl+Shift+Altを押しながら矢印キーで範囲を広げます。複数行の同じ位置をまとめて書き換えたいときに便利です。

Indentの設定

画面右下のステータスバーに「Spaces: 4」のような表示があります。ここをクリックすると、インデントをタブ(Tabs)にするかスペース(Spaces)にするか、また幅をいくつにするかを設定できます。

Themeの設定

メニューの「File」→「Preferences」→「Theme」→「Color Theme」(ショートカットはCtrl+KのあとCtrl+T)から色合いを変更できます。

現在のVSCodeでは、ダークテーマの既定は「Dark Modern」です。明るい画面が好みなら「Light Modern」などに変えられます。以前の既定だった「Dark+」「Light+」も引き続き選べます。

ファイルの比較

「エクスプローラー」で「Ctrl」を押しながら2つのファイルを選択し、右クリックで「選択項目の比較」(英語表示では「Compare Selected」)を選びます。

エクスプローラーで2つのファイルを選択して比較

ファイルリストが表示されない場合(VSCodeは表示まわりの仕様がよく変わります)は、「Explorer」の「…」(その他の操作)をクリックして、「Open Editors」にチェックを入れます。

ExplorerのメニューでOpen Editorsにチェック

ファイルリストが表示されたら、「Ctrl」を押しながら比較したいファイルを選択します。

Ctrlを押しながら比較するファイルを選択

右クリックすると「Compare Selected」が出るので選択します。

右クリックメニューのCompare Selected

これで2つのファイルが左右に並び、違う部分が色分けされて表示されます。EAを修正したときに、前のバージョンとどこが変わったかを確認するのに便利です。

2つのファイルの差分表示

よく使うショートカット一覧

MQL4を書くときによく使うショートカットをまとめておきます(Windowsの既定のキー割り当てです)。

操作 キー(Windows)
ファイルをまたいで検索(Grep) Ctrl+Shift+F
ファイル内の検索 / 置換 Ctrl+F / Ctrl+H
矩形選択(マウス) Shift+Alt+ドラッグ
矩形選択(キーボード) Ctrl+Shift+Alt+矢印キー
カーソルを追加(マルチカーソル) Alt+クリック
行コメントの切り替え Ctrl+/
コマンドパレット Ctrl+Shift+P
設定を開く Ctrl+,
カラーテーマの選択 Ctrl+K → Ctrl+T

Errors

Restricted Mode(制限モード)になってしまったら

フォルダを開いたときに、「Restricted Mode is intended for safe code browsing. Trust the window to enable all features.」と表示され、制限付きモード(Restricted Mode)になることがよくあります。

これはVSCodeの「Workspace Trust」というセキュリティ機能で、信頼していないフォルダのコードが勝手に実行されないようにするものです。制限モードの間はタスクやデバッグ、ワークスペースの設定、一部の拡張機能が無効になるため、タスク経由でのMQL4のコンパイルもできなくなります。

詳しくは公式ドキュメント Workspace Trust(Visual Studio Code) にまとめられています。

自分で作ったMQL4のフォルダなど、中身を信頼できる場合は「Manage」をクリックします。

Restricted Modeの表示とManageボタン

「Trust」を選択します。

Workspace TrustでTrustを選択

これで制限が解除され、コンパイルできるようになります。ネットからダウンロードしたコードなど、中身がわからないフォルダは信頼する前に内容を確認しておきましょう。

C/C++ Extension Pack でのエラー波線

MicrosoftのC/C++ Extension Packをインストールすると、MQL4特有の書き方(propertyやdoubleなど)にエラーの赤い波線が表示されてしまいます。

MQL4のコードに表示されるエラー波線

C/C++の拡張機能はMQL4をC++として解析するため、このような波線が出ます。表示されてもMQL4のコンパイル自体は通りますが、気持ちが悪いので非表示にします。

メニューの「File」→「Preferences」→「Settings」(Ctrl+,)を開きます。

File Preferences Settingsを開く

検索窓に「Error Squiggles」(エラー波線)と入力し、「C_Cpp: Error Squiggles」を「disabled」に設定します。

この設定の選択肢は「enabled」「disabled」「enabledIfIncludesResolve」の3つで、既定値は「enabledIfIncludesResolve」です。

C_Cpp Error Squigglesをdisabledに設定

これでエラー波線が消えます。

エラー波線が消えた状態

なお、設定画面の「User」タブで変更するとすべてのフォルダに効きます。普通のC/C++の開発でも同じVSCodeを使っている場合は、MQL4のフォルダを開いた状態で「Workspace」タブ側で設定すると、そのフォルダだけ波線を消せます。このとき、フォルダ内の「.vscode/settings.json」に次の1行が書き込まれます。

関連記事

VSCodeをMQL4のエディタとして使うための設定方法はこちら↓

MQL4のコーディングで、MetaEditorの代わりに使えるエディタを探して見つけたのが VSCode(Visual Studio Cod...

MQL5の開発環境をVSCodeで作る方法はこちら↓

MQL5のコードを、MT5付属のMetaEditorではなくVisual Studio Code(VSCode)で書いてコンパイルできる...

 

シェアする

  • このエントリーをはてなブックマークに追加

フォローする