ฉันต้องการบันทึกสำเนา (หรือสแนปชอต) ของบัฟเฟอร์ลงในไฟล์ ลักษณะการทำงานจะคล้ายกับwrite-file
ยกเว้นว่าจะไม่ตั้งค่าบัฟเฟอร์ให้เยี่ยมชมไฟล์นี้
สำหรับ usecase ให้จินตนาการว่าคุณมีเชลล์เซสชันและคุณต้องการบันทึกทั้งหมดลงในไฟล์บันทึกอย่างรวดเร็ว ไม่ควรเปลี่ยนชื่อบัฟเฟอร์ (เพื่อให้ฟังก์ชั่นที่ใช้ชื่อบัฟเฟอร์ยังคงทำงาน) และไม่ควรเยี่ยมชมไฟล์ (เพื่อให้ไฟล์ไม่ถูกเขียนทับโดยไม่ตั้งใจและไม่มีคำเตือนเมื่อออกจาก emacs)
ฉันสามารถจินตนาการวิธีที่สกปรกสองสามอย่างในการทำเช่นนี้ฉันจะโพสต์คำตอบด้วยตนเอง แต่การอ่านจากคู่มือระบบ "ไฟล์ที่เข้าชม" ทั้งหมดนั้นซับซ้อนกว่าที่ดูและฉันคิดว่ามันง่ายที่จะร่าง ทางออกที่ผิด มีวิธีซ่อนเร้นในตัวเพื่อบรรลุเป้าหมายนี้หรือไม่?
write-region
จาก Lisp (เช่นในคำสั่งของคุณเอง) เพียงผ่าน(point-min)
และ(point-max)
พร้อมกับชื่อไฟล์