ubuntu17.04下配置java字体来解决phpstorm乱码问题

phpstorm编辑器是可以正常显示中文的,但hint和部分git操作界面会把中文显示成方块,虽然不影响使用但确实不是很方便使用,这个问题是因为java没有配置正确的逻辑字体造成的,下面介绍下如何改正这个问题

首先java对debain系的发行版支持的不好,字体有redhat/suse/turbo,但就是没有debain的几个版本,更没有ubuntu。

<jvm>/jre/lib目录下有名为 fontconfig.properties的文件,这是java的字体配置文件

  1. 首先删掉 fontconfig.properties.bfc

  2. 复制 fontconfig.properties.src 为 fontconfig.properties文件

  3. 编辑内容如下

    version=1

    sequence.allfonts.UTF-8.zh.CN=latin-1,chinese-cn-iso10646 sequence.fallback=chinese-cn-iso10646,lucida

    serif.plain.latin-1=-b&h-lucidabright-medium-r-normal---%d---p--iso8859-1 serif.bold.latin-1=-b&h-lucidabright-demibold-r-normal---%d---p--iso8859-1 serif.italic.latin-1=-b&h-lucidabright-medium-i-normal---%d---p--iso8859-1 serif.bolditalic.latin-1=-b&h-lucidabright-demibold-i-normal---%d---p--iso8859-1

    sansserif.plain.latin-1=-b&h-lucidasans-medium-r-normal-sans--%d---p--iso8859-1 sansserif.bold.latin-1=-b&h-lucidasans-bold-r-normal-sans--%d---p--iso8859-1 sansserif.italic.latin-1=-b&h-lucidasans-medium-i-normal-sans--%d---p--iso8859-1 sansserif.bolditalic.latin-1=-b&h-lucidasans-bold-i-normal-sans--%d---p--iso8859-1

    monospaced.plain.latin-1=-b&h-lucidatypewriter-medium-r-normal-sans--%d---m--iso8859-1 monospaced.bold.latin-1=-b&h-lucidatypewriter-bold-r-normal-sans--%d---m--iso8859-1 monospaced.italic.latin-1=-b&h-lucidatypewriter-medium-i-normal-sans--%d---m--iso8859-1 monospaced.bolditalic.latin-1=-b&h-lucidatypewriter-bold-i-normal-sans--%d---m--iso8859-1

    dialog.plain.latin-1=-b&h-lucidasans-medium-r-normal-sans--%d---p--iso8859-1 dialog.bold.latin-1=-b&h-lucidasans-bold-r-normal-sans--%d---p--iso8859-1 dialog.italic.latin-1=-b&h-lucidasans-medium-i-normal-sans--%d---p--iso8859-1 dialog.bolditalic.latin-1=-b&h-lucidasans-bold-i-normal-sans--%d---p--iso8859-1

    dialoginput.plain.latin-1=-b&h-lucidatypewriter-medium-r-normal-sans--%d---m--iso8859-1 dialoginput.bold.latin-1=-b&h-lucidatypewriter-bold-r-normal-sans--%d---m--iso8859-1 dialoginput.italic.latin-1=-b&h-lucidatypewriter-medium-i-normal-sans--%d---m--iso8859-1 dialoginput.bolditalic.latin-1=-b&h-lucidatypewriter-bold-i-normal-sans--%d---m--iso8859-1

    sequence.allfonts=latin-1

    filename.-misc-zysong18030-medium-r-normal---%d---c--iso10646-1=/usr/share/fonts/truetype/arphic/uming.ttc

    awtfontpath.chinese-cn-iso10646=/usr/share/fonts/truetype/arphic

注意,一定要确认 /usr/share/fonts/truetype/arphic目录确实存在才可以

改完后重启 phpstorm,写个//TODO 中文,光标挪上去应该能正常显示中文了,如果还是方块,可以继续修改

打开 File/Settings 找到 Appearance & Behavior/Appearance,Override default fonts by 取消选中,或者把Override default font by 设置成一个中文字体,我选择的是文泉驿正黑

改过之后中文就正常了

点赞
收藏

评论区

加载中...

相关推荐

MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1

文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s

Oracle 分组与拼接字符串同时使用

SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(

皕杰报表之UUID

​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为

2020年前端实用代码段,为你的工作保驾护航

有空的时候,自己总结了几个代码段,在开发中也经常使用,谢谢。1、使用解构获取json数据let jsonData  id: 1,status: "OK",data: 'a', 'b';let  id, status, data: number   jsonData;console.log(id, status, number )

Ubuntu上Netbeans8.0字体的一次蛋疼体验

   最近准备转到Ubuntu操作系统下开发。开发工具我已经习惯了是使用netbeans。在原来windows,通过修改JAVA\_HOME/jre/lib的fontconfig.properties,定制monospaced,并且在netbeans选改字体来使得编辑代码界面使用我们的字体,同时也解决英文字体显示中文乱码问题。   由于对fon

JS 苹果手机日期显示NaN问题

问题描述newDate("2019122910:30:00")在IOS下显示为NaN原因分析带的日期IOS下存在兼容问题解决方法字符串替换letdateStr"2019122910:30:00";datedateStr.repl