cmder雖然Windows命令行的進階版,雖然好看易用,但其中文編碼一直是個問題。網上有不少博客給出解決方案,大部分都已因為版本更新失效。
本文解決方案針對1.3以上版本的cmder用戶
中文字體重疊問題
錯誤方案:
需要取消勾選設置中的
Monospace
選項
正確方案:
這個問題在cmder v1.3.0
以上版本中已經修復,不需要進行任何操作
ls
命令中文路徑/文件名亂碼
錯誤方案:
添加4行命令到cmder/config/aliases文件末尾…
在cmder v1.3.0
以上版本初始創建的cmder/config/user-aliases.cmd
文件中已經包含:
1 |
ls=ls --show-control-chars -F --color $* |
不需要添加其它命令(實際上添加了也沒有效果)
正確方案:
-
win+ctrl+p
打開Settings -
在Settings > Startup > Environment里添加:
set LANG=zh_CN.UTF8
PS:
這樣修改過ls
可以正確顯示中文,但ls |more
還是會出現亂碼。
如果改為set LANG=zh_CN.GBK
可以解決這個問題。
PPS:
因為cat
命令讀取文件的編碼與此有關,如果改為GBK則cat
一個UTF8文件會顯示亂碼,
如果改為UTF8則cat
一個GBK文件會顯示亂碼,
具體設置還是看你環境中常用編碼。
cd
進一個中文目錄,中文路徑名顯示亂碼
經過上述設置,cmder一般情況下都能正常顯示中文
但是如果你進入一個中文路徑的話,cmder的路徑的中文仍然是亂碼
好在已經有人解決了這個問題
解決方案
只需下載最新的Release(目前是1.3.2):
Releases · cmderdev/cmder · GitHub
然后解壓覆蓋就好
最后附上一張配置完成的示意圖: