CẬP NHẬT:
Không nhận thấy rằng Chế độ Org 9.2 đã thay đổi cơ chế mở rộng mẫu, trong đó org-structure-template-alist
chỉ dành cho các khối được xác định bởi "#+BEGIN_"
và "#+END_"
. Và nhập như thế ("p" ":PROPERTIES:?:END:")
không còn được chấp nhận.
Như đã đề cập trong liên kết trên, mẫu "phức tạp" khác có thể được xác định bởi hàm tempo-define-template
và org-tempo phải được tải ( (require 'org-tempo)
). Trên thực tế, các mục nhập org-structure-template-alist
được chuyển đổi org-tempo-tags
qua tempo-define-template
bởi org-tempo
và org-tempo-tags
mặc định là:
(("<i" . tempo-template-org-index)
("<A" . tempo-template-org-ascii)
("<H" . tempo-template-org-html)
("<L" . tempo-template-org-latex)
("<v" . tempo-template-org-verse)
("<s" . tempo-template-org-src)
("<q" . tempo-template-org-quote)
("<l" . tempo-template-org-export-latex)
("<h" . tempo-template-org-export-html)
("<E" . tempo-template-org-export)
("<e" . tempo-template-org-example)
("<C" . tempo-template-org-comment)
("<c" . tempo-template-org-center)
("<a" . tempo-template-org-export-ascii)
("<I" . tempo-template-org-include))
Đối với trường hợp của bạn, bạn có thể xác định một mẫu bằng cách:
(tempo-define-template "my-property"
'(":PROPERTIES:" p ":END:" >)
"<p"
"Insert a property tempate")
Câu trả lời dưới đây chỉ hoạt động cho phiên bản chế độ Org trước 9.2
Có, bạn có thể thêm một mục vào nó như thế này:
(add-to-list 'org-structure-template-alist '("p" ":PROPERTIES:?:END:"))
Sau đó, trong tệp org, bạn nhập <p
và TAB
, nó sẽ mở rộng sang thuộc tính và để lại điểm tại vị trí của ?
.
Và bạn có thể tìm thêm chi tiết trong tài liệu về biến bằng cách gõ C-h v org-structure-template-alist RET
.
>
biểu tượng trêntempo-define-template
một lỗi đánh máy? Nếu không .... vai trò của nó trong định nghĩa là gì?