Gnomeの異なるワークスペースに異なるデスクトップディレクトリを持つことはできますか?

Gnomeの異なるワークスペースに異なるデスクトップディレクトリを持つことはできますか?

私は「Gnome Classic」でLinux Mintを実行していますが、おそらくGnome 2のようです。現在、3つのワークスペースを使用しており、私のデスクトップを処理するノーチラスがあります。

問題は、私のデスクトップにファイルが多すぎるということです。ファイルにアクセスする前に別のウィンドウが開き、すでにあまりにも多くのウィンドウが開いているため、ファイルをディレクトリに保存する必要がないことをお勧めします。

各ワークスペースの「デスクトップ」ディレクトリを変更できますか?それともデスクトップを3つのワークスペースに拡張して、必要なワークスペース内のすべてのアイコンを移動できますか?

デスクトップマネージャを変更する必要がありますか?それとも、ノーチラス以外のファイルブラウザにアクションを実行させますか(どうすればよいですか?)

ありがとうございます。 (しかし、私はLinuxを初めて使用します。もっと良い方法があれば教えてください。)

編集する:これがenv | grep XDG私に提供されるものです(デスクトップとは関係ありません)。

jad@jad-PC ~ $ env | grep XDG
XDG_SESSION_COOKIE=95dcb1ee36841dd22e3633040000000d-1337336042.360588-45732386
XDG_SESSION_PATH=/org/freedesktop/DisplayManager/Session0
XDG_SEAT_PATH=/org/freedesktop/DisplayManager/Seat0
XDG_CONFIG_DIRS=/etc/xdg/xdg-gnome-classic:/etc/xdg
XDG_DATA_DIRS=/usr/share/gnome-classic:/usr/share/gnome:/usr/local/share/:/usr/share/
XDG_CURRENT_DESKTOP=GNOME

私も試してみましたが、env | grep Desktop私には何も与えませんでした。

答え1

これより簡単な解決策はないと思います。ノーチラス号関連これより:

私が知っている限り、NautilusはXDGがデスクトップについて知らせるものを表示します(参照env | grep XDG、しかし私たちはそうだと仮定します~/Desktop)、Nautilusを再起動せずにそれを変更する方法があるようです。

することができます(おそらく、未テスト)は~/Desktopワークスペースを変更すると変更されます。私の考えはおおよそ次のとおりです。Desktopフォルダをシンボリックリンクに置き換える:

  • Ctrlワークスペースを変更するためのショートカット(例:+ 1Execute)を作成します~/bin/switch-to-workspace-one.sh
  • これはあなたが書いたシェルスクリプトです。例:
    1. 変更シンボリックリンク Desktop話し、~/Workspaces/Oneそして
    2. wmctrlメタシティ(ウィンドウマネージャ)をワークスペース1に変更するための呼び出し

(...2と3に似ています)..これはやや非標準的なハッキングなので、これが他のプログラムの仮定に違反して悪い結果をもたらすかどうかは全くわかりません。 (ログアウト(または起動)時にシンボリックリンクをワークスペース1に戻すなど、処理する必要があります...)

しかし、GNOME2が最高の時代を過ごしたので、代替案を見つけるのが最善ですが、残念ながら他のデスクトップ管理者がこれを行うことができるかどうかはわかりません。 (XFCEへの期待は大きいが、これは不可能に見えます。)

XMonadには「トピックスペース」があります。ただし、これは生成されたプログラムのデフォルトディレクトリにのみ影響し、アイコンにはまったく影響しません。 )

答え2

#!/bin/bash  
# Workspace desktop image/directory switcher  
# Script to change the desktop image and icons when switching workspaces  
# Tested on Linux Mint 19 Tara 'cinnamon'  
# Amended script of person or persons unknown based on the script by garolou from:  
# https://forums.linuxmint.com/viewtopic.php?t=118540#p672189  
# Sometimes icons did not appear on desktop so I added the line after do"  
# to correct this   
# Before using you must add more desktops to /home/username/  
# Desktop0 Desktop1 etc  
# Do not delete Desktop folder  
# Icons may be copied to other desktops from Desktop   
# May be added to startup applications by using path  
# /bin/bash -c "sleep 10&&/home/a/Desktops"  
# Edit paths according to your username.  
# I call this Desktops but of course you don't need to use this name  

desktop_dir="/home/a/.cinnamon/backgrounds/" # full path to images directory;  
desktop_img=(1.jpg 2.jpg 3.jpg 4.jpg 5.jpg) # add more images if using more workspaces less images required if using less workspaces  

setdesktop() {  
gsettings set org.gnome.desktop.background picture-uri "file://$desktop_dir$1"

}
xprop -root -spy _NET_CURRENT_DESKTOP |
読んだとき -r; do
gsettings set org.nemo.desktop show-desktop-icons false
Desk="${REPLY: -1}" # ワークスペース番号の取得
setdesktop "${desktop_img[ $Desk]}" # デスクトップイメージの
設定 gsettings set org. nemo.Desktop show-desktop-icons false
sed -i '/\(^XDG_DESKTOP_DIR="$HOME/Desktop)[^"]*"/s//\1 '"$desk"'"/' ~/.config /user -dirs.dirs #change XDG_DESKTOP_DIR
gsettings set org.nemo.desktop show-desktop-icons true #
完了したアイコンを表示

関連情報