注意
タイトルで「特定の拡張子」と謳っていますが、正確には拡張子別の設定ではなく、VSCodeが認識している言語/テキストフォーマット別の設定です。
ただ、個人的にこっちのが目的に近いのでこのタイトル表記とさせていただきます。
設定したくなった理由
こんな感じで出てくるだけならまだしも、候補を選択してる意図がなくとも、エンターを連打するだけで入力されてしまいます。 MarkDownだとデフォルトでこのサジェスチョンがオフになっているのですが、plaintextに関してはサジェスチョン機能がオンになっているようです。【対処法】settings.jsonに記載する
①Cmd+Shift+PでPreferences: Open Settings(JSON)を選んでsetting.jsonを開く
②以下のように記述します。
※筆者の場合、txtファイルのようなplain textにのみ対応したかったので、別の拡張子に適応したい方はその部分を書き換えてください。
サジェスト機能を完全オフにしたい場合
"[plaintext]": {
"editor.quickSuggestions": false
}
Enterによる自動入力だけオフにしたい場合
"[plaintext]": {
"editor.quickSuggestions": true,
"editor.acceptSuggestionOnEnter": false
}
サジェストの候補は表示されますが、Enterでは入力されません。
入力したい場合は、Tabキーで入力されます。
所感
自分はVSCodeをメモ帳代わりに使用することもあります。
基本的には学んだ内容をMarkdown形式でまとめて、それらをGit/GitHubで管理、必要に応じてQiitaに投稿していたりします。(この記事もそう)
ただし、毎回Markdownでまとめるのはだるかったり、txtファイルで一時的になぐり書きを保存したいときもあって、その際に不便に感じたのでこんな感じでいじってみました。
自分の使いやすいように設定を少しずついじるの楽しいですね。
不便だと思ったら少し遠回りになってでも効率的な環境作りを積極的に行っていきたいです。
参考
Visual Studio Codeで、特定の言語にだけ効く設定を書く【言語指定でのエンコード固定と自動判別】
settings.jsonでの設定方法が書いてあります。
stackoverflow | Prevent autocomplete in Visual Studio Code
ここでサジェスチョン機能ON/OFFの設定方法が書かれています。
IntelliSense in Visual Studio Code
より詳細な設定方法がこちらに記載されています。
VSCodeの予測変換が鬱陶しいときの対処法
特定の言語や拡張子でなく、完全にVSCodeから機能をOffにする場合は直接設定を変更できるみたいです。