如何向 Anjuta 的 GtkSourceView 编辑器添加主题

如何向 Anjuta 的 GtkSourceView 编辑器添加主题

所以我想使用 Anjuta 并添加一个主题。我使用 GtkSourceView 插件作为我的编辑器。出于某种原因,它不允许我像使用任何其他编辑器一样定义颜色,而是要求我使用 gtk 主题。

我使用 Ubuntu Mate 20.04。我不知道为什么,但我的系统上安装了 gtksourceview-3.0 和 gtksourceview-4。

为了添加主题,我尝试了几种方法。我读到过一篇文章,说可以使用一个名为“oomox”的项目制作主题。我试过了,但它创建了大量文件和目录,看起来与 GtkSourceView 使用的完全不同,后者是一个单一文件。所以我放弃了。

obsidian.xml从中复制了(最接近我想要的效果)/usr/share/gtksourceview-4/styles并对其进行了编辑。我将新文件放入~/.themes。这不起作用(在为 Anjuta 选择主题时它不会显示在列表中)。我尝试了~/.local/share/gtksourceview-4/styles~/.local/share/gtksourceview-3.0/styles以及~/.local/share/gedit~/.local/share/gedit/styles(虽然没有安装 gedit)。

我很困惑如何为这个编辑器添加一个简单的样式,为什么没有关于这个主题的任何信息。我​​可以想象人们总是想自定义他们的 IDE。也许我错过了一些显而易见的东西?我搜索了“将主题添加到 gtksourceview”和“将主题添加到 Anjuta”。我找到的只是如何将主题添加到 gedit(因此我进行了上述尝试)以及如何切换默认主题。

另外,我不想将我的主题添加到系统安装目录(/usr/etc)。当然有一种方法可以/home/<user>只为用户添加它()。

如果有一些程序可以用来编辑我的风格并预览一些代码,那就太好了。(就像大多数其他 IDE 一样)。如果没有这样的东西,那么至少有一个所有有效标签的列表就太好了。

编辑:为了测试一下,我将新文件与其余文件一起放入/usr/share/gtksourceview-4/styles/3.0和中2。软链接和文件本身似乎都没有效果。我很困惑。我仔细检查了文件本身。我所做的只是添加/删除一些颜色标签并更改颜色。

为了清楚起见,这里是该文件。

自定义.xml

<?xml version="1.0" encoding="UTF-8"?>

<style-scheme id="custom" _name="custom" version="1.0">

  <author>MyName</author>
  <_description>Dark color scheme.</_description>

  <color name="green"                       value="#00FF00"/>
  <color name="darkgreen"                   value="#008000"/>
  <color name="red"                         value="#FF0000"/>
  <color name="orange"                      value="#FF8000"/>
  <color name="yellow"                      value="#FF0000"/>
  <color name="blue"                        value="#0000FF"/>
  <color name="lightblue"                   value="#00FFFF"/>
  <color name="purple"                      value="#8080FF"/>
  <color name="gray"                        value="#808080"/>
  <color name="darkgray"                    value="#404040"/>
  <color name="bggray"                      value="#202020"/>
  <color name="purple"                      value="#8080FF"/>
  <color name="white"                       value="#ffffff"/>

  <!-- Global Settings -->
  <style name="text"                        foreground="green"          background="bggray"/>
  <style name="selection"                   foreground="green"          background="gray"/>
  <style name="cursor"                      foreground="white"           background="bggray"/>
  <style name="secondary-cursor"            foreground="darkgray"       background="bggray"/>
  <style name="current-line"                background="gray"/>
  <style name="line-numbers"                foreground="yellow" background="#black"/>
  <style name="draw-spaces"                 foreground="gray"/>
  <style name="background-pattern"          background="bggray"/>

  <!-- Bracket Matching -->
  <style name="bracket-match"               foreground="yellow"/>
  <style name="bracket-mismatch"            foreground="yellow" background="red"/>

  <!-- Right Margin -->
  <style name="right-margin"                foreground="gray" background="bggray"/>

  <!-- Search Matching -->
  <style name="search-match"                background="orange"/>

  <!-- Comments -->
  <style name="def:comment"                 foreground="darkgreen"/>
  <style name="def:shebang"                 foreground="darkgreen" bold="true"/>
  <style name="def:doc-comment-element"     italic="true"/>

  <!-- Constants -->
  <style name="def:constant"                foreground="yellow"/>
  <style name="def:string"                  foreground="yellow"/>
  <style name="def:special-char"            foreground="orange"/>
  <style name="def:special-constant"        foreground="orange"/>
  <style name="def:floating-point"          foreground="purple"/>

  <!-- Identifiers -->
  <style name="def:identifier"              foreground="lightblue"/>

  <!-- Statements -->
  <style name="def:statement"               foreground="green" bold="true"/>

  <!-- Types -->
  <style name="def:type"                    foreground="blue" bold="true"/>

  <!-- Others -->
  <style name="def:preprocessor"            foreground="red"/>
  <style name="def:error"                   foreground="red" background="orange" bold="true"/>
  <style name="def:warning"                 foreground="yellow" background="orange" bold="true"/>
  <style name="def:note"                    foreground="lightblue" background="bggray" bold="true"/>
  <style name="def:underlined"              italic="true" underline="single"/>

  <!-- Heading styles, uncomment to enable -->
  <!--
  <style name="def:heading0"                scale="5.0"/>
  <style name="def:heading1"                scale="2.5"/>
  <style name="def:heading2"                scale="2.0"/>
  <style name="def:heading3"                scale="1.7"/>
  <style name="def:heading4"                scale="1.5"/>
  <style name="def:heading5"                scale="1.3"/>
  <style name="def:heading6"                scale="1.2"/>
  -->

  <!-- Language specific -->
  <style name="diff:added-line"             foreground="darkgreen"/>
  <style name="diff:removed-line"           foreground="red"/>
  <style name="diff:changed-line"           foreground="yellow"/>
  <style name="diff:diff-file"              foreground="green" bold="true"/>
  <style name="diff:location"               foreground="green"/>
  <style name="diff:special-case"           foreground="white" bold="true"/>

  <style name="latex:command"               foreground="green" bold="true"/>
  <style name="latex:include"               use-style="def:preprocessor"/>

</style-scheme>

编辑2:我找到了这些资源:https://developer.gnome.org/gtksourceview/stable/style-reference.html
但它们没有详细说明哪些样式名称有效。或者将样式文件放在哪里。

相关内容