Google Apps ScriptのWebエディタが新しくなった

Google Apps Script(GAS)のWebエディタが新しくなりました。
徐々に使えるユーザーを増やしているようで、今は旧エディタしか開けない人も順次新しいエディタが使えるようになるそうです。

実は筆者もclasp入れた翌日くらいに新しいエディタが使えるようになりました。
**clasp入れた翌日くらいに。**(強調)
旧エディタが不満だから入れたのに…両方使っていきます。

#変更点
筆者が確認できた範囲のものを列挙していきます。

##追加・修正された機能
主に補完機能がむちゃくちゃ強化されています。

###`Ctrl + Space`を押さなくても補完候補が表示されるようになった
従来通り`↑`、`↓`で選んで`Enter`を押せば確定です。
ついでにGAS独自のもの以外も表示されるようになりました。
![Screenshot 2020-12-19 at 08.09.51.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/519665/b14a84d7-2fff-9164-dc6f-64ed9fefd649.png)
![Screenshot 2020-12-19 at 07.57.19.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/519665/b5d57b4a-5023-e309-dd8c-c9b3afb8412c.png)


###関数を使う際にリファレンスが表示されるようになった
以前は引数と戻り値の型がわかるだけでしたが、より具体的にわかるようになりました。
![Screenshot 2020-12-19 at 08.01.28.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/519665/2b1a30b0-39e1-cba6-e593-9255d892c6cb.png)
![Screenshot 2020-12-19 at 08.01.56.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/519665/324d0f62-dbec-6838-d036-c6c95055ce18.png)

###コメントなしで自作関数の引数や戻り値の型推論がされるようになった
下記のように自明な場合は型が表示されます。
![Screenshot 2020-12-19 at 08.05.45.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/519665/7cff707c-5322-87ae-af58-6abe11dcb6ee.png)

###自作関数や変数もJSDOCで型を指定できるようになった
従来はライブラリのみに許された機能でしたが、自作の関数や変数でも使えるようになりました。
これで型推論が難しい場面でもJSDOCを記述すれば型が表示されます。
![Screenshot 2020-12-19 at 08.24.18.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/519665/a2bf3976-123a-446b-b81e-815ded3d2c07.png)
![Screenshot 2020-12-19 at 08.21.26.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/519665/8925de25-d03a-7425-ee5f-bdb379c0bf63.png)

###おかしな箇所が強調されるようになった
型が間違っている箇所が警告されるようになったので、バグが事前にわかるようになりました。
![Screenshot 2020-12-19 at 07.45.04.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/519665/38ca210d-fa2b-d6e0-c86e-8291193f24f2.png)

また、使用していない変数があると灰色で表示されます。
![Screenshot 2020-12-19 at 08.35.12.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/519665/ec8fd3f8-678a-0f2d-5408-f4c3fa8f63f7.png)


###サロゲートペアを認識できるようになった
下記のように、旧エディタでは絵文字などを入力しても1文字として上手く認識されませんでした。
![Screenshot 2020-12-17 at 07.24.34.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/519665/d7d136db-58b3-4bb6-fbbc-43a8b1792640.png)
![Screenshot 2020-12-17 at 07.24.39.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/519665/46c375d0-2d82-2eae-d692-f4ff88937b16.png)
新エディタでは修正され、このようなことは起きなくなりました。

###アロー関数などの新しい構文を使ってもインデントがおかしくならなくなった
`() => {}`とか`{ /*変数名*/ }`を書くとそこから下のインデントが異様に多くつけられましたが、それがなくなりました。

ちなみに、新エディタが使える環境で旧エディタに戻してもこの修正は有効なようです。内部が共通なのでしょうか？

##現時点で削除・利用できない機能

###`script property`を直接編集する機能
旧エディタに戻す際のアンケートの中に

>Missing script property editing

という項目があるので、どうやら現時点では新エディタに無いようです。
![Screenshot 2020-12-19 at 08.26.53.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/519665/1714b3f2-1e63-81d0-1116-e94d46878e0a.png)

###`MimeType`列挙型
何故か補完候補に無く、使うと警告が表示されます。
リファレンスを見る限り非推奨になったわけではないようなので、単に実装が漏れているのでしょうか。

#感想

むちゃくちゃ使いやすいです新エディタ。
デバッガーが不安定なのかおかしな挙動をすることもありますが、`console.log`の出力が速いなど概ねメリットの方が大きいかなと思います。

コマンドラインで試したいことも多いので`clasp`も使っていきたいのですが…。
今猛烈に阿修羅かヘカトンケイルになりたいと思っています。