XML(Xfconf)에서 구성 로드

XML(Xfconf)에서 구성 로드

XFCE4-Panel의 레이아웃을 3가지 레이아웃 간에 전환하는 앱을 만들려고 합니다. 나는 그 레이아웃을 적용하고 Xfconf가 패널의 구성을 저장하는 XML 파일을 복사했습니다.
일반적인 아이디어는 이전 파일을 제거하고 새 파일을 복사하면 된다는 것이었습니다. 다만, 그게 잘 안 됐어요. 을 사용하지 않고는 XML 파일을 변경할 수 없는 것 같습니다 xfconf-query. 매번 패널을 재설정하고 스크립트에서 값을 원래대로 설정하도록 한 다음 패널을 다시 시작할 수 있지만 모든 작업을 수행하기에는 구성 파일이 약간 큽니다. 콘텐츠에도 몇 가지 문제가 있습니다. 사용 시 패널의 xfconf-query).

그래서 기본적으로 전체 XML 파일의 구성을 적용하는 방법이 있는지 알고 싶습니다. 일부 프로세스를 종료하고 파일을 빠르게 복사하거나,자동으로XML 파일을 구문 분석하고 모든 값을 xfconf-query. 누군가가 그것을 할 수 있는 어떤 종류의 클래스를 알고 있다면 나는 Python(Bash와 결합)을 사용하고 있습니다.

답변1

다음이 작동하는 것으로 확인되었지만 패널을 다시 시작해야 하므로 짧은 깜박임이 발생합니다.

killall xfconfd
cp my-cfg-0.xml ~/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-panel.xml
xfce4-panel -r

또는 Python의 경우 한 줄로 다음을 수행할 수 있습니다.

bash -c 'killall xfconfd && cp my-cfg-0.xml ~/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-panel.xml && xfce4-panel -r'

패널을 다시 시작하면 xfconfd 데몬도 다시 시작됩니다.

작동하지만 xfconf-query깜박임이 발생하지 않으므로 더 나은 접근 방식을 사용하는 것입니다. XML 파일을 구문 분석하여 적절한 경로-값 쌍을 파악하고 이를 일괄 적용하면 됩니다. 도움을 드릴 수 없습니다. 죄송합니다.

관련 정보