เป็นกลุ่มบ่นเกี่ยวกับไฟล์ชั่วคราวเมื่อเปิดไฟล์ที่เน้นไวยากรณ์ใน Mac OS X


8

เมื่อฉันพยายามเปิดไฟล์ (เช่น test / test_sequence.rb) โดยใช้ Vim หรือ MacVim ฉันได้รับข้อผิดพลาดดังต่อไปนี้:

"test/test_sequence.rb" 109L, 3697C
Vim(let):E484: Can't open file /var/folders/zO/zOCN9kiiGD4keWX3TWYEh++++TI/-Tmp-/vzTkbXD/0

ดูเหมือนว่าจะ จำกัด เฉพาะไฟล์ที่มีการเน้นไวยากรณ์บางประเภท ฉันยังคงสามารถแก้ไขไฟล์ได้ แต่ฉันต้องใช้: w! เพื่อเขียนการเปลี่ยนแปลงในครั้งแรก ฉันใช้ vim บน Mac OS X ฉันลองใช้ Google เป็นจำนวนมากสำหรับข้อผิดพลาดนี้โดยไม่มีโชคและนี่กลายเป็นเรื่องน่าหงุดหงิดจริงๆ ใครสามารถเสนอการแก้ไขสำหรับเรื่องนี้?

แก้ไข:ฉันไม่ได้รับข้อผิดพลาดนี้เมื่อแก้ไขไวยากรณ์ที่เน้นไฟล์ LaTeX แต่จะทำอย่างไรกับไฟล์ Ruby ที่เน้นไวยากรณ์

คำตอบ:


6

กลับกลายเป็นปัญหากับเปลือก Vim พยายามใช้ / bin / หน้าจอเป็นเชลล์

set shell /bin/sh

ใน vimrc ของฉันแก้ไขปัญหา


3
เพียงกดปุ่มตัวเองนี้เมื่อฉันเปลี่ยนเปลือกเข้าสู่ระบบของฉันเป็นเปลือกหอย ขอบคุณสำหรับเคล็ดลับ :)
Yeraze

เดียวกันที่นี่หลังจากเปลือกตั้งค่าเริ่มต้นให้ปลามันเกิดขึ้นกับฉัน :)
imslavko

3
มันต้องเพิ่ม: set shell=/bin/bash.
paldepind

สำหรับฉันไวยากรณ์ต้องเป็นset shell=/bin/sh
Ganesh Hegde

แต่ทุกอย่างดูเหมือนว่า filetype = ruby-specific สำหรับฉัน
ThomasH

1

ฉันได้พบว่าหากคุณsuเป็นผู้ใช้ที่แตกต่างกันกระบวนการที่พยายามใช้ไฟล์ชั่วคราวอาจทำให้เกิดข้อผิดพลาดเช่น/var/folders/zO/zOCN9kiiGD4keWX3TWYEh++++TI/-Tmp-/vzTkbXD/0: permission denied; การแก้ไขสำหรับปัญหานี้คือunset TMPDIR(ซึ่งฉันคิดว่าเป็นสาเหตุ/tmpที่จะใช้แทน) เนื่องจาก TMPDIR ที่ระบุนั้นมีความเฉพาะเจาะจงสำหรับผู้ใช้เก่าและไม่สามารถเขียนได้โดยผู้ใช้ปัจจุบัน

คุณยังไม่ได้พูดว่าคุณกำลังใช้งานsuหรือการสลับผู้ใช้อื่นและข้อความแสดงข้อผิดพลาดไม่ได้กล่าวถึงสิทธิ์ที่ถูกปฏิเสธ แต่ ...


ขอบคุณสำหรับคำแนะนำ ฉันได้ลองเปลี่ยนตำแหน่งของ $ TMPDIR เป็น / tmp ฉันได้รับข้อผิดพลาดที่ชี้ไปที่ / tmp / vzTkbXD / 0 แทนในขณะนี้
Michael Barton

1
ลองunset TMPDIRแทน และข้อผิดพลาดคืออะไร? หากข้อความไม่แสดงขึ้นจริงให้เรียกใช้sudo fs_usage MacVim(โปรดทราบว่ากระบวนการที่ตั้งชื่อแล้วจะต้องทำงานอยู่แล้ว ) และจดบันทึกสิ่งที่ errno บนการเรียก open ()
Kevin Reid

ขอขอบคุณสำหรับคำแนะนำอย่างต่อเนื่องของคุณเพื่อพยายามแก้ไขปัญหานี้ให้ฉันขอบคุณจริงๆ ฉันได้ลองยกเลิกการตั้งค่า $ TMPDIR แต่ไม่สามารถแก้ไขข้อผิดพลาดได้เช่นกันโชคไม่ดีที่ฉันไม่คุ้นเคยกับคำสั่ง fs_usage และฉันไม่สามารถสร้างหมายเลขข้อผิดพลาดสำหรับกระบวนการเปิดในผลลัพธ์ fs_usage ฉันได้วางผลลัพธ์ที่สมบูรณ์ของ fs_usage ที่นี่หากนี่เป็นการใช้งานใด ๆ - cl.ly/5c01de97b2276a73b569
Michael Barton

0

Vim กำลังพยายามเปิดไฟล์ swap คุณลองซ่อมสิทธิ์แล้วหรือยัง?


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