pycharm mengubah tab menjadi spasi secara otomatis

111

Saya menggunakan IDE pycharm untuk pengembangan python, ini berfungsi dengan baik untuk kode django sehingga diduga bahwa mengubah tab ke spasi adalah perilaku default, namun dalam IDE python memberikan kesalahan di mana-mana karena tidak dapat mengubah tab menjadi spasi secara otomatis apakah ada cara untuk mencapainya ini.

Vaibhav Mishra
sumber

Jawaban:

124

Ubah gaya kode untuk menggunakan spasi sebagai ganti tab:

spasi

Kemudian pilih folder yang ingin Anda ubah di Project View dan gunakan Code| Format Ulang Kode .

CrazyCoder
sumber
30
ini adalah pengaturan default saya namun sepertinya ada beberapa bug di IDE yang tidak berfungsi jadi yang saya lakukan adalah Edit> Convert Indent> Spaces
Vaibhav Mishra
1
Python harus memiliki lekukan 4 spasi.
Josh
2
Jawaban ini tidak berhasil untuk saya. Tidak yakin mengapa itu diterima, mengingat itu juga tidak berfungsi untuk OP. Pertanyaan tindak lanjut: stackoverflow.com/questions/47102828/…
Stefan Monov
3
Dalam kasus saya, saya harus menonaktifkan Konfigurasi Editor di bawah Editor -> Gaya Kode -> Aktifkan Dukungan Konfigurasi Editor, karena saya secara tidak sadar memiliki ~/.editorconfigfile yang menggantikan pengaturan PyCharm.
Simpanse Suka Berperang
1
Anda dapat memaksanya untuk menggunakan spasi bahkan untuk file yang ada dengan menghapus centang "Deteksi dan gunakan indentasi file yang ada untuk mengedit" di bawah "Gaya Kode" umum. Setelah itu, mengetik tab pada file yang sudah ada akan langsung menyisipkan spasi daripada tab.
David Kinghorn
64

Untuk pilihan, Anda juga dapat mengubah pilihan menggunakan fungsi "Ke spasi". Saya biasanya hanya menggunakannya melalui ctrl-shift-A kemudian mencari "To Spaces" dari sana.

Kian Seong rendah
sumber
sepertinya tidak berfungsi untuk banyak file sekaligus. melakukannya untuk setiap file satu per satu agak merepotkan ...
CGFoX
Anda tuan, adalah kenikmatan hidup
Juggernaut
61

Ini hanya mengonversi tab tanpa mengubah apa pun:

Edit -> Convert Indents -> To Spaces
runDOSrun
sumber
1
Hei, ini harus diterima. Ini bekerja secara lokal. Misalnya berguna untuk Makefile yang membutuhkan tab sebagai indentasi
swdev
9

ctrl + shift + A => buka jendela pop untuk memilih opsi, pilih spasi untuk mengubah semua tab sebagai spasi, atau ke tab untuk mengubah semua spasi sebagai tab.

Ravi
sumber
tab untuk diubah sebagai tab? apakah itu salah ketik?
Anvesh Yalamarthy
7

PyCharm 2019.1

Jika Anda ingin mengubah pengaturan umum:

Buka preferensi, di macOS ;atau di Windows / Linux Ctrl+ Alt+ S.

Pergi ke Editor -> Code Style -> Python, dan jika Anda ingin mengikuti PEP-8, pilih Tab size: 4 , Indent: 4 , dan Continuation indent: 8 seperti yang ditunjukkan di bawah ini:

masukkan deskripsi gambar di sini

Terapkan perubahan, dan klik OK.

Jika Anda ingin menerapkan perubahan hanya ke file saat ini

Opsi 1: Anda dapat memilih di bilah navigasi: Edit -> Convert Indent -> To Spaces. (lihat gambar di bawah)

masukkan deskripsi gambar di sini

Opsi 2: Anda dapat menjalankan tindakan "Ke Spaces" dengan menjalankan pintasan Temukan Tindakan : Adi macOS atau ctrlAdi Windows / Linux. Kemudian ketik "To Spaces", dan jalankan tindakan seperti yang ditunjukkan pada gambar di bawah ini.

masukkan deskripsi gambar di sini

lmiguelvargasf
sumber
1

ctr + alt + shift + L -> format ulang seluruh file :)

Aurel Curea
sumber
ke tab tidak berfungsi untuk mengubah blok kode yang ada. Ini adalah satu-satunya solusi yang berhasil untuk saya. Terima kasih!
Jed
0

Bagi saya itu memiliki file bernama ~ / .editorconfig yang menimpa pengaturan tab saya. Saya menghapus itu (pasti itu akan menggigit saya lagi suatu hari nanti) tetapi memperbaiki masalah pycharm saya

Ken Myers
sumber