1. 程式人生 > 其它 >vim編輯器中文亂碼修復

vim編輯器中文亂碼修復

Vim是老式UNIX編輯器Vi的大幅改進版本。 新增功能:多級撤消、語法高亮、命令列歷史記錄、線上幫助、拼寫檢查、檔名補全、塊操作、指令碼語言等。 還有一個圖形使用者介面 (GUI)可用。 儘管如此,Vi 相容性仍然保持,那些“在手指”中擁有 Vi 的人會感到賓至如歸。 請參閱“runtime/doc/vi_diff.txt”以瞭解與Vi的區別。

此編輯器對於編輯程式和其他純文字檔案非常有用。所有命令都以普通鍵盤字元給出,因此可以用十根手指打字的人可以非常快速地工作。 此外,功能鍵可以由使用者對映到命令,滑鼠可以使用.

Vim在MS-Windows(NT,2000,XP,Vista,7,8,10),Macintosh,VMS和幾乎所有版本的UNIX下執行。 移植到其他系統不應該非常困難。 舊版本的 Vim 可在 MS-DOS、MS-WINDOWS 95/98/Me、AmigaDOS、Atari MiNT、BeOS、RISC OS 和 OS/2 上執行。 這些不再維護。

官網 https://www.vim.org/, vim編輯器下載連結 https://www.vim.org/download.php

測試環境 Windows10

當我們安裝好Vim編輯器工具後,在編輯文字輸入中文時顯示亂碼,如何修復呢?

需要將下面程式碼新增到 _vimrc檔案中(該檔案位於vim安裝路徑下的根目錄裡)

set encoding=utf-8
set termencoding=utf-8

set fileencodings=ucs-bom,utf-8,cp936,gb18030,big5,euc-jp,euc-kr
set fileencoding=utf-8

說明

1)encoding是設定vim內部的編碼方式,大概就是vim內部的快取 暫存器 指令碼什麼的,這個使用者大可不必關係,除非你在意效能,最好把這三個都設成一致的。

2)termencoding是vim用於螢幕顯示的編碼,如果其值與encoding值不一致的話,vim會把encoding編碼轉換為termencoding編碼再輸出到螢幕。

3)fileencodings是vim讀取檔案時所需要用到的編碼方式,vim讀取檔案時會按先後順序依次按設定的編碼方式來嘗試解碼檔案中的內容,如果符合就用此編碼來解碼該檔案,並會把fileencoding值設定為該編碼。上面的編碼順序是從網上找來的,應該沒滿足大部分需求。(按編碼要求的嚴格順序來排序)

如果vim從列表中找不到匹配編碼的話它就會用系統預設的編碼來讀取。

4)fileencoding是儲存檔案時所用的編碼,vim 會把檔案內容轉換為該格式儲存。

中文亂碼的原因就是因為這幾個編碼設定的不同,所以會產生編碼轉換的錯誤,如果有條件的話最好把這幾個編碼統一用utf-8編碼就ok了。

方法一:

1. 在Vim編輯器中檢視設定 編輯-啟動項設定

 如果受系統保護,無法儲存,請使用方法二

1. 在Vim安裝路徑下找到_vimrc檔案

 2. 將該檔案先複製到桌面上,再將上面的程式碼複製到檔案內容的最前面,儲存後將該檔案再拷貝回原路徑,替換原始檔案重啟啟動Vim編輯工具即可。

文章參考:https://blog.csdn.net/shujianhenu/article/details/46537651