IntelliJ IDEA 主题、字体、编辑区主题、文件编码修改与乱码问题排查指南

📅 发布时间:2026/10/1 2:15:49
IntelliJ IDEA 主题、字体、编辑区主题、文件编码修改与乱码问题排查指南
文档教程【免费下载链接】IntelliJ-IDEA-TutorialIntelliJ IDEA 简体中文专题教程项目地址https://gitcode.com/gh_mirrors/in/IntelliJ-IDEA-Tutorial点击查看免费下载导读本篇指南围绕 IntelliJ IDEA 的界面美化与中文开发环境配置展开覆盖四类最影响日常使用体验的设置全局 UI 主题、三类字体主题字体、代码编辑字体、控制台输出字体、编辑区配色主题以及全局/项目/单文件的编码体系。同时系统梳理中文用户最常见的两大乱码场景——编码导致的编译报错与 Tomcat 控制台输出乱码并给出可直接复制的解决方案含-Dfile.encodingUTF-8与 BOM 处理。读完本文你将掌握一套完整的中文化 去乱码的 IntelliJ IDEA 配置方案并能从底层配置层面.idea/encodings.xml理解编码问题的根源。本文为 IntelliJ IDEA 简体中文专题教程 的第 10 讲对应仓库文档 theme-settings.md。一、UI 主题修改Appearance1.1 修改入口打开左上角File - SettingsMac 为IntelliJ IDEA - Preferences进入Appearance Behavior - Appearance上图的标注 1 处即为修改 UI 主题的下拉列表。1.2 各平台默认主题说明在 Windows 系统上IntelliJ IDEA 默认提供四套 UI 主题主题名背景说明Darcula黑色最受开发者欢迎的暗色主题本教程演示版本即使用此主题IntelliJ白色官方经典亮色主题Windows白色与 Windows 系统风格一致的亮色主题Alloy. IDEA Theme白色官方提供的另一套亮色主题其他操作系统上不一定会提供完整的四套主题主题的选择完全根据个人喜好。改变主题后需要重启 IntelliJ IDEA 才能看到效果。关于主题选择可以补充参考本教程的 首次运行向导第 7 讲其中提到在向导的 Select theme 步骤中即可预先选择 UI 主题Windows 版自带 4 套主题但实际使用最多的就是Darcula与IntelliJ两种。本教程的 教程介绍 也明确说明整套演示采用黑色主题Darcula。注意这里修改的是IDE 整体 UI 主题与后文 编辑区主题代码书写区的配色是两套相互独立的设置需要分别配置。二、字体修改2.1 主题字体修改IDE 界面字体路径Settings - Appearance Behavior - Appearance。如上图标注 1 所示要修改主题字体必须先勾选Override default fonts by。默认情况下 IntelliJ IDEA 不推荐修改界面字体但中文用户需要特殊处理——因为字体分为包含中文字符集和不包含中文字符集两类使用英文的国家无需担心乱码而中文环境需要。字体审美因人而异但修改前必须清楚一个前提你选择的字体必须包含中文。例如微软雅黑、宋体这类包含中文而Courier New、Monaco等只是纯英文字体。如果选择的字体不包含中文很多位置会出现类似口口口口口的乱码方块例如中文文件名、中文菜单字体都会变成方块。不建议把主题字体调得很大在低分辨率显示器上主题字体过大时工具菜单、右键菜单的部分选项会超出分辨率显示范围而无法被选中。若执意放大字体又不想换大分辨率显示器可通过Settings - Appearance Behavior - Menus and Toolbars删除部分用不到的菜单项但一般不建议这样做。新增字体需重启生效如果在 IntelliJ IDEA 运行期间新安装了字体必须重启 IntelliJ IDEA 之后新字体才会出现在下拉列表中。2.2 代码编辑字体修改Editor 字体路径Settings - Editor - Colors Fonts - Font。如上图标注 1 所示默认不能直接在自带的代码模板上修改字体需要先点击Save As另存一份副本然后才能修改。这种设计在 IntelliJ IDEA 的其他多处设置中也存在——凡是看到Copy、Save As这类按钮都说明默认模板只读、需要先复制再改。本教程 快捷键设置篇 中快捷键模板Default不可直接修改需先Copy出Default Copy也是同样的设计思想。如上图标注 2 所示勾选Show only monospaced fonts表示只筛选显示系统上的等宽字体。Windows 系统的等宽字体不多勾选后下拉可选字体很少取消勾选即可显示系统上所有已安装的字体。如上图标注 3 所示编辑区字体分为第一字体Primary font与第二字体Secondary font当某些字符在第一字体中不支持时IntelliJ IDEA 会自动回退使用第二字体来渲染。一个实战配置参考教程作者的推荐习惯第一字体使用Monaco纯英文字体不支持中文第二字体使用Yahei Consolas Hybrid微软雅黑与 Consolas 的混合字体包含中文这两个字体均非系统自带需要自行下载安装。需要注意如果第一字体不含中文而第二字体含中文部分场景仍会出现口口口口口例如Ctrl Shift N全局查找文件时输入中文。如果无法容忍这种场景最稳妥的方案是第一字体直接使用包含中文的字体。2.3 控制台输出字体修改Console Font路径Settings - Editor - Colors Fonts - Console Font。控制台Console输出内容的字体在此处单独设置很多新人运行程序后输出乱码正是因为没有在这里设置字体。控制台输出字体的修改原理与代码编辑字体修改完全一致同样需要先Save As、支持第一/第二字体、等宽字体筛选故不再重复讲解直接套用 2.2 节的方法即可。三、编辑区主题修改Editor Color Scheme3.1 编辑区主题介绍路径Settings - Editor - Colors Fonts。编辑区主题即代码书写区的配色主题。多数用户在General分类下做过小修小改下文重点介绍General中常修改的细节项其他特性如语言特定语法着色的颜色修改方法原理相同。上图红圈下拉列表展示的是当前电脑可选用的编辑区主题Scheme。网络上有爱好者制作的编辑区主题模板可下载安装常见两个站点color-themes.com主要提供jar文件下载phpstorm-themes.com主要提供xml与icl文件下载。对应文件的具体安装方法请查看相应网站的Help页面均有详细说明。3.2 编辑区主题细节修改上图标注 1 为可修改的**通用细节General**内容列表。上图标注 2 为可修改的属性Attributes注意并不是每个细节都能修改所有属性例如Default text可以勾选Bold而Caret row无法勾选Bold——因为只有文本才有加粗的属性需求。上图标注 3 为修改后的预览区预览区实时动态展示修改效果。在General区教程作者常修改的细节项及推荐修改的属性细节项含义推荐修改的属性Default text默认代码文本Background背景色Caret row光标所在行BackgroundVertical indent guide垂直缩进线Foreground前景色Identifier under caret光标所在位置的相同标识符的高亮效果BackgroundText search result查找模式下匹配字符的样式Background四、文件编码修改File Encodings4.1 编码设置入口与推荐配置路径Settings - Editor - File Encodings。如上图标注 1 所示Global EncodingIDE 全局编码默认是UTF-8Project Encoding项目编码虽然默认可能是GBK教程的 Hello World 项目创建篇 也提到新建项目默认编码为 GBK一般强烈建议修改为UTF-8。如上图标注 2 所示IntelliJ IDEA 可以对Properties文件进行专门的编码设置一般也建议改为UTF-8。如上图标注 3 所示Properties文件设置中的关键属性是Transparent native-to-ascii conversion该属性用于自动转换 ascii 编码一般都要勾选否则Properties文件中的注释不会显示为中文。如上图标注 4 所示IntelliJ IDEA 除了支持对整个 Project 设置编码还支持对目录、单个文件分别设置编码。对目录做编码修改时可能会出现需要Convert编码的弹出操作选择强烈建议在转换之前做好文件备份否则转换过程可能变成乱码且无法还原。4.2 单文件编码修改Reload 与 Convert对单独文件修改编码除了在设置页操作还可以直接点击编辑器右下角的编码显示区。如果代码内容中包含中文会弹出如上图演示的操作选择Reload重新加载使用新编码重新加载文件新编码不会保存到文件中重新打开此文件旧编码是什么依旧是什么。Convert转换使用新编码进行转换新编码会保存到文件中重新打开此文件新编码是什么就是什么。含有中文的代码文件执行Convert之后有可能使中文变成乱码所以转换前务必做好备份否则可能出现转换过程变成乱码、无法还原的情况。五、由编码问题引起的编译错误这类问题的典型报错信息为找不到符号、未结束的字符串文字等。排查与解决办法如下BOM 问题最常见UTF-8 编码文件分有 BOM与无 BOM两种。默认情况下 IntelliJ IDEA 使用的编译器是javac而javac只能编译无 BOM的文件。很多从 Eclipse 转来的用户在 IntelliJ IDEA 中开发 Eclipse 项目时常遇到此问题根源是 Eclipse 的编译器是Eclipse该编译器支持有 BOM文件的编译。解决办法对该文件进行BOM 去除。批量去除 BOM可以检索批量去除 BOM、批量转换无 BOM等关键字网络上已有多种现成方案。备选方案不建议也可以把 IntelliJ IDEA 的编译器设置为Eclipse来绕过该问题但一般不建议这样做。项目配置文件兜底排查如果上述方案都无法解决且已确认 IntelliJ IDEA 各处配置编码均为UTF-8、报错文件编码也是UTF-8 无 BOM那么还有一种可能项目配置文件有问题。项目编码的配置文件位于/项目目录/.idea/encodings.xml如果你会修改此文件可直接修改其中对应的编码声明如果不会修改直接删除.idea整个目录重启 IntelliJ IDEA 重新配置该项目即可。补充背景.idea目录是 IntelliJ IDEA 项目配置目录本项目格式默认采用 directory based 方式.iml为模块配置文件项目配置的变动都以 XML 文件形式保存详见 Hello World 项目创建与项目配置文件介绍。因此编码异常时.idea/encodings.xml是值得优先检查的项目级配置。六、Tomcat 控制台输出乱码如果 Tomcat 控制台输出乱码并且已经保证本文前述控制台字体设置所选字体包含中文那么还可以尝试在 Tomcat 运行配置的VM 参数上加上-Dfile.encodingUTF-8如果你是 Mac 系统该参数很有可能是必需的。该参数在 Tomcat 的Run/Debug Configurations - VM options中配置如上图所示。七、中文编程字体推荐对于追求代码显示效果的中文开发者可选用以下两款含中文的混合字体Microsoft YaHei Consolas微软雅黑 Consolas 混合含中文适合代码编辑Microsoft YaHei Mono微软雅黑 Mono 等宽混合含中文安装后按本文 2.2 节的方法在Editor - Colors Fonts - Font中作为第一字体或第二字体使用即可。八、配置自检清单配置完成后建议按如下清单快速自检确保中文环境无死角检查项配置位置期望值UI 主题Appearance Behavior - Appearance按喜好选择Darcula等重启生效主题字体同上勾选Override default fonts by字体须包含中文代码编辑字体Editor - Colors Fonts - Font第一字体含中文或第二字体兜底中文控制台字体Editor - Colors Fonts - Console Font字体须包含中文全局/项目编码Editor - File Encodings均设为UTF-8Properties 编码同上UTF-8 勾选Transparent native-to-ascii conversion单文件/目录编码右下角编码区或设置页改动前先备份慎用Convert编译报错.idea/encodings.xml/ 去除 BOM确认无 BOM、项目编码配置正常Tomcat 乱码运行配置 VM options添加-Dfile.encodingUTF-8Mac 尤其需要按照上述配置即可获得一个中文显示完整、无乱码的 IntelliJ IDEA 开发环境。更多 IDEA 细节设置可继续阅读本教程的 推荐设置讲解第 31 讲与 常用细节系列。赞分享文档教程【免费下载链接】IntelliJ-IDEA-TutorialIntelliJ IDEA 简体中文专题教程项目地址https://gitcode.com/gh_mirrors/in/IntelliJ-IDEA-Tutorial点击查看免费下载相关推荐10分钟打造专属IntelliJ IDEA开发环境从主题到编码的个性化配置指南10分钟打造专属IntelliJ IDEA开发环境从主题到编码的个性化配置指南 IntelliJ IDEA 是一款功能强大的集成开发环境通过个性化配置可以显文档教程gh_mirrors/ohmy/ohmyzsh字体配置指南解决主题乱码问题gh_mirrors/ohmy/ohmyzsh字体配置指南解决主题乱码问题 你是否在使用ohmyzsh主题时遇到过特殊符号显示为方框、箭头变成乱码的情况特别CLI开发工具插件系统LFM2.5-VL-1.6B-Extract实战案例电商产品图像自动标签生成教程LFM2.5 VL 1.6B Extract实战案例电商产品图像自动标签生成教程 LFM2.5 VL 1.6B Extract是Liquid AI推出的紧凑型上一篇Cursor Free VIP完整指南5分钟破解AI编程助手限制实现永久免费使用下一篇3步解决Android屏幕适配AndroidAutoSize深度解析与实战指南创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考