如何在 Qt Creator 中应用 one dark pro 主题

Posted 之一Yo

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在 Qt Creator 中应用 one dark pro 主题相关的知识,希望对你有一定的参考价值。

前言

Qt Creator 自带了几款主题,但是并不好看。在博客 《Qt Creator打造VScode one dark pro主题配色》 中给出了 one dark pro 主题的配置文件,但是效果并不好,所以这里给出改进后的主题文件(只针对代码部分)。

配置文件

D:\\Qt\\Tools\\QtCreator\\share\\qtcreator\\styles 中创建一个 onedark.xml 文件,然后在文件里面写入以下内容:

<?xml version="1.0" encoding="UTF-8"?>
<style-scheme version="1.0" name="One Dark">
  <style name="Text" foreground="#abb2bf" background="#282c34"/>
  <style name="Link" underlineStyle="SingleUnderline"/>
  <style name="Selection" background="#3e4451"/>
  <style name="LineNumber" foreground="#4b5363"/>
  <style name="SearchResult" background="#324365"/>
  <style name="SearchScope" background="#3e4451"/>
  <style name="Parentheses" underlineColor="#61afef" underlineStyle="SingleUnderline"/>
  <style name="ParenthesesMismatch" foreground="#000000" background="#c678dd"/>
  <style name="AutoComplete" background="#3e4451"/>
  <style name="CurrentLine" background="#3a3f4b"/>
  <style name="CurrentLineNumber" foreground="#abb2bf" />
  <style name="Occurrences" background="#324365"/>
  <style name="Occurrences.Unused" underlineColor="#d19a66" underlineStyle="DashUnderline"/>
  <style name="Occurrences.Rename" background="#e06c75"/>
  <style name="Number" foreground="#d19a66"/>
  <style name="String" foreground="#98c379"/>
  <style name="Type" foreground="#61afef"/>
  <style name="Local" foreground="#e06c75" />
  <style name="Parameter" foreground="#e06c75" />
  <style name="Global" foreground="#e06c75" />
  <style name="Field" foreground="#e06c75"/>
  <style name="Static" foreground="#61afef" italic="true"/>
  <style name="VirtualMethod" foreground="#61afef" italic="true"/>
  <style name="Function" foreground="#61afef"/>
  <style name="Keyword" foreground="#c678dd"/>
  <style name="PrimitiveType" foreground="#c678dd"/>
  <style name="Type" foreground="#e5c07b" />
  <style name="Operator" foreground="#56b6c2" />
  <style name="Overloaded Operator" foreground="#c678dd"/>
  <style name="Punctuation"/>
  <style name="Preprocessor" foreground="#c678dd"/>
  <style name="Label" foreground="#e06c75" bold="true"/>
  <style name="Comment" foreground="#5c6370" italic="true"/>
  <style name="Doxygen.Comment" foreground="#5c6370" italic="true"/>
  <style name="Doxygen.Tag" foreground="#61afef"/>
  <style name="VisualWhitespace" foreground="#3c4049"/>
  <style name="QmlLocalId" foreground="#61afef"/>
  <style name="QmlExternalId"/>
  <style name="QmlTypeId" foreground="#61afef"/>
  <style name="QmlRootObjectProperty" foreground="#61afef"/>
  <style name="QmlScopeObjectProperty" foreground="#61afef"/>
  <style name="QmlExternalObjectProperty"/>
  <style name="JsScopeVar"/>
  <style name="JsImportVar" foreground="#d19a66"/>
  <style name="JsGlobalVar" foreground="#d19a66"/>
  <style name="QmlStateName" foreground="#61afef"/>
  <style name="Binding" foreground="#c678dd"/>
  <style name="DisabledCode" foreground="#5c6370"/>
  <style name="AddedLine" foreground="#98c379"/>
  <style name="RemovedLine" foreground="#e06c75"/>
  <style name="DiffFile" foreground="#61afef"/>
  <style name="DiffLocation" foreground="#d19a66"/>
  <style name="DiffFileLine" foreground="#000000" background="#e5c07b"/>
  <style name="DiffContextLine" foreground="#000000" background="#56b6c2"/>
  <style name="DiffSourceLine" foreground="#000000" background="#be5046"/>
  <style name="DiffSourceChar" foreground="#000000" background="#e06c75"/>
  <style name="DiffDestLine" foreground="#000000" background="#789353"/>
  <style name="DiffDestChar" foreground="#000000" background="#98c379"/>
  <style name="LogChangeLine" foreground="#e06c75"/>
  <style name="LogAuthorName" foreground="#61afef"/>
  <style name="LogCommitDate" foreground="#98c379"/>
  <style name="LogCommitHash" foreground="#e06c75"/>
  <style name="LogCommitSubject"/>
  <style name="LogDecoration" foreground="#c678dd"/>
  <style name="Warning" underlineColor="#d19a66" underlineStyle="SingleUnderline"/>
  <style name="WarningContext" underlineColor="#d19a66" underlineStyle="DotLine"/>
  <style name="Error" underlineColor="#e06c75" underlineStyle="SingleUnderline"/>
  <style name="ErrorContext" underlineColor="#e06c75" underlineStyle="DotLine"/>
  <style name="Declaration"/>
  <style name="FunctionDefinition"/>
  <style name="OutputArgument" italic="true"/>
  <style name="LastStyleSentinel"/>
</style-scheme>

然后在 Qt Creator 中的 工具 --> 选项 --> 文本编辑器 中将主题换成 One Dark 即可。重启之后就可以看到代码样式的变化了,至于 Qt Creator 界面的主题可以参照上述博客中的配置。

界面截图

配置完成之后的界面如下图所示,有 VS Code 的 one dark pro 的感觉了,当然代码编辑体验还是差了点,想要完全使用 VS Code 来开发 Qt 的话可以参见之前的博客 《如何在 VS Code 中搭建 Qt 开发环境》

以上是关于如何在 Qt Creator 中应用 one dark pro 主题的主要内容,如果未能解决你的问题,请参考以下文章

Qt Creator 添加自定义注释

在 Qt Creator 中应用代码更改的快捷方式是啥?

qDebug Qt 控制台应用程序输出到 Qt Creator 应用程序输出

如何在 Qt Creator 的主窗口中添加自定义小部件

使用 qt-creator 将库项目链接到 qt 控制台/小部件项目

如何在 Qt Creator 中添加可调整大小的 QVBoxLayout?