Linter
パパは昔 Beatles だったの?1
大変だ〜❗2024年が始まっているうぅぅ😭
それはもうなんだか、本当に色々ありました...。
しかしわたしも、ようやくバイオリズムってものを取り戻して💃 徐々に POWER が漲ってきました ⭐🕺
One, two, three, four
Can I have a little more?
Five, six, seven, eight, nine, ten
I love you
船を出そう❗機運を起こせ❗❗
A, B, C, D
Can I bring my friend to tea?
世界では紅茶に塩を入れたりですとか、緑茶に柚子や砂糖を入れたりですとか、 わーわーゆうとりますけども、わたしは "It's all right", "괜찮아" です🫖
ただ、"はちみつカモミール" のティーバッグを淹れてるわたくしなんかが首を突っ込んでも火傷するだけですので🤐
っていうか、柚子砂糖緑茶もティーバッグで売り出してほしいなー 🍵
...。🙂
って、tea のおはなし❗
Install
次項からはじまるのは、Luacheck
とBiome
のおはなしです。
追加のインストールが手間だったり、そもそもその言語使ってないってことも当然あると思うので、 これらを実際にインストールするかどうかはおまかせします😺
E, F, G, H, I, J
I love you
Luacheck
Luacheck is a static analyzer and a linter for Lua. Luacheck detects various issues such as usage of undefined global variables, unused variables and values, accessing uninitialized variables, unreachable code and more.
LuacheckはLua用の静的アナライザであり、Linter です。 Luacheckは、未定義のグローバル変数の使用、未使用の変数や値、 初期化されていない変数へのアクセス、到達不能なコードなど、様々な問題を検出します。
Luacheck supports checking Lua files using syntax of Lua 5.1 - 5.4, and LuaJIT. Luacheck itself is written in Lua and runs on all of mentioned Lua versions.
Luacheckは、Lua 5.1~5.4とLuaJITのシンタックスを使用したLuaファイルのチェックをサポートします。 Luacheck自身はLuaで書かれており、前述のすべてのLuaバージョンで動作します。
いつも通りLua
で進めるためにLuacheck
というlinter
を試してみたいんですが...。
lualocks is not executable
「luarocks
が実行できなかったよー」って言ってますね。
実はわたし自身、今までこれを使ってこなかったので「えぇ...😨」ってなりました。
でも、これはだいじょーぶ😉
LuaRocks
LuaRocks is the package manager for Lua modules.
LuaRocks は Lua モジュールのパッケージマネージャです。
インストールはDownloadの案内に従ってもいいし、
もっとお手軽にbrew
とかapt
なんかを利用することでも可能です。
あらかじめこれを行った上で再度mason.nvim
からLuacheck
をインストールすれば進めるはずです😌
できました😆
Try!
Luacheck
が対応している言語はもちろんLua
です☺️
ちゃんと正しいコードなんだけど、vim
が全部怒られるので「えぇ...😨」ってなります。
(いまいち自信がありませんが、この対応は次項で行います。)
あとなんていうか、自分がnvim_buf_get_option
を使っていることを把握していませんでした...。
ご指摘通り、これもだいぶ以前からDeprecated
になっています😅
ほんとはちゃんと触れなきゃいけないと思うんですが、
まずは17節を先に書き上げてしまいたいので、Issues
に挙げとくってことで見逃してください...🥲
2
.luacheckrc
これ、わたしも初めて使っているので色々試してるんですが、ちょっと謎で...。
例えば、Linter
を有効にしたいファイルと並べて置いてみたとしても、これを使ってくれない...🫤
なので「ユーザーのルート(~/
)に.luacheckrc
を置いとけば、とりあえず見つけて使ってくれる」っていうのが
現時点での最高到達点です😅
中身はこれだけです。
ひとまずはこれでvim
の警告は消えると思うんですが、どうでしょう...❓
Biome
One toolchain for your web project Format, lint, and more in a fraction of a second.
Web開発のためのたった1つのツールチェーン format、lint など一瞬で完了させます!
Biome はWebプロジェクトのための高性能なツールチェーンであり、 プロジェクトの健全性を維持するための開発者ツールの提供を目的としています。
(README.ja.mdより)
わたしも普段お世話になってるBiome
です。
確認してないんだけど、こっちはインストールと動作にnpm
が必要なんじゃないかな❓
現時点 (2024/01/30) ではJSON
,JavaScript
,TypeScript
に対応していますが、
将来的にはCSS
,HTML
,Markdown
にも対応するんだって😆
CSS is our next language of focus, and we are making good progress. HTML and Markdown will follow. Follow our up-to-date page to keep up with the progress of our work.
CSSは次の重点言語であり、順調に進んでいます。HTMLとMarkdownはその後に続く予定です。 私たちの仕事の進捗状況を知るために、最新のページをフォローしてください。
いつも通りmason.nvim
からインストールしてみましょう。
これで準備完了かと思いきや、もう一手間必要です😦
biome.json
デフォルトではlinter
が有効になっていないようなので...。
We recommend creating a biome.json
configuration file for each project.
It eliminates the need to repeat the CLI options every time you run a command
and ensures that Biome applies the same configuration in your editor.
If you’re happy with Biome’s defaults, you don’t have to create the configuration.
プロジェクトごとにbiome.json
設定ファイルを作成することをお勧めします。
これにより、コマンドを実行するたびに CLI のオプションを繰り返す必要がなくなり、Biome がエディタで同じ設定を適用するようになります。
Biome のデフォルトでよければ、設定を作成する必要はありません。
{
"$schema": "https://biomejs.dev/schemas/1.5.3/schema.json",
"organizeImports": {
"enabled": false
},
"linter": {
"enabled": true,
"rules": {
"recommended": true
}
}
}
The linter.enabled: true enables the linter and rules.recommended: true enables the recommended rules.
linter.enabled:true
はリンターを有効にし、
rules.recommended:true
は推奨ルールを有効にします。
biome.json
は、Linter
を有効にしたいjs
ファイルと並べてもいいし、
プロジェクトのルートに置いておいてもBiome
が見つけて使用してくれるようです。
Try!
ようやく準備完了です。js
ファイルを開いてみましょう❗
実際はこれでもちゃんと動くコードなんだけど、Error
として報告してきます。
...。🙄
とってもクセ❗❗
このサイトでも特になんにも考えないで気軽に使い始めてたんですが、 最初はなんか未曾有のバイオハザード🧟♂️だったので「えぇ...😨」 ってなりました。
Configuration file
ここまでで軽く触れたように、Luacheck
にはluacheckrc
、biome
にはbiome.json
みたいな、
Linter
のルールやマナーを調整する方法が用意されています。
たぶん他のLinter
でもそうなってるんじゃないかな❓
ただ、そこまで詳しくもないわたくしなんかが首を突っ込んでも火傷するだけですので、このサイトでは扱いません🤐
(Neovim
ともまた別のおはなしだし😅)
Black, white, green, red
Can I take my friend to bed?
Pink, brown, yellow, orange and blue
I love you!
All Together Now
ということで、Linter
のおはなしでした😆
ここではLua
とJavaScript
だけ取り上げましたが、
どのLinter
を使う場合でも「似たようなもんだろー」と思ってもらえばだいじょうぶ❗
...たぶん😮
「えぇ...😨」ってなりました❓
そんな不安の退治法はひとつ。
Singing❗
One!
Two!
Three!
Four!!
(Bom bom bom bompa bom!)
Sail the ship!
(Bompa bom!)
Chop the tree!
(Bompa bom!)
Skip the rope!
(Bompa bom!)
Look at me!!
All together now3 !!
All Together Now
TΩРА ОΛОI MAZI
Tutti insieme adesso
Nu allemaal samen
Todos juntos ahora
Kwa pamoja sasa
Tous en choeur maintenant
Allihopa tillammans nu
И ТЕПЕРЬ: ВСЕ ВМЕСТE
現在大家一齊唱
Und jetzt alle zusammen
それでは皆さん御一緒に
We are all together now!!4
じか〜い、じかい。
17.6話「えるえすぴーミーツミー」という おはなし。