Bagaimana cara mengubah tab menjadi spasi dan sebaliknya pada file yang sudah ada

107

Saya tidak tahu bagaimana melakukan ini untuk kehidupan saya selain melakukan pencarian-ganti pada 4 spasi dan mengonversi ke tab ( Versi 0.10.2 ). Saya tidak dapat memikirkan editor / IDE yang tidak memiliki fitur khusus untuk melakukan ini. Apakah VSCode?

Zach Lysobey
sumber

Jawaban:

185

Sejak perbaikan: https://github.com/Microsoft/vscode/issues/1228 editor mendukungnya di luar kotak. Cukup pergi untuk:

  1. F1,
  2. indentationToSpacesatau indentationToTabs(tergantung kebutuhan Anda)
  3. Enter.
Peter Butkovic
sumber
22
Ini hanya mengubah spasi / tab terdepan.
Nigel Scott
13
Untuk langkah 1, Anda juga dapat melakukannyactrl+shift+p
AlexG
Lihat jawaban saya di bawah untuk mengonversi spasi / tab non-leading. stackoverflow.com/a/51735845/263139
jrupe
7
Tidak ada jawaban yang mengubah setiap tab menjadi jumlah spasi yang benar dan BERBAGAI. Misalnya, masukkan teks ini dan kemudian ubah: Baris 1: "A \ tB". Baris 2: "ABC \ tD".
typpo
TERIMA KASIH saya telah tersesat dalam utas selama 2 jam, dan inilah yang saya butuhkan
Brian White
52

Cara lain untuk melakukannya adalah dengan mengklik indentasi saat ini (Tab / Spaces: n) di footer yang akan membuka opsi indentasi tempat Anda dapat memilih apa yang ingin Anda lakukan. masukkan deskripsi gambar di sini

maksimum
sumber
9
Ini hanya mengubah tab dalam lekukan, tidak semua tab.
David Diberikan
38

Jika Anda mencoba mengonversi tab non-utama menjadi spasi (atau sebaliknya), Anda dapat menggunakan pencarian regex dan mengganti.

  1. Tekan CTRL + H.
  2. Klik .*tombol untuk menelusuri menggunakan ekspresi reguler.
  3. Untuk mencari tab masuk ke [\t]dalam kotak Temukan.
  4. Masukkan spasi di kotak Ganti dan lakukan penggantian Anda.

Kotak pencarian dalam mode regex: tangkapan layar dari kotak telusur regex VSCode

jrupe
sumber
21
Ini mengubah setiap tab menjadi jumlah spasi yang sama, yang mana ini tidak benar.
David Diberikan
tidak berfungsi, tambahkan lebih banyak ruang dan semuanya menjadi kacau
Emmanual
Ini sangat membantu jika Anda ingin mengonversi format data yang dipisahkan tab menjadi dipisahkan koma. :)
Breedly
6
  1. Pilih Ganti: CTRL-H
  2. Masuk ke Tab Horizontal di kotak Temukan: tahan ATL dan ketik 009 pada keypad.
  3. Masukkan spasi (atau lebih banyak spasi) ke dalam kotak Ganti: tekan spasi
  4. Tekan Enter untuk mulai mengganti Tab dengan Spasi.
pengguna9700262
sumber
1
Ini tidak berhasil untuk saya, tetapi saya memposting jawaban di bawah ini untuk melakukan ini untuk spasi / tab non-leading menggunakan ekspresi reguler.
Jrupe
8
Ini mengubah setiap tab menjadi jumlah spasi yang sama, yang mana ini tidak benar.
David Diberikan