vimの 拡張機能を Denoで 書いた 話
(Updated more than a year ago)
詳しい話は zenn に書いているのでそっちを参照。
拡張機能を書くにあたって言語を vim script か Deno か lua かそれとも他かを選ぶ必要があった。
- Vim(not NeoVim)を使っているので
luaは除外 - 最近
Denoで書けるようになって一部で盛り上がっているみたい TypeScriptやってみたい
以上の理由から Deno を選んだ。
Deno の Linter を Vim に入れるところなどのコーディング以前の部分で詰まったりしたがなんとか書くことができた。
反省点。
- 型よくわからん 全部の変数に型つけるんだとばかり思っていたので Python みたいにつけてもつけなくてもいいのは衝撃的だった (でもやっぱりできるだけたくさんつけたほうがいいのかもしれない )
var,let,constよくわかってないvarは昔ので再代入がなければconstがいいみたいな認識。for (const datum of data)って書けるのがよくわからん(datumはdataの各要素で書き換えられるからletでは?)
それはそうと start(async (vim) => { 以降が Async arrow function has no 'await' expression. で linter が怒ってるけどいいんだろうか?