• # wterm + pas de bordures

    Posté par  . Évalué à 3.

    pour ma part j'avais pu avoir cela en lançant un terminal que je n'utilisait pas ailleurs (genre wterm), et en supprimant la décoration de fenêtre pour ce programme (avec windowmaker) peut-etre que tu peux faire cela avec gnome également.

    Only wimps use tape backup: real men just upload their important stuff on megaupload, and let the rest of the world ~~mirror~~ link to it

    • [^] # Re: wterm + pas de bordures

      Posté par  . Évalué à 1.

      La réponse est ici: http://linuxfr.org/tips/264.html

      #Eterm -O0xqC --buttonbar 0 --scrollbar 0 --no-cursor -f green --exec /usr/bin/tail -f /var/log/syslog

      est il possible de mettre n'importe quel programme dans le fond d'écran

      Beaucoup de programmes pour X supportent le paramètre --root pour être lançé en fond d'écran.
  • # Astuces

    Posté par  . Évalué à 2.

    Il y a une astuce sur linuxfr qui parle de ça :
    http://linuxfr.org/tips/114.html
    Je ne sais plus si ça parle de la console ou de gnome mais ça doit sûrement être appliquable.
  • # Devil's Pie ?

    Posté par  . Évalué à 3.

    Mettre des trucs sur la fenêtre root, je ne sais faire que pour les applis qui le prévoient, genre les xscreensaver ("/usr/lib/misc/xscreensaver/machintruc --root").

    Mais quoi qu'il en soit, ça n'est pas la seul façon d'avoir un truc en fond d'écran. Perso, je fais faire ça à mon WM, Sawfish, grâce aux options des "matched windows". Si tu utilises plutôt Metacity (ou tout autre pas plus doué), alors Devil's Pie est un petit complément qui te permettra en gros la même chose.

    Le web officiel est là :
    http://www.burtonini.com/blog/computers/devilspie
    Et de la doc se trouve ici :
    http://x2.zuavra.net/index.php/48/
    http://wiki.foosel.net/linux/devilspie

    En gros, avec par exemple gnome-terminal, il suffirait de :

    - se faire un profil d'option "background-term" qui serait épuré des barres de scroll et de menu

    - faire une règle devilspie ("~/.devilspie/background-term.ds") qui va bien, dans ce genre là (pas testé) :
    (if (is (window_class) "background-term")
    (begin (undecorate) (maximize) (pin) (skip_pager) (skip_tasklist) (below)))

    - lancer ton gnome-terminal avec le bon nom de classe, le bon profil d'options, et sans utiliser la factory (sinon le --class ne marchera pas) :
    % gnome-terminal --class=background-term --window-with-profile=background-term --disable-factory
    • [^] # Re: Devil's Pie ?

      Posté par  . Évalué à 2.

      Ah ouais, j'oubliais de dire que rien n'oblige évidemment à mettre ce terminal en plein écran comme devrait le faire ma commande ("maximize"). Cf. la commande "geometry" de devilspie (ou l'option "--geometry=..." de gnome-terminal ou ses amis) pour en faire une fenêtre d'une taille donnée à un endroit donné, histoire de continuer à profiter pleinement de ton bureau Nautilus autour (modulo qu'il n'y ait pas d'icônes en dessous de cette zone quoi, évidemment).

      Et puis rien à voir ou presque, mais une alternative sympa à la console de bureau c'est celle qui s'affiche seulement quand tu presses un certain raccourci (façon FPS quoi), comme le propose Tilda :
      http://tilda.sourceforge.net
    • [^] # Re: Devil's Pie ?

      Posté par  (site web personnel) . Évalué à 2.

      Merci beaucoup !!!!

      Ca marche très bien.
      En plus, tu m'as fait découvrir la documentation de la propriété _NET_WM_WINDOW_TYPE* que je cherchais (n'ayant pas trouvé avec google). J'avais remarqué avec xprop qu'elle avait une valeur différente sur la fenêtre bureau de nautilus.

      --
      * http://standards.freedesktop.org/wm-spec/wm-spec-1.3.html#id(...)
  • # Ma solution

    Posté par  (site web personnel) . Évalué à 3.

    Je vais vous faire partager mes scripts.
    
    
    J'utilise devilspie¹ patché² que je lance avec mon ~/.Xsession. J'utilise aussi wmctrl³. J'utilise xbindkeys* pour associer la touche menu (remappée grace à xmodmap) pour lancer drop-down-console.
    
    
    
    
    Pour desktop-terminal, j'ai choisi de créer un terminal qui n'est pas partagé entre les différents bureaux et que je lance manuellement (avec une icone dans le gnome-panel). On verra si c'est le plus pratique à l'usage :)
    
    
    Notes:
    ¹ http://www.burtonini.com/blog/computers/devilspie
    ² http://bugzilla.gnome.org/show_bug.cgi?id=330067
    ² http://bugzilla.gnome.org/attachment.cgi?id=64351&action(...)
    ³ http://www.sweb.cz/tripie/utils/wmctrl/
    * http://hocwp.free.fr/xbindkeys/xbindkeys.fr.html
    fichier ~/.local/desktop-terminal
    #! /bin/sh
    
    class="desktop-terminal"
    profile="desktop"
    
    gnome-terminal --disable-factory --class="$class" --window-with-profile="$profile" "$@"
    
    exit $?
    
    
    fichier ~/.devilspie/desktop-terminal.ds
    (if
    	(is (window_class) "desktop-terminal")
    	(begin
    		(undecorate)
    		;(pin) ;; all workspaces ?
    		(skip_pager)
    		(skip_tasklist)
    ;; with this we can't have the nautilus desktop
    		(maximize)
    		;(above) ;; does nothing
    		(wintype "desktop")
    ;; with that we can have our desktop but the terminal
    ;; is hidden when we press the button 'show desktop'
    		;(below)
    		;(maximize_vertically)
    		;(geometry "-0+0")
    	))
    
    
    fichier ~/.local/bin/drop-down-terminal (pas parfait du aux limitations de wmctrl et a son incompatibilité avec devilspie)
    #! /bin/sh
    
    cmd="$1"
    [ -n "$2" ] && shift 1
    
    class="drop-down-terminal"
    profile="drop-down"
    
    hide_desktop=0
    shown_file="`dirname "$0"`-shown-`whoami`"
    
    debug(){
    	echo "$@"
    	return $?
    }
    
    exists(){
    	debug "check $class"
    	wmctrl -x -l | grep -q gnome-terminal."$class"
    	return $?
    }
    
    not_exists(){
    	debug "check $class"
    	wmctrl -x -l | grep -q gnome-terminal."$class" && return 1 || return 0
    }
    
    show(){
    	debug "show $class"
    	wmctrl -x -R gnome-terminal."$class" -b remove,below
    	wmctrl -x -R gnome-terminal."$class" -b remove,shaded,above
    	touch "$shown_file"
    	return $?
    }
    hide(){
    	debug "hide $class"
    	wmctrl -x -r gnome-terminal."$class" -b remove,above
    	wmctrl -x -r gnome-terminal."$class" -b add,shaded,below
    	wmctrl -x -r gnome-terminal."$class" -t $hide_desktop
    	rm -f "$shown_file"
    	return $?
    }
    toggle(){
    	debug "toggle $class"
    	#wmctrl -x -R gnome-terminal."$class" -b toggle,shaded
    	#wmctrl -x -R gnome-terminal."$class" -b toggle,above,below
    	if [ -e "$shown_file" ]; then
    		hide
    	else
    		show
    	fi
    	return $?
    }
    
    create(){
    	debug "create $class"
    	gnome-terminal \
    		--class="$class" \
    		--window-with-profile="$profile" \
    		--disable-factory "$@" &
    	res=$?
    	
    	touch "$shown_file"
    	
    	while not_exists; do echo -n; done
    	#while exists && false || true; do
    	#	wmctrl -x -l
    	#done
    	
    	wmctrl -x -R gnome-terminal."$class" -b add,maximized_horz,above
    	wmctrl -x -R gnome-terminal."$class" -e 0,0,0,-1,-1
    	
    	return $res
    }
    
    if [ "$cmd" = "show" ]; then
    	exists && show || create
    	exit $?
    elif [ "$cmd" = "hide" ]; then
    	hide
    	exit $?
    elif [ "$cmd" = "toggle" ]; then
    	exists && toggle || create
    	exit $?
    else
    	exists && toggle || create
    	exit $?
    fi
    

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.