it-swarm.com.de

Wie Sie conky dazu bringen, auf dem Desktop zu bleiben

Ich habe ein Conky-Setup, das ich auf einer Reihe von Desktops verwendet habe (hier ist das conkyrc ). Es funktioniert gut in Ubuntu Unity, XFCE, Gnome und Openbox, aber nicht in Lubuntu (LXDE). Das Problem ist, dass ich es nicht schaffen kann, zuverlässig auf dem Lubuntu LXDE-Desktop zu bleiben . Entweder verschwindet das conky-Fenster, wenn ich auf den Desktop klicke oder wenn ich alle Fenster minimiere (Desktop anzeigen).

Ich habe alle Variationen in der Konfigurationsdatei für "own_window", "own_window_colour", "own_window_transparent" und "own_window_type" ausprobiert und einiges gegoogelt, um dies zu beheben. Wenn die conkyrc-Datei bearbeitet und own_window_type auf "normal" gesetzt wird, verschwindet conky, wenn ich alle Fenster minimiere. Wenn ich es auf "desktop" stelle, verschwindet es, wenn ich irgendwo auf den Desktop klicke. Wenn ich "override" benutze, wird es überhaupt nicht angezeigt. Und die anderen Optionen funktionieren aus offensichtlichen Gründen nicht gut.

Bei einer anderen Ubuntu Unity-Installation hatte ich ein ähnliches Problem, konnte es jedoch umgehen, indem ich den Compiz Config Settings Manager verwendete, um mein conky-Fenster zu ignorieren. Auf meinem Netbook, das Lubuntu installiert, ist kein Compiz installiert.

Wie kann ich conky dazu bringen, auf meinem Desktop zu bleiben?.

14
aspersieman

Scheint, als würde es manchmal nicht ausreichen, den Fenstertyp auf Desktop zu setzen.

Versuchen:

own_window_type desktop
own_window_hints undecorated,below,sticky,skip_taskbar,skip_pager

Habe es von hier .

Funktioniert bei mir in XFCE. Ich vermute, es wird auch für lxde/openbox in Ordnung sein.

19
llaen

Diese Konfiguration funktioniert auf Gnome und Cinnamon und ist der Weg, dies zu tun.

own_window yes
own_window_transparent yes
own_window_type dock
own_window_hints undecorated,below,sticky,skip_taskbar,skip_pager
own_window_argb_visual yes
own_window_argb_value 100
gap_x 940
gap_y 20

Die letzten 2 Attribute positionieren sie absolut auf dem Bildschirm und müssen für Ihre Konfiguration geändert werden. Eine funktionierende vollständige Konfigurationsdatei finden Sie hier auf Github.

Bearbeiten: Aus den Kommentaren: Wenn own_window_type auf "dock" eingestellt ist und für Sie nicht gut funktioniert, versuchen Sie es mit "override" und "normal".

8

Ich habe selbst jede Menge Nachforschungen angestellt und es scheint, dass es nur sehr wenige Problemumgehungen gibt und noch weniger, die gut funktionieren:

  • Sie könnten conky auf ein Dock oder Panel-Fenster einstellen.
  • Sie können ein normales Fenster festlegen und einfach die Verwendung des Plugins/der Tastaturbindung für die Anzeige des Desktops vermeiden.
  • Ich habe sogar versucht, das Argument -w für conky zu verwenden, damit es in das falsche Desktop-/PCManFM-Fenster gezeichnet wird, aber das führt dazu, dass Ihr Desktop so oft neu gezeichnet wird, wie conky updates = chaotisch.
  • Wenn Sie ohne Desktopsymbole leben können, können Sie conky auf ein Desktop-Fenster einstellen und PCManFM dann einfach ausschalten, indem Sie am Terminal pcmanfm --desktop-off eingeben.
  • Sie könnten feh oder ein anderes Programm den Desktop verwalten lassen

Ich mochte keine der oben genannten Optionen. Wie bei Redsandro bestand die Problemumgehung darin, conky als normales Fenster zu haben (skip_pager, skip_taskbar unten, natürlich ohne Dekoration) und ein einfaches Bash-Skript zu schreiben und eine .desktop-Datei dafür zu erstellen, damit ich sie in mein Panel aufnehmen konnte um das Show Desktop Plugin zu ersetzen. Es wird wmctrl verwendet, sodass Sie es herunterladen müssen. Auch werden leider nicht alle Fenster verkleinert, sondern nur beschattet. Aber für meine Bedürfnisse reicht es aus:

#!/bin/bash
var=($(wmctrl -l | grep -o "0x[[:alnum:]]\+"))
for v in ${var[@]}
do wmctrl -i -r $v -b toggle,shaded
done
exit 0
2
Toni

EDIT:

