質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
grep

grepはコマンドライン上でテキスト検索を可能にするユーティリティーです。元はUnixのために用意されたものです。

UTF-8

UTF-8は8ビット符号単位の文字符号化形式及び文字符号化スキームです。データ交換方式、ファイル形式としては、一般的にUTF-8が使われる傾向があります。

Q&A

0回答

12517閲覧

【Visual Studio Code】文字エンコードを自動判定してGrep検索をしたい

IkazoIchikawa

総合スコア38

grep

grepはコマンドライン上でテキスト検索を可能にするユーティリティーです。元はUnixのために用意されたものです。

UTF-8

UTF-8は8ビット符号単位の文字符号化形式及び文字符号化スキームです。データ交換方式、ファイル形式としては、一般的にUTF-8が使われる傾向があります。

0グッド

0クリップ

投稿2018/06/09 09:24

編集2018/06/10 01:09

実現したいこと・問題点

サクラエディタ から Visual Studio Code(以下VSCode) への乗り換えを検討しています。

その中で、Grep検索(ファイル間の検索)において、サクラエディタでは出来たけれど、VSCodeでは出来ない検索があり、この回避方法を探しています。

それは、Shift_JISで書かれたファイル内の日本語文字に対するGrep検索です。

以下のような場合に、サクラエディタはヒットするけれど、VSCodeはヒットしないです。

↓ディレクトリ、ファイル構成↓

test(ディレクトリ) ┗ code.bas (←Shift_JISで作成)

↓code.basの内容↓

Private Const DOT As String = "." '小数点表記 Private Const DEFAULT_LIMIT_OF_FRC_DIGITS As Long = 30 '求める小数点以下の最大桁数

上記のディレクトリに対して、検索キーワード小数点で検索をかけます。

サクラエディタなら、こんな感じでヒットします

□検索条件 "小数点" 検索対象 *.* フォルダ <`test`のあるディレクトリ> (サブフォルダも検索) (英大文字小文字を区別しない) (文字コードセットの自動判別) (一致した行を出力) ■"<`test`のあるディレクトリ>\test\code.bas" [SJIS] ・( 1,36 ): Private Const DOT As String = "." '小数点表記 ・( 2,60 ): Private Const DEFAULT_LIMIT_OF_FRC_DIGITS As Long = 30 '求める小数点以下の最大桁数![イメージ説明](523e2c54b1fc473ad835f2d653574f07.png) 2 個が検索されました。

VSCode の場合は、以下のようになってしまいます

VSCodeのディレクトリが testになっている状態で、

vs1

↓以下のように検索↓

vs2

ヒットしません、、、

以下のようにすると一応ヒットするのですが、
目的とする運用とは違うので採用したくないのです

  • code.basをVSCode上で開いておいて、そのまま閉じずに検索する


ヒットするファイルの存在を予め把握しておく必要があります。
ヒットするファイルの存在を把握せずにGrep検索したいのです

  • VSCodeのユーザー設定(settings.json)に"files.encoding": "shiftjis"を追加する


VSCodeで新しく作成したファイルがShift-JISになってしまいます。
今までに作成したShift-JISなファイルはそのままにして、
今後新たに作成するファイルはUTF-8にしたいのです。

アドバイスしてほしいこと

上記のような条件でもヒットするようにしたいのですが、方法はありますか?
VSCodeの設定を眺めてみましたが、それらしい設定項目が見つけられませんでした。

使用している環境

  • Windows7(64bit)
  • Visual Studio Code Ver 1.24.0
  • ↓VSCodeのユーザー設定(settings.json)内容↓
"workbench.startupEditor": "newUntitledFile", "files.hotExit": "off", "window.restoreWindows": "none", "files.autoGuessEncoding": true

よろしくおねがいします

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問