Thụt với 4 khoảng trắng, nhưng hiển thị 2


7

Trong công việc, chúng tôi có một chính sách quy định rằng chúng tôi phải sử dụng 4 khoảng trắng để thụt lề và theo tôi, nó làm cho mã khó đọc hơn.

Có thể thụt lề với 4 khoảng trắng, nhưng hiển thị dưới dạng 2 khoảng trắng?


1
Tôi muốn nói điều này có ít hoặc không có gì để làm với spacemacs. Câu hỏi hay mặc dù. Tôi quan tâm đến một giải pháp.
PythonNut


1
Sắp xếp một cách tiếp cận "tab người nghèo"? Tôi có thể tưởng tượng điều này không quá khó để áp dụng cho tất cả các không gian hàng đầu, nhưng phức tạp hơn nếu bạn muốn phân biệt thụt lề với căn chỉnh.
phils

1
Tôi đang đoán dữ dội ở đây, nhưng bạn có thể lập bảng ở các điểm dừng bốn không gian, sau đó hiển thị các tab bằng cách sử dụng các điểm dừng hai không gian và cuối cùng không thể xác định được tại các điểm dừng bốn không gian? (Nhưng ý tưởng này sẽ hoạt động kém cho các dòng tiếp tục.)
Norman Ramsey

Đây có lẽ nên là một bình luận, không phải là một câu trả lời.
PythonNut

Câu trả lời:


1

Thực sự chỉ có một câu trả lời có thể hoạt động cho tất cả mọi người mọi lúc, ít nhất là nếu bạn muốn cả khả năng xem mức tăng thụt ở các độ rộng khác nhau và để có thể căn chỉnh các dòng tiếp tục một cách nhất quán với mức độ thụt dòng của dòng. từ: Sử dụng Tab thông minh .

Để biết giải thích về tất cả các vấn đề với thụt lề và căn chỉnh các dòng tiếp tục, hãy xem Tab Are Evil . (Tabs là không thực sự ác tất nhiên, nó chỉ là một vấn đề khi họ bị lạm dụng cho nhiều mục đích - khi được sử dụng một cách chính xác họ đang . Tạo điều kiện cho công cụ để xem thụt đầu dòng ở độ rộng khác nhau)

Ưu điểm quan trọng nhất của việc sử dụng các tab để thụt lề và khoảng trắng để căn chỉnh là người ta cũng có thể xem các mức tăng thụt đầu dòng với các độ rộng khác nhau bên ngoài trình chỉnh sửa. Ví dụ: bằng cách đơn giản, tab thiết lập dừng mọi số lượng không gian mong muốn trong thiết bị đầu cuối của một người (trình giả lập), ngay cả chế độ xem thô (ví dụ cat file) của tệp được thụt lề và liên kết không gian sẽ trông như mong muốn cho dù chiều rộng tab của thiết bị đầu cuối được đặt thành . Kỹ thuật Tab thông minh này thậm chí sẽ hoạt động đối với những người chỉnh sửa nhỏ hơn đó, ngay cả khi chỉ bằng cách lịch sự yêu cầu người dùng của họ cẩn thận hơn một chút khi họ nhấn và khi họ nhấn để họ có thể thực hiện Tab thông minh theo cách thủ công .


0

Hãy thử https://www.emacswiki.org/emacs/redshift-indent.el .

Xem C-h f redshift-indentđể sử dụng.

Không sử dụng phiên bản này nếu bạn sử dụng các tab để thụt lề (mặc dù trừ khi bạn trộn các khoảng trắng và tab, bạn không gặp vấn đề gì khi bắt đầu, như đối với cách tiếp cận chỉ dành cho tab bạn chỉ có thể điều chỉnh tab-widthcho phù hợp).

Nếu bạn thụt lề với không gian riêng, tôi tin rằng điều này sẽ ổn.

Tôi đã không định phát hành nó cho đến khi tôi theo dõi một báo cáo lỗi thuộc tính văn bản (đang chờ tôi cung cấp thêm chi tiết về các tình huống trong đó mọi thứ không hoạt động), nhưng bạn có thể thấy nó hoạt động cho bạn bất kể. Tôi đã quyết định đưa nó lên Wiki vì nó là một tài khoản khi thấy một câu hỏi khác Xem mã với sự thụt lề khác với lưu vào đĩa - trước khi tôi nhận ra rằng câu hỏi kia thực sự không phải là một bản sao sau đó ... chỉ nên đăng một câu trả lời cho câu hỏi thích hợp ...


2
Vui lòng không lưu trữ bất kỳ dự án mới nào trên Emacswiki.
wasamasa 17/03/2016

1
Chà, ý định của tôi là cuối cùng sẽ có trên GNU ELPA. Bây giờ nó đã có trên Wiki. Hãy thử mã, thay vì chỉ nhận xét về lưu trữ.
phils 17/03/2016
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.