KDE应用程序中的配置文件
我正在编写一个使用KDE在软件中心销售的开源应用程序。 根据将应用程序上载到软件中心的要求 ,
将所有配置设置写入〜/ .config /(这可以是一个文件或包含多个配置文件的目录)
默认情况下,KDE应用程序似乎将配置文件存储在~/.kde/share/config/rc
。 这是不允许的? 如果是这样,我如何更改文件的存储位置? 我正在使用KConfig XT。 教程说
通过打开控制将存储数据的KConfig文件的标记来启动该文件。有三种可能性:
- 如果
标记没有属性,则生成的代码将使用应用程序的默认KConfig文件(通常
$HOME/.kde/config/rc
)。- “name”属性用于手动指定文件名。 如果分配给“name”的值不是绝对文件路径,则将在默认的KDE配置目录(通常是
$HOME/.kde/config
)中创建该文件。- 如果您希望能够在构造时指定配置文件,请使用
。 这会导致生成的类的构造函数将
KSharedConfig::Ptr
作为参数,允许您构造指向不同文件的多个实例。
我已经尝试将name
属性设置为~/.config/
,但该位置没有文件,尽管仍在保存设置。 此外,当我设置name属性时,其他设置仍保存到~/.kde/share/config/rc
,例如窗口大小。
如何更改KDE应用程序的配置数据存储位置,以满足软件中心的上传要求?
如果您使用的是KConfig
API,那么您的应用程序应该可以上传到MyApps并包含在商店中。
您也可以使用dconf, dconf-qt
的Qt绑定,这将允许您将设置存储在dconf中,该设置位于~/.config/
目录下。
另请注意, ~/.config/
要求可能在这些要求中没有明确规定,因为它应该是$XDG_CONFIG_HOME
,其中~/.config/
只是默认值,以及哪些用户可能决定更改为其他位置,以便它们下面的文件可以更容易地被它们访问。