Chỉ sử dụng org-src-bảo vệ-thụt vào các khối mã cụ thể (hoặc bộ đệm, hoặc bất cứ thứ gì ngoài bối cảnh toàn cầu, thực sự)


7

Tôi đã Googling và đào sâu các org-babeltài liệu, nhưng nó không được phát hành nhiều.

Vấn đề là, một trong những điều tôi đang làm là sử dụng org-babel để làm rối nguồn Makefile . Trong đó, các tài liệu nêu rõ, và tôi hiểu tại sao nó làm, mà tôi cần phải đánh giá (setq org-src-preserve-indentation t), mà tôi có, ngay bây giờ.

Điều đó là, tôi không muốn kích hoạt giá trị này trên toàn cầu. Tôi có thể hiểu rằng nó có ý nghĩa đối với Python, Makefile hoặc các ngôn ngữ khác nhạy cảm với không gian trắng, nhưng tôi thực sự không muốn nó được kích hoạt ở nơi khác. Thêm vào đó, kết quả cuối cùng của việc này là tệp org cuối cùng sẽ không hoạt động đối với những người không bật giá trị theo mặc định, do đó, tệp org kết quả là ít di động hơn.

Tôi thích nó hơn nếu tôi chỉ có thể kích hoạt org-src-preserve-indentationtrên cơ sở mỗi khối mã (đó là nhập thêm, nhưng tôi có thể sống với điều đó), nhưng ngay cả một cài đặt dành riêng cho bộ đệm cũng được chấp nhận. Vấn đề là, tôi không chắc làm thế nào để làm điều đó.

Tôi nghi ngờ rằng điều đó có thể được thực hiện bằng cách tận dụng cách #+HEADERcài đặt có thể tránh được mã Lisp, nhưng điều đó không có nghĩa là mỗi khi tôi làm rối tệp, hoặc một cái gì đó, cài đặt sẽ được giữ mỗi lần? Tôi không muốn làm điều đó, điều đó chỉ làm cho tập tin không thể đoán trước để sử dụng.

Câu trả lời:


5

Dựa trên phản hồi tôi nhận được từ nhóm chế độ org của Google+ , cũng như đọc các biến cục bộ đệm , cuối cùng tôi đã sử dụng M-x add-file-local-variable RET org-src-preserve-indentation RET tđể cuối cùng thêm khối mã này vào cuối tệp org của mình:

# Local Variables:
# org-src-preserve-indentation: t
# End:

Khi tôi làm mới thiết lập địa phương (tức báo chí Cc trên những lập luận tiêu đề), Emacs hỏi tôi nếu tôi muốn sử dụng biến cục bộ đệm, và sau đó bộ org-src-preserve-indentationđể tcho bộ đệm này một mình.

Điều này dường như để giải quyết vấn đề theo ý thích của tôi, vì vậy tôi sẽ đánh dấu câu hỏi này.

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.