VSCodeの設定メモ
1. ソース管理で変更ファイルの一覧をツリー表示する
Git Graphを入れると、変更ファイルのツリー表示ができるようになる。
表示の変更方法
ソース管理のアクションに「表示と並べ替え」が追加されるので、そこから「ツリーとして表示」を選択する。
remote機能でコンテナ内開発をしている場合は、コンテナ側のVSCodeでGit Graphの入れ忘れに注意、、、
2. エディタの表示領域への切り替え
ターミナルからエディタへの切り替えをキーボードだけでやる場合、今まではターミナルをctrl+`で閉じたりしていたが、キーボード ショートカットの「表示: アクティブなエディターグループにフォーカス」に対して、ショートカットを設定すると、ターミナルを閉じなくても切り替えができた。
- HHKBなので、ターミナルショートカットの隣のキーのctrl+\を設定した
3. ショートカット
3.1 Windowsで英字配列キーボードでのCtrl+`対応
Windowsで英字配列のキーボードで日本語IMEを使うと、Ctrl+`
のキー入力が半角/全角
として認識される。
Ctrl+`
はターミナル表示のショートカットなので、なんとか活用したいが、VSCodeのショートカットキー設定でも日本語IMEの状態ではunknownとして認識されてしまう。
そこで、keyhacを利用してなんとかする。
手順としては、
- 半角/全角の入力を`に変える
- 使ってないショートカットキー(ここではCtrl+')を、
Ctrl+`
の入力に置き換える - VSCodeのキーボードショートカット設定で、置き換えたショートカットキー(Ctrl+')を「表示: ターミナルの切り替え」に設定する
以下はkeyhacの設定ファイルで、
本処理のための箇所を抜粋は以下。
## 半角/全角 => `
keymap.replaceKey(243, 192)
keymap.replaceKey(244, 192)
if 1:
keymap_edit = keymap.defineWindowKeymap( class_name="Chrome_WidgetWin_1" )
keymap_edit[ "C-BackQuote" ] = "C-Quote" # Ctrl+`の代わり
3.2 WindowsでターミナルでのCtrl+K対応
Windowsのコマンドプロンプトなどのターミナル系アプリケーションではkeyhacを入れなくてもCtrl+Kが動作するので、keyhacでShift+End, Ctrl+Dにすると逆に動作しなくなる。
その対応として、ターミナル系アプリケーションのkeyhac設定からCtrl+Kを無効にしても、VSCodeのターミナルはVSCodeのkeyhac設定を利用してしまうため、VSCodeのターミナルでCtrl+Kを使うためにはVSCode側でもCtrl+Kを無効にしなければいけない。
そうするとVSCodeのエディタでCtrl+Kの行末まで削除が使えなくなるため、VSCodeのショートカット設定から「右側をすべて削除」のキーバインドにCtrl+Kを設定する。
4. Markdownで末尾の空白除去を止める
markdownの設定に"files.trimTrailingWhitespace": false
を追加する。
"[markdown]": {
"files.trimTrailingWhitespace": false,
"editor.defaultFormatter": "yzhang.markdown-all-in-one"
}
5. Remote Containerからgit接続する
eval `ssh-agent`
してからssh-add
だけでできていた気がしていたが、
ssh-addにKオプションつけて鍵登録してから、リモートコンテナに入ってないと駄目だった。
$ eval "$(ssh-agent -s)"
$ ssh-add -K ~/.ssh/id_ed25519