リモートコンピュータのワークスペース名を変更する必要があります。 xfconf-queryの文書を表示し、次のようにワークスペース名を正常にリストしました。
xfconf-query -c xfwm4 -p /general/workspace_names
結果は次から始まります。
Value is an array with 13 items:
また、私のワークスペース名の1つを含むファイルを見つけて~/.config/xfce4/xfconf/xfce-perchannel-xml/xfwm4.xmlを見つけましたが、ファイルを編集してワークスペース名の1つを変更してからワークスペースGUIを開くと、まだ同じ古い値があります。ただし、GUIでワークスペース名を変更してから~/.config/xfce4/xfconf/xfce-perchannel-xml/xfwm4.xmlを開くと、ワークスペースが新しいワークスペース名で更新されます。
これについてたくさん検索しましたが、配列内で変更したい項目と変更したい項目を指定する方法を示す項目が見つかりませんでした。これを行う方法を知っている人がいる場合は、例を投稿できますか?
xfconf-query -c xfwm4 -p /general/workspace_names -o(ld) old_name -n(ew) new_name
答え1
これを具体的に実行するコマンドラインユーティリティが見つかりません。すべてのワークスペースで使用される名前は出力に表示される配列なので、xfconf-query
指定する必要があります。/general/workspace_names
Bashスクリプトが役に立ちます。
$ cat xfwm4-set-workspace-name
#!/bin/bash
# usage: xfwm4-set-workspace-name [number name]...
_OLD_IFS=$IFS IFS=$'\n'
ws_count=$(xfconf-query -c xfwm4 -p /general/workspace_count)
ws_names=($(xfconf-query -c xfwm4 -p /general/workspace_names | tail -n+3))
IFS=$_OLD_IFS
declare -i ws_number
while [ $# -gt 0 ]; do
ws_number=$1
shift
if [ $ws_number -lt 1 -o $ws_number -gt $ws_count ]; then
echo warning: invalid workspace number 2>/dev/null
shift
continue
fi
if [ $# -eq 0 ]; then
echo warning: no workspace name specified 2>/dev/null
break
fi
ws_name=$1
shift
ws_names[$((ws_number - 1))]=$ws_name
done
declare -a xfconf_sets
for i in ${!ws_names[@]}; do
xfconf_sets+=(-s "${ws_names[$i]}")
done
xfconf-query -c xfwm4 -p /general/workspace_names "${xfconf_sets[@]}"
$ ./xfwm4-set-workspace-name 2 'ws two' 3 'workspace three'