KDE 应用程序中的配置文件

KDE 应用程序中的配置文件

我正在使用 KDE 编写一个开源应用程序,在软件中心销售。根据将应用程序上传到软件中心的要求

将所有配置设置写入 ~/.config/ (这可以是一个文件或包含多个配置文件的目录)

默认情况下,KDE 应用程序似乎将配置文件存储在 中~/.kde/share/config/<name>rc。这不允许吗?如果是这样,我该如何更改文件的存储位置?我正在使用 KConfig XT。教程

通过打开控制数据存储在哪个 KConfig 文件中的标签来启动该文件。有三种可能性:

  1. 如果<kcfgfile>标签没有属性,生成的代码将使用应用程序的默认 KConfig 文件(通常$HOME/.kde/config/<appname>rc)。
  2. “name”属性用于手动指定文件名。如果分配给“name”的值不是绝对文件路径,则将在默认的 KDE 配置目录中创建该文件(通常$HOME/.kde/config)。
  3. 如果您希望能够在构造时指定配置文件,请使用<kcfgfile arg="true">。这会导致生成的类的构造函数将作为KSharedConfig::Ptr参数,从而允许您构造指向不同文件的多个实例。

我尝试将name属性设置为~/.config/<appname>,但该位置没有文件,尽管设置仍在保存。此外,当我设置 name 属性时,其他设置仍保存为~/.kde/share/config/<appname>rc,例如窗口大小。

如何更改 KDE 应用程序的配置数据存储位置,以使其满足软件中心的上传要求?

答案1

如果您使用KConfigAPI,您的应用程序可以上传到 MyApps 并包含在商店中。

您也可以使用 dconf 的 Qt 绑定,dconf-qt它允许您将设置存储在~/.config/目录下的 dconf 中。

还要注意,~/.config/这些要求中可能没有很好地指定要求,而应该这样指定$XDG_CONFIG_HOME,这~/.config/只是默认设置,用户可能决定更改为其他位置,以便他们更容易访问其下面的文件。

相关内容