macOS CatalinaでVSCode使ってCOBOL環境整備

#なんでこんなことやってんの？
派遣先でCOBOLソースコードの読解を要求されたのでやってます。まだまだCOBOLの需要があったことは驚きでした。仕事だからしょうがないんで。

#COBOLコンパイラのインストール

```
% brew install gnu-cobol 
```
にておしまい。 brewコマンドのインストールは他を[参照](https://qiita.com/balius_1064/items/ac7dff5ef10eaf69996f)してね。いっぱいあるから。

```
% cobc -version
cobc (GnuCOBOL) 3.1.2.0
Copyright (C) 2020 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
Written by Keisuke Nishida, Roger While, Ron Norman, Simon Sobisch, Edward Hart
Built     Dec 28 2020 19:08:49
Packaged  Dec 23 2020 12:04:58 UTC
C version "Apple LLVM 12.0.0 (clang-1200.0.32.28)"
```
まだまだ、2021年現在でもメンテナンスされていることに驚きます。いい世の中だなぁ。

#試しにHELLO_WORLD
```
       IDENTIFICATION  DIVISION.
       PROGRAM-ID.     HELLO_WORLD.
       PROCEDURE       DIVISION.
          DISPLAY  "*** HELLO_WORLD ***"
          STOP RUN.

```
行の最初の７つの空白がないとコンパイルエラーになります。また、最終行は空の改行が必要です。昔からそうなんで、しょうがないです。EOFってやつですよ。hello.cobでソースコードを保存したとして、

```
% cobc -x -Wall -debug hello.cob; ./hello
*** HELLO_WORLD ***
```
と、出ます。パチパチ。ここで、終わってもいいんだけど、毎回コマンドをターミナルで叩くのもヤボですね。今どきそれはない。

#VSCodeを使って統合環境にする
[https://code.visualstudio.com/download](https://code.visualstudio.com/download)
にて、ダウンロードしましょう。ダウンロードされたら、アプリケーションフォルダに移動しておきましょう。それからダブルクリックで VSCode 起動です。先ほど作ったhello.cobを開くと、こんな画面になります。
![Screen Shot 2021-05-20 at 17.46.07.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/149387/adb01a89-35de-5610-3eb0-67c54e5c28d7.jpeg)

この段階で、実はかなりいじくった状態です。１つずつ紹介していきましょう。

![Screen Shot 2021-05-20 at 17.50.31.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/149387/7590a84d-fcba-60f8-fb9b-952a177956c6.jpeg)
プラグインをVSCodeへ既にインストールしています。VSCodeではExtensionsという名前になっています。これはCOBOLのテキスト表記をわかりやすくするものです。その名もCOBOLというExtensionsです。あまりに一般的な名前で、どうかとは思います。設定はないので、COBOLでサーチしてインストールボタンを押すだけです。

![Screen Shot 2021-05-20 at 17.54.44.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/149387/41777990-8147-68a7-8b52-2467c5275a73.jpeg)
次は、Save and Run 0.0.22 です。これを使ってテキスト編集後に実行まで持っていくわけです。Save and Runでサーチしてインストールボタンを押します。

![Screen Shot 2021-05-20 at 17.59.08.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/149387/d178bdf3-a19e-835f-741a-0124d8a48a9b.jpeg)
Save and Run 0.0.22 付近のギアマークを押して設定画面を出します。中身を訂正します。

```
    "saveAndRun": {

        "commands": [
          {
            "match": ".cob",
            "cmd": "cobc -x -Wall -debug ${file}; ./${fileBasenameNoExt} ",
            "useShortcut": true,
            "silent": false
          },
        ]
      },
```
その後、VSCodeを再起動。これやらないと設定が有効にならないって話です。

![Screen Shot 2021-05-20 at 18.04.04.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/149387/b2b89e28-fe36-d141-da80-d21e4a1f48c5.jpeg)
あとは、コマンド＋シフト＋Ｒキーを叩くだけで、勝手にターミナルを開き、コンパイルエラーがないとこうなります。エラーがでなければ、デバックしまくりですねぇ。

#おわりに
他の言語だったとしてもコンパイル後に自動的に実行してテストしたいとかの参考になるでしょう。テキストエディタを少し統合環境ぽくできたわけです。この他にGitHubとの連携もやってたので、これだけでも半日かかりました。GitHubの連携は、まだまだわかってないんだけど、そんなに頻繁じゃないのでコマンド叩くことにします。参考になりました？

![Screen Shot 2021-05-21 at 10.32.36.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/149387/87d9c6a8-9e77-e1d0-fd92-a261f84cd6d6.jpeg)

GitHubを使う場合、こんなところにGitメニューがありましたよ。これでコマンド打たなくてもいい。ヤレヤレ。