Cara Find Hanya di Folder Tertentu di Visual Studio Code

Seringkali kita perlu mencari kata atau pola tertentu di dalam proyek yang memiliki banyak folder. Jika menggunakan Find biasa (Ctrl+F), pencarian hanya dilakukan di file yang sedang terbuka. Untuk pencarian lintas file di dalam proyek, VS Code menyediakan fitur Find in Files (Ctrl+Shift+F) — dan di sinilah kita bisa membatasi pencarian hanya ke folder tertentu.

Cara Find Hanya di Folder Tertentu di Visual Studio Code

Membuka Find in Files

Ada beberapa cara membuka panel pencarian lintas file:

  1. Keyboard shortcut: Tekan Ctrl+Shift+F (Windows/Linux) atau Cmd+Shift+F (macOS).
  2. Menu: Klik Edit → Find in Files.
  3. Icon: Klik icon pencarian di panel Activity Bar, lalu klik tab Search.

Panel pencarian akan muncul di sidebar kiri dengan dua kolom utama: “Search” (kata yang dicari) dan “files to include” (filter file/folder).

Membatasi Pencarian ke Folder Tertentu

Di kolom “files to include”, kita bisa menuliskan path folder atau pola glob untuk membatasi pencarian.

Cara 1: Tulis Nama Folder Langsung

Jika hanya ingin mencari di dalam folder src, cukup ketik:

src

Untuk beberapa folder sekaligus, pisahkan dengan koma:

src, app/Controllers

Cara 2: Pakai Pola Glob

VS Code mendukung pola glob untuk pencarian yang lebih spesifik:

PolaArtinya
src/**/*.phpSemua file .php di dalam folder src (dan sub-folder)
app/Controllers/**/*.phpHanya file .php di Controllers
**/routes/*.phpSemua file .php di folder routes (di mana pun)
*.blade.phpSemua file Blade template di root

Cara 3: Klik Kanan Folder di Explorer

Cara tercepat: di panel Explorer, klik kanan pada folder yang ingin dicari, lalu pilih “Find in Folder…”. VS Code otomatis mengisi kolom “files to include” dengan path folder tersebut.

Mengecualikan Folder dari Pencarian

Selain memasukkan folder, kita juga bisa mengecualikan folder tertentu di kolom “files to exclude”. Contoh:

node_modules, vendor, storage/logs

Atau pakai pola glob:

**/{node_modules,vendor,dist}/**

Tips Tambahan

  • Regex: Centang ikon .* di kolom pencarian untuk menggunakan regular expression.
  • Match case: Centang icon Ab untuk pencarian huruf besar-kecil sensitif.
  • Whole word: Centang icon ab untuk mencari kata utuh saja (bukan bagian dari kata lain).
  • Pengaturan global: Bisa diatur di settings.json agar pencarian selalu exclude folder tertentu secara otomatis.
"search.exclude": {
    "**/node_modules": true,
    "**/vendor": true,
    "**/storage/logs": true
}

Keyboard Shortcuts untuk Pencarian

Sebagai developer, menghafal shortcut pencarian di VS Code bisa menghemat banyak waktu. Berikut shortcut yang perlu diketahui:

Shortcut (Windows/Linux)Shortcut (macOS)Fungsi
Ctrl+FCmd+FFind — cari di file aktif saja
Ctrl+Shift+FCmd+Shift+FFind in Files — cari lintas file dalam proyek
Ctrl+HCmd+HReplace — ganti teks di file aktif
Ctrl+Shift+HCmd+Shift+HReplace in Files — ganti teks lintas file
F4F4Next match — pindah ke hasil pencarian berikutnya
Shift+F4Shift+F4Previous match — kembali ke hasil sebelumnya

Singkatnya: Ctrl+F untuk satu file, Ctrl+Shift+F untuk semua file, dan tambah H untuk mode replace. Shortcut ini selalu konsisten di semua project, jadi sekali hafal, berguna seumur hidup.

Regex Search: Pola yang Sering Dipakai Developer

Bayangkan regex seperti filter pintar — bukan sekadar cari kata persis, tapi cari berdasarkan pola. Di VS Code, aktifkan regex dengan menekan tombol .* di kolom pencarian atau gunakan shortcut Alt+R.

