Cygwin 各种情况下中文乱码--终极解决方案
0.引言
本人从进公司以来一直负责公司Android平台下产品的NDK开发,用的工具:
01. Google的adt-bundle(集成了eclipse和sdk)
02. NDK
03. Cygwin
(PS: 虽然比较新的ndk版本,好像是从 r7开始就已经可以不用Cygwin了,
但是本人从刚开始接触Android NDK开发时就用的是Cygwin,在Window操作系统下足够用了,
作为懒人,既不想折腾到Linux下,又对命令行的操作比较留恋,所以就这么一直用着。高手请勿见怪。)
1. 穷
今天在做一个小测试的程序的时候,使用 javah 命令,想看一下有关 javah 的详细帮助说明,突然发现那些中文说明都乱码了。
话说当初刚装 Cygwin 不久,在看代码里面注释的时候发现中文显示乱码,
当时随便修改了 options 选项里面 Text 的 locale character set ,看能正常显示了就没再继续折腾了。
想不到今天查看帮助文档显示的时候竟然又发现了乱码,只好网上各种查找资料,亲自实践,不断尝试。。。
这次本人决定整理一份终极解决方案,一次性解决,永绝后患。
网上绝大部分都是相互转载,内容翻来覆去雷同相似度很高,却最终也也没有一个完全解决各种情况的中文乱码方案。
有的是文件注释里面中文正常显示了,但是很多英文倒变成了乱码。(如命令“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. 查看代码中的中文注释

本文系本人原创,供各位学习交流,如有需要转载请标注出处,并给出本原文链接。谢谢各位支持。^_^
Cygwin 各种情况下中文乱码--终极解决方案的更多相关文章
- xampp3.2下mysql中文乱码终极解决方案
xmapp3.2.2中mysql已经被替换成了Mariadb,网上那些显示char语句已经失灵. 另外本文主要介绍的是手动在mysql中写入中文乱码问题 那么我们将采用如下三个步骤解决乱码问题 1.打 ...
- VIM、GVIM在WINDOWS下中文乱码的终极解决方案
文章转自:http://www.liuhuadong.com/archives/68 vim.gvim在windows下中文乱码的终极解决方案在windows下vim的中文字体显示并不好,所以我们需要 ...
- vim、gvim 在 windows 下中文乱码的终极解决方案
vim.gvim 在 windows 下中文乱码的终极解决方案 vim ~/.vimrc 然后加入: " Gvim中文菜单乱码解决方案 " 设置文件编码格式 set encodin ...
- eclips环境下开发spring boot项目,application.properties配置文件下中文乱码解决方案
如以上,application.properties文件下中文乱码.发生乱码一般都是由于编码格式不一样导致的. 打开Window-Preferences-General-content Types-T ...
- spring boot项目,application.properties配置文件下中文乱码解决方案
转自:https://blog.csdn.net/qq_40408534/article/details/79831807 如以上,application.properties文件下中文乱码.发生乱码 ...
- Git bash下中文乱码问题
Git bash下中文乱码--解决方案 解决办法1: 在git bash下,右键 出现下图,选择options: 选择"Text" 将Character set设置为 UTF-8 ...
- jquery在ie浏览器下中文乱码的问题
用jquery的ajax方法在调用后台数据发现中文乱码,无法解析中文的url,而在别的浏览器下面就不会,如下所示 $.ajax({ type:'get', url:'薛之谦-演员.lrc', asyn ...
- 解决 php7 cli 模式下中文乱码的两中方法
解决 php7 cli 模式下中文乱码的两中方法1. 给PHP文件开头加上 exec('chcp 936'); 然后把该文件以 ANSI 格式编码2. 在 php.ini 中设置 default_ch ...
- 解决python语言在cmd下中文乱码的问题
解决python语言在cmd下中文乱码的问题: a = "再见!"print (a.decode('utf-8').encode('gbk')) #解决在cmd下中文乱码的问题
随机推荐
- WPF中嵌入WinForm中的webbrowser控件
原文:WPF中嵌入WinForm中的webbrowser控件 使用VS2008创建WPF应用程序,需使用webbrowser.从工具箱中添加WPF组件中的webbrowser发现其中有很多属性事件不能 ...
- Emojicon - 为你提供emoji表情的整套方案
Github : https://github.com/rockerhieu/emojicon 事实上国内的<表情大全>也有提供类似整套表情解决方式,并且还支持gif表情:http://w ...
- oracle 电子商务解决方案讲义
1. 电商营销(CRM) - 高端客户体验 2. 当当网李国庆做 "千千面"购物体验 3. 所使用的唯一的产品oracle的CRM 4. 个人的事情.谁在世界上是用户体验. 5. ...
- Android KeyStore Stack Buffer Overflow (CVE-2014-3100)
/* 本文章由 莫灰灰 编写,转载请注明出处. 作者:莫灰灰 邮箱: minzhenfei@163.com */ 1. KeyStore Service 在Android中,/system/bi ...
- Spring Resource之ResourceLoaderAware接口
ResourceLoaderAware接口是一个特殊的标记接口,它表示对象需要提供给一个ResourceLoader引用: public interface ResourceLoaderAware { ...
- 【Linux 工作经常使用命令
】
1, 批量杀某个程序 比方某个程序叫 url_info.py, 起了若干个进程 . 高速查杀. 先查看 ps aux | grep url_info.py 确认没问题 ,能够杀,则批量kill ps ...
- Orchard Logging
Orchard 刨析:Logging 最近事情比较多,有预研的,有目前正在研发的,都是很需要时间的工作,所以导致这周只写了两篇Orchard系列的文章,这边不能保证后期会很频繁的更新该系列,但我会写完 ...
- MVC与Validate验证提示的样式修改
MVC中使用Validate的验证,要修改错误提示样式一共有3处需要修改,否则就不太完美了: MVC中的Validate的验证机制只用在后台写一次,就可以完成前台和后台的完美验证,前台的验证主要是依靠 ...
- rabibtMQ安装及集群配置-linux
安装RabbitMQ RabbitMQ是流行的开源消息队列系统,用erlang语言开发,故首先需要安装erlang依赖及erlang. 安装erlang依赖的基本环境,通过yum方式进行安装: yum ...
- [Usaco2008 Feb]Eating Together麻烦的聚餐[最长不下降子序列]
Description 为了避免餐厅过分拥挤,FJ要求奶牛们分3批就餐.每天晚饭前,奶牛们都会在餐厅前排队入内,按FJ的设想所有第3批就餐的奶牛排在队尾,队伍的前端由设定为第1批就餐的奶牛占据,中间的 ...