จะเติม (ห่อ) ส่วนหัวของโหมดองค์กรได้อย่างไร


9

ฉันต้องการเติม (ปิดล้อม) ส่วนหัวยาวในโหมดองค์กร ฉันไม่เห็นเอ่ยถึงวิธีการที่จะทำเช่นนั้นในคู่มือ org

ถ้าฉันตัดบรรทัดด้วยตนเองโดยการแทรกบรรทัดใหม่โหมดองค์กรไม่รู้จักข้อความที่ตัดคำเป็นส่วนหัว

เป็นไปได้ไหม

หมายเหตุ: org-fill-paragraphอย่าทำสิ่งนี้:

(defun org-fill-paragraph (&optional justify)
  "Fill element at point, when applicable.

This function only applies to comment blocks, comments, example
blocks and paragraphs.  Also, as a special case, re-align table
when point is at one.

If JUSTIFY is non-nil (interactively, with prefix argument),
justify as well.  If `sentence-end-double-space' is non-nil, then
period followed by one space does not end a sentence, so don't
break a line there.  The variable `fill-column' controls the
width for filling.

For convenience, when point is at a plain list, an item or
a footnote definition, try to fill the first paragraph within."
  (interactive)
  ; ...

คำตอบ:


11

โปสเตอร์ต้นฉบับใช้คำพูดfillและwrapใช้แทนกันได้ - มันไม่เหมือนกัน

ดูตัวแปรorg-startup-truncated:

Non-nil means entering Org-mode will set `truncate-lines'.
This is useful since some lines containing links can be very long and
uninteresting.  Also tables look terrible when wrapped.

tเริ่มต้นคือ ในการเปลี่ยนแปลงสิ่งนี้ผู้ใช้สามารถใส่รหัสต่อไปนี้ลงใน.emacsไฟล์:

(setq org-startup-truncated nil)

org-modeต้องการบรรทัดสิ้นสุดเพื่อระบุหัวเรื่องอย่างถูกต้อง หากต้องการดูตัวอย่างของ regexp ที่org-modeใช้สำหรับส่วนหัวผู้ใช้สามารถพิมพ์ (หลังจากorg-modeโหลดบัฟเฟอร์แล้ว):

M-x describe-variable RET org-complex-heading-regexp RET

ดังที่เห็นได้การสิ้นสุดคือ$- คือไปยังจุดสิ้นสุดของบรรทัด

^\\(\\*+\\)\\(?: +\\(TODO\\|DONE\\)\\)?\\(?: +\\(\\[#.\\]\\)\\)?\\(?: +\\(.*?\\)\\)??\\(?:[     ]+\\(:[[:alnum:]_@#%:]+:\\)\\)?[    ]*$

ขอบคุณสำหรับการเติมที่ชัดเจนกับการห่อ ความแตกต่างนั้นไม่ชัดเจนจากการอ่าน www.emacswiki.org/emacs/FillParagraph ขอขอบคุณที่แสดงนิพจน์ปกติพื้นฐาน สำหรับสิ่งที่ต้องทำสิ่งนี้ถูกต้องหรือไม่: หากไม่มีการดัดแปลง regex การเติม (การขึ้นบรรทัดใหม่) ไม่ใช่ตัวเลือก การตัดจะใช้งานได้ทั้งโดยใช้วิธีที่คุณแสดงหรือด้วยM-x toggle-truncate-lines(แสดงในคำตอบของฉัน)
David J.

1
หากต้องการปิดใช้งานการตัดโดยอัตโนมัติตัวแปรorg-startup-truncatedนั้นเหมาะสมที่สุดเนื่องจากการเริ่มต้นการorg-modeตรวจสอบค่าของตัวแปรนั้นและเว้นแต่ว่าเป็นnilกระบวนการเริ่มต้นจะตั้งค่าเป็น(setq truncate-lines t)พิเศษ เพื่อให้พฤติกรรมเริ่มต้นและสลับเฉพาะด้วยตนเองนั้นtoggle-truncate-linesมีความเหมาะสมอย่างแน่นอน regex พื้นฐานสำหรับหัวไม่สามารถเปลี่ยนแปลงได้ง่าย (ในความคิดของฉัน) เพราะมีล้านและฟังก์ชั่นหนึ่งที่พึ่งพามัน - เช่นorg-agenda-list; org-search-view; org-tags-viewเพื่อชื่อไม่กี่
กฎหมาย

1
คุณอาจสนใจvisual-line-modeที่จะพยายามเก็บคำทั้งหมดไว้ด้วยกันเมื่อทำการพันคำ สำหรับการตั้งค่าของฉันเองฉันได้แก้ไขการแก้ไขรายการสิ่งที่ต้องทำดังนี้การแก้ไขแคบลงบัฟเฟอร์โดยอัตโนมัติไปยังงานที่ฉันกำลังแก้ไข; visual-line-modeถูกเปิดใช้งานและฉันทำการแก้ไข เมื่อออกจากบัฟเฟอร์ที่แคบลงvisual-line-modeจะถูกปิด การตัดปลายยังคงเป็นค่าเริ่มต้นเมื่อบัฟเฟอร์ไม่ถูกจำกัด ฉันมีการตั้งค่าแบบกำหนดเองที่ช่วยให้บัฟเฟอร์ที่ไม่ถูก จำกัด อยู่ในสถานะอ่านอย่างเดียวซึ่งทำให้สามารถอ่านได้เมื่อทำการแก้ไขจากนั้นตั้งเป็นแบบอ่านอย่างเดียวเมื่อเสร็จสิ้น
กฎหมาย

4

ฉันไม่เห็นวิธีการเติมงาน M-x toggle-truncate-linesดังนั้นการทำงานรอบคือการใช้งาน สิ่งนี้มีผลต่อการนำเสนอของหัวเรื่องเท่านั้น มันไม่ได้แทรกขึ้นบรรทัดใหม่

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.