Cygwin 各類狀況下中文亂碼--終極解決方案

0.引言

本人從進公司以來一直負責公司Android平臺下產品的NDK開發,用的工具:java

01. Google的adt-bundle(集成了eclipse和sdk)bash

02. NDK eclipse

03. Cygwin工具

(PS:  雖然比較新的ndk版本,好像是從 r7開始就已經能夠不用Cygwin了,學習

    可是本人從剛開始接觸Android NDK開發時就用的是Cygwin,在Window操做系統下足夠用了,測試

    做爲懶人,既不想折騰到Linux下,又對命令行的操做比較留戀,因此就這麼一直用着。高手請勿見怪。)spa

1. 窮

今天在作一個小測試的程序的時候,使用 javah 命令,想看一下有關 javah 的詳細幫助說明,忽然發現那些中文說明都亂碼了。操作系統

話說當初剛裝 Cygwin 不久,在看代碼裏面註釋的時候發現中文顯示亂碼,命令行

當時隨便修改了 options 選項裏面 Text 的 locale character set ,看能正常顯示了就沒再繼續折騰了。3d

想不到今天查看幫助文檔顯示的時候居然又發現了亂碼,只好網上各類查找資料,親自實踐,不斷嘗試。。。

此次本人決定整理一份終極解決方案,一次性解決,永絕後患。

 

網上絕大部分都是相互轉載,內容翻來覆去雷同類似度很高,卻最終也也沒有一個徹底解決各類狀況的中文亂碼方案。

有的是文件註釋裏面中文正常顯示了,可是不少英文倒變成了亂碼。(如命令「ls -l」中的total、man查看幫助的部分英文)

有的比較好的解決方案實現了命令幫助裏面中文正常顯示,可是有些地方(好比 ls -la 顯示的文件日期)卻變成了英文。

2. 變

如今分享本人的完美終極解決方案:

2.1 界面設置

  非文本編輯狀態下,在界面上右鍵,選擇 options 選項裏面 Text 的設置,

  Local 一欄選擇 C (或者選 Default 的話系統也會自動默認爲 C), Character set 一欄選擇 GBK。如圖所示:

   

2.2 代碼配置

  1. 先 「 cd ~ 」 進入用戶目錄, 打開目錄下 .bash_profile 文件,在末尾添加以下幾行代碼:

  

 

  2. 在當前目錄下,打開 .inputrc 文件,找到有關 bash 命令對8 字節字符處理的代碼,去掉這句 set 前面的註釋符號(即前面的#號)。

 

  3. 在當前目錄下,打開 .bashrc 文件, 讓 ls 命令顯示中文和顏色,添加代碼以下:

  (其實通過本人實踐,發現這一步對中文亂碼的處理沒有影響,只是針對 ls 命令作的一個視覺顯示改進。不過確實看起來舒服多了。^_^)

3. 通

所謂 「 窮則變,變則通。」 如今你會發如今這份終極方案處理下,Cygwin 已經完美支持各類狀況下的中文顯示了。

各類狀況例子截圖以下

1. ls -la 命令:

 

2. javah 命令

3. 查看代碼中的中文註釋

 

本文系本人原創,供各位學習交流,若有須要轉載請標註出處,並給出本原文連接。謝謝各位支持。^_^

相關文章
相關標籤/搜索