<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Geekfault &#187; WM</title>
	<atom:link href="http://geekfault.org/tag/wm/feed/" rel="self" type="application/rss+xml" />
	<link>http://geekfault.org</link>
	<description>If it doesn&#039;t segfault, you&#039;re doing it wrong.</description>
	<lastBuildDate>Tue, 08 May 2012 17:13:34 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>Echinus, un WM, simplement.</title>
		<link>http://geekfault.org/2009/08/19/echinus-wm/</link>
		<comments>http://geekfault.org/2009/08/19/echinus-wm/#comments</comments>
		<pubDate>Wed, 19 Aug 2009 16:19:26 +0000</pubDate>
		<dc:creator>roidelapluie</dc:creator>
				<category><![CDATA[Logiciel]]></category>
		<category><![CDATA[Review]]></category>
		<category><![CDATA[planet-libre]]></category>
		<category><![CDATA[WM]]></category>

		<guid isPermaLink="false">http://geekfault.org/?p=1253</guid>
		<description><![CDATA[Sur le marché des WM, il est parfois compliqué de s&#8217;y retrouver, et il arrive que certains d&#8217;entre eux restent injustement cachés. Le WM dont je vais vous parler aujourd&#8217;hui s&#8217;appelle Echinus, et je l&#8217;ai découvert tout à fait par hasard, suite à une faute de frappe. Au premier test, je me suis demandé si [...]
<h3>Si vous avez aimé ce post...</h3><ol>
<li><a href='http://geekfault.org/2009/04/19/mpd-le-demon-des-media-players/' rel='bookmark' title='MPD : Le démon des media players.'>MPD : Le démon des media players.</a></li>
<li><a href='http://geekfault.org/2009/05/16/rsnapshot/' rel='bookmark' title='Mise en place d&#8217;un système de backup avec Rsnapshot'>Mise en place d&#8217;un système de backup avec Rsnapshot</a></li>
<li><a href='http://geekfault.org/2009/08/21/wave-3-interface-google/' rel='bookmark' title='Google Wave #3 : L&#8217;interface de Google Wave Sandbox'>Google Wave #3 : L&#8217;interface de Google Wave Sandbox</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p><!--pagetitle:Les Window Managers--><a href="http://geekfault.org/wp-content/uploads/2009/08/hérisson.jpg"><img style=' float: left; padding: 4px; margin: 0 7px 2px 0;' align="left"   src="http://geekfault.org/wp-content/uploads/2009/08/hérisson-300x225.jpg" alt="hérisson" title="hérisson" width="225" height="175" class="alignleft size-medium wp-image-1325" /></a>Sur le marché des <abbr title="Window Manager">WM</abbr>, il est parfois compliqué de s&#8217;y retrouver, et il arrive que certains d&#8217;entre eux restent injustement cachés. Le <abbr title="Window Manager">WM</abbr> dont je vais vous parler aujourd&#8217;hui s&#8217;appelle <strong>Echinus</strong>, et je l&#8217;ai découvert tout à fait par hasard, suite à une faute de frappe.</p>
<p>Au premier test, je me suis demandé si le <abbr title="Window Manager">WM</abbr> s&#8217;était bien lancé. Et pour cause: rien n&#8217;apparaissait à l&#8217;écran. Un clic droit sur le «bureau» m&#8217;a cependant affiché xterm, me permettant alors d&#8217;utiliser mon pc et de lire documentation et site web du projet.</p>
<p>De fil en aiguille, et avec mes quelques personnalisations détaillées plus loin, je suis devenu fan de ce petit <abbr title="Window Manager"><strong>WM</strong></abbr> qui n&#8217;attire pas autant qu&#8217;il devrait la lumière des projeteurs.</p>
<p>Au fil de cet article, vous (re-)découvrirez ce qu&#8217;est un <abbr title="Window Manager">WM</abbr> (gestionnaire de fenêtre, en français), avant de vous pencher plus précisément sur Echinus.<br />
<!--more--></p>
<h3>Un <abbr title="Window Manager">WM</abbr>, qu&#8217;est-ce que c&#8217;est?</h3>
<p>Les <abbr title="Window Manager">WM</abbr>, gestionnaires de fenêtres, sont ces logiciels qui sont chargés de l&#8217;affichage et du placement des fenêtres, nous informe <a href="http://fr.wikipedia.org/wiki/Window_manager"><strong>Wikipédia</strong></a>.</p>
<p>Cette définition devrait vous éclairer sur leur fonction, mais surtout sur leur <strong>omniprésence</strong>. Pour la plupart des utilisateurs, dès qu&#8217;il y a des fenêtres, il y a un gestionnaire de fenêtres qui se cache derrière. C&#8217;est lui qui choisit où se place la fenêtre, la taille qu&#8217;elle a, si elle doit être maximisée, minimisée, si elle doit avoir une barre de titre, etc&#8230;</p>
<h4>Concrètement, que fait-il?</h4>
<p>Un <abbr title="Window Manager">WM</abbr> peut gérer les barres de titres, les bureaux virtuels, les fonds d&#8217;écran, les raccourcis claviers, le déplacement, le redimensionnement, l&#8217;icônification des fenêtres, les effets 3d, et bien d&#8217;autres choses.</p>
<h3>Des exemples de <abbr title="Window Manager">WM</abbr></h3>
<p><div id="attachment_1330" class="wp-caption alignright" style="width: 260px"><a href="http://geekfault.org/wp-content/uploads/2009/08/gnome.jpg" title="gnome" rel="lightbox.1253"><img src="http://geekfault.org/wp-content/uploads/2009/08/gnome-300x187.jpg" alt="Gnome n&#039;est en fait qu&#039;un «gestionnaire» pour Metacity" title="gnome" width="250" height="137" class="size-medium wp-image-1330" /></a><p class="wp-caption-text">Gnome n'est en fait qu'un «gestionnaire» pour Metacity</p></div>Les <abbr title="Window Manager">WM</abbr> les plus fréquents, intégrés à la plupart des grosses distributions, sont Metacity, Compiz-Fusion, Kwin, Openbox, Xfwm4.</p>
<p>Cependant, pas mal d&#8217;autres <abbr title="Window Manager">WM</abbr>, malgré qu&#8217;ils ne sont pas intégrés de base dans ces méga-distributions, disposent de leur public et d&#8217;une communauté plus ou moins active. Ces <abbr title="Window Manager">WM</abbr> ont traversé les âges. Je parle de fvwm2, Icewm, Fluxbox, awesome, <abbr title="Dynamic Window Manager">dwm</abbr> (dont nous reparleront), et bien d&#8217;autres encore.</p>
<p>Voyons maintenant comment classer ces différents <abbr title="Window Manager">WM</abbr>.</p>
<h3>Classification des <abbr title="Window Manager">WM</abbr></h3>
<p>Il est possible de classer les différents <abbr title="Window Manager">WM</abbr> selon plusieurs critères. Parmi ceux-ci, l&#8217;âge, la licence, le système d&#8217;exploitation, l&#8217;activité, la taille de la communauté et l&#8217;origine sont des critères certes intéressants, mais ils permettent de classifier n&#8217;importe quels logiciels.</p>
<p>Nous préfèrerons ici une classification propre aux <abbr title="Window Manager">WM</abbr>: d&#8217;une part, les <strong>Floating Window Manager</strong>, et d&#8217;autre part les <strong>Tiling Window Manager</strong>.</p>
<h4>La technique du Floating</h4>
<div id="attachment_1334" class="wp-caption alignright" style="width: 260px"><a href="http://geekfault.org/wp-content/uploads/2009/08/profont.png" title="profont" rel="lightbox.1253"><img src="http://geekfault.org/wp-content/uploads/2009/08/profont-300x187.png" alt="Echinus en mode Floating" title="profont" width="250" height="137" class="size-medium wp-image-1334" /></a><p class="wp-caption-text">Echinus en mode Floating</p></div>
<p>Dans un Floating Window Manager, une fenêtre est dite <em>flottante</em>. C&#8217;est à dire qu&#8217;elle se déplace où vous le voulez sur l&#8217;écran, elle prend la place qu&#8217;elle désire, et les fenêtres peuvent se superposer.</p>
<h4>La technique du Tiling</h4>
<p>Les Tiling Window Managers fonctionnent tout à fait différemment. Une nouvelle fenêtre créée changera la taille de toutes les autres fenêtres, afin que toutes les fenêtres soient visibles en même temps, et occupent tout l&#8217;espace disponible à l&#8217;écran.<br />
<div id="attachment_1342" class="wp-caption aligncenter" style="width: 590px"><a href="http://geekfault.org/wp-content/uploads/2009/08/tiling.png" title="tiling" rel="lightbox.1253"><img src="http://geekfault.org/wp-content/uploads/2009/08/tiling-580x362.png" alt="Mon Echinus en mode Tiling" title="tiling" width="580" height="362" class="size-large wp-image-1342" /></a><p class="wp-caption-text">Mon Echinus en mode Tiling</p></div><br />
À noter que la méthode du tiling n&#8217;est pas incompatible avec la notion de bureaux virtuels.</p>
<h4>En pratique: les WM mixtes</h4>
<p>La technique du tiling peut sembler la meilleure, mais n&#8217;est pas adaptée à de nombreux cas.</p>
<p>Par exemple, le logiciel Gimp, qui est constitué de plusieurs fenêtres, la messagerie instantannée, la bureautique, le visionnage de vidéos demandent des fenêtres flottantes, avec leur propre placement et leur propre taille.</p>
<p>Pour cela, la plupart des Tiling Window manager sont <strong>mixtes</strong>: ils permettent d&#8217;avoir certaines fenêtres toujours flottantes, et même certains bureaux virtuels où toutes les fenêtres seront flottantes. Il s&#8217;agit de l&#8217;immense majorité des gestionnaires de fenêtres en tiling.<br />
<div id="attachment_1344" class="wp-caption aligncenter" style="width: 590px"><a href="http://geekfault.org/wp-content/uploads/2009/08/echinusmix.png" title="echinusmix" rel="lightbox.1253"><img src="http://geekfault.org/wp-content/uploads/2009/08/echinusmix-580x362.png" alt="Echinus organise les terminaux du fond en Tiling, mais permet la superposition d&#039;une fenêtre en Floating par dessus" title="echinusmix" width="580" height="362" class="size-large wp-image-1344" /></a><p class="wp-caption-text">Echinus organise les terminaux du fond en Tiling, mais permet la superposition d'une fenêtre en Floating par dessus</p></div><br />
Approchons maintenant un de ces fameux gestionnaires de fenêtres mixte: <strong>Echinus</strong>.</p>
<p><!--nextpage--><!--pagetitle:Présentation d'Echinus--></p>
<h3>Histoire</h3>
<p><strong>Alexander Polakov</strong>, étudiant au <em>Moscow Institute of Steel and Alloys</em>, a pour passion la lecture, la programmation et il aime également se promener en écoutant de la musique.</p>
<p>En 2007, il n&#8217;était pas satisfait du comportement de son <abbr title="Window Manager">WM</abbr>, <abbr title="Dynamic Window Manager"><strong>dwm</strong></abbr>. L&#8217;étudiant russe n&#8217;aimait pas l&#8217;idée d&#8217;écrire sans cesse des patch qui seraient incorporés version après version dans celui-ci.</p>
<p>Alexander n&#8217;aimait pas non plus la barre intégrée à <abbr title="Dynamic Window Manager">dwm</abbr>. Actuellement, il a écrit une barre indépendante, propre à Echinus, appelée <strong>ourico</strong> (voir la page du projet Echinus).</p>
<p>Notre homme de 21 ans créa donc FWM (dont la signification semble perdue à jamais), en novembre 2007, avant que son projet ne change de nom pour devenir <strong>Echinus</strong>, en mars 2008.</p>
<p>Echinus est un mot latin signifiant «Hérisson», mais en réalité c&#8217;est le pseudo d&#8217;une fille qui est à l&#8217;origine du nom du projet.</p>
<p>Echinus est placé sous licence MIT (MIT/X Consortium License), tout comme X11 et <abbr title="Dynamic Window Manager">dwm</abbr>.</p>
<h3>Caractéristiques</h3>
<p>Les principales caractéristiques d&#8217;Echinus sont les suivantes:</p>
<ul>
<li>Echinus s&#8217;auto-proclame dans l&#8217;esprit de <abbr title="Dynamic Window Manager">dwm</abbr>.</li>
<li>Il est très léger, très simple.</li>
<li>Il se configure aisément, avec un seul fichier, au format Xressources.</li>
<li>Il supporte tant le tiling que le floating.</li>
<li>Il est hyper-minimaliste: pas de scripting, pas barre de menu, pas de pager, rien.</li>
<li>Il supporte un minimum du standard <abbr title="Extended Window Manager Hints">EWMH</abbr>, <strike>de Freedesktop.org, ce qui lui apporte une compatibilité minimum avec les pagers et autres barres de menus.</strike></li>
<li>Il supporte le <abbr title="X FreeType interface library">Xft</abbr> (<abbr title="True Type Fonts">TTF</abbr>).</li>
</ul>
<h4>Inconvénients et freins à son expansion</h4>
<ul>
<li><strong>Pas de documentation apparente</strong>: la documentation se résume au fichier README, compris avec le programme. Bien que complète, elle semble fort courte.</li>
<li><strong>Publicité manquante</strong>: Echinus ne dispose d&#8217;aucune publicité nulle part, et semble inexistant. Sur le web, sa présence se limite à peu près à une page et quelques screenshots</li>
<li><strong>Pas de distribution</strong>: rares sont les distributions qui fournissent une version d&#8217;Echinus dans leur système de package. Par exemple, il n&#8217;y a pas de packet pour Ubuntu. Quand il existe un paquet, il n&#8217;est pas forcément à jour.</li>
<li><strong>Communauté inactive et quasiment inexistante</strong>: La mailing list ne reçoit même pas un mail par mois, et beaucoup de questions y restent sans réponse, malgré la disponibilité du développeur.</li>
</ul>
<p>Ayant tout ceci en tête, faisons d&#8217;Echinus le <abbr title="Window Manager">WM</abbr> de nos rêves.<br />
<!--nextpage--><!--pagetitle:Personnalisation--><br />
Voici quelques éléments que j&#8217;ai changé au fichier <em>~/.echinus/echinusrc</em> de base.</p>
<p>Les éléments s&#8217;y présentent ainsi:</p>
<p>Echinus*Variable: valeur</p>
<p><em>Toutes ces valeurs sont décrites dans les fichier README. Il se trouve avec le awesomerc d&#8217;exemple dans l&#8217;archive du logiciel. vous y trouverez également les instructions de compilations et d&#8217;installations.</em></p>
<h4>Sloppy Focus</h4>
<p><em>Activons le focus suivant la souris</em><br />
Echinus*sloppy</p>
<ul>
<li>Ancienne valeur: 0</li>
<li>Nouvelle valeur: 2</li>
</ul>
<h4>Le tiling par défaut</h4>
<p>Echinus*deflayout</p>
<ul>
<li>Ancienne valeur: i</li>
<li>Nouvelle valeur: t</li>
</ul>
<h4>Raccourcis claviers</h4>
<p><em>Remplaçons la touche alt par la touche fenêtre dans les raccourcis</em><br />
Exemple: Echinus*setlayoutm</p>
<ul>
<li>Ancienne valeur: A + M</li>
<li>Nouvelle valeur: W + M</li>
</ul>
<p><em>Modkeys: A for alt, W &#8211; winkey, S &#8211; shift, C &#8211; control, 0 &#8211; None</em></p>
<h4>Réglage du terminal par défaut</h4>
<p><em>Optons pour gnome-terminal au lieu de xterm</em><br />
Echinus*spawn0</p>
<ul>
<li>Ancienne valeur: A + t = xterm</li>
<li>Nouvelle valeur: W + t = gnome-terminal</li>
</ul>
<p>Echinus*terminal</p>
<ul>
<li>Ancienne valeur: xterm</li>
<li>Nouvelle valeur: gnome-terminal</li>
</ul>
<h4>Réglage des layout et bureaux virtuels</h4>
<p><em>Le bureau virtuel &#8216;doc&#8217; est défini ici:</em><br />
Echinus*tags.name2: doc</p>
<p><em>Définissions son layout:</em><br />
Echinus*tags.layout2: m<br />
<em>i &#8211; ifloating, f &#8211; floating, t &#8211; tiled, b &#8211; bottomstack, m &#8211; maximized. La différence entre </em>floating<em> et </em>ifloating<em> est expliquée plus bas.</em></p>
<h4>Règles par applications</h4>
<p><em>Placons Evince avec une barre de titre et sur le bureau &#8216;doc&#8217;</em><br />
Echinus*rule3: Evince.* doc 0 1</p>
<h4>Réglage du Tiling</h4>
<p><em>Définissons à 3 le nombre de fenêtres dans la partie principale des tags en tiling</em><br />
Echinus*nmaster</p>
<ul>
<li>Ancienne valeur: 1</li>
<li>nouvelle valeur: 3</li>
</ul>
<p><em>Donnons 50% de place à cette partie principale</em><br />
Echinus*mwfact</p>
<ul>
<li>Ancienne valeur: 0.6</li>
<li>nouvelle valeur: 0.5</li>
</ul>
<h3>Astuces</h3>
<h4>Mettre un raccourcis clavier sans Modkey</h4>
<p><em><strong>Ceci n&#8217;est pas documenté dans le README d&#8217;Echinus.</strong></em><br />
Il suffit de mettre (zéro) à la place de la ModKey.</p>
<p>Exemple: Echinus*Spawn1: 0 + XF86AudioPrev = ncmpcpp prev</p>
<h4>Différence entre floating et ifloating</h4>
<p>En <em>floating (f)</em>, les nouvelles fenetres sront toutes crées en haut à gauche de l&#8217;écran.</p>
<p>En <em>ifloating (i)</em>, Echinus imite un comportement traditionnel en positionnant les nouvelles fenêtres de manière à ne pas superposer les autres fenêtres.</p>
<h4>Gkrellm Pager</h4>
<p>Étant utilisateur de Gkrellm, et un peu en manque d&#8217;indicateur me montrant dans quel tag je me trouvais, j&#8217;ai installé le plugin Pager pour Gkrellm.</p>
<p><!--nextpage--><!--pagetitle:Liens--><br />
Comme le dit l&#8217;adage, <em>Abondance de liens ne nuit pas</em>.</p>
<h3>Echinus</h3>
<ul>
<li><a href="http://www.rootshell.be/~polachok/code/">Page principale</a></li>
<li><a href="http://www.rootshell.be/~polachok/desktop/">Screenshots</a></li>
<li><a href="http://freehg.org/u/polachok/echinus/">Dépôt mercurial</a></li>
<li><a href="http://groups.google.com/group/echinus-wm?lnk=srg">Mailing-List</a></li>
<li><a href="http://en.wikipedia.org/wiki/Echinus_%28window_manager%29">Sur Wikipedia</a></li>
<li><a href="http://www.opensource.org/licenses/mit-license.php">MIT/X Consortium License</a></li>
</ul>
<h3>Window Manager</h3>
<ul>
<li><a href="http://xwinman.org/">Xwinman</a>: site reprenant la majorité des gestionnaires de fenêtre pour X.</li>
<li>Sur Wikipedia: en <a href="http://en.wikipedia.org/wiki/Window_manager">Anglais</a> ou en <a href="http://fr.wikipedia.org/wiki/Window_manager">Français</a>.</li>
<li>Le standart <a href="http://standards.freedesktop.org/wm-spec/wm-spec-1.3.html">EWMH</a></li>
</ul>
<p>Et, dans l&#8217;ordre alphabétique:</p>
<ul>
<li><a href="http://awesome.naquadah.org"/>Awesome</li>
<li><a href="http://www.compiz-fusion.org/">Compiz-Fuzion</a></li>
<li><a href="http://dwm.suckless.org/">dwm</a></li>
<li><a href="http://www.enlightenment.org/">e17</a></li>
<li><a href="http://fluxbox.sourceforge.net/">Fluxbox</a></li>
<li><a href="http://gna.org/projects/fvwm-crystal/">FVWM-crystal</a></li>
<li><a href="http://www.icewm.org/">icewm</a></li>
<li><a href="http://www.linuxpedia.fr/doku.php/kde/kwin">KWin</a></li>
<li><a href="http://doc.ubuntu-fr.org/metacity">Metacity</a></li>
<li><a href="http://icculus.org/openbox/index.php/Main_Page">Openbox</a></li>
</ul>
<h3>Gkrellm Pager</h3>
<ul>
<li><a href="http://members.dslextreme.com/users/billw/gkrellm/gkrellm.html">Gkrellm</a></li>
<li><a href="http://sourceforge.net/projects/gkrellmpager/">Le plugin</a></li>
</ul>
<h3>Remerciement</h3>
<p>Special Thanks for Alexander for his availability and his quick answers.</p>
<p><h3>Si vous avez aimé ce post...</h3><ol>
<li><a href='http://geekfault.org/2009/04/19/mpd-le-demon-des-media-players/' rel='bookmark' title='MPD : Le démon des media players.'>MPD : Le démon des media players.</a></li>
<li><a href='http://geekfault.org/2009/05/16/rsnapshot/' rel='bookmark' title='Mise en place d&#8217;un système de backup avec Rsnapshot'>Mise en place d&#8217;un système de backup avec Rsnapshot</a></li>
<li><a href='http://geekfault.org/2009/08/21/wave-3-interface-google/' rel='bookmark' title='Google Wave #3 : L&#8217;interface de Google Wave Sandbox'>Google Wave #3 : L&#8217;interface de Google Wave Sandbox</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://geekfault.org/2009/08/19/echinus-wm/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
	</channel>
</rss>

