pycharm tự động chuyển đổi tab thành dấu cách


111

Tôi đang sử dụng pycharm IDE để phát triển python, nó hoạt động hoàn toàn tốt cho mã django vì vậy tôi nghi ngờ rằng việc chuyển đổi tab thành dấu cách là hành vi mặc định, tuy nhiên trong python IDE đang đưa ra lỗi ở khắp mọi nơi vì nó không thể tự động chuyển đổi tab thành dấu cách. Có cách nào để đạt được không điều này.

Câu trả lời:


124

Thay đổi kiểu mã để sử dụng dấu cách thay vì tab:

không gian

Sau đó chọn một thư mục bạn muốn chuyển đổi trong Project View và sử dụng Code| Định dạng lại mã .


30
đây là thiết lập mặc định của tôi tuy nhiên nó có vẻ như đã có một số lỗi trong IDE mà đã không làm việc vì vậy những gì tôi đã làm là Edit> Convert Thụt lề> Spaces
Vaibhav Mishra

1
Python phải có thụt lề 4 dấu cách.
Josh

2
Câu trả lời này không phù hợp với tôi. Không chắc tại sao nó được chấp nhận, vì nó cũng không hoạt động cho OP. Theo dõi câu hỏi: stackoverflow.com/questions/47102828/...
Stefan Monov

3
Trong trường hợp của tôi, tôi đã phải tắt Cấu hình trình chỉnh sửa trong Trình chỉnh sửa -> Kiểu mã -> Bật hỗ trợ cấu hình trình chỉnh sửa, vì tôi vô tình có ~/.editorconfigtệp ghi đè cài đặt của PyCharm.
Tinh tinh hiếu chiến vào

1
Bạn có thể buộc nó sử dụng khoảng trắng ngay cả cho các tệp hiện có bằng cách bỏ chọn "Phát hiện và sử dụng thụt lề tệp hiện có để chỉnh sửa" trong "Kiểu mã" chung. Sau đó, gõ tab trên tệp hiện có sẽ ngay lập tức chèn khoảng trắng chứ không phải tab.
David Kinghorn

64

Đối với các lựa chọn, bạn cũng có thể chuyển đổi lựa chọn bằng cách sử dụng chức năng "Sang khoảng trắng". Tôi thường chỉ sử dụng nó qua ctrl-shift-A rồi tìm "To Spaces" từ đó.


dường như không hoạt động cho nhiều tệp cùng một lúc. làm việc đó cho từng file riêng lẻ là loại một rắc rối ...
CGFoX

bạn thưa ngài, là có mùi cuộc sống
Juggernaut

61

Điều này chỉ chuyển đổi các tab mà không thay đổi bất kỳ điều gì khác:

Edit -> Convert Indents -> To Spaces

1
Này, điều này nên được chấp nhận. Nó hoạt động cục bộ. Ví dụ hữu ích cho Makefile rằng cần phải có tab như thụt đầu dòng
swdev

9

ctrl + shift + A => mở cửa sổ bật lên để chọn các tùy chọn, chọn dấu cách để chuyển đổi tất cả các tab dưới dạng dấu cách hoặc sang tab để chuyển đổi tất cả dấu cách dưới dạng tab.


tab để chuyển đổi dưới dạng tab? nó là một lỗi đánh máy?
Anvesh Yalamarthy

7

PyCharm 2019.1

Nếu bạn muốn thay đổi cài đặt chung:

Mở tùy chọn, trong macOS ;hoặc Windows / Linux Ctrl+ Alt+ S.

Đi tới Trình chỉnh sửa -> Kiểu mã -> Python và nếu bạn muốn làm theo PEP-8, hãy chọn Kích thước tab: 4 , Thụt lề: 4Thụt lề tiếp tục: 8 như hình dưới đây:

nhập mô tả hình ảnh ở đây

Áp dụng các thay đổi và nhấp vào OK.

Nếu bạn chỉ muốn áp dụng các thay đổi cho tệp hiện tại

Tùy chọn 1: Bạn có thể chọn trong thanh điều hướng: Chỉnh sửa -> Chuyển đổi Thụt lề -> Sang Dấu cách. (xem hình ảnh bên dưới)

nhập mô tả hình ảnh ở đây

Tùy chọn 2: Bạn có thể thực hiện hành động "Tới Spaces" bằng cách chạy phím tắt Tìm Hành động : Atrên macOS hoặc ctrlAtrên Windows / Linux. Sau đó gõ "To Spaces" và chạy hành động như thể hiện trong hình dưới đây.

nhập mô tả hình ảnh ở đây


1

ctr + alt + shift + L -> định dạng lại toàn bộ tệp :)


sang các tab không hoạt động để chuyển đổi khối mã hiện có. Đây là giải pháp duy nhất làm việc cho tôi. Cảm ơn!
Jed

0

Đối với tôi, đó là có một tệp có tên ~ / .editorconfig đang ghi đè cài đặt tab của tôi. Tôi đã xóa nó (chắc chắn rằng nó sẽ cắn tôi một lần nữa vào một ngày nào đó) nhưng nó đã khắc phục sự cố pycharm của tôi

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.