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下中文乱码的问题
随机推荐
- Ios 从无到有项目 MVVM模式(两)
1.该项目昨天,我认为未来,有三个部分,第一部分是基于一个在线数据查询对聚合,第二部分是xmpp聊天功能,第三部分是很多其他功能. 2.在线咨询,使用的主要技术,它是get要求或post要求,该网上查 ...
- WCF与Web API 区别
WCF与Web API 区别(应用场景) Web api 主要功能: 支持基于Http verb (GET, POST, PUT, DELETE)的CRUD (create, retrieve, ...
- php 模拟POST提交的2种方法
1.通过curl函数 $post_data = array(); $post_data['clientname'] = "test08"; $post_data['clientpa ...
- Phpstorm配置phpunit对php进行单元测试
在 phpstorm 中配置 php 项目的单元测试,项目使用 Composer 进行管理,为了避免在项目中直接引入 phpunit 相关代码包,使项目的 vendor 目录变得臃肿,这里采用全局安装 ...
- SQL点滴16—SQL分页语句总结
原文:SQL点滴16-SQL分页语句总结 今天对分页语句做一个简单的总结,他们大同小异的,只要理解其中一个其他的就很好理解了. 使用top选项 *from Orders orderid from Or ...
- Node.js日志框架选型比較:Winston
日志对于问题定位.调试,系统性能调优至关重要,尤其是系统复杂以及在线执行的情况下. 好的开发框架都会有一个可开启关闭/可配置记录级别的日志系统.我们从下面几个方面来做选型: 1. 每行日志都须要有准确 ...
- 初识Python-web框架的这两天
前段时间打算学习python,其实时间蛮紧张的,看看文字教程,累了就看视频教程.算是把基本的语法过了一遍,但是OOP就费了好大的气力 ,C里有的对象,继承,等等等,还算能理解.不过高级点的就理解起来吃 ...
- Java集合之LinkedHashSet源码分析
1.简介 我们知道Set不允许包含相同的元素,如果试图把两个相同元素加入同一个集合中,add方法返回false.根据源码实现中的注释我们可以知道LinkedHashSet是具有可预知迭代顺序的Set接 ...
- javascript 学习总结(八)属性定义方法
1.defineProperty /* 定义(Definition).定义属性需要使用相应的函数,比如: Object.defineProperty(obj, "prop", pr ...
- 云优化的概念、Entity Framework 7.0、简单吞吐量压力测试
云优化的概念.Entity Framework 7.0.简单吞吐量压力测试 继续上一篇<开发 ASP.NET vNext 初步总结(使用Visual Studio 2014 CTP1)>之 ...