使用“reset”命令时,dconf 是否会删除/重写放置在 ~/.config/[program] 中的配置文件?

使用“reset”命令时,dconf 是否会删除/重写放置在 ~/.config/[program] 中的配置文件?

据我所知,保存各种程序设置的文件位于 中~/config/[program]
今天我遇到了一个问题1035307
答案提到了dconf reset -f /org/gnome/gedit/命令,当我在终端中输入该命令时,gedit 中的所有设置都已恢复为默认设置。

现在我想知道dconf他是如何重置我的设置的!他只是用默认配置重写了所有配置吗?

答案1

确定发生了什么变化的最佳方法是将主文件夹的部分内容放在源代码版本控制系统(例如 Git)下。

使用这种方法,你可以确定一个二进制文件被更改了——它的名字是~/.config/dconf/user。所以简短的回答是是的 - 文件已被更改

我个人使用以下方法来确定在编辑某些应用程序的设置后发生了什么变化(从 GUI,使用dconf/dconf-editor或通过gsettings):

  1. 我将当前设置保存到文件中

    dconf dump / > /tmp/dconf_before
    gsettings list-recursively | sort --unique > /tmp/gsettings_before
    
  2. 然后我改变一些设置。

  3. 之后我将新设置保存到文件中

    dconf dump / > /tmp/dconf_after
    gsettings list-recursively | sort --unique > /tmp/gsettings_after
    
  4. 将获得的文件与meld(进行比较)视觉差异工具):

    meld /tmp/dconf_before /tmp/dconf_after
    meld /tmp/gsettings_before /tmp/gsettings_after
    

免费奖励:您可以创建小型的dconf- 或gsettings基于 的转储来从终端应用设置,并使用一个长命令获取您喜欢的设置:

* 使用dconf

dconf load / << EOF 
[org/gnome/gedit/preferences/editor]
display-right-margin=true
highlight-current-line=true
display-overview-map=true
bracket-matching=true
auto-save=true
create-backup-copy=true
display-line-numbers=true
insert-spaces=true
background-pattern='grid'
wrap-last-split-mode='word'
auto-indent=true

[org/gnome/gedit/preferences/ui]
show-tabs-mode='auto'

[org/gnome/gedit/plugins]
active-plugins=['time', 'quickopen', 'filebrowser', 'spell', 'pythonconsole', 'sort', 'externaltools', 'modelines', 'snippets', 'docinfo']

EOF

* 使用gsettings

org.gnome.gedit.preferences.editor auto-indent true
org.gnome.gedit.preferences.editor auto-save true
org.gnome.gedit.preferences.editor background-pattern 'grid'
org.gnome.gedit.preferences.editor bracket-matching true
org.gnome.gedit.preferences.editor create-backup-copy true
org.gnome.gedit.preferences.editor display-line-numbers true
org.gnome.gedit.preferences.editor display-overview-map true
org.gnome.gedit.preferences.editor display-right-margin true
org.gnome.gedit.preferences.editor highlight-current-line true
org.gnome.gedit.preferences.editor insert-spaces true
org.gnome.gedit.preferences.ui show-tabs-mode 'auto'
org.gnome.gedit.plugins active-plugins ['time', 'quickopen', 'filebrowser', 'spell', 'pythonconsole', 'sort', 'externaltools', 'modelines', 'snippets', 'docinfo']

相关内容