DenoのreplでTypeScriptが入力可能に!


Deno 1.12.0では多数の機能が追加されましたが、ここではrepl周りの新機能を取り上げたいと思います。
Deno 1.12.0 リリースノート

TypeScriptが入力可能になった

TypeScriptの入力が可能になりました🎉

なお、型チェックは適用されません。この理由については、

https://github.com/denoland/deno/issues/11078
REPLは迅速なフィードバックループ用であり、型チェックは実行時間と邪魔な診断を追加するだけです。

とのことです。

tab補完の一覧表示が追加された

tabキーでの補完が一覧表示されるようになりました。
例えば、JSON.まで入力した状態でtabキーを押すと、補完が一覧表示されます。


従来は一覧表示ではなく、一つずつ順番に表示されていました。
関係ないですが、上に写っているArray.prototype.at()もDeno 1.12.0で導入されました。

console.logの出力がdevtoolsコンソールにも表示されるようになった

denoのreplでは、起動時に--inspectオプションを渡すことでChromeなどのdevtoolを利用することができます。(参考

これまで、console.log()の出力はターミナルのみに出力され、devtoolのコンソールには出力されないという問題がありました。

Deno 1.12.0ではこの状況が改善され、console.log()で出力したメッセージがdevtool側にも表示されるようになりました。

import文が利用可能になった

これまでreplではimport文が使えませんでしたが、Deno 1.12.0からimport文が利用可能になりました。

// これまで
const {delay} = await import('https://deno.land/[email protected]/async/mod.ts')
// これから
import {delay} from 'https://deno.land/[email protected]/async/mod.ts'

動的importに書き直すのが面倒だったので、地味にうれしい変更ですね。

以上です。

この記事ではrepl関連に限って紹介しましたが、テスターやcrypto API、Workerなどに多数の新機能が追加されています。詳しい内容はDeno 1.12.0 リリースノートへどうぞ!