本人第一篇博客,记录一下在学STM32时遇到的有关Keil编译器的一些问题。
在用Keil的时候我发现每次想要删除某个中文字符的时候总是要连续按两次backspace才能删除掉,只按一次的话会出现乱码,并且有些时候会影响后面的中文字符。
可以看到如果把光标移到“出”字并且按一下backspace键后会出现乱码并且会影响后面的中文字符。
关于这个问题的解释是:我们在使用Keil的时候编译器默认是使用ANSI进行编码的,在ANSI中对于英文是使用一个字节来表示,但是对于中文,在GB2312的编码中是利用两个字节来表示的,所以如果我们按一次backspace键在ANSI下只会删掉一个字节,所以出现乱码,因为中文还有一个字节没有删掉!!
为了解决这个问题我们可以点击上图的这个扳手工具键进入configuration,然后如下图所示将encode从ANSI改成GB2312
这样子当删除中文字符的时候就会一切正常了,但是随之出现了第二个问题……也就是(如果你不是使用宋体的话)你会发现自己的界面变丑了!!!!!
给大家看一下对比图,ANSI情况下我使用的是Adobe的Source Code Pro这个字体,改成GB2312后就变成了难看的界面了!!!
所以说到底是使用这个不太好看的字体但是却能正常的使用Keil还是说继续在ANSI模式下顽强生存呢就要见仁见智了。
顺便讨论一下换字体这件事情,拿到Keil第一件事情肯定是要把刀磨锋利了,但是一打开configuration里面会看到字体并没有多少!可是我的Fonts里面的字体数几百种!
这里就要直接到Keil的主目录下进行更改了,打开Keil文件所在的位置,找到一个叫做global.prop的文件,用记事本打开它,里面的内容如下图所示:
这里我是用notapad++打开的,用记事本打开效果一样的。找到截图的这两大段,然后选中当前使用的字体,按Ctrl+H打开替换,替换成你想用的字体,我这里使用的是Adobe的开源字体Source Code Pro。
然后在**替换为:**这个地方改成自己想用的字体就行了!
如果不知道自己有哪些字体的话可以去C:\Windows\Fonts这个文件夹里找一些好看的字体来用,右键点击想用的字体进入属性就可以看到字体的名字啦!
然后把选中的部分复制下来替换就行了!
最后我的做法就是同时使用Keil和notapad++学习STM32啦,在Keil里面编写代码,因为要用到很多的库文件,notapad++不能打开那些.c文件不太方便。然后在notapad++里面写注释和中文。
效果还是非常好的!!