Beberapa pola regex yang sering saya gunakan saat bekerja dengan codebase besar:

Pola RegexArtinya
function\s+\w+Mencari semua deklarasi function
TODO|FIXME|HACKMencari semua komentar TODO, FIXME, atau HACK
console\.(log|warn|error)Mencari semua console.log, console.warn, console.error
import\s+.*fromMencari semua import statement
\$\w+Mencari semua variabel PHP
class\s+\w+\s+extendsMencari class yang mewarisi class lain

Trik: kombinasikan regex dengan filter folder. Misalnya, ingin mencari semua TODO hanya di folder src? Ketik TODO|FIXME di kolom search, lalu src/**/*.php di kolom “files to include”. Hasilnya? Bersih dan relevan.

Search & Replace Lintas File

Suatu hari saya harus mengganti nama method getUserName() menjadi getDisplayName() di 50+ file. Gila kalau buka satu-satu. Untungnya, VS Code punya Replace in Files (Ctrl+Shift+H).

Cara pakainya:

  1. Tekan Ctrl+Shift+H — panel Replace in Files muncul.
  2. Ketik kata lama di kolom atas (getUserName).
  3. Ketik kata baru di kolom bawah (getDisplayName).
  4. Batasi folder di “files to include” (misal: src/).
  5. Klik Replace All untuk mengganti sekaligus, atau review satu per satu dengan tombol Replace.

Peringatan: selalu review hasil replace sebelum menekan “Replace All”. Satu typo bisa menghancurkan seluruh codebase. Cara aman: gunakan git branch terpisah dulu, lalu merge setelah yakin hasilnya benar.

Fitur ini sangat powerful untuk refactoring massal — rename variable, mengganti pattern kode yang sudah deprecated, atau membersihkan komentar debug yang tersebar di mana-mana.

Multi-Root Workspace Search

VS Code mendukung multi-root workspace — artinya kita bisa membuka beberapa folder sekaligus di satu window. Ini sangat berguna saat bekerja dengan monorepo atau project yang terpisah tapi masih saling terkait.

Ketika multi-root workspace aktif, panel Find in Files otomatis mencari di semua folder yang terbuka. Untuk membatasi ke satu folder saja, tulis nama folder workspace di kolom “files to include”. Misalnya, jika workspace memiliki dua folder frontend dan backend, ketik backend/src untuk hanya mencari di folder backend.

Fitur ini seperti punya beberapa jendela kamar yang bisa kita pilih mau mencari ke kamar yang mana — tanpa perlu membuka kamar satu per satu.

Cari via Terminal: grep dan ripgrep

VS Code juga punya integrated terminal, dan kadang lebih cepat mencari lewat CLI — terutama untuk proyek yang sangat besar. Dua tool andalan: grep dan ripgrep (rg).

Menggunakan grep

grep -r "searchTerm" src/

Perintah ini mencari searchTerm di semua file dalam folder src/ secara rekursif. Tambahkan -i untuk case-insensitive, atau --include="*.php" untuk filter tipe file.

Menggunakan ripgrep

rg "searchTerm" src/

ripgrep jauh lebih cepat dari grep karena otomatis mengabaikan file di .gitignore dan menggunakan parallel processing. Ini tool yang sama yang dijalankan di balik mesin pencarian VS Code. Kalau belum terinstal, install via brew install ripgrep (macOS) atau apt install ripgrep (Ubuntu).

Perbandingan singkat:

Fiturgrepripgrep (rg)VS Code Search
KecepatanSedangSangat cepatCepat
GUITidakTidakYa
ReplaceVia sed/awkTidak built-inYa, visual
Respect .gitignoreTidakYaYa
RegexBasicFull regexFull regex

Saya pribadi lebih suka VS Code Search untuk pencarian visual (bisa langsung klik jump ke file), tapi pakai rg di terminal untuk scripting atau CI/CD pipeline.

Wildcards dan File Type Filter

Beberapa trik wildcard yang sering saya pakai:

  • * — wildcard untuk satu level folder. Contoh: src/*/index.php mencari di sub-folder langsung di bawah src.
  • ** — wildcard untuk semua level sub-folder. Contoh: src/**/index.php mencari di src dan semua sub-folder di bawahnya.
  • *.php — filter hanya file PHP. Sangat berguna saat proyek campuran.
  • *.{php,blade.php} — filter beberapa ekstensi sekaligus.

Untuk pencarian case-sensitive, centang tombol Ab atau tekan Alt+C. Ini penting saat mencari nama class yang ada di camelCase vs snake_case — dua gaya penamaan yang sering bentrok dalam satu codebase.

Alternatif: IntelliJ, Sublime Text, dan Atom

VS Code bukan satu-satunya editor dengan pencarian lintas file. Berikut perbandingan singkat:

IntelliJ IDEA

IntelliJ punya fitur Find in Path (Ctrl+Shift+F — shortcut yang sama!). Kelebihannya: pencarian bisa di-scope ke “Module”, “Project”, “Directory”, atau bahkan “Scope” kustom. IntelliJ juga bisa melakukan structural search — mencari berdasarkan struktur kode (misal: semua method dengan annotasi @Override). Ini sangat powerful untuk project Java/Kotlin besar, tapi terasa berat untuk project kecil.

Sublime Text

Sublime Text menggunakan Find in Files (Ctrl+Shift+F) yang mirip dengan VS Code. Fitur “Where” memungkinkan filter folder. Kelebihannya: Multi-Cursor — bisa mengedit beberapa posisi sekaligus setelah pencarian. Cepat dan ringan. Kekurangannya: tidak se-intuitive VS Code untuk pemula.

Atom (Telah Discontinue)

Atom dari GitHub juga punya Find in Project (Ctrl+Shift+F). Fiturnya cukup lengkap termasuk regex dan filter. Sayangnya, Atom sudah officially discontinued oleh GitHub pada Desember 2022. Tapi kalau masih menggunakannya, fitur search-nya tetap fungsional.

Dari semua editor di atas, VS Code menurut saya menawarkan keseimbangan terbaik antara kemudahan penggunaan dan fitur pencarian yang lengkap.

Pengaturan Global di settings.json

Agar tidak perlu mengetik exclude setiap kali, kita bisa mengatur search.exclude di settings.json secara global. Ini seperti memberi instruksi ke VS Code: “Jangan pernah cari di folder-folder ini.”

// settings.json
{
  "search.exclude": {
    "**/node_modules": true,
    "**/vendor": true,
    "**/storage/logs": true,
    "**/*.min.js": true,
    "**/*.map": true
  },
  "search.useIgnoreFiles": true,
  "search.followSymlinks": false
}

Opsi search.useIgnoreFiles: true membuat VS Code otomatis mengabaikan file yang ada di .gitignore. Sangat berguna — kita tidak perlu mengecualikan node_modules atau dist secara manual.

Catatan Pribadi: Pengalaman Pertama

Saya ingat pertama kali harus mencari string error di project Laravel yang punya ratusan file. Awalnya saya buka file satu per satu — seperti mencari jarum di tumpukan jerami. Butuh waktu hampir satu jam untuk menemukan source masalah.

Kemudian seorang rekan senior bilang: “Coba Ctrl+Shift+F.” Sejak saat itu, dunia berubah. Pencarian yang tadi butuh satu jam, selesai dalam hitungan detik. Saya langsung ketagihan menjelajahi semua fitur pencarian VS Code — dari regex, glob pattern, sampai search & replace lintas file.

Pelajaran yang saya dapat: tool yang tepat di tangan yang tepat bisa menghemat waktu luar biasa. Jangan pernah meremehkan fitur “sederhana” seperti pencarian — di balik tampilannya yang sederhana, VS Code Search adalah mesin yang sangat powerful.

Dengan membatasi pencarian ke folder tertentu, hasil pencarian menjadi lebih relevan dan tidak tercampur dengan file-file yang tidak diinginkan. Selamat mencoba! 😊

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *

Situs ini menggunakan Akismet untuk mengurangi spam. Pelajari bagaimana data komentar Anda diproses