Page 1 of 1
Ajuster ses fenetres en mode mosaïque sous jwm
Posted: Fri 01 Jun 2018, 09:47
by jplt_bis
Bonjour à tous ,
étant un grand fan des
tiling window manager (
gestionnaires de fenetres par pavage ou en mosaïque) : dwm,i3,etc .... , je me suis dit peut-on le faire sous jwm au lieu d'installer un nouveau gestionnaire de fenetres !
Et la reponse est oui , 2 choses à faire mettre le script suivant sliter.py dans /usr/local/bin/ ou /root/my-applications/bin/ et ajouter les lignes ci dessous dans /root/.jwmrc ,relancer jwm et le tour est joué
Ensuite pour basculer vos fenetres le CA correspond à la conbinaison de touche Ctrl-Alt
Je vous laisse jouer avec les differentes combinaisons et voir leur resultats :
Ctrl-Alt s
Ctrl-Alt t
etc ...
Dite moi ce que vous en pensez ?
Merci.
Code: Select all
<Key mask="CA" key="s">exec:stiler.py simple</Key>
<Key mask="CA" key="t">exec:stiler.py cycle</Key>
<Key mask="CA" key="l">exec:stiler.py left</Key>
<Key mask="CA" key="r">exec:stiler.py right</Key>
<Key mask="CA" key="v">exec:stiler.py vertical</Key>
<Key mask="CA" key="h">exec:stiler.py horizontal</Key>
<Key mask="CA" key="m">exec:stiler.py maximize</Key>
Posted: Fri 01 Jun 2018, 12:05
by musher0
Salut jplt_bis.
echinus fait ça très bien !
Pourquoi se casser la tête pour faire faire quelque chose au gestionnaire
jwm, qui n'est pas fait pour ça.
Tu peux coder, trafiquer, tripatouiller les configs de jwm... OU taper:
Et voilà le travail !!!
Ou bien passe pas par jwm, mais par wmctrl (archive pet ci-jointe):
Code: Select all
#!/bin/sh
# paves.sh # Quatre ou cinq fenêtres en pavés.
# Utilise : / Uses: wmctrl, awk, wc
# © Christian L'Écuyer, Gatineau (Qc), Canada, 1er sept. 2017. GPL3
# (alias musher0 [forum Puppy]) # https://opensource.org/licenses/GPL-3.0
#################### # Rev. : 14 janv. 2018.
# This program is free software: you can redistribute it and/or modify it under the
# terms of the GNU General Public License as published by the Free Software Foundation,
# either version 3 of the License, or (at your option) any later version.
# This program is distributed in the hope that it will be useful, but WITHOUT ANY
# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
# A PARTICULAR PURPOSE. See the GNU General Public License for more details.
# You should have received a copy of the GNU General Public License along with
# this program. If not, see <http://www.gnu.org/licenses/>.
##########
# Ce programme est libre : vous pouvez le redistribuer ou modifier selon les termes
# de la Licence Publique Générale GNU publiée par la Free Software Foundation (v. 3
# ou toute version ultérieure choisie par vous).
# Ce programme est distribué dans l'espoir qu'il sera utile, mais SANS AUCUNE
# GARANTIE, ni explicite ni implicite, y compris des garanties de commercialisation
# ou d'adaptation à un but spécifique. Pour plus de détails, veuillez vous reporter
# au texte officiel de cette licence à https://opensource.org/licenses/GPL-3.0, à
# http://www.linux-france.org/article/these/gpl.html pour une traduction et, pour une
# explication en français, à https://fr.wikipedia.org/wiki/Licence_publique_générale_GNU.
#################### set -xe
Bur="`wmctrl -d | awk '$2 ~/\*/ { print $1 }'`"
wmctrl -l | awk '$2 ~ /'"$Bur"'/ && $4 !~ /Conky|stalonetray|jar|exe|N\/A/ { print $1 }' > /tmp/fen
# Ne pas utiliser sur une fenêtre contrôlée par java, DOSBOX ou Wine, sur Conky ou.
awk '0 == NR % 2' /tmp/fen > /tmp/fen-paires # even lines
awk '0 == NR % 2' /tmp/fen-paires > /tmp/fen-paires-bas
awk '0 == (NR + 1) % 2' /tmp/fen-paires > /tmp/fen-paires-haut
awk '0 == (NR + 1) % 2' /tmp/fen > /tmp/fen-impaires # odd lines
awk '0 == NR % 2' /tmp/fen-impaires > /tmp/fen-impaires-bas
awk '0 == (NR + 1) % 2' /tmp/fen-impaires > /tmp/fen-impaires-haut
DemiHauteur="`xwininfo -root | awk '$1 ~ /Height/ { print $2/2 }'`" # Half height of screen
DemiLargeur="`xwininfo -root | awk '$1 ~ /Width/ { print $2/2 }'`" # Half width of screen
Valid="";Valid="`wc -l < /tmp/fen-paires-haut `"
if [ "$Valid" -gt "0" ];then
A=72;B=48
line="";while read line;do
wmctrl -i -r $line -e 0,$A,$B,0,0 2>/dev/null & #
B="`expr $B + 100`"
done < /tmp/fen-paires-haut
fi
Valid="";Valid="`wc -l < /tmp/fen-impaires-haut `"
if [ "$Valid" -gt "0" ];then
C="`expr $DemiLargeur - 48`"
D=96
line="";while read line;do
wmctrl -i -r $line -e 0,$C,$D,0,0 2>/dev/null &
D="`expr $D + 100`"
done < /tmp/fen-impaires-haut
fi
A="";B="";C="";D="" # Ré-init.
Valid="";Valid="`wc -l < /tmp/fen-paires-bas `"
if [ "$Valid" -gt "0" ];then
A=72;B="$DemiHauteur"
line="";while read line;do
wmctrl -i -r $line -e 0,$A,$B,0,0 2>/dev/null &
B="`expr $B + 100`"
done < /tmp/fen-paires-bas
fi
Valid="";Valid="`wc -l < /tmp/fen-impaires-bas `"
if [ "$Valid" -gt "0" ];then
C="`expr $DemiLargeur - 48`"
D="$DemiHauteur" # 96
line="";while read line;do
wmctrl -i -r $line -e 0,$C,$D,0,0 2>/dev/null &
D="`expr $D + 100`"
done < /tmp/fen-impaires-bas
fi
rm -f /tmp/fen* # Nettoyage | Cleanup # set +xe
Posted: Fri 01 Jun 2018, 12:20
by jplt_bis
Salut musher0 ,
je viens de tester ton script pave.sh j'en suis pas tres convaincu parceque ca me shrink les fenetres en tres tres petit !?
Posted: Fri 01 Jun 2018, 12:49
by musher0
jplt_bis wrote:Salut musher0 ,
je viens de tester ton script pave.sh j'en suis pas tres convaincu parce que ca me shrink les fenetres en tres tres petit !?
Héhé, je cherche pas vraiment à te convaincre !!! C'est plutôt un exemple
imparfait des possibilités de wmctrl; donc à perfectionner !
As-tu l'utilitaire xwininfo sur ton chien-chien ? Tous ne l'ont pas. Si ton chien-
chien ne l'a pas, les variables de largeur et hauteur des fenêtres seront du
grand n'importe quoi. C'est peut-être ça.
À+
Posted: Tue 05 Jun 2018, 13:53
by jplt_bis
Ok merci pour l'info.
cliquez droit sur le fenetre suiffira
Posted: Wed 27 Jun 2018, 04:28
by hamoudoudou
Pour les linuxiens de base, cliquez droit sur le fenetre suiffira, sans utiliser xwininfo