Scribble at 2025-08-31 08:05:18 Last modified: unmodified

Visual Studio Code (VSCode) でいつも面倒だなと思うのが、正規表現などを使ってコードやテキストの一部を置換するときだ。コード全体を対象 (haystack) にして置換するときは、探すべき文字列 (needle) と置換文字列を入力して、一箇所ずつ置換したりまとめて置換する、はっきり言って老眼には何のアイコンなのか分からないが、ともかくボタンを押せばいい。

非常に困惑させられるのが、選択した行だけを検索や置換の対象にする場合だ。これは、正しい手順で操作しないと、同じ手順を何度も最初からやり直しさせられてしまい、イライラさせられる。その正しい手順とは、まず最初に needle を指定する。検索する範囲ではない。これを間違えて、まず最初に Shift + arrow key で選択範囲を指定しても、結局は needle へ何か文字を入力したら選択範囲がクリアされてしまい、全範囲の検索として処理されてしまう。なので、また検索する範囲を指定しなおさなくてはいけない。まぁでも、そのていどはマシだ。しかし、その次に選択範囲だけを検索したまま、置換の対象を「選択範囲を検索」に切り替えるボタンを押さなくてはいけないのだが、こういう機能を使っていると、既に検索ボックスを Ctrl + f で出したときにボタンが押された状態になっていることがある。それで、そのまま選択した範囲を検索してくれていたら助かるのだが、実はそうではなく、ボタンが押された状態でもテキストの全体が検索されている結果なのだ。なので、いちど「選択範囲を置換」というボタンをトグルしなおさなくてはいけない。でも、これをいちどでも押すと、選択範囲がクリアされてしまうのだ。

まぁ、これが何のことを言っていて、なんで僕が VSCode を使っていてイライラさせられるのか、たぶん使っていない(あるいは VSCode で置換処理をしたこともない)人はわからないと思うが、

https://github.com/microsoft/vscode/issues/182954

このように置換が非常に面倒な手順であると感じる人はいるのである。

  1. もっと新しいノート <<
  2. >> もっと古いノート

冒頭に戻る