Help us understand the problem. What is going on with this article?

VSCodeでテキスト選択(ctrl+shift+〇)のキーバインド登録方法

概要

自分は環境は macOS High Sierra です。
mac で ctrl+p で上矢印 ctrl+f で右矢印などのショートカットを使用している人は多いのではないでしょうか。
もともとは Emacs のキーバインドらしいのですが、 macOS では基本的にどのアプリでも使用でき大変便利です。
このコマンドに似せてテキスト選択をキーボードだけで、操作したいと思ったので、その方法を書きます。

ちなみに経緯は kobito (Markdownエディタ)ではこのキーバインドが動作したので、自分のメインエディタである VSCode でも使用できるようにしたかったというものです。

VScodeでショートカットを登録

VSCodeのバージョンは 1.28.1 での操作です。
今回の件に限らず VSCode では下記の方法で好きなキーバインドを登録することができます。
メニューバーから
File->Preferences->Keyboard Shortcuts
日本語だと
ファイル->基本設定->キーボードショートカット
キーボードショートカットという画面になりますのでその中から
keybindings.json を開きます。

あるいは コマンドパレット [Command + Shift + P] で keybind などと検索してもこのファイルにだどりつけるかと思います。

keyboard shotcut という項目に辿りつくかと思います。
ここの一番右のアイコンをクリックすると keybindings.json が開きます。

image.png

keybindings.json に下記をコピペします。


[
  {
    "key": "ctrl+shift+n",
    "command": "cursorDownSelect",
    "when": "editorTextFocus"
  },
  {
    "key": "ctrl+shift+p",
    "command": "cursorUpSelect",
    "when": "editorTextFocus"
  },
  {
    "key": "ctrl+shift+f",
    "command": "cursorRightSelect",
    "when": "editorTextFocus"
  },
  {
    "key": "ctrl+shift+b",
    "command": "cursorLeftSelect",
    "when": "editorTextFocus"
  },
  {
    "key": "ctrl+shift+a",
    "command": "cursorHomeSelect",
    "when": "editorTextFocus"
  },
  {
    "key": "ctrl+shift+e",
    "command": "cursorEndSelect",
    "when": "editorTextFocus"
  }
]

他にも default keybindingsを参考にいろいろ作れそうですね。
以上です。

takewell
新卒一年目, Web で世直ししたいです。
https://takewell.dev
zozotech
70億人のファッションを技術の力で変えていく
https://tech.zozo.com/
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away