คำถามติดแท็ก swap-file

1
วัตถุประสงค์ของการแลกเปลี่ยนไฟล์คืออะไร?
เมื่อฉันแก้ไขไฟล์, กลุ่มมีแนวโน้มที่จะสร้างชื่อไฟล์ซึ่งฉันพบว่าน่ารำคาญ จากฉันเห็นว่าตัวเลือกที่ไม่สร้างไฟล์ swap.filename.swpvim -h-n มีคำสั่ง vimrc ที่ฉันสามารถใช้เพื่อปิดการแลกเปลี่ยนไฟล์โดยปริยายหรือไม่? วัตถุประสงค์ของการแลกเปลี่ยนไฟล์คืออะไรและฟังก์ชั่นใดที่ฉันจะพลาดโดยการระงับมัน?

2
อะไรคือความแตกต่างระหว่าง "ออกจาก" และ "ยกเลิก"
เมื่อฉันพยายามเปิดไฟล์จากอินสแตนซ์ vim หลายตัวฉันพบข้อผิดพลาดหลายตัวเลือก: Swap file "~/.vim/tmp/file.swp" already exists! [O]pen Read-Only, (E)dit anyway, (R)ecover, (Q)uit, (A)bort: "Quit" และ "Abort" ต่างกันอย่างไร การเดาครั้งแรกของฉันคือเมื่อฉันพยายามเปิดไฟล์หลายไฟล์และมีเพียงไฟล์เดียวเท่านั้นที่ถูกแก้ไขที่อื่น "เลิก" อาจข้ามไปที่หนึ่งและ "ยกเลิก" ออกจากโปรแกรม แต่ที่ไม่ถูกต้องชัดเจน - ทั้งคู่ละทิ้งความพยายามทั้งหมด ที่แก้ไขและวางกลับไปที่เทอร์มินัล
23 swap-file  quit 

2
แนวปฏิบัติที่ดีที่สุดสำหรับไฟล์ VIM?
ทุกครั้งที่ฉันตัดเซสชันในกลุ่มโดยการสูญเสียการเชื่อมต่อของฉันฉันค่อนข้างเต็มไปด้วยความเบื่อหน่าย (แต่ฉันยังคงใช้ vim ต่อไป ... สิ่งที่นักทำโทษตนเองอย่างฉันจะต้องเป็น) เพราะเมื่อฉันเปิดไฟล์อีกครั้ง ไฟล์กำลังรอที่จะยิงที่ทำลายงานของฉัน แนวทางปฏิบัติที่ดีที่สุดในการทำงานกับไฟล์ vim swap คืออะไร คุณเพิ่งจะเลือกใหม่ล่าสุด? หากไฟล์ทำงานตามที่คุณคาดหวังคุณเพียงแค่ลบไฟล์สลับหรือไม่ คุณจะกำจัดพวกเขาได้อย่างไร
14 swap-file 

2
การบันทึกอัตโนมัติเป็นกลุ่มหรือไม่?
จาก:help swap-file: การอัพเดต swapfile ไฟล์ swap จะได้รับการอัพเดตหลังจากพิมพ์ 200 ตัวอักษรหรือเมื่อคุณไม่ได้พิมพ์อะไรเลยเป็นเวลาสี่วินาที สิ่งนี้จะเกิดขึ้นหากบัฟเฟอร์มีการเปลี่ยนแปลงไม่ใช่เมื่อคุณย้ายไปมาเท่านั้น สาเหตุที่ทำให้ไม่ทันสมัยอยู่ตลอดเวลาก็คือสิ่งนี้จะทำให้การทำงานปกติช้าลงมากเกินไป คุณสามารถเปลี่ยนจำนวน 200 ตัวอักษรด้วยตัวเลือก 'updatecount' คุณสามารถตั้งเวลาด้วยตัวเลือก 'updatetime' เวลาถูกกำหนดเป็นมิลลิวินาที หลังจากเขียนไปยังไฟล์ swap Vim จะซิงค์ไฟล์กับดิสก์ ใช้เวลาพอสมควรโดยเฉพาะในระบบ Unix ที่ไม่ว่าง หากคุณไม่ต้องการสิ่งนี้คุณสามารถตั้งค่าตัวเลือก 'swapsync' เป็นสตริงว่าง ความเสี่ยงในการสูญเสียงานจะยิ่งใหญ่ขึ้น ในระบบที่ไม่ใช่ Unix (MS-DOS, Amiga) ไฟล์ swap จะไม่ถูกเขียนเลย จากนี้ฉันมีคำถามสองสามข้อ: นี่หมายความว่า Vim บันทึกการทำงานของคุณโดยอัตโนมัติเป็นครั้งคราวหรือไม่? "หลังจากเขียนไปยังไฟล์ swap Vim จะซิงค์ไฟล์ไปยังดิสก์" สิ่งนี้หมายความว่า? นี่หมายถึงไฟล์ที่ถูกเขียนลงหน่วยความจำก่อนแล้วจึงไปที่ดิสก์หรือมันเป็นอย่างอื่น? บอกว่าฉันกำลังจดบันทึกในชั้นเรียน: ฉันเขียนได้อย่างรวดเร็วและฉันไม่จำเป็นต้องออกจากโหมดแทรก แต่หลายครั้งฉันเปลี่ยนเป็นปกติเพียงเพื่อบันทึกงานของฉัน ฉันต้องทำสิ่งนี้หรือไม่หรือให้แน่ใจว่างานส่วนใหญ่ของฉันได้รับการบันทึกแม้ว่าฉันจะไม่ออกจากโหมดแทรกหรือไม่
13 save  swap-file  backup 

2
ยกหน้าต่างถือแลกเปลี่ยนไฟล์
บางครั้งในขณะที่ทำงานกับหลายโครงการและ / หรืออะไรก็ตามมันทำให้ฉันด้วย (เช่น) อินสแตนซ์ Vim จำนวนมากเปิด - ตามที่เกิดขึ้นฉันเปิดไฟล์ที่เปิดอยู่แล้วที่อื่นทำให้ฉันมีตัวเลือกดังนี้: [O]pen Read-only, (E)dit anyway, (R)ecover, (Q)uit, (A)bort มีบางวิธีในการยกตัวอย่างเช่นใน GUI / terminal ถือไฟล์เปิดหรือไม่ เป็นการดีที่จะนำไฟล์ที่สงสัยไปยังเบื้องหน้า (หากมีหลายบัฟเฟอร์) ณ ตอนนี้ฉันกำลังใช้ bash script ที่ดึง PID ออกจาก swap ให้ตรวจสอบว่า PID นั้นเป็นของ Vim หรือไม่และถ้าใช้wmctrlจะยกหน้าต่างขึ้นมา ขณะนี้ใช้งานได้ดีอย่างน้อยสำหรับ GUI และบน X11 Linux ฉันกำลังถามว่ามีวิธีเนทีฟมากกว่าหรือไม่
13 swap-file  x11  linux 

2
วิธีการตรวจสอบว่าไฟล์ swp มีการเปลี่ยนแปลงที่ไม่ได้บันทึกหรือไม่
เมื่อแก้ไขซอร์สโค้ดโดยใช้ gvim (v.7.4.488) ฉันต้องการคอมมิทการเปลี่ยนแปลง vcs (ฉันใช้ git 2.1.4 จากบรรทัดคำสั่งใน Ubuntu linux) git --status แสดงไฟล์ที่ฉันเปลี่ยน อย่างไรก็ตามมันยังแสดง vim .*.swpของบัฟเฟอร์ที่มองเห็นได้ในปัจจุบัน (ทั้งคู่ถ้าไฟล์มีการเปลี่ยนแปลงที่ไม่ได้บันทึกและเมื่อไฟล์ที่แก้ไขเหมือนกันกับ.*.swp-file) แน่นอน, git สามารถละเว้นไฟล์เหล่านี้หรือเป็นกลุ่มสามารถเก็บไฟล์ swap ในตำแหน่งอื่น (ดูvim.wikiaหรือคำถามนี้ที่ stackoverflow ) แต่ฉันชอบ - .*.swpไฟล์ที่ปรากฏขึ้นgit --statusเมื่อพวกเขามีการเปลี่ยนแปลงที่ไม่ได้บันทึกเพราะมันเป็นสัญญาณให้ฉันเห็นว่าฉันกำลังยืนยันไฟล์ในสถานะที่แตกต่างจากสิ่งที่ฉันคิดว่าพวกเขามี ฉันจะหลีกเลี่ยงผลบวกปลอมของ.*.swp-files ที่ปรากฏขึ้นgit --statusเมื่อไฟล์ที่บันทึกไว้เหมือนกับ -file ได้อย่างไรใน.*.swpขณะที่สามารถเห็นไฟล์ที่จะคอมมิทนั้นจะอยู่ในสถานะที่แตกต่างจากที่ฉันแก้ไขด้วย vim เป็นไปได้หรือไม่ที่มี.*.swp-files เท่านั้นเมื่อไฟล์บนดิสก์และไฟล์ใน vim แตกต่างกัน? มีวิธีอื่นในการตรวจจับไฟล์ที่ไม่ได้บันทึกหรือไม่? การรวมความคิดเห็นของ@elyashivและ@VanLaserเป็นวิธีที่ง่ายกว่าการตรวจจับว่าไฟล์สลับแปลว่าไฟล์ที่ไม่ได้บันทึกหรือไม่: อย่าปล่อยให้คอมไพล์ละเว้นไฟล์. *. sw [po]; เมื่อกระทำถ้าgit --statusพบว่าไฟล์ใด ๆ.*.sw[po]ทำ a …
11 git  swap-file 

1
สามารถกู้คืนไฟล์ข้อความได้จากไฟล์. *. swp เท่านั้นหรือไม่
ฉันแก้ไขไฟล์ใหม่จากระยะไกล: man-01-Intro.txtแต่เครื่องลงไปก่อนที่ฉันจะเขียนลงดิสก์ดังนั้นเฉพาะรุ่น swp เท่านั้นที่ได้รับการอนุรักษ์ มีอะไรที่ฉันสามารถทำได้เพื่อกู้คืนงานที่ทำไปแล้ว? ฉันใช้ Vim 7.4.273
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.