คำถามติดแท็ก buffers

ข้อความที่คุณกำลังแก้ไขใน Emacs อยู่ในวัตถุที่เรียกว่าบัฟเฟอร์ ทุกครั้งที่คุณเยี่ยมชมไฟล์บัฟเฟอร์จะถูกใช้เพื่อเก็บข้อความของไฟล์ ทุกครั้งที่คุณเรียกใช้ Dired บัฟเฟอร์จะถูกใช้เพื่อเก็บรายการไดเรกทอรี

3
วิธีการปรับเปลี่ยนบัฟเฟอร์โดยไม่เลิกทำการสังเกต?
ถาม:ฉันจะแทรก / แก้ไขข้อความในบัฟเฟอร์โดยไม่undoสังเกตเห็นได้อย่างไร นี่คือกรณีการใช้งาน ฉันมีบล็อกความคิดเห็นที่จุดเริ่มต้นของทุกไฟล์ที่ปรับปรุงการประทับเวลาสำหรับการเปลี่ยนแปลงล่าสุดของไฟล์ ฉันต้องการที่จะสามารถแก้ไขเวลาที่ไม่มีundoสิ่งอำนวยความสะดวกสังเกตเห็นมัน เหตุผลที่ฉันต้องการลัดวงจรundoที่นี่เนื่องจากกรณีขอบต่อไปนี้ซึ่งเกิดขึ้นเมื่อมีการแก้ไข / รวบรวมเอกสาร LaTeX (และอาจอื่น ๆ แต่นี่คือสิ่งที่ผลักดันฉันถั่วบ่อยที่สุด): ทำการเปลี่ยนแปลงเล็กน้อยในไฟล์เพื่อดูว่ามันจะส่งผลกระทบต่อเอกสารที่รวบรวม บันทึกไฟล์ (ซึ่งอัปเดตการประทับเวลา) ทำงานlatexกับไฟล์ ตัดสินใจว่าการเปลี่ยนแปลงนั้นไม่ดี undo การเปลี่ยนแปลง ปัญหาที่ขั้นตอน (5) ( undo) คือการที่ไม่เลิกทำการเปลี่ยนแปลงในขั้นตอนที่ (1) แต่เป็นการยกเลิกการปรับปรุงการประทับเวลาในขั้นตอนที่ (2) ที่จะไม่รบกวนฉัน (ฉันสามารถทำได้undoอีกครั้ง) ยกเว้นว่ามันจะย้ายชี้ไปยังเวลาที่ด้านบนของไฟล์ซึ่งเกือบตลอดเวลามีหลายบรรทัดหลายบรรทัดจากการเปลี่ยนแปลงที่แท้จริง มันสั่นสะเทือนมากและทำลายสมาธิฉันอย่างสมบูรณ์ ฉันขว้างคำถามด้วยความเคารพไฟล์ที่ฉันกำลังเยี่ยมชม แต่โดยทั่วไปเกี่ยวกับการแก้ไขบัฟเฟอร์ ดังนั้น: ฉันจะป้องกันไม่ให้undoสังเกตเห็นการดัดแปลงเฉพาะกับบัฟเฟอร์ได้อย่างไร?

5
วิธีง่ายๆในการสร้างบัฟเฟอร์ eww หลายรายการ
M-x ewwพรอมต์สำหรับ url หรือคำหลักและเปิด*eww*บัฟเฟอร์ใหม่ ในeww-mode, Gถูกผูกไว้ewwซึ่งแทนที่เนื้อหาของบัฟเฟอร์ eww เดียว ในการสร้างหลายบัฟเฟอร์สำหรับหน้าเว็บที่แตกต่างกันฉันใช้วิธีสร้างบัฟเฟอร์ใหม่ตั้งค่าeww-modeด้วยตนเองจากนั้นกดG(หรือM-x eww) เพื่อไปที่ URL ฉันสามารถเขียนฟังก์ชั่นที่ใช้งานได้ทั้งหมดสำหรับฉัน แต่ฉันประหลาดใจที่ฟังก์ชั่นนี้ไม่ได้มีมาให้ในตัว ฉันเพิ่งจะหายไปหรือไม่
10 buffers  eww 

2
ทำให้ `ก่อนหน้าบัฟเฟอร์ 'และ' ถัดไปบัฟเฟอร์ 'เพื่อละเว้นบัฟเฟอร์บางอย่าง
ใน Helm ฉันไม่สนใจบัฟเฟอร์บางอย่างจากการแสดงเมื่อใช้C-x bฉันกำลังมองหาวิธีที่จะทำให้คำสั่งprevious-bufferและnext-bufferทำงานแบบเดียวกันโดยไม่สนใจบัฟเฟอร์บางตัว
10 buffers 

1
ให้บัฟเฟอร์ ERC อยู่ในพื้นหลังในการเชื่อมต่อ
ฉันใช้ ERC (กับ ZNC) เป็นลูกค้า IRC ของฉัน ฉันเข้าร่วมกับช่องไม่กี่ช่องและเมื่อฉันเรียกใช้znc-allบัฟเฟอร์ทั้งหมดของฉันได้รับการกู้คืนและมีการบันทึกซ้ำ ทั้งหมดนี้ยอดเยี่ยมมาก อย่างไรก็ตามสิ่งที่ฉันคิดว่าน่ารำคาญมากคือในขณะที่เล่นซ้ำแต่ละบัฟเฟอร์ช่องสัญญาณจะถูกเปิดขึ้นมาด้านหน้าและฉันก็ไม่สามารถทำงานอื่นได้ในเวลานั้น มันน่ารำคาญมากขึ้นเมื่อฉันเชื่อมต่อใหม่โดยอัตโนมัติหลังจากที่ถูกตัดการเชื่อมต่อชั่วคราว ทันใดนั้นงานของฉันถูกขัดจังหวะโดยบัฟเฟอร์ช่องสัญญาณเหล่านี้ที่ปรากฏขึ้นด้านหน้าขณะที่บันทึกช่องจะถูกเล่นซ้ำ ฉันจะบอกให้ ERC / ZNC เก็บบัฟเฟอร์ในเบื้องหลังได้อย่างไรเมื่อเล่นซ้ำบันทึกการแชท ฉันไม่ต้องการให้ Emacs เปลี่ยนบัฟเฟอร์เว้นแต่ว่าฉันขอให้เปลี่ยนบัฟเฟอร์อย่างชัดเจน
10 buffers  erc 

2
บรรทัดโหมดเดียวสำหรับหน้าต่างทั้งหมด
เป็นไปได้หรือไม่ที่จะมีเพียงโหมดบรรทัดเดียว (บางครั้งเรียกว่า "แถบสถานะ") สำหรับหน้าต่างทั้งหมด ฉันต้องการให้บรรทัดโหมดเดี่ยวนี้แสดงข้อมูลเกี่ยวกับบัฟเฟอร์ที่เลือกในปัจจุบัน

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

2
ฉันจะสร้างบัฟเฟอร์ dired ที่แสดงรายการไฟล์ที่เปิดอยู่ทั้งหมดได้อย่างไร
ฉันมีกลไกสำหรับการเขียนรายการลงดิสก์จากdiredบัฟเฟอร์ แต่น่าเสียดายที่ไฟล์ที่ฉันแพตช์นั้นเต็มไปด้วยระบบไฟล์ ฉันจะสร้างdiredบัฟเฟอร์จากไฟล์ที่เปิดอยู่ทั้งหมดได้อย่างไร
9 buffers  dired  files 

4
วิธีการตรวจสอบว่าบัฟเฟอร์กำลังเยี่ยมชมไฟล์?
ฉันต้องการตรวจสอบว่าบัฟเฟอร์ (พูด, ปัจจุบัน) บางอย่างกำลังเยี่ยมชมไฟล์หรือไม่ ฉันสามารถพูดได้: (if (buffer-file-name) ...) แต่ดูเหมือนจะไม่สง่างามมาก - สิ่งที่ฉันสนใจเป็นเพียงค่าบูลีนไม่ใช่ชื่อจริงของบัฟเฟอร์ที่มีปัญหา หากbuffer-file-nameฟังก์ชั่นนั้นเขียนขึ้นใน Elisp ฉันสามารถดูที่มาของมันเพื่อค้นหาว่ามันใช้อะไร - แต่มันเขียนใน C และในขณะที่ฉันสามารถติดตั้ง Emacs ได้ฉันกลัวว่าจะไม่พบชื่อ elisp สำหรับฟังก์ชั่นที่ตรวจสอบสิ่งที่ฉันหลังจากนั้น สิ่งที่ฉันต้องการมันคือฉันต้องการสร้างไดเรกทอรีตามชื่อไฟล์บัฟเฟอร์ปัจจุบันและตอนนี้ฉันกำลังทำสิ่งนี้ไม่มากก็น้อย: (make-directory (if (buffer-file-name) (file-name-base) "default-dir")) ดังนั้นสิ่งที่เป็นวิธีการ Elisp - สำนวนในการทำเช่นนี้?
9 elisp  buffers  files 

1
อะไรคือความสำคัญของบัฟเฟอร์ Emacs ที่มีชื่อด้วย * earmuffs *
มีบัฟเฟอร์ Emac จำนวนหนึ่งที่ชื่อของพวกเขามี "ที่ปิดหู" นั่นคือมีชื่อเหมือน *scratch* *R* *ESS* *helm-mode-circe* ที่ครอบหูมีความสำคัญอะไรและมีเหตุผลที่ผู้ใช้สร้างบัฟเฟอร์เพื่อใช้งานหรือไม่?
9 buffers 
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.