2012-03-19 31 views
9

Tôi đang cố chỉnh sửa tài liệu bằng chế độ org. Tài liệu đại diện cho một bài đăng trên blog. Tôi cần cơ thể của bài viết được trong markdown vì vậy tôi đang sử dụng một khối src.Stentation lạ trong chế độ emacs org src block

Vấn đề là khi tôi thay đổi hoặc lưu văn bản trong khối src sau khi mở nó trong bộ đệm khác bằng cách sử dụng C-c ', có một số loại tự động được áp dụng làm rối loạn định dạng của tôi.

Dưới đây là chi tiết.

Bắt đầu với với một bộ đệm mà trông như thế này:

* title... 
* body 
#+begin_src markdown 
Some text. 
#+end_src 

Tôi nhấn C-c ' và nhận được một bộ đệm mới, nơi tôi chỉnh sửa văn bản markdown trông như thế này trong chế độ markdown:

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec a diam 
lectus. Sed sit amet ipsum mauris. Maecenas congue ligula ac quam 
viverra nec consectetur ante hendrerit. Donec et mollis 
dolor. Praesent et diam eget libero egestas mattis sit amet vitae 

Tôi đã sử dụng M-q để định dạng các dòng văn bản để có các dòng mới ở cuối mỗi dòng ở trên. Cũng không có không gian ban đầu.

Bây giờ nếu tôi hoặc là báo chí C-x C-s để lưu hoặc C-c ' định dạng trên được thay đổi để giống như thế này:

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec a diam 
lectus. Sed sit amet ipsum mauris. Maecenas congue ligula ac quam 
    viverra nec consectetur ante hendrerit. Donec et mollis 
dolor. Praesent et diam eget libero egestas mattis sit amet vitae 

Mỗi dòng khác được thụt vào hai không gian.

Tôi đã cố gắng này với các loại src khác, chẳng hạn như sử dụng:

#+begin_src javascript 

tôi nhận được thụt đầu dòng tương tự, mặc dù nó không thay thế. Thay vào đó, hai dấu cách được thêm vào mỗi dòng.

Tôi giả định rằng đây không phải là lỗi nhưng tìm kiếm trên Internet của tôi và xem qua tài liệu chưa đưa ra câu trả lời.

Tôi đang sử dụng GNU Emacs 23.4.1 trên Arch Linux với chế độ Org 6.33x.

Tôi cũng đã thử sử dụng phiên bản chế độ org mới nhất từ ​​git 7.8.05.

Trả lời

12

Biến bạn đang tìm kiếm để tùy chỉnh là org-edit-src-content-indentation

org-edit-src-content-thụt đầu dòng là một biến định nghĩa trong `org-src.el'.

Giá trị của nó là 2

Tài liệu: Indentation về nội dung của một khối mã nguồn. Đây phải là số lượng dấu cách được thêm vào thụt đầu dòng của dòng # + bắt đầu để tính toán thụt đầu dòng nội dung khối sau chỉnh sửa nó bằng M-x org-edit-src-code. Không có hiệu lực nếu `org-src-preserve-indentation 'không phải là không.

Bạn có thể khám phá này cho chính mình bằng cách:

  1. C-h kC-c 'org-edit-special

  2. M-xapropos-variableorg-edit

+1

'org-src-preserve-indentation', được đề cập ở trên có thể trực tiếp giải quyết các nhu cầu của tôi. – noahdiewald

2

Trong nháy mắt đầu tiên, điều này trông giống như tự động thụt lề của các khối trong Org. Tôi biết rằng theo mặc định, nó cố gắng thụt lề phần thân của khối là hai khoảng trống từ các đường kẻ #+begin#+end.

Tuy nhiên, tôi khuyên bạn nên cập nhật lên phiên bản Org mới hơn. 6.33x rất cũ và đã có những thay đổi đối với các khối mã trong thời gian chờ đợi. Nó có sẵn trong AUR (Here). Tuy nhiên, tôi khuyên bạn nên sử dụng git để kéo phiên bản 7.8.03 vào lúc này, đã xảy ra lỗi khi phát hành 7.8.04 và sau đó là 7.8.05 và họ đang sửa chữa nó. Ngoài ra, phiên bản kèm theo Emacs24 là ổn định và được cập nhật nhiều hơn.

+0

Tôi đã nâng cấp bằng git và tôi thấy điều tương tự. – noahdiewald

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