Bagaimana saya bisa mencegah "Anda memiliki tab dan spasi bercampur. Perbaiki ini?" pesan?

155

Setiap kali saya menempelkan kode ke dalam file .cs saya, saya mendapatkan yang ditakuti "Anda memiliki tab dan spasi campuran. Perbaiki ini?" pesan. Ini memiliki tiga opsi:

Tabify
Untabify
Don't show again

Saya pertama kali mencoba "Tabify" beberapa kali, sampai akhirnya saya muak dan memilih "Jangan tampilkan lagi"; tapi itu adalah jiwa - saya masih mengerti. Saya bahkan mencoba "Untabify" tetapi tidak berhasil. Apakah ada beberapa pengaturan yang dapat saya atur untuk mencegah masalah yang terjadi saat ini?

VisualStudio2013 tabify untabify

B. Clay Shannon
sumber
Apakah Anda mengedit file Anda antara waktu yang Anda pilih "Jangan tampilkan lagi" dan waktu pesan terjadi lagi? Apakah mungkin Anda membuat situasi "tab dan spasi campuran" baru karena hasil edit Anda?
David K
Itu mungkin, tapi saya tidak melakukan hal yang berbeda dari yang selalu saya lakukan, dan saya hanya mendapatkan pesan itu dengan proyek / lingkungan ini (VS 2013).
B. Clay Shannon
1
Saya menduga ini benar-benar hanya hal VS2013, karena saya sering menemukan file dengan tab dan spasi campuran dan versi Visual Studio yang saya gunakan (beberapa dari mereka, semua sebelum 2013) tidak pernah mengeluh tentang hal itu.
David K
2
Mengalami masalah yang sama persis di VS2012
taz

Jawaban:

252

Terdengar seperti Anda memiliki Visual Studio Produktivitas Power Tools 2013 diinstal. Buka pengaturannya dan matikan "Fix Mixed Tabs" ...

Tools -> Options -> Productivity Power Tools -> Turn Extensions On/Off

Jika Anda memiliki pengaturan VS default, tab di editor dikonversi menjadi spasi. Jadi (secara teori) jika Anda mengklik Untabify ketika pesan muncul, itu akan mengubah semua tab menjadi spasi dan kesalahan tidak akan muncul waktu berikutnya. Apakah Anda bekerja dengan pengembang lain yang memiliki pengaturan tab berbeda di IDE mereka?

UPDATE: Di Visual Studio 2017 dan seterusnya , ini adalah ekstensi yang berdiri sendiri bernama "Perbaiki Tab Campuran" yang dapat dinonaktifkan atau dihapus dari jendela "Ekstensi dan Pembaruan" (Alat> Ekstensi dan Pembaruan).

masukkan deskripsi gambar di sini

Anthony Chu
sumber
Tidak, saya satu-satunya yang mengerjakan proyek ini; itu tidak di kontrol sumber (saya hanya menggunakan add-in yang memungkinkan saya untuk "Proyek Cadangan" kapan pun saya mau, dan menyimpannya ke file .zip)
B. Clay Shannon
1
LOL ... Untuk apa nilainya, saya hanya mengaktifkan pengaturan, meletakkan banyak tab ke file saya menggunakan Notepad, dan kemudian mendapat prompt. Mengklik untabify mengubah semua tab menjadi spasi, dan saya tidak mendapatkan pesan lagi untuk file itu.
Anthony Chu
Setelah "alat produktivitas" ini menghabiskan waktu beberapa jam untuk debugging, alat ini dimatikan. Ini "memperbaiki" ruang antar kelas, mengubahnya menjadi sebuah tab, yang karena cara segala sesuatunya terlihat seperti ruang. Tentu saja, memilih kelas itu? Tidak mungkin, seperti "classA [tab] classB".
David T. Macknet
8
Ini perlu diperbarui untuk VS2017 sekarang. Ternyata, ini adalah ekstensi sendiri yang dapat dinonaktifkan sekarang
Joe Phillips
@ JoPhillips apakah Anda mengetahui sesuatu tentang ini untuk VS2017? Saya bahkan menghapus ekstensi, tetapi masih mendapat pesan yang mengganggu. (btw: pengaturan untuk ekstensi masih terus muncul di jendela pengaturan vs setelah deinstallation dan restart).
René Vogt
74

Pembaruan untuk Visual Studio 2017. Jika Anda ingin menonaktifkan "Anda memiliki tab dan spasi campuran. Perbaiki ini?" pesan, Anda harus pergi ke

Alat → Ekstensi dan Pembaruan ...

Di jendela yang muncul, cari Perbaiki Tab Campuran (gambar di bawah) dan klik Nonaktifkan atau Copot berdasarkan apa yang Anda inginkan.

Menonaktifkan tab Campuran

Milan Leškanič
sumber
3
Saya berharap itu akan dilakukan secara otomatis. Saya memiliki editor teks yang diatur untuk menggunakan tab, bukan spasi, tetapi ketika saya pergi ke baris baru, indentasi ditetapkan sebagai spasi.
Sinjai
1
Bekerja untuk Visual Studio 2019 juga.
userom
3
Untuk VS 2019 itu adalah " Ekstensi → Kelola Ekstensi ".
Uwe Keim
13

Terkait: Jika Anda ingin Tools Daya Produktivitas memberi tahu Anda tentang tab / spasi, tetapi Anda tetap mendapatkan pesan tepat setelah Anda mengklik Perbaiki ini kemudian lihat di Alat> Opsi> Editor Teks> [bahasa]> Tab.

Setel ini menjadi Keep tabs

Jika Anda mengaturnya untuk menyisipkan spasi dan Anda mengklik tab pada pemberitahuan Power Tools maka VS akan memasukkan kembali spasi setelah menyimpan, menyebabkan pemberitahuan untuk segera muncul lagi ... dan sekarang Anda terjebak dalam satu lingkaran.

Koert van Kleef
sumber
3

Edit file dengan vim run: retab dan simpan file dan selesai!

vim file 
:retab
:wq

dengan: retab Anda dapat mengonversi semua tab dalam spasi, jika Anda mengatur expandtab (: atur bentangkantab) itu berarti bahwa perluas semua tab dalam spasi atau sebaliknya (: atur noexpandtab) dan semua tab yang dibuat dengan spasi akan dikonversi ke tab.

Sérgio
sumber
atau hanya autoformat di studio visual dan itu melakukan hal yang sama
John Livermore