2012-07-11 19 views
8

Tôi đang cố gắng thiết lập Pylint để chỉ thực hiện một số kiểm tra nhất định và không có ai khác, ví dụ: chỉ kiểm tra W0601 và W0612. Tôi đã thử sử dụng một đường dây enable= phần [MESSAGES CONTROL] của pylint.rc của tôi nhưng điều đó dường như không làm những gì tôi muốn.Cách thiết lập Pylint để chỉ thực hiện một số kiểm tra

Tôi đang sử dụng Pylint 0.25.1.

Trả lời

9

Có vẻ như một lỗi với cách phân tích các tệp rc.

thứ tự các vấn đề trên dòng lệnh (không có cơ sở?), Do đó bạn cần phải vô hiệu hóa đầu tiên sau đó kích hoạt:

pylint xyz.py --disable R,C,W,E --enable W0601,W0612 

Nhưng điều này không được phản ánh một cách chính xác với --generate-rcfile và không làm việc với --rcfile ... đây là những có thể là lỗi. Giống như #36584.

Trong tệp rc có dòng vô hiệu hóa, tất cả các tin nhắn bị tắt, ngay cả khi tắt trước khi bật như trên dòng lệnh.

[MESSAGES CONTROL] 
disable=R,C,W,E 
enable=W0601,W0612 
0

@aneroid: bạn có thể có vấn đề về trật tự trong việc tạo/đọc tệp cấu hình; và cũng rằng thực tế là thứ tự quan trọng trên dòng lệnh phải được ghi lại. Tôi đã lên kế hoạch và nhận xét vé bạn tham khảo cho phù hợp.

@ peter-graham, vì vậy có thể bạn phải sử dụng dòng lệnh để đạt được điều này cho đến khi vé # 36584 được sửa. Tôi muốn giới thiệu:

pylint --disable-all --enable=W0601,W0612 
+3

Pylint cho tôi 'không có tùy chọn như vậy' nếu tôi cố gắng sử dụng '--disable-all'. 'pylint --disable = I, C, R, W, E, F - có thể = W0601, W0612' hoạt động. –

+0

'--disable = all' thay vì' --disable-all' – kissgyorgy

6

Trong pylint> = 0.27 có một --disable=all tùy chọn mới

pylint --disable=all --enable=W0201

hoặc

pylint -d all -e W0201

Bạn có thể đặt nó trong file rc nhưng như aneroid chỉ ra có một lỗi vẫn có nghĩa là bạn không thể sau đó kích hoạt bất kỳ tin nhắn, trừ từ dòng lệnh, vì vậy:

[MESSAGES CONTROL] 
disable=all 

sau đó

pylint -e W0201

sẽ làm việc.

Các vấn đề liên quan