VSCode + Calva で Clojure を書くための、ショートカットキーのメモ
Clojureを勉強中。環境はWindowsで VSCode + Calva。
よく使いそうなショートカットキーを、ざっくりジャンルに分けてメモしてます。あとで、まとめる、つもり…。
※ c → ctrl、a → alt、s → shift, | → カーソル位置 を表す
特に使いそうな操作5つ
c+a+, / . barf forwarf / slurp forwarf
(|1 2 3)
↓ ctrl + alt + , barf forward
(|1 2) 3
↓ ctrl + alt + . slurp forward
(|1 2 3)
c + Enter カーソルが当たっているフォームを評価
a + Enter カーソルが当たっているフォームのトップレベルから評価
(* |(+ 1 2) 4)
↓ ctrl + Enter (+ 1 2)が評価される
=> 3
↓ alt + Enter (* (+ 1 2) 4)が評価される
=> 12
c+←/→ backward sexp / forward sexp 現在のリスト内で、フォーム単位で移動。
c+home/end 現在のリスト内の先頭、末尾に移動
c+a+o o replウィンドウとの行き来
編集
c+a+,/. ※ barf /slurp forwarf
a+↓↑ ※カーソルが当たっているのシンボル全体を移動
c+a+s+p/s/c/q ※ カーソル後ろのフォーム/選択範囲を()/[]/{}/""でかこむ
c+a+s ※ カーソルの外側にある括弧を削除
選択してから([{" ※ 選択範囲を([{“で囲む
c+/ コメントアウト
a+dell/bksp 括弧にカーソルがある場合、整合性を無視して強制削除
c+a+del/bk
c+s+del/bk
c+del/bk カーソル位置からリストの最初/最後まで削除
c+a+bksp/c+s+del カーソル位置からフォーム単位でbksp/del
移動 / 選択
基本的に移動コマンドにshiftを追加すると選択になります。
c+←→ 現在のリスト内で、フォーム単位で移動。
c+home/end 現在のリスト内の先頭、末尾に移動
c+k c+q 最後に編集した場所へジャンプ
c+g 行ジャンプ
c+a+↓/↑
c+↓/↑ ※ カーソルをフォームの上・外/下・内に移動
選択
c+a+c c+s カーソルが当たっているのシンボルを選択。()[]{}""にカーソルが当たっていたら、開始から終了までを選択
s+a+←→ ※ フォーム単位の選択 拡大縮小
c+l 行選択
検索
c+s+f プロジェクト全体の検索
?+r 正規表現検索
c+d 現在選択している文字と同じものを複数選択
ウィンドウの操作
メイン
c+p ファイル名で編集するファイルを選択
c+pgdn/pgup 開いているタブ間移動(すべてのタブ)
c+tab タブの一覧が出て選択(フォーカスがあたっているエディタウィンドウ内のみ)
c+1/2… ※ 左から数えた順番のにエディタウィンドウへフォーカス。その順番のエディタウィンドウが無ければ新しく開く
c+w エディタウィンドウを閉じる
サイドバー
c+b サイドバーの開閉
c+s+e ファイルエクスプローラー
c+s+g Gitウィンドウ
ターミナルウィンドウ
c+s+` ターミナルを開く
c+j ターミナルウィンドウの開閉
c+p 「term_ (←スペース) 」ターミナルを一覧から選択してにフォーカス
Repl
c+a+c c+a+j ※ jack-in
c+a+o o ※ replウィンドへ切り替え
c+a+c enter ※ 現在のファイルと依存関係をロードする
c+enter ※現在のフォームを評価する
a+enter ※ 現在のトップレベルフォームを評価する
c+a+enter 現在のリストの先頭からカーソルの位置までのテキストを評価
c+a+c c+a+space 現在のトップレベルフォームを、repウィンドウに貼り付け
c+a+c c+a+v 現在のフォームを、REPLウィンドウに貼り付け
c+a+c c+space エディタで評価した結果を、コメントに変換して次の行の挿入
a+c+c a+n replウィンドウの名前空間を現在のファイルの名前空間に切り替え
c+a+c c+a+d 無限ループなどを強制終了
c+a+c n replのnamespaceを現在のファイルのnamespaceに切り替える
デバッグ
ctrl+alt+c i
#break
ブレークポイント
f5 コンティニュー
F10 ステップオーバー
F11 ステップイン
その他
c+s+p コマンドパレット
F12 定義へジャンプ
a+F12 サブウィンドウで定義を表示
s+f12 フォーカスがあたっているシンボルの一覧、ジャンプもできる。
c+k c+
i docの表示/replの内容表示
esc ※ ↑インラインディスプレイを消去
c+a+c s+t ※ 全テスト実行
tab ※ 現在のフォームをフォーマット
c+a+l ※ 現在のフォームをフォーマットして、マップのキーと値を揃える
ディスカッション
コメント一覧
まだ、コメントがありません