besser: Stand 12.04 Precise und alle späteren Versionen von Ubuntu ( Bestätigt bis 16.04 xenial), können Sie dasselbe wie devilspie (unten) mit compiz -> Windows Rules erreichen. Ich habe das Klassenmatch dort benutzt, es ist selbsterklärend. Funktioniert auch mit meinem Super + Home-Skript.

Hier ist mein kleiner Beitrag, nachdem ich ein paar Stunden damit verschwendet habe, für alle, die es mit all dem oben Genannten nicht klären konnten (getestet mit Ubuntu 16.04) :

Schnelle Lösung :

  1. Fügen Sie eine 'own_window_type dock ' Zeile in der conkyrc.txt in das entsprechende Verzeichnis in ~/.conky/ein (damit es nicht auf dem Desktop verschwindet) )
  2. Installiere devilspie
  3. Erstellen Sie in devilspie eine Regel mit dem Muster 'match' window_name 'includes' conky (kein Groß- oder Kleinschreibung ist von Bedeutung). Tatsächlich können Sie mit dem dort bereitgestellten "Get" -Button jedes passende Muster verwenden, das funktioniert.
  4. wählen Sie als Aktionen ' skip_tasklist ', ' unminimize ' und wenn Sie möchte es auf allen Arbeitsbereichen haben, auch ' stick '.
  5. Das ist es.

Aktivieren Sie das Kontrollkästchen "Devilspie beim Start ausführen".

nebeneffekt: Das Conky Manager-Fenster verhält sich beim Öffnen je nach Spielmuster ähnlich, sollte aber kein Problem sein.

Mein Problem war folgendes:

'own_window_type override ' verursachte das Problem, dass die sich ändernden Elemente des Conky nicht ersetzt, sondern auf ältere Werte gezogen werden - hässlich und auch unleserlich innerhalb von Sekunden.

'own_window_type desktop ' hat es einfach nicht geschafft.

'own_window_type dock ' in Verbindung mit devilspie löste das ursprüngliche Problem, spielte aber nicht Nice mit Dieses raffinierte kleine Skript zum Hinzufügen eines "Desktop anzeigen, aber aktives Fenster beibehalten" - Tastenkürzel wie Windows Win + Home. EDIT: die zuletzt genannten irgendwie funktioniert nicht mehr .. Ich bin raus: - |

Hoffe ich habe jemandem geholfen, gib mir einen Daumen hoch, ich bin neu hier ;-)

Mein System: UBUNTU Xenial Xerus 64 bit.

1
Maximo

Das Problem bei der Verwendung von conky mit LXDE ist, dass PCManFM den Desktop auf eine Weise behandelt, die mit keinem anderen Desktop vergleichbar ist. LXDE ist im Wesentlichen Openbox mit einem Desktop, der vom Dateimanager (pcmanfm) überlagert wird. Wenn Sie pcmanfm zugunsten eines anderen Dateimanagers entfernt hätten, hätten Sie LXDE nicht mehr, Sie hätten im Wesentlichen Openbox mit dem LXDE-Bedienfeld. Wie ist das relevant? Nun, der Desktop von LXDE wird vom Fenstermanager eher wie ein Fenster behandelt. Das heißt, wenn Sie mehrere Fenster geöffnet haben und eines davon anklicken, wird es in den Fokus gerückt. Genau das passiert mit Conky. Wenn Sie auf den Desktop klicken, wird der Desktop so platziert, dass er wie ein Fenster behandelt wird. In meinem Fall ist dies der Fix:

own_window_class Conky
own_window yes
own_window_type normal
own_window_transparent yes
own_window_hints undecorate,sticky,skip_taskbar,skip_pager,below

Wenn Sie nun das Panel-Plugin verwenden, um alle Fenster zu minimieren, wird der Conky-Effekt weiterhin minimiert, aber dieser Fix verhindert, dass Conky unter normalen Umständen verschwindet.

Das oben genannte hat bei mir nicht funktioniert. Was funktionierte, war, den "own_window_type" in /etc/conky/conky.conf auf "normal" zu setzen.

own_window_type normal

Gemäß diesem Thread: http://ubuntuforums.org/showthread.php?t=2039399

1
Grim

Die akzeptierte Antwort berücksichtigt nicht "Show Desktop".

Sie können den Hack den ich in dieser Antwort erklärt habe verwenden, um conky anzuzeigen, nachdem Win+D für Show Desktop gedrückt wurde:

#!/usr/bin/env bash
zenity --info --text "Remapping Conky..." &
pid=$!
sleep 0.3
kill $pid
xdotool windowmap `xdotool search --classname 'conky'`
1
Redsandro

Ich habe selbst Unmengen an Nachforschungen angestellt und es scheint, dass es nur sehr wenige Problemumgehungen gibt und noch weniger, die gut funktionieren.

  • Sie könnten conky auf ein Dock oder Panel-Fenster einstellen.
  • Sie können ein normales Fenster festlegen und einfach die Verwendung des Plugins/der Tastaturbindung für die Anzeige des Desktops vermeiden. Ich habe sogar das Argument -w für conky verwendet, um es in das gefälschte Desktop-/PCManFM-Fenster zu ziehen, aber das führt dazu, dass Ihr Desktop so oft neu gezeichnet wird, wie conky updates = chaotisch. Wenn es Ihnen nichts ausmacht, keine Symbole zu haben, können Sie PCManFM einfach ausschalten, indem Sie am Terminal pcmanfm --desktop-off eingeben.

Wie bei Redsandro bestand die Umgehung darin, ein einfaches Bash-Skript zu schreiben und eine .desktop-Datei dafür zu erstellen, damit ich das Show Desktop-Plugin in mein Panel aufnehmen konnte. Es verwendet wmctrl, sodass Sie es herunterladen müssen. Auch werden leider nicht alle Fenster verkleinert, sondern nur beschattet. Aber für meine Bedürfnisse reicht es aus:

#!/bin/bash
var="($(wmctrl -l | grep -o "0x[[:alnum:]]\+"))"
for v in ${var[@]}
do wmctrl -i -r $v -b toggle,shaded
done
0
Toni

Dies funktioniert in Lubuntu 14.10

own_window yes
own_window_hints undecorated,below,skip_taskbar
background no
own_window_transparent yes
0
Organic Marble

Für Lubuntu mit LXDE:

own_window yes
own_window_class Conky
own_window_transparent yes
own_window_type desktop
double_buffer yes

Wenn das conky-Fenster verschwindet, wenn die Taste gedrückt wird, minimiere alle Fenster (zeige Desktop) gehe in Einstellungen-> Standardanwendungen für LXsession-> Laufende Anwendungen-> Desktop und wähle "feh" statt "filemanager"

Arbeite für mich in Lubuntu 13.10.

0
user220494

Ich hatte das gleiche Problem in LXDE, als ich auf LXPanels "Iconify All Windows" klickte, um auch das Conky-Fenster auszublenden. Ich habe es mit wmctrl behoben.

Installieren Sie wmctrl

Sudo apt install wmctrl

Suchen Sie den Namen des Conky-Fensters

wmctrl -l
0x03200001 -1 Host conky (Host)

So bringen Sie es zurück:

wmctrl -a 'conky (Host)'

Ich habe in Python ein einfaches Skript geschrieben, das Conky alle 50 Millisekunden ausblendet und beim Start von LXDE hinzufügt:

bring_conky_back.py

#!/usr/bin/python

import time, os

while True:
    os.system("wmctrl -a 'conky (Host)'")
    time.sleep(0.05)

Auch in . Conkyrc könnten diese Zeilen benötigt werden:

own_window = true,
own_window_type = 'normal',

Es funktioniert super.

0
alex ivanov

Für Unity wurde mein Problem mit gelöst

own_window_type override
0
Gerhard Burger

Stellen Sie background=false in .conkyrc ein und vergewissern Sie sich, dass Conky nicht automatisch mit dem Flag -d gestartet wird. Ich versuchte jeden anderen Vorschlag, den ich finden konnte, und manchmal arbeiteten sie und manchmal nicht, und selbst wenn sie arbeiteten, war es nur für eine kurze Zeit.

Hinweis: Wenn Sie versehentlich alle Fenster minimieren, verwenden Sie Super+D Conky zurück zu bekommen.

0
Clint

Linux mit Mate/Gnome2 GUI Ubuntish;)

use_xft yes
..............
.........
.....
..........
own_window_type dock

Dockt auf dem oberen Bildschirm an und wirkt sich nicht auf Desktop-Aktionen aus.

Position einstellen:

gap_x ...
gap_y ...  

Abhängig von Ihrer Auflösung.

0

Ich weiß, dass dieser Thread alt ist, aber für alle anderen, die noch mit diesem Thema zu kämpfen haben, wollte ich nur hinzufügen, dass die Antwort von grims für mich funktioniert, mit einer kleinen Einschränkung.

In /etc/conky/conky.conf

own_window_type normal

und in .conkyrc oder der Themendatei:

own_window_type desktop
own_window_hints undecorate,sticky,skip_taskbar,skip_pager

Nach einigem Ausprobieren war dies die einzige Kombination, mit der ich arbeiten konnte (ich verwende compton für Transparenz). Beachten Sie, dass es in own_window_hints keine "below" -Einstellung gibt, da dies immer noch dazu führt, dass Conky verschwindet und beim Anzeigen des Desktops nach einigen Sekunden wieder angezeigt wird (flackert). Zumindest war das meine Erfahrung.

HTH

0
Mark Henderson

Sie können versuchen, ein Skript hinzuzufügen, das beim Start ausgeführt wird.

Zum Beispiel:

#!/bin/bash
conky ;

(Vergiss nicht, chmod + x es;)

0
user981916