今度はVSCodeの前回とは別のCommon Lisp拡張である Alive - Visual Studio Marketplace を使ってみる。
前回のは現状インストール数6kくらいなのに対してこれはインストール数600くらいで少ないが、Using VSCode with Alive を見るかぎり機能的にはこちらの方が豊富そうに見える。
動作確認したバージョン
インストール
- VSCode を開く
Ctrl + P
ext install rheller.alive
シンタックスハイライト
発展途上の機能らしく、キーワードシンボル等をハイライトしない。
Roswellの設定
settings.jsonにREPLでRoswellを起動する設定をする。
"alive.swank.startupCommand": [ "ros", "run", "--system", "swank", "--eval", "(swank:create-server)" ],
REPL起動
- lispファイルを開く
Ctrl + Shift + P
Alive: Start REPL And Attach
を選ぶ
これで画面が分割されREPLが起動する。 他のAlive関連コマンドで結構ショートカットキーがあるのにこれはなんでないんだろうか?
何も式を入力せずにEnter
押すと、CL-USER>
が評価されてデバッガに突入する。
他のテキストエディタだとRestertsの選択肢を数字のキー入力で選択できるが、Aliveの場合はクリックしないとダメらしい。
式の評価自体は普通にキー入力で行われる。
CL-USER> (+ 1 1)
Enter
で評価される。
(+ 1 1) 2 CL-USER>
Qlotを使う場合
Qlotを使う場合はsettings.jsonを書き換える。
"alive.swank.startupCommand": [ "qlot", "exec", "ros", "run", "--system", "swank", "--eval", "(swank:create-server)" ]
単独のrosと使い分けたいから、設定変えるだけじゃなくて本体に何か手を入れ他方がいいか。
その他
F12
でカーソル位置のシンボル定義に飛べたり色々便利機能の実装もある。
一つ困るのが、REPLを使っていて数千行とか増えていくと徐々に動作が遅くなっていく。 これはたまにREPL上の全てを選択して削除すると元の早さに戻る。