fold -s
คือคำตอบสั้น ๆ และดีที่สุดสำหรับคำถามของคุณ
อย่างไรก็ตามโดยทั่วไปแล้วเครื่องมือที่มีวัตถุประสงค์เดียวนั้นดีในบางกรณีคุณควรให้เครื่องมือแก้ไขของคุณทำเช่นนี้
ใน Emacs คุณสามารถปรับแต่งสิ่งนี้ได้ตามต้องการ สำหรับฉันฉันใช้visual-line-mode
(แสดงเป็นWrap
โหมดย่อยในบรรทัดโหมด) เพราะในกรณีทั่วไปฉันไม่ต้องการให้มีการขึ้นบรรทัดใหม่ที่อื่นนอกเหนือจากตอนท้ายของย่อหน้า
ฉันคิดว่าฉันจะบอกวิธีที่ฉันทำ มันไม่ใช่วิธี "" แต่เป็นวิธีเดียว; เมื่อฉันพูดถึงฟังก์ชั่นและตัวแปรวิธีการของคุณคือการรวมมันเข้าด้วยกันและทำให้พวกมันเป็นแบบอัตโนมัติเพื่อให้มันทำงานให้คุณได้ (นี่คือ Emacs แต่สำหรับโปรแกรมแก้ไขขั้นสูงใด ๆ ที่เพียงพอก็สามารถเขียนโพสต์ที่คล้ายกันได้)
ฉันบอกว่าฉันมีเส้นที่พันด้วยสายตาเมื่อฉันพิมพ์และไม่ทำลายมันด้วยตนเอง และเช่นเคยมีข้อยกเว้น: ตัวอย่างเช่น GNUS จะไม่ส่งโพสต์ไปยัง Usenet โดยมีบรรทัดที่เกินความกว้างที่แน่นอน (เป็นตัวอักษร) M-q
ดังนั้นแล้วฉันจะใช้ ใน Emacs, รันคำสั่งM-q
fill-paragraph
ตัวแปรfill-column
ควบคุมความกว้างสำหรับการเติม ตัวอย่างเช่นถ้าฉันเขียนนี้ (ในบรรทัดเดียว)
This is a lot of text being written right now. The purpose is to overflow the line so I have have to line break it with M-q.
แล้วใช้ Mq ฉันเข้าใจ
This is a lot of text being written right now. The purpose is to
overflow the line so I have have to line break it with M-q.
ด้วยjustify-current-line
(สองเท่าเป็นสองบรรทัด) คุณจะได้รับ
This is a lot of text being written right now. The purpose is to
overflow the line so I have have to line break it with M-q.
แต่ฉันพบว่าผู้คนไม่ค่อยใช้แบบอักษร monospace เพื่อดูสิ่งต่าง ๆ ดังนั้นมันจึงไม่สมเหตุสมผลนักที่จะใช้มัน หากคุณชอบคุณสามารถปรับแต่งfill-paragraph
เพื่อเติมและปรับในเวลาเดียวกัน คุณยังสามารถมี Emacs auto-fill-mode
ทำเพื่อคุณเสมอขณะที่คุณพิมพ์: (ฉันพบว่าเครียด แต่นั่นคือฉัน)
นี่อาจดูเหมือนงานมากและเป็น; แต่เมื่อคุณทำเสร็จแล้ว (จากสิ่งนี้และอีก 1,000 สิ่ง) คุณสามารถเพลิดเพลินกับการทำงานกับเครื่องมือที่ทำงานได้อย่างแม่นยำตามที่คุณต้องการ
echo $MYSTRING | fold -w 30
เนื่องจาก-30
ไวยากรณ์ไม่ปรากฏในmanpage การพับหรือไม่