首頁>Club>
2
回覆列表
  • 1 # 使用者8087792366021

    一般來說只需要正確設定vim的編碼識別序列就很少會遇到亂碼問題:

    這個設定是有順序的,一般原則是儘可能把比較獨特、不會和別的編碼混淆的放在前面(例如ucs-bom,由於帶有BOM頭的關係很難和別的混淆),然後後面可以按照常用程度降序排列。latin1作為fallback放到最後。這個序列可能還不是很科學也不是很完整(日文、韓文這兩個也比較容易出錯的就沒有包括),但至少就我目前的使用情況來說(英文及一些ASCII擴充套件/變種、簡體和繁體中文)都沒有遇到過問題。如果有朋友知道更好的順序,歡迎回復或者直接修改我的回答。如果開啟之後還是遇到了亂碼,那麼就需要手動指定編碼了。注意,網路上很多地方提到的設定“fileencoding”(注意不帶s)的方法是錯誤的。認真閱讀幫助文件: When reading a file "fileencoding" will be set from "fileencodings". To read a file in a certain encoding it won"t work by setting "fileencoding", use the |++enc| argument.當你開啟一個檔案以後,vim就已經選定好了編碼並且認為就是這個編碼了,set fileencoding只是修改你希望這個檔案以什麼編碼存在,相當於是設定儲存時的編碼——一旦設定了不同的fileencoding之後這個檔案就變成modified了,需要儲存(編碼變了)。正確的做法是在開啟檔案時使用++enc引數:如果想重新開啟當前檔案的話就省略檔名somefile即可。這兒有一個wiki你可以看看:Reloading a file using a different encoding最後,不要碰encoding這個設定!這是vim的內部編碼,除非你確定知道你在幹什麼,否則一般不需要修改。

  • 中秋節和大豐收的關聯?
  • 胡笳十八拍是誰的作品?