Come cambiare al volo Windows Manager?


9

So che esiste un comando per consentire a compiz di assumere il controllo di qualunque gestore di Windows sia in esecuzione, usando lo compiz --replace &stesso per unità con unity --replace &. Quali sono i comandi simili per altri gestori di finestre (ad esempio plasma di KDE4, Gnome, LXDE, XFCE)? E questo porterà con sé tutte le finestre delle applicazioni in esecuzione?

Risposte:


6

Praticamente qualsiasi gestore di finestre può sostituire quello attualmente in esecuzione. Normalmente, usi l' --replaceopzione. Leggi la pagina man del gestore delle finestre per i dettagli. Hai solo bisogno di determinare il nome del comando per un particolare wm. Google o apropospuò aiutarti lì.

Esempi:

xfwm --replace   # xfce, I think
metacity --replace   # default wm in Gnome 2
icewm --replace    # old-school wm, my favorite back in the 1990s before modern wms

Il cambio di wms non avrà alcun effetto su quali finestre sono aperte, anche se probabilmente influenzerà il loro posizionamento.

A proposito, anche se ambienti desktop come Gnome, KDE o Xfce hanno un wm predefinito che funziona bene con l'ambiente, i gestori delle finestre sono in realtà separati e normalmente possono essere mescolati e abbinati. Si noti, tuttavia, che alcuni gestori di finestre forniscono anche alcune altre funzionalità, come i pannelli, che non si avranno se si cambia wms.

modificare

Determinare il comando corretto da usare: questi tipi di cose sono davvero facili da determinare da soli. Prova a indovinare all'inizio del nome. Ad esempio, "apri". Quindi inizia a digitare le prime lettere e premi Tab. Se il nome non è completo, premi Tabuna seconda volta per visualizzare un elenco di possibili corrispondenze. Una volta trovato il nome del comando, digitare man <command_name>per accedere alla documentazione.

Se non riesci a trovare il nome del comando in quel modo, guarda l'elenco dei processi attraverso alcuni monitor di sistema come ad esempio htopmentre il programma in questione è in esecuzione. Lo vedrai lì, anche se potresti non essere in grado di utilizzare il comando esattamente nella stessa forma in cui è elencato, in particolare se sta eseguendo un interprete come Python.


Sì, queste restrizioni sono chiare (e si applicano ulteriormente ai widget e simili, specialmente con le cose al plasma di KDE4s). Il motivo principale alla base della mia domanda è quello di poter passare a un altro WM (ad esempio quando seguo / scrivendo un Howto) e viceversa senza perdere alcuna app aperta. Grazie per aver fornito il comando Gnome WM, in particolare. In particolare stavo cercando quello e la cosa del plasma KDE4 - è ancora kwm (e quindi kwm --replace)?
Izzy,

Dato che non uso mai KDE, non conosco la situazione in questi giorni.
Scott Severance,

Il problema è con il plasma, non sono più sicuro di quale sia responsabile. Esegue un kwin(che immagino debba essere quello giusto - era il wm nelle versioni precedenti) più il plasma-desktopprocesso. Non sono sicuro di quale dovrei chiamare ... Probabilmente Kwin. Bene, lo scoprirò. Chiunque esegua LXDE e sa qual è il suo wm? Immagino sia openbox?
Izzy,

Una ricerca di DuckDuckGo mi ha portato al sito Web di LXDE , in cui si afferma che LXDE utilizza Openbox.
Scott Severance,

Grazie, sì, so che stanno usando "OpenBox". La mia domanda riguardava più il nome del suo eseguibile per richiedere uno switch - e non sono sicuro che sia openbox --replace &per LXDE. Sto solo impostando uno script che gestisce tutte le alternative, quindi posso semplicemente chiamare qualcosa del genere switchwm <new_wm>(lo script controlla anche se quel wm è disponibile e lo gestisce anche).
Izzy,

4

So che è passato un po 'di tempo - ma come al solito, dopo che uno smette di cercarlo, le risposte si aprono. Quindi ho appena scoperto il fusion-iconpacchetto per Ubuntu: CompizFusionIcon è esattamente per questo, per passare da diversi gestori di finestre.

FusionIcon

Quindi, nel caso in cui qualcun altro stia ancora cercando una soluzione semplice e conveniente, questa è un'altra opzione.


0

L'icona di fusione non funziona più. Ma: c'è un altro modo, come sono riuscito ad abilitare Emald-Window-manager in Xubuntu 13.04.

Primo passo: abbiamo bisogno di due comandi terminali

Pertanto, abbiamo bisogno del nostro Terminale e lì dobbiamo inserire questi comandi:

sudo apt-get install git autoconf libtool libwnck1.0-cil-dev libwnck-dev intltool libdecoration0-dev gawk compizconfig-settings-manager

Quindi segue questo comando qui:

wget cgit.compiz.org/fusion/decorators/emerald/snapshot/emerald-0.9.5.tar.gz

Successivamente segue questo comando:

tar -zxvf emerald-0.9.5.tar.gz && cd emerald-0.9.5/

Questo estrae questo pacchetto nella tua home-directory (nel mio caso, era così).

Quindi chiudi il tuo Terminale e vai a questa directory / home //emerald-0.9.5

Passaggio 2: eseguire il file autogen-sh in questa directory

Lì cerca un file chiamato autogen.sh.

Fare clic su questo file e lasciarlo funzionare. Questo va abbastanza veloce.

Quindi chiudere questo file e chiudere la directory home e tornare al Terminale.

Terzo passaggio: pulizia

Dobbiamo nuovamente aprire il Terminale e inserire questi comandi:

make clean

make distclean

Quindi cd nella directory di smeraldo:

cd /home/<your name>/emerald-0.9.5

Quindi immettere questi comandi:

./configure --prefix=/usr --libdir=/usr/lib${LIBDIRSUFFIX} LIBS='-ldl -lm'

make

sudo make install

Quindi chiudi il Terminale e vai a Gestione impostazioni CompizConfig.

Fase quattro: impostare Emerald come gestore delle finestre

In Gestione impostazioni CompizConfig, vai su "generale" e lì su "Decorazione di Windows". Lì inserisci il seguente comando:

compiz --replace

Quindi chiudi CCSM e vai a Emerald-Theme-Manager e seleziona uno dei temi scaricati.

Fase cinque: finalizzazione dell'impostazione di Emerald-Theme-manager

apri il tuo Terminale ed esegui:

compiz --replace

Questo è tutto.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.