KeiFugaku
@KeiFugaku (fugaku kei)

Are you sure you want to delete the question?

If your question is resolved, you may close it.

Leaving a resolved question undeleted may help others!

We hope you find it useful!

VS Codeで補完動作中のキーバインドを工夫したい。

コード入力中に遭遇するちょっとしたもどかしさなのですが...

もはや事実上の標準テキストエディタと言っても過言ではないVisual Studio Code(VSCode)は確かに高機能で使い勝手もよい素晴らしいエディタだと思います。

どちらかというと、Webアプリとして実装されたEclipse Theiaをよく使用しますが、ソフトウェア開発の解説書やエンジニア向けの雑誌の記事などでも、このエディタでのコーディングを前提としたものがほどんどです。

このエディタの解説書や雑誌の特集も、かなりの頻度で目にすることがありますが、内容的にはいかに高品質な拡張機能が多数提供されているかということや、評価の高い拡張機能の使い方の紹介が大きな割合を占めているようです。

ここでは、基本的なコードの入力中の操作に関して少々煩わしく感じていることを、スマートに解決できないかということで質問させていただきます。

それはVSCodeのセールスポイントとも言える、いわゆるインテリセンスと呼ばれる、入力中に自動的に補完候補をリアルタイム表示してくれる機能についてですが、補完候補の確定にバインドされているキーが、改行を入力するためのENTERキーと重複していることによるものです。

例えば下記のように入力途中で補完候補が表示されているとしてですが、
image.png
このまま候補を選択せずに、改行したいという場合です。
デフォルトではまずESCキーを押下して補完候補を消去してからENTERキーを押下するという操作になってしまうのが少々煩わしく感じます。

ESCキーが押しづらければ、設定で別のキーに割り当てればよいという話だと思いますが、例えばSHIFTキーを押下しつつENTERといった操作で同様のことが出来るように設定できないものでしょうか?

似たようなケースで、やはり改行しようとする際ですが、たまたま反応が悪く一瞬でも補完候補の出現が遅れたりすると、勝手に補完候補無しと判断してしまいENTERキーを押下すると、直前で補完候補が出現し、一番目の候補を意図せず選択してしまい、改行もされないという結果が生じます。

人気の高いエディタということでアップデートも頻繁で、仕様の変化も早く、なかなかついていけない状況も有りますもので、どなたかVSCodeのエキスパートの方にアドバイスいただけないものかと期待しております。

0

1Answer

Settings(Ctrl+,)を開いてEditor: Accept Suggestion On EnteroffにするとTabのみで補完候補が選択されるようになり、Enterが改行を入力するようになります。

また、Keyboard Shortcuts(Ctrl+k Ctrl+s)の以下を変更すればキーバインドを変更できます。

{
  "key": "tab",
  "command": "acceptSelectedSuggestion",
  "when": "suggestWidgetVisible && textInputFocus"
}

公式ドキュメントとしては、以下に少し解説があります。
https://code.visualstudio.com/docs/editor/intellisense#_settings

1Like

Comments

  1. @KeiFugaku

    Questioner

    早速の回答ありがとうございます。
    さすがスタンダードとなっているエディタだけであり、行き届いていますね。
    頂いたノウハウにより、今後は快適に使えるようになるのでうれしく思います。

Your answer might help someone💌