LoginSignup
17
13

More than 5 years have passed since last update.

Visual Studio Codeでバックスペースに悩まされたら

Posted at

TL;DR

  • VSCodeで日本語入力マジ鬼門
  • VSCode側では対応予定ないみたい
  • pre-commit hookでもって、せめてコードには残らないようにしてやろう

対象読者 or 前提条件 or 環境

VSCodeで、バックスペースの混入に悩まされている人

さらばATOM

最近ATOMのgoプラグインの開発が滞ってる感があったので、Visual Studio Codeへ乗り換え中です。
ところがどっこい、罠がありました。

VSCodeの日本語入力問題

最近Slackでも問題になった「Mac・IME・Chromiumの組み合わせでバックスペースがゴミとして入力されちゃう問題」が、Visual Studio Codeでも一部影響を受けているようです。
Markdownなどを書いていると、日本語の合間合間に \b(backspace;0x08) が入ってしまいます。

https://github.com/Microsoft/vscode/issues/24981
https://bugs.chromium.org/p/chromium/issues/detail?id=714771

特段の対応予定は無いみたい

VSCode的には、Chromiumの最新版が来るのを待つらしい。
それはエディタとしてどうなの。

だからvimを使えと

ATOMは?

Electronといやあ、Atomはどうなんだよと思ったら、Electronのバージョンが古いために問題になってないみたい。
ai-analyst-back 2017-06-20 19-32-15.png
(現時点での最新は1.6.x)

それはそれでどうなんだ…

いくらなんでもCommitされるのは困る

編集時に意図しない文字が紛れ込むのは1億歩くらいゆずって エディタではなくクソを吐く何かとして 認めてやるとして、いくらなんでもそれがcommitされてしまうのはあまりにもダサいので、pre-commit hook でなんとかしようと思います。

必要なもの

  • ggrep(gnu-grep)

brew install grep とかしましょう

やるべきこと

.git/hooks/pre-commit に、以下コマンドを追加(または新規作成)します。

! git diff --cached --name-only | xargs -n1 ggrep -Hne $'\b'

.git/hooks/pre-commit に実行権限を付与するのを忘れないように。

参考情報

pre-commit hook の使い方

あとがき

VSCodeがエディタになりますように。

17
13
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
17
13