3
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

VisualStudioのキモすぎキーバインドをVSCodeに近づける

Posted at

TL;DR

  • ツール> オプション> 環境> キーボードから、次の追加キーボードマップ スキームを適用プルダウン => VisualStudioCodeを選択

はじめに

全国1億7千万人の.NET 開発者の皆様、ごきげんよう。
今日もレガシーなバケモノプロジェクトと仲良くしていらっしゃいますでしょうか。

さて、.NET開発者が一番使うIDEといえばVisualStudio、ですが。
一方で、テキストエディタはVisualStudioCodeを使うことも多いと思います。なんなら、VSCで開発しちゃうよ~って方も珍しくはないのかも。

しかしこの両者、同じ冠を戴きながら、その実態はかなり別物。
両者の異母兄弟たる所以、そのひとつがキーバインドです。

VisualStudioのキーバインドキモすぎ問題

問題です。

  • 選択範囲をコメントアウトのキーバインドといえば何でしょう?

ほとんどのIDE、テキストエディタでCtrl + /だと思われます(ちゃんと調べてない)。
もちろんVSCもCtrl + /です。

しかしVS、こんな多用するコマンドだというのにありえないキーバインドがデフォルトで設定されています。それは
Ctrl + K /
拡張キーバインドに割り振られています。
慣れてしまえばそれまでですが、普通にキモい。

VSとVSCとでキーバインドとで混乱する問題

マルチカーソルも、プログラマである以上は積極的に使っていきたいですよね。
ただ、特にマルチカーソル系はVSとVSCで大きくキーバインドが異なります。
このあたりは、歴史的な経緯も大きいとは思いますが……。
自分がよく使う具体例を示すと

操作名 VSC VS
マッチする次の単語を選択 Ctrl + D Ctrl + Alt + .
クリック位置にマルチカーソルを生やす Alt + Click Alt + Shift + Click
マルチカーソルを生やしたり選択したり Alt + Ctrl + Arrow Alt + Shift + Arrow

例えばAlt + Shift + Arrowでいうと

  • VSだとマルチカーソル増やす
  • VSCだとカーソル行を複製

なので、脳死で上記のキーバインドを入力すると全く違う操作になってしまうわけです。これがすごくうっとうしい。

異母兄弟、されど同じ父の元

というわけで、VSのキーバインドをVSCに近づけよう!ってのが、冒頭のTL;DRにある通りですね。再掲しますと

  • ツール> オプション> 環境> キーボードから、次の追加キーボードマップ スキームを適用プルダウン => VisualStudioCodeを選択

これで、キーバインドがほぼVSCになります。
「タブをすべて閉じる」もCtrl + K Ctrl + Wで出来るようになります(これもよく使うんですが、VSだとキーバインドが振られていない…)。

「ほぼ」、というのは文字通りですが、一部かゆいところに手が届かないところもあるらしいです。今のところ、僕は遭遇していませんが……。

おわりに

皆さんはご存知でしたか?ぼくはしらなかった。

別の用事でオプションを触っていた所たまたま発見いたしまして、「キーバインドの違いに混乱し続けていた俺の今までの時間は何だったのか・・・・・・・:thinking:」とならざるを得なかったので共有させて頂いた次第。

皆様の.NETライフに幸あれ。

3
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?