我經常需要編輯腳本文件,該文件的最後一行具有EOL標記的treats文件的解釋器作爲錯誤(即該文件將CRLF視爲「換行符」,而不是「行結束符」)。使用vim編輯文件,在最後一行沒有EOL標記但具有CRLF行尾
目前,我使用二進制模式在Vim中打開這些文件(在命令行中爲-b)。它會自動檢測最後一行缺少EOL,並適當設置「noeol」選項,從而防止在最後一行寫入EOL。由於該文件具有CRLF行結尾,因此我在行結尾處獲得了很多^M
s(因爲它似乎僅在二進制模式下解釋了Unix樣式的行結尾)。我無法在文本模式下打開它,因爲對於非二進制文件忽略「noeol」選項。
這非常煩人,我總是要記住在每行的末尾手動輸入^M
!有什麼辦法可以強制它在二進制模式下接受DOS風格的行結尾,或強制它在文本模式下聽取EOL選項?
我認爲這會破壞文件,但它似乎工作得很好。這根本不是一個理想的解決方案,我一直在尋求更好的答案,但我想一個人不會來......我會接受這一個,但如果它出現,我可能會選擇一個更好的答案。 – rmeador 2010-05-19 16:21:46