[{"data":1,"prerenderedAt":2521},["ShallowReactive",2],{"posts-count":3,"posts-page-4":4},50,[5,248,371,456,938,1199,1234,1373,1729,1863],{"id":6,"title":7,"author":8,"body":9,"category":217,"categorySlug":218,"date":219,"description":15,"excerpt":220,"extension":234,"location":235,"meta":236,"navigation":237,"path":238,"published":237,"seo":239,"slug":240,"stem":241,"tags":242,"timeToRead":246,"__hash__":247},"posts\u002Fposts\u002FXINX\u002F2009-05-26-xinx-0.8.1.0.md","XINX 0.8.1.0","Ulrich Vandenhekke",{"type":10,"value":11,"toc":207},"minimark",[12,16,26,34,39,46,49,52,59,65,69,75,78,82,89,95,115,118,121,127,131,138,142,145,148,153,172,182],[13,14,15],"p",{},"Bonjour à tous,",[13,17,18],{},[19,20,21,25],"ins",{},[22,23,24],"strong",{},"Erratum :"," La dernière version est numéroté 0.8.1.1. Un petit\nbug (pouvant être gênant lors de l'ouverture de feuille de style sans\nutilisation du mode projet) a été corrigé dans la foulé. La page est\ncorrigé en conséquence",[13,27,28,29,33],{},"Je souhaite vous annoncer la sortie de la version ",[30,31,32],"strike",{},"0.8.1.0","\n0.8.1.1 de XINX. Pas d'énorme changement pour vous depuis la version 0.8.0.0\n(sinon nous serions passés à la version 0.9.0.0) mais de gros changements\ninternes.",[35,36,38],"h3",{"id":37},"vue-contenue","Vue Contenue",[13,40,41],{},[42,43],"img",{"alt":44,"src":45},"ContentViewDock.png","\u002FXINX\u002Fxinx-0.8.1.0\u002FContentViewDock.png",[13,47,48],{},"En fait, la partie gérant la vue contenue a été complètement ré-écrite.\nElle est maintenant parallélisée et partagée entre les différents\néditeurs. Au final l'empreinte mémoire, ainsi que la fluidité a chargé\nles différents fichiers de XINX devrait être amélioré. (Enfin j'espère,\ncar je n'ai pas fait de benchmark). De ce coté le code est lui aussi\nbeaucoup plus propre et plus souple.",[13,50,51],{},"XINX étant toujours dans les versions 0.XX, je n'ose vous rappeler que\nce n'est pas ce qu'on appelle une version finie, mais une série de bêta\n;) . Étant donné le peu de test que j'ai pu faire sur cette version en\nparticulier j'aurais dû la nommer en -rc ou en -beta mais je me suis dit\nque cela serait redondant, et que si ça ne convenait pas vous ajouteriez\nun ticket sur ce site pour me prévenir. Enfin j'espère que cette version\nne sera pas trop miner. 😄",[13,53,54,55,58],{},"La ré-écriture de la partie ",[56,57,38],"em",{}," permet donc de préciser dans\nles propriétés du projet quelques fichiers qui seront pré-chargés au\nchargement du projet. Ces fichiers étant pré-chargés, l'ouverture des\nfeuilles de styles devrait être accéléré. Si de votre coté, XINX\nprésente quelques faiblesses, merci de me prévenir. La complétion a\négalement été améliorée (avec la suppression des bug, comme l'affichage\nde balise with-param en double). Lors de vos déplacements dans\nl'éditeur, la vue contenue vous indique votre emplacement dans la vue\ncontenue.",[13,60,61],{},[42,62],{"alt":63,"src":64},"PreloadedFiles.png","\u002FXINX\u002Fxinx-0.8.1.0\u002FPreloadedFiles.png",[35,66,68],{"id":67},"dictionnaire","Dictionnaire",[13,70,71],{},[42,72],{"alt":73,"src":74},"Dictionary.png","\u002FXINX\u002Fxinx-0.8.1.0\u002FDictionary.png",[13,76,77],{},"L'autre nouveau point et l'ajout d'un nouveau Dock par l'intermédiaire\ndes plugins. Ce Dock vous propose l'affichage du dictionnaire dans les\nversions GCE130 et GCE140. Pour l'instant le seul intérêt de ce dock est\nl'affichage du dictionnaire à la recherche d'un label. C'est un point de\ndépart pouvant vous servir à faire des tickets sur des améliorations à\napporter. (Celle que j'ai en tête est la gestion de la complétion sur\nles libellés du dictionnaire). Merci de passer par le système de ticket\npour proposer d'autres améliorations sur le DOCK Dictionnaire.",[35,79,81],{"id":80},"pré-visualisation","Pré-visualisation",[13,83,84,85,88],{},"Enfin, dernière évolution intéressante, est l'affichage de la\npré-visualisation de la page. Cette fonctionnalité est à noter comme\n",[56,86,87],{},"extrêmement expérimental",",et n'évoluera peut-être pas (selon les\ndemandes qui sont faites dessus, ainsi que suivant les problèmes\ntechniques rencontrés), et ne fonctionnera peut-être pas avec les\nprochaines versions de GCE. (En version 140, les libellés ne sont pas\nremplacés).",[13,90,91],{},[42,92],{"alt":93,"src":94},"CustomWebPlugin.png","\u002FXINX\u002Fxinx-0.8.1.0\u002FCustomWebPlugin.png",[13,96,97,98,101,102,114],{},"Pour faire fonctionner la prévisualisation, vous devez renseigner\nl'emplacement de la ",[56,99,100],{},"ServletControl",", configurer, dans les propriétés du\nplugin WEB, le parseur à utiliser",[103,104,105],"sup",{},[106,107,113],"a",{"href":108,"ariaDescribedBy":109,"dataFootnoteRef":111,"id":112},"#user-content-fn-1",[110],"footnote-label","","user-content-fnref-1","1"," et de configurer le lecteur\n(je vous conseille Webkit).",[13,116,117],{},"De là, lors des développements de feuille de style en mode projet, si\nvous sélectionnez un flux de présentation XML (dans le dock associé) et\nappuyé sur F9, vous devriez avoir la prévisualisation de votre feuille\nde style.",[13,119,120],{},"Le même principe peut-être appliqué pour une page HTML. Là, pas besoin\nde parseur, ni de flux de présentation. Vous pouvez avoir directement la\nprévisualisation de votre page HTML.",[13,122,123],{},[42,124],{"alt":125,"src":126},"ParseXsl.png","\u002FXINX\u002Fxinx-0.8.1.0\u002FParseXsl.png",[35,128,130],{"id":129},"gestion-des-plugins","Gestion des plugins",[13,132,133,134,137],{},"Enfin, la gestion des plugins n'a cessé de s'améliorer. Il est de plus\nen plus facile d'étendre ",[56,135,136],{},"'XINX","'. Ceci par l'intermédiare de Script ou\nde Plugins. Si une fonctionnalité vous manque, vous pouvez donc non\nseulement la proposer, mais aussi l'écrire en script, ou si le script\nest trop limité, vous pouvez aussi écrire le plugin. Les plugins\npermettent donc d'ajouter des actions à XINX, des Docks, des éditeurs,\ndes gestionnaires de version, des pages de configuration du projet, ...",[35,139,141],{"id":140},"d-bus","D-BUS",[13,143,144],{},"Alors que D-BUS avait été ajouté dans les précédentes versions afin de\npermettre une plus grande interopérabilité, ce dernier a été retiré pour\ncette version. Ainsi XINX est maintenant indépendant de D-BUS. Il a été\ndécidé de retirer D-BUS pour plusieurs raisons : Simplification de la\ncompilation, source de problème sous MS\u002FWindows. Il devient maintenant\nbeaucoup plus simple de compiler XINX sous Windows. L'interface avec\nD-BUS reviendra dans une future version mais sera alors optionnel.",[13,146,147],{},"Je vous souhaite une bonne installation.",[149,150,152],"h4",{"id":151},"téléchargement","Téléchargement",[154,155,156,165],"ul",{},[157,158,159],"li",{},[106,160,164],{"href":161,"rel":162},"http:\u002F\u002Fxinx.shadoware.org\u002Fdownloads\u002F45",[163],"nofollow","binaire i386 windows",[157,166,167],{},[106,168,171],{"href":169,"rel":170},"http:\u002F\u002Fxinx.shadoware.org\u002Fdownloads\u002F46",[163],"source",[13,173,174,175,178],{},"Sous Debian, ajout du dépôt :",[176,177],"br",{},[179,180,181],"code",{},"deb http:\u002F\u002Fapt.shadoware.org\u002F sid main",[183,184,187,193],"section",{"className":185,"dataFootnotes":111},[186],"footnotes",[188,189,192],"h2",{"className":190,"id":110},[191],"sr-only","Footnotes",[194,195,196],"ol",{},[157,197,199,200],{"id":198},"user-content-fn-1","je vous conseille celui d'Oracle, Il est plus long à se lancer mais permet de gérer les noms de domaine Generix. ",[106,201,206],{"href":202,"ariaLabel":203,"className":204,"dataFootnoteBackref":111},"#user-content-fnref-1","Back to reference 1",[205],"data-footnote-backref","↩",{"title":111,"searchDepth":208,"depth":208,"links":209},2,[210,212,213,214,215,216],{"id":37,"depth":211,"text":38},3,{"id":67,"depth":211,"text":68},{"id":80,"depth":211,"text":81},{"id":129,"depth":211,"text":130},{"id":140,"depth":211,"text":141},{"id":110,"depth":208,"text":192},"XINX","xinx","2009-05-26",{"type":10,"value":221},[222,224,230],[13,223,15],{},[13,225,226],{},[19,227,228,25],{},[22,229,24],{},[13,231,28,232,33],{},[30,233,32],{},"md","Lille, France",{},true,"\u002Fpost\u002Fxinx-0.8.1.0",{"title":7,"description":15},"xinx-0.8.1.0","posts\u002FXINX\u002F2009-05-26-xinx-0.8.1.0",[218,243,244,245],"generix-group","qt","xml",4,"8aKIzfM_YqZZxhEq2D3RIfltjcXI7zx2CQJUUEok8_U",{"id":249,"title":250,"author":8,"body":251,"category":346,"categorySlug":347,"date":348,"description":111,"excerpt":349,"extension":234,"location":235,"meta":363,"navigation":237,"path":364,"published":237,"seo":365,"slug":366,"stem":367,"tags":368,"timeToRead":208,"__hash__":370},"posts\u002Fposts\u002FLogiciels\u002F2009-05-23-kmymoney-logiciel-de-compte.md","KMyMoney - Logiciel de compte",{"type":10,"value":252,"toc":343},[253,259,262,268,271,277,286,292,295,301,308,311,317,320,326,329],[13,254,255],{},[42,256],{"alt":257,"src":258},"Logo","\u002FLogiciels\u002Fkmymoney-logiciel-de-compte\u002Flogo.png",[13,260,261],{},"Voilà un bon logiciel sur lequel on peut compter (mouarf ! mouarf !\nmouarf !), KMyMoney est un éditeur de compte. Je l'utilise\nquotidiennement, et je décide donc d'en parler un peu, pour que d'autres\npersonnes puissent s'intéresser aussi à ce logiciel.",[13,263,264],{},[42,265],{"alt":266,"src":267},"Summary","\u002FLogiciels\u002Fkmymoney-logiciel-de-compte\u002FSummary.png",[13,269,270],{},"KMyMoney est un logiciel de gestion de compte pour particulier. Il vous\npermet de gérer plusieurs de vos comptes en banque, en vous permettant\nde saisir les dépenses et les recettes sur chacun de vos comptes.",[13,272,273],{},[42,274],{"alt":275,"src":276},"Registres","\u002FLogiciels\u002Fkmymoney-logiciel-de-compte\u002FRegistres.png",[13,278,279,280,285],{},"Vous pouvez également lui indiquer vos échéances (par exemple : forfait\ntéléphone, prêt immobilier",[103,281,282],{},[106,283,113],{"href":108,"ariaDescribedBy":284,"dataFootnoteRef":111,"id":112},[110],", mais aussi salaire, vos virements\ninternes ou externes, ...) qu'il s'occupera de mettre à jour dans le\nregistre automatiquement ou à votre demande.",[13,287,288],{},[42,289],{"alt":290,"src":291},"Echeancier","\u002FLogiciels\u002Fkmymoney-logiciel-de-compte\u002FEcheancier.png",[13,293,294],{},"Après une année d'utilisation, il vous permet également de sortir un\nrapport détaillé sur vos dépenses et vos recettes suivant les catégories\nsaisies pour vos opérations. Cette information peut vous être très utile\npour voir où se trouve le \"trou\" de votre porte monnaie et ainsi\nfaire une rustine. Il vous permet aussi de vous projeter vers l'avenir\net de faire votre budget pour l'année prochaine. KMyMoney vous offre\npour cela, la saisie de votre budget, ainsi que plusieurs rapports\nd'écart, vous permettant ainsi de retrouver facilement où vous avez\nfinalement dépensé plus que le budget prévu, et où vous avez dépensé\nmoins.",[13,296,297],{},[42,298],{"alt":299,"src":300},"Rapport","\u002FLogiciels\u002Fkmymoney-logiciel-de-compte\u002FRapport.png",[13,302,303,304,307],{},"En plus de vos comptes en banque ",[56,305,306],{},"normaux",", KMyMoney vous permet\négalement de gérer vos comptes titre, et les actions que vous y avez\nmises. Vous pouvez alors facilement suivre la chute vertigineuse de la\nbourse et votre portefeuille fondre littéralement, mais aussi la\nremontée (on espère), des actions d'ici quelques ... siècles.",[13,309,310],{},"Enfin pour les paranos, vos comptes peuvent être cryptés à l'aide de\nvotre clé GnuPG automatiquement par KMyMoney :)",[13,312,313],{},[42,314],{"alt":315,"src":316},"Cryptage","\u002FLogiciels\u002Fkmymoney-logiciel-de-compte\u002FCryptage.png",[13,318,319],{},"Après cette courte présentation, je vous souhaite bon compte ;)",[321,322,323],"blockquote",{},[13,324,325],{},"Pour une vie équilibrée, n'oubliez pas de profiter du soleil, au lieu\nde passer votre temps sur votre ordinateur",[13,327,328],{},"... en fonction des différents chiffres que vous allez lui entrer.",[183,330,332,335],{"className":331,"dataFootnotes":111},[186],[188,333,192],{"className":334,"id":110},[191],[194,336,337],{},[157,338,339,340],{"id":198},"Il s'occupera d'ailleurs de calculer la durée des échéances, ",[106,341,206],{"href":202,"ariaLabel":203,"className":342,"dataFootnoteBackref":111},[205],{"title":111,"searchDepth":208,"depth":208,"links":344},[345],{"id":110,"depth":208,"text":192},"Logiciels","logiciels","2009-05-23",{"type":10,"value":350},[351,355,357,361],[13,352,353],{},[42,354],{"alt":257,"src":258},[13,356,261],{},[13,358,359],{},[42,360],{"alt":266,"src":267},[13,362,270],{},{},"\u002Fpost\u002Fkmymoney-logiciel-de-compte",{"title":250,"description":111},"kmymoney-logiciel-de-compte","posts\u002FLogiciels\u002F2009-05-23-kmymoney-logiciel-de-compte",[369,244],"kde","GMoM34deHfpP44yg0dNX_5SNO5lCcgbkTT8_04fCe6c",{"id":372,"title":373,"author":8,"body":374,"category":346,"categorySlug":347,"date":429,"description":378,"excerpt":430,"extension":234,"location":235,"meta":448,"navigation":237,"path":449,"published":237,"seo":450,"slug":451,"stem":452,"tags":453,"timeToRead":208,"__hash__":455},"posts\u002Fposts\u002FLogiciels\u002F2009-04-11-kde4-devient-instable.md","KDE4 devient instable ...",{"type":10,"value":375,"toc":427},[376,379,382,397,404,407,421,424],[13,377,378],{},"Title: KDE4 devient instable ...\nTags: debian, kde, qt",[13,380,381],{},"Titre trolleur, cela ne veux pas dire que KDE 4 est moins stable\nqu'avant mais qu'il a passé une étape supplémentaire chez Debian.",[13,383,384,385,388,389,392,393,396],{},"Voilà quelques jours déjà que la distribution ",[22,386,387],{},"Gnu\u002FDebian"," intègre\n",[22,390,391],{},"KDE 4"," dans sa version instable. C'est une grande nouvelle car cela\nva permettre à toute les personnes se trouvant en instable et n'ayant\npas touchées à la branche expérimental de Debian de pouvoir tester ",[22,394,395],{},"KDE\n4",".",[13,398,399,400,403],{},"Malheureusement pour les ",[56,401,402],{},"traumatisé de KDE 4",", l'intégration de ce\ndernier remplace KDE 3.5 et ne viens pas se positionner en parallèle. Il\nme semble pourtant que lors du passage de KDE 2 à KDE 3, il était\npossible d'avoir les deux bureaux en même temps sur sa machine et de\nswitcher de l'un à l'autre sans difficulté. Cela signifie donc peut-être\naussi la perte d'utilisateur pour KDE sous Gnu\u002FDebian au profit d'un\nautre environnement de bureau.",[13,405,406],{},"Afin d'effectuer la migration en douceur, Gnu\u002FDebian propose un\nassistant de migration de KDE du nom de Kaboom. Cet assistant, démarrer\nlors de la première connexion de l'utilisateur et vous propose alors de\nsauvegarder votre ancien dossier de configuration KDE 3 et de migrer le\ndossier .kde vers la version 4.",[13,408,409,413,417],{},[42,410],{"alt":411,"src":412},"kaboom1","\u002FLogiciels\u002Fkde4-devient-instable\u002Fkaboom1_s.jpg",[42,414],{"alt":415,"src":416},"kaboom2","\u002FLogiciels\u002Fkde4-devient-instable\u002Fkaboom2_s.jpg",[42,418],{"alt":419,"src":420},"kaboom3","\u002FLogiciels\u002Fkde4-devient-instable\u002Fkaboom3_s.jpg",[13,422,423],{},"Je viens donc de passer à KDE 4 et m'émerveille des nouvelles\nfonctionnalités de KWin (cube, placement des fenêtres) que je n'avais\npas avant, car n'avait jamais installé Compiz ...",[13,425,426],{},"Bonne installation,",{"title":111,"searchDepth":208,"depth":208,"links":428},[],"2009-04-11",{"type":10,"value":431},[432,434,436,444],[13,433,378],{},[13,435,381],{},[13,437,384,438,388,440,392,442,396],{},[22,439,387],{},[22,441,391],{},[22,443,395],{},[13,445,399,446,403],{},[56,447,402],{},{},"\u002Fpost\u002Fkde4-devient-instable",{"title":373,"description":378},"kde4-devient-instable","posts\u002FLogiciels\u002F2009-04-11-kde4-devient-instable",[454,369,244],"debian","Oj3jqh3sY77Ym6LYJ2tDQUMs5alVjGgGLz0JxRhI7k8",{"id":457,"title":458,"author":8,"body":459,"category":217,"categorySlug":218,"date":914,"description":111,"excerpt":915,"extension":234,"location":235,"meta":931,"navigation":237,"path":932,"published":237,"seo":933,"slug":934,"stem":935,"tags":936,"timeToRead":246,"__hash__":937},"posts\u002Fposts\u002FXINX\u002F2009-03-06-xinx-0.8.0.0.md","XINX 0.8.0.0",{"type":10,"value":460,"toc":907},[461,467,472,480,483,491,494,497,501,512,519,522,527,533,551,555,561,564,567,571,576,584,799,809,813,816,824,828,832,844,847,851,854,862,865,897,903],[13,462,463],{},[42,464],{"alt":465,"src":466},"Editeur","\u002FXINX\u002Fxinx-0.8.0.0\u002Fediteur_de_texte.png",[13,468,469,470,396],{},"J'ai le plaisir de vous annoncer la sortie de la nouvelle version de\n",[22,471,217],{},[13,473,474,476,477,396],{},[22,475,217],{}," est un éditeur de projet web basé sur les technologies XSL,\nHTML, CSS, JavaScript. Il possède un mode projet permettant de dériver\nles projets à la manière des consultants GCE de l'entreprise ",[56,478,479],{},"Generix\nGroup",[13,481,482],{},"Cette dernière version a mis beaucoup de temps pour sortir et est moins\ncomplète que celle que je souhaitais faire à l'origine. Cela viens de\nplusieurs raison :",[154,484,485,488],{},[157,486,487],{},"de gros changement interne",[157,489,490],{},"moins de temps le soir et le week-end.",[13,492,493],{},"La prochaine version 0.8.1 contiendra les développements que je n'ai pu\nmettre dans cette version. N'hésitez pas à faire un retour sur les\nproblèmes que vous rencontrez pour que ces derniers soit également\ncorriger pour la prochaine version.",[13,495,496],{},"Nous allons détailler ci-dessous les différentes amélioration incluse\ndans cette version.",[35,498,500],{"id":499},"qcodeedit-le-nouvel-éditeur","QCodeEdit - Le nouvel éditeur",[13,502,503,504,507,508,511],{},"L'éditeur de texte de cette version a complètement été remplacé. On est\npassé de QTextEdit (",[56,505,506],{},"éditeur de texte de Qt Software",") à QCodeEdit\n(",[56,509,510],{},"Développé par Luc Bruant aka fullmetalcoder","). Heureusement que les\nAPIs de ces deux éditeurs sont très similaire ce qui a permis\nd'effectuer les changements assez rapidement (quelques mois au lieu de\nquelques années ;) ).",[13,513,514,515,518],{},"Je tiens également à remercier ",[56,516,517],{},"fullmetalcoder"," de sa réactivité sur le\ndéveloppement de QCodeEdit.",[13,520,521],{},"Les nouveautés qu'apportent ce nouvel éditeur par rapport à QTextEdit\nsont :",[154,523,524],{},[157,525,526],{},"le folding",[13,528,529],{},[42,530],{"alt":531,"src":532},"Mark","\u002FXINX\u002Fxinx-0.8.0.0\u002Fmarqueur.png",[154,534,535,538,545,548],{},[157,536,537],{},"les couleurs de fond sur les marque pages et les erreurs (pour une\nplus grande clarté).",[157,539,540,541,544],{},"un chargement plus rapide des fichiers (exemple :\n",[179,542,543],{},"configuration.xml",")",[157,546,547],{},"pourvoir faire des sélections verticales (à l'aide de Ctrl+Shift)\ncomme le font certain éditeurs",[157,549,550],{},"afficher les correspondances de parenthèses",[35,552,554],{"id":553},"test-du-xpath","Test du XPATH",[13,556,557],{},[42,558],{"alt":559,"src":560},"X-Quey","\u002FXINX\u002Fxinx-0.8.0.0\u002Fxpath.png",[13,562,563],{},"Cette boite de dialogue permet d'exécuter un X-PATH (ou une requête\nXQuery) sur un fichier de présentation. Cela permet de tester rapidement\nles X-PATH compliqué avant de lancer la page sous le navigateur.",[13,565,566],{},"Il est possible de saisir des X-PATH relativement à un X-PATH\nsélectionné dans le flux de présentation ou de manière absolu.",[35,568,570],{"id":569},"script-automatique","Script automatique",[13,572,573,575],{},[22,574,217],{}," permet également d'appeler un script lors de la sauvegarde d'un\nfichier. Pour cela un nouvel objet permettant de modifier le contenue de\nl'éditeur plus facilement a été créé.Comme exemple à la sauvegarde de\nscript ont été mis à jours :",[154,577,578,581],{},[157,579,580],{},"La mise à jours des key('url-param','') par des X-PATH",[157,582,583],{},"La mise à jours du nom du fichier dans les feuilles de styles.",[585,586,590],"pre",{"className":587,"code":588,"language":589,"meta":111,"style":111},"language-javascript shiki shiki-themes one-dark-pro","obj.beforeSave = function() {\n  this.run();\n};\n\nobj.run = function() {\n  var search = new DocumentSearch(textEdit);\n\n  search.options.regExp = true;\n  search.searchText = \"key\\\\('url-param', '(.*)'\\\\)\";\n  search.replaceText =\n    \"\u002Flayout_data\u002Fapplication_data\u002Ftemporaire\u002Fparam[@name='\\\\1']\";\n\n  while (search.next()) {}\n};\n","javascript",[179,591,592,619,632,637,642,657,684,689,714,743,756,769,774,794],{"__ignoreMap":111},[593,594,597,601,604,608,612,616],"span",{"class":595,"line":596},"line",1,[593,598,600],{"class":599},"sU0A5","obj",[593,602,396],{"class":603},"sn6KH",[593,605,607],{"class":606},"sVbv2","beforeSave",[593,609,611],{"class":610},"sjrmR"," =",[593,613,615],{"class":614},"seHd6"," function",[593,617,618],{"class":603},"() {\n",[593,620,621,624,626,629],{"class":595,"line":208},[593,622,623],{"class":599},"  this",[593,625,396],{"class":603},[593,627,628],{"class":606},"run",[593,630,631],{"class":603},"();\n",[593,633,634],{"class":595,"line":211},[593,635,636],{"class":603},"};\n",[593,638,639],{"class":595,"line":246},[593,640,641],{"emptyLinePlaceholder":237},"\n",[593,643,645,647,649,651,653,655],{"class":595,"line":644},5,[593,646,600],{"class":599},[593,648,396],{"class":603},[593,650,628],{"class":606},[593,652,611],{"class":610},[593,654,615],{"class":614},[593,656,618],{"class":603},[593,658,660,663,667,669,672,675,678,681],{"class":595,"line":659},6,[593,661,662],{"class":614},"  var",[593,664,666],{"class":665},"sVyAn"," search",[593,668,611],{"class":610},[593,670,671],{"class":614}," new",[593,673,674],{"class":606}," DocumentSearch",[593,676,677],{"class":603},"(",[593,679,680],{"class":665},"textEdit",[593,682,683],{"class":603},");\n",[593,685,687],{"class":595,"line":686},7,[593,688,641],{"emptyLinePlaceholder":237},[593,690,692,695,697,700,702,705,707,711],{"class":595,"line":691},8,[593,693,694],{"class":599},"  search",[593,696,396],{"class":603},[593,698,699],{"class":599},"options",[593,701,396],{"class":603},[593,703,704],{"class":665},"regExp",[593,706,611],{"class":610},[593,708,710],{"class":709},"sVC51"," true",[593,712,713],{"class":603},";\n",[593,715,717,719,721,724,726,730,733,736,738,741],{"class":595,"line":716},9,[593,718,694],{"class":599},[593,720,396],{"class":603},[593,722,723],{"class":665},"searchText",[593,725,611],{"class":610},[593,727,729],{"class":728},"subq3"," \"key",[593,731,732],{"class":610},"\\\\",[593,734,735],{"class":728},"('url-param', '(.*)'",[593,737,732],{"class":610},[593,739,740],{"class":728},")\"",[593,742,713],{"class":603},[593,744,746,748,750,753],{"class":595,"line":745},10,[593,747,694],{"class":599},[593,749,396],{"class":603},[593,751,752],{"class":665},"replaceText",[593,754,755],{"class":610}," =\n",[593,757,759,762,764,767],{"class":595,"line":758},11,[593,760,761],{"class":728},"    \"\u002Flayout_data\u002Fapplication_data\u002Ftemporaire\u002Fparam[@name='",[593,763,732],{"class":610},[593,765,766],{"class":728},"1']\"",[593,768,713],{"class":603},[593,770,772],{"class":595,"line":771},12,[593,773,641],{"emptyLinePlaceholder":237},[593,775,777,780,783,786,788,791],{"class":595,"line":776},13,[593,778,779],{"class":614},"  while",[593,781,782],{"class":603}," (",[593,784,785],{"class":599},"search",[593,787,396],{"class":603},[593,789,790],{"class":606},"next",[593,792,793],{"class":603},"()) {}\n",[593,795,797],{"class":595,"line":796},14,[593,798,636],{"class":603},[13,800,801,802,804,805,808],{},"La nouveauté se trouve dans l'ajout de quatre nouvelle méthodes. La\nméthode utilisé ici est ",[179,803,607],{}," et permet de faire des\nmodifications au texte avant sauvegarde. Tout comme ",[179,806,807],{},"afterSave"," permet\nd'effectuer des modifications au texte après sauvegarde. Nous avons\négalement deux méthodes beforeLoad et afterLoad pour les opérations à\nfaire lors de la lecture.",[35,810,812],{"id":811},"autres-nouveautés","Autres nouveautés",[13,814,815],{},"Bien sur cet version apporte aussi d'autres nouveautés comme :",[154,817,818,821],{},[157,819,820],{},"la fermeture automatique de balise",[157,822,823],{},"des nouvelles options, ...",[35,825,827],{"id":826},"installation","Installation",[149,829,831],{"id":830},"sous-mswindows","Sous Ms\u002FWindows",[13,833,834,835,837,838,843],{},"Pour installer la dernière version de ",[22,836,217],{}," vous pouvez télécharger\nle ",[106,839,842],{"href":840,"rel":841},"http:\u002F\u002Fxinx.shadoware.org\u002Fdownloads\u002F40",[163],"programme d'installation"," et le lancer. Il remplacera\nautomatiquement l'ancienne version.",[13,845,846],{},"Si vous avez des fichiers de données modifiés (template, script, ...)\npensez à les sauvegarder.",[149,848,850],{"id":849},"sous-gnulinux","Sous Gnu\u002FLinux",[13,852,853],{},"Sous Debian, vous pouvez ajouter le dépôt dans le fichier\n\u002Fetc\u002Fapt\u002Fsources.list. Ainsi vous serez automatiquement prévenu des\nmises à jours éventuelle.",[585,855,860],{"className":856,"code":858,"language":859},[857],"language-text","deb http:\u002F\u002Fapt.shadoware.org\u002F sid main\n","text",[179,861,858],{"__ignoreMap":111},[13,863,864],{},"puis dans une console :",[585,866,870],{"className":867,"code":868,"language":869,"meta":111,"style":111},"language-bash shiki shiki-themes one-dark-pro","sudo apt-cache search xinx\nsudo aptitude install xinx\n","bash",[179,871,872,885],{"__ignoreMap":111},[593,873,874,877,880,882],{"class":595,"line":596},[593,875,876],{"class":606},"sudo",[593,878,879],{"class":728}," apt-cache",[593,881,666],{"class":728},[593,883,884],{"class":728}," xinx\n",[593,886,887,889,892,895],{"class":595,"line":208},[593,888,876],{"class":606},[593,890,891],{"class":728}," aptitude",[593,893,894],{"class":728}," install",[593,896,884],{"class":728},[13,898,899,900,902],{},"Pour les autres distributions ou pour les machines MacOS vous pouvez\ncompiler ",[22,901,217],{}," à partir des sources.",[904,905,906],"style",{},"html pre.shiki code .sU0A5, html code.shiki .sU0A5{--shiki-default:#E5C07B}html pre.shiki code .sn6KH, html code.shiki .sn6KH{--shiki-default:#ABB2BF}html pre.shiki code .sVbv2, html code.shiki .sVbv2{--shiki-default:#61AFEF}html pre.shiki code .sjrmR, html code.shiki .sjrmR{--shiki-default:#56B6C2}html pre.shiki code .seHd6, html code.shiki .seHd6{--shiki-default:#C678DD}html pre.shiki code .sVyAn, html code.shiki .sVyAn{--shiki-default:#E06C75}html pre.shiki code .sVC51, html code.shiki .sVC51{--shiki-default:#D19A66}html pre.shiki code .subq3, html code.shiki .subq3{--shiki-default:#98C379}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}",{"title":111,"searchDepth":208,"depth":208,"links":908},[909,910,911,912,913],{"id":499,"depth":211,"text":500},{"id":553,"depth":211,"text":554},{"id":569,"depth":211,"text":570},{"id":811,"depth":211,"text":812},{"id":826,"depth":211,"text":827},"2009-03-06",{"type":10,"value":916},[917,921,925],[13,918,919],{},[42,920],{"alt":465,"src":466},[13,922,469,923,396],{},[22,924,217],{},[13,926,927,476,929,396],{},[22,928,217],{},[56,930,479],{},{},"\u002Fpost\u002Fxinx-0.8.0.0",{"title":458,"description":111},"xinx-0.8.0.0","posts\u002FXINX\u002F2009-03-06-xinx-0.8.0.0",[454,218,243,244,245],"2LVP73RxAuNHiNwoDLW7n9zx61WC1hKRo8CPZUCY5rk",{"id":939,"title":940,"author":8,"body":941,"category":346,"categorySlug":347,"date":1140,"description":1141,"excerpt":1142,"extension":234,"location":235,"meta":1192,"navigation":237,"path":1193,"published":237,"seo":1194,"slug":1195,"stem":1196,"tags":1197,"timeToRead":208,"__hash__":1198},"posts\u002Fposts\u002FLogiciels\u002F2009-03-03-qt-4.5-est-sortie.md","Qt 4.5 est sortie",{"type":10,"value":942,"toc":1137},[943,950,955,963,1009,1014,1039,1050,1055,1087,1101,1107],[13,944,945,946,949],{},"Voilà quelques heures que la dernière version de ",[56,947,948],{},"Qt"," est sortie. Cette\nversion, numéroté 4.5, est essentiellement orienté performance.",[13,951,952],{},[42,953],{"alt":257,"src":954},"\u002FLogiciels\u002Fqt-4.5-est-sortie\u002Flogo_nokia_qt.png",[13,956,957,958],{},"Elle contient entre autre",[103,959,960],{},[106,961,113],{"href":108,"ariaDescribedBy":962,"dataFootnoteRef":111,"id":112},[110],[154,964,965,980,986,992,995],{},[157,966,967,968,971,972,975,976,979],{},"Une mise à jour de ",[56,969,970],{},"QtWebKit"," vers un version de ",[56,973,974],{},"WebKit"," plus\nrécente (avec un nouveau moteur JavaScript plus rapide, la\npossibilité d'ajouter des greffons comme ",[56,977,978],{},"Flash","...). Il est\négalement possible d'utiliser les balises d'HTML 5.",[157,981,982,983,396],{},"Amélioration des performances sur le moteur de rendu ainsi que sur\nle rendu du texte. Une librairie permettant de faire des tests de\nperformance a été incluse : ",[56,984,985],{},"QtBenchLib",[157,987,988,989],{},"Le support de ",[56,990,991],{},"Mac OS X Cocoa",[157,993,994],{},"La possibilité de faire des transformations XSLT",[157,996,997,998,1001],{},"Un débuggeur ",[56,999,1000],{},"QtScript",[103,1002,1003],{},[106,1004,1008],{"href":1005,"ariaDescribedBy":1006,"dataFootnoteRef":111,"id":1007},"#user-content-fn-2",[110],"user-content-fnref-2","2",[13,1010,1011],{},[42,1012],{"alt":948,"src":1013},"\u002FLogiciels\u002Fqt-4.5-est-sortie\u002Fqtscript-debugger-small.png",[154,1015,1016,1023,1026,1036],{},[157,1017,1018,1019,1022],{},"Le support du format ",[56,1020,1021],{},"OpenDocument"," (ODF version 1.0, ne supportant\nque le texte et les images)",[157,1024,1025],{},"Amélioration du support des proxys",[157,1027,1028,1029,1032,1033],{},"Amélioration de ",[56,1030,1031],{},"QtDesigner",", ",[56,1034,1035],{},"QtLinguist",[157,1037,1038],{},"Une meilleur intégration au thème Gtk",[13,1040,1041,1042,1045,1046,1049],{},"Cette nouvelle version apporte également une grande nouveauté\npuisqu'elle est ",[56,1043,1044],{},"LGPL",". Il est donc désormais possible de faire une\napplication propriétaire à l'aide de cette librairie sans prendre une\nlicence chez ",[56,1047,1048],{},"Qt Software",". Par contre si une entreprise souhaite un\nsupport pour la librairie, il faudra tout de même acheter une licence.",[13,1051,1052],{},[42,1053],{"alt":152,"src":1054},"\u002FLogiciels\u002Fqt-4.5-est-sortie\u002FScreenShot166.png",[13,1056,1057,1058,1060,1061,1064,1065,1067,1068,1070,1071,1074,1075,1077,1078,1032,1080,1082,1083,1086],{},"La sortie de ",[56,1059,948],{}," 4.5 est accompagné de ",[56,1062,1063],{},"Qt Creator"," 1.0. ",[56,1066,1063],{},"\nest l'outil dernier né de chez ",[56,1069,1048],{}," (branche de ",[56,1072,1073],{},"Nokia",") et est\nun IDE de développement de programme ",[56,1076,948],{},". Un paquet est proposé\ncontenant ",[56,1079,948],{},[56,1081,1063],{},", ainsi que ",[56,1084,1085],{},"MinGW"," et permettant d'avoir\nune installation tout en un d'un poste de développement.",[13,1088,1089,1090,1092,1093,1095,1096,396],{},"Vous pouvez donc aller télécharger la dernière version de ",[56,1091,948],{},", ainsi\nque de ",[56,1094,1063],{}," (attention les serveurs sont surchargés) à cette\n",[106,1097,1100],{"href":1098,"rel":1099},"http:\u002F\u002Fwww.qtsoftware.com\u002Fdownloads",[163],"adresse",[13,1102,1103,1104,1106],{},"Je remercie toute l'équipe de nouvellement ",[56,1105,1048],{}," de cette\nnouvelle version.",[183,1108,1110,1113],{"className":1109,"dataFootnotes":111},[186],[188,1111,192],{"className":1112,"id":110},[191],[194,1114,1115,1126],{},[157,1116,1117,1118,1122,1123],{"id":198},"pour plus de détail voir ",[106,1119,1120],{"href":1120,"rel":1121},"http:\u002F\u002Fdoc.trolltech.com\u002F4.5\u002Fqt4-5-intro.html",[163]," ",[106,1124,206],{"href":202,"ariaLabel":203,"className":1125,"dataFootnoteBackref":111},[205],[157,1127,1129,1130,1122,1132],{"id":1128},"user-content-fn-2","L'image du debugger viens du site ",[56,1131,1048],{},[106,1133,206],{"href":1134,"ariaLabel":1135,"className":1136,"dataFootnoteBackref":111},"#user-content-fnref-2","Back to reference 2",[205],{"title":111,"searchDepth":208,"depth":208,"links":1138},[1139],{"id":110,"depth":208,"text":192},"2009-03-03","Voilà quelques heures que la dernière version de Qt est sortie. Cette\nversion, numéroté 4.5, est essentiellement orienté performance.",{"type":10,"value":1143},[1144,1148,1152,1159,1188],[13,1145,945,1146,949],{},[56,1147,948],{},[13,1149,1150],{},[42,1151],{"alt":257,"src":954},[13,1153,957,1154],{},[103,1155,1156],{},[106,1157,113],{"href":108,"ariaDescribedBy":1158,"dataFootnoteRef":111,"id":112},[110],[154,1160,1161,1169,1173,1177,1179],{},[157,1162,967,1163,971,1165,975,1167,979],{},[56,1164,970],{},[56,1166,974],{},[56,1168,978],{},[157,1170,982,1171,396],{},[56,1172,985],{},[157,1174,988,1175],{},[56,1176,991],{},[157,1178,994],{},[157,1180,997,1181,1183],{},[56,1182,1000],{},[103,1184,1185],{},[106,1186,1008],{"href":1005,"ariaDescribedBy":1187,"dataFootnoteRef":111,"id":1007},[110],[13,1189,1190],{},[42,1191],{"alt":948,"src":1013},{},"\u002Fpost\u002Fqt-4.5-est-sortie",{"title":940,"description":1141},"qt-4.5-est-sortie","posts\u002FLogiciels\u002F2009-03-03-qt-4.5-est-sortie",[244],"gWjLlhm92HnoKh4gr6rJd2ET4T4kKlZIkeq4_SEDikE",{"id":1200,"title":1201,"author":8,"body":1202,"category":346,"categorySlug":347,"date":1225,"description":111,"excerpt":1226,"extension":234,"location":235,"meta":1227,"navigation":237,"path":1228,"published":237,"seo":1229,"slug":1230,"stem":1231,"tags":1232,"timeToRead":596,"__hash__":1233},"posts\u002Fposts\u002FLogiciels\u002F2009-03-02-le-net-en-france.md","Le net en france ...",{"type":10,"value":1203,"toc":1223},[1204,1209,1212],[321,1205,1206],{},[13,1207,1208],{},"Devant le ridicule d'un gouvernement qui s'entête à vouloir déconnecter\ndu Net des familles entières sans preuves valables ni procès, la\nQuadrature appelle les citoyens épris de liberté à procéder au\n« black-out » de leurs sites, blogs, profils, avatars, etc. Comme en\nNouvelle-Zélande, seul pays avec la France où la « riposte graduée »\ndevait être imposée par la loi, pour finalement être repoussée : pour\nprotester contre cette loi imbécile et sa « liste blanche » de sites\nautorisés, le Net français doit agir et se draper de noir.",[13,1210,1211],{},"La quadrature du net, Paris, le 25 février",[1213,1214,1215],"center",{},[106,1216,1219],{"href":1217,"title":1218},"http:\u002F\u002Fwww.laquadrature.net\u002FHADOPI","HADOPI - Le Net en France : black-out",[42,1220],{"src":1221,"border":1222,"alt":1218},"http:\u002F\u002Fmedia.laquadrature.net\u002FQuadrature_black-out_HADOPI_336x280px.gif",0,{"title":111,"searchDepth":208,"depth":208,"links":1224},[],"2009-03-02",null,{},"\u002Fpost\u002Fle-net-en-france",{"title":1201,"description":111},"le-net-en-france","posts\u002FLogiciels\u002F2009-03-02-le-net-en-france",[],"ycX5DqVFF5BYDBrgIjbzqu3gxFtcs6IULHX0C0scofw",{"id":1235,"title":1236,"author":8,"body":1237,"category":346,"categorySlug":347,"date":1339,"description":111,"excerpt":1340,"extension":234,"location":235,"meta":1366,"navigation":237,"path":1367,"published":237,"seo":1368,"slug":1369,"stem":1370,"tags":1371,"timeToRead":211,"__hash__":1372},"posts\u002Fposts\u002FLogiciels\u002F2009-02-20-outil-de-securisation-non-interoperable.md","Outil de sécurisation non intéropérable",{"type":10,"value":1238,"toc":1336},[1239,1245,1259,1266,1271,1276,1283,1290,1295,1298,1307,1312,1315,1322],[13,1240,1241],{},[42,1242],{"alt":1243,"src":1244},"Piracy","\u002FLogiciels\u002Foutil-de-securisation-non-interoperable\u002FDooFi_Skull.png",[13,1246,1247,1248,1251,1252,1255,1256,396],{},"Alors que l'UMP est accusé de contrefaçon du groupe\n",[593,1249,1250],{},"MGMT",", et est donc accusé du terme de ",[56,1253,1254],{},"piratage"," selon le mot\nutilisé à mauvais escient, nous avons des nouvelles sur le ",[593,1257,1258],{},"logiciel\nespion du gouvernement",[13,1260,1261,1262,1265],{},"Ce dernier sera non seulement payant mais également non interopérable.\nPour ",[56,1263,1264],{},"le rapporteur Riester",", l'interopérabilité est un frein au choix\net n'est pas nécessaire :",[321,1267,1268],{},[13,1269,1270],{},"Je n’y suis pas favorable, a-t-il expliqué avant de poursuivre il\nfaut laisser au consommateur sa totale liberté de choix en fonction de\nson système d’exploitation. L’interopérabilité n’est pas nécessaire pour\nles consommateurs et elle est trop contraignante pour les éditeurs de\nlogiciels",[321,1272,1273],{},[13,1274,1275],{},"les moyens de sécurisation mis en place ne sauraient être gratuits, à\nl’image des logiciels de contrôle parental, mis à la disposition des\nconsommateurs à titre payant, même si leur prix est modique",[13,1277,1278,1279,1282],{},"En plus de l'abonnement internet et du modem ADSL de l'opérateur, il\nfaudra également donc s'acheter ce logiciel espion, ainsi que le système\nd'exploitation ",[56,1280,1281],{},"Redmondien"," qui va avec. En effet, aucun éditeur de\nlogiciel ne trouvera un intérêt (monétaire) à développer un tel logiciel\nespion (qui sera, de surcroit, à source fermé) pour un système\nd'exploitation libre.Comment donc pourrions-nous nous défendre, nous\nutilisateurs du logiciel libre, si vis-à-vis de la loi, nous ne pourrons\nnous justifier d'un téléchargement illégal même s'il n'en est pas le\ncas.",[13,1284,1285,1286,1289],{},"Alors que l'on parle de vente lié, ",[56,1287,1288],{},"M. Henrard"," répond",[321,1291,1292],{},[13,1293,1294],{},"On crée une incitation et chacun se détermine en fonction de ses\nobligations. Il y a des aléas dont on veut se protéger et si on est un\ntout petit peu rationnel, il est évident qu’on va demander à son FAI\nl’utilisation d’un tel dispositif.",[13,1296,1297],{},"et donc payer ...",[13,1299,1300,1301,1306],{},"Le président de l*'APRIL*",[103,1302,1303],{},[106,1304,113],{"href":108,"ariaDescribedBy":1305,"dataFootnoteRef":111,"id":112},[110]," s'insurge qu'",[321,1308,1309],{},[13,1310,1311],{},"il reste encore à l'Assemblée nationale des députés qui sont opposés à\nl'interopérabilité, opposés à la libre concurrence, opposés au libre-choix\ndes utilisateurs, et opposés au logiciel libre",[13,1313,1314],{},"Quand au logiciel en lui-même, personne ne connait son fonctionnement :-\nQu'enverra-t-il comme donnée ?- A qui enverra-t-il les données (au FAI ?\nau gens plein de fric (major) ? au marketing ? au gouvernement ? à tout\nces gens ?)- Devras-t-il être sur chaque ordinateur (avec une licence\npar ordinateur à payer) ? Sur le modem ADSL ? Sur un seul des\nordinateurs (et il nous sera alors interdis d'avoir plus d'un ordinateur\npar foyer) ?",[13,1316,1317,1318,1321],{},"La France apparaitra alors surement bientôt (pour 2009) dans les pays\n",[593,1319,1320],{},"ennemis d'Internet",". Vive la république et vive la France.",[183,1323,1325,1328],{"className":1324,"dataFootnotes":111},[186],[188,1326,192],{"className":1327,"id":110},[191],[194,1329,1330],{},[157,1331,1332,1333],{"id":198},"Benoît Sibaud, président de l*'APRIL* ",[106,1334,206],{"href":202,"ariaLabel":203,"className":1335,"dataFootnoteBackref":111},[205],{"title":111,"searchDepth":208,"depth":208,"links":1337},[1338],{"id":110,"depth":208,"text":192},"2009-02-20",{"type":10,"value":1341},[1342,1346,1354,1358,1362],[13,1343,1344],{},[42,1345],{"alt":1243,"src":1244},[13,1347,1247,1348,1251,1350,1255,1352,396],{},[593,1349,1250],{},[56,1351,1254],{},[593,1353,1258],{},[13,1355,1261,1356,1265],{},[56,1357,1264],{},[321,1359,1360],{},[13,1361,1270],{},[321,1363,1364],{},[13,1365,1275],{},{},"\u002Fpost\u002Foutil-de-securisation-non-interoperable",{"title":1236,"description":111},"outil-de-securisation-non-interoperable","posts\u002FLogiciels\u002F2009-02-20-outil-de-securisation-non-interoperable",[],"M5zgP1THqf4OdrqtbfTEfuNJwbh_q3bfCRf6ItywFSk",{"id":1374,"title":1375,"author":8,"body":1376,"category":217,"categorySlug":218,"date":1705,"description":1380,"excerpt":1706,"extension":234,"location":235,"meta":1722,"navigation":237,"path":1723,"published":237,"seo":1724,"slug":1725,"stem":1726,"tags":1727,"timeToRead":246,"__hash__":1728},"posts\u002Fposts\u002FXINX\u002F2009-02-18-xinx-editeur-de-feuille-de-style.md","XINX - Editeur de feuille de style",{"type":10,"value":1377,"toc":1700},[1378,1381,1390,1393,1399,1403,1417,1444,1469,1474,1500,1540,1544,1549,1554,1612,1634],[13,1379,1380],{},"Bonjours à tous,",[13,1382,1383,1384,1386,1387,1389],{},"Ce billet, parle de ",[22,1385,217],{},", un logiciel libre que j'ai développé et\nque je continue à développer sur mon temps libre. Le but de se billet\nest de présenter ",[22,1388,217],{}," et d'être le début d'une longue série de\nbillet parlant de son développement.",[13,1391,1392],{},"En effet, même si le programme est propre à une utilisation particulière\npour un cercle de personne restreint, les méthodes, classes, et idées\nutilisées dans ce programme peuvent intéresser d'autres personnes.",[13,1394,1395],{},[42,1396],{"alt":1397,"src":1398},"Nouvelle","\u002FXINX\u002Fxinx-editeur-de-feuille-de-style\u002FScreenShot151.png",[35,1400,1402],{"id":1401},"présentation","Présentation",[13,1404,1405,1407,1408,1411,1412,396],{},[22,1406,217],{}," est un éditeur de feuille de style sur lequel je travail depuis\ndébut 2006. En faite j'avais commencé un autre éditeur à l'aide de\n",[22,1409,1410],{},"Borland\u002FDelphi 7"," mais il a été rapidement arrêté pour prendre une\nnouvelle direction dans un nouveau langage avec un nouveau\ndépart",[103,1413,1414],{},[106,1415,113],{"href":108,"ariaDescribedBy":1416,"dataFootnoteRef":111,"id":112},[110],[13,1418,1419,1420,1423,1424,1431,1436,1437,1439,1440,1443],{},"Cet éditeur de feuille de style à la particularité de pouvoir être\nutilisé dans le cadre de mon travail : sur l'application ",[56,1421,1422],{},"eGx"," (de la\nsociété ",[22,1425,1426],{},[106,1427,1430],{"href":1428,"rel":1429},"http:\u002F\u002Fwww.fr.generixgroup.com",[163],"Générix",[103,1432,1433],{},[106,1434,1008],{"href":1005,"ariaDescribedBy":1435,"dataFootnoteRef":111,"id":1007},[110],"). ",[22,1438,217],{}," permet non seulement\nl'édition de feuille de style (XSL), en proposant une ",[56,1441,1442],{},"complétion","\nintuitive, mais propose également un mode projet, dans lequel il est\npossible de dérivé une feuille de style plutôt que de la remplacer (de\nfaçon spécifique à notre méthode de travail en projet chez le client).",[13,1445,1446,1448,1449,1457,1458,1461,1462,1464,1465,1468],{},[22,1447,217],{}," est un acronyme récursive",[103,1450,1451],{},[106,1452,1456],{"href":1453,"ariaDescribedBy":1454,"dataFootnoteRef":111,"id":1455},"#user-content-fn-3",[110],"user-content-fnref-3","3"," qui signifie ",[56,1459,1460],{},"XINX Is Not\nXDME",". Ce nom a été choisis car ",[22,1463,217],{}," est le complément idéal à\n",[22,1466,1467],{},"XDME"," (l'éditeur de fichier de configuration d*'eGx*).",[13,1470,1471],{},[42,1472],{"alt":257,"src":1473},"\u002FXINX\u002Fxinx-editeur-de-feuille-de-style\u002Flogo_nokia_qt.png",[13,1475,1476,1477,1480,1481,1032,1484,1486,1487,1490,1491,1493,1494,1497,1499],{},"Au niveau du choix du langage, a contrario des autres applications\n",[22,1478,1479],{},"Generix"," écritent en ",[56,1482,1483],{},"JAVA",[22,1485,217],{}," a été programmé en ",[56,1488,1489],{},"C++",". Le\nframework ",[56,1492,948],{}," de la société ",[30,1495,1496],{},"Trolltech",[22,1498,1073],{}," a été\nchoisis pour simplifier la programmation. Pourquoi ce choix de langage :",[154,1501,1502,1510,1523],{},[157,1503,1504,1506,1507,1509],{},[22,1505,217],{}," est une application écrite sur mon temps libre, j'ai donc\nchoisis un langage que je souhaité apprendre. En faite la raison de\nl'existence de ",[22,1508,217],{},", et la volonté d'apprendre à utiliser ce\nframework.",[157,1511,1512,1513,1515,1516,1519,1520,396],{},"Le framework ",[56,1514,948],{}," est utilisé par l'environnement de bureau ",[22,1517,1518],{},"KDE",".\nCet environnement de bureau est celui que j'utilise tous les jours,\npendant mon temps libre (chez moi), sous ",[22,1521,1522],{},"Gnu\u002FLinux",[157,1524,1525,1526,1529,1530,544,1532,396],{},"La version 4 de ce framework est utilisable sous ",[22,1527,1528],{},"MS\u002FWindows",",\nsans payer de licence, dans le cadre de l'écriture d'un logiciel\nlibre (au bureau tout nos poste sont sous ",[22,1531,1528],{},[103,1533,1534],{},[106,1535,1539],{"href":1536,"ariaDescribedBy":1537,"dataFootnoteRef":111,"id":1538},"#user-content-fn-4",[110],"user-content-fnref-4","4",[35,1541,1543],{"id":1542},"architecture","Architecture",[13,1545,1546],{},[42,1547],{"alt":1543,"src":1548},"\u002FXINX\u002Fxinx-editeur-de-feuille-de-style\u002FarchiXINX.png",[13,1550,1551,1553],{},[22,1552,217],{}," est décomposé en plusieurs parties :",[154,1555,1556,1559,1562,1582,1585,1591,1607],{},[157,1557,1558],{},"la librairie de composant (contenant un gestionnaire de plugin en\nQt, un combobox pour choisir une couleur, une liste de valeur avec\nles boutons pour ajouter ou supprimer des éléments, une barre\nd'édition pour faciliter l'édition de dossier)",[157,1560,1561],{},"la librairie principale (externalisant ce qui peut être nécessaire\naux plugins).",[157,1563,1564,1565,1567,1568],{},"une série de plugin permettant, dans ",[22,1566,217],{}," de",[154,1569,1570,1573,1576,1579],{},[157,1571,1572],{},"gérer CVS",[157,1574,1575],{},"gérer SubVersion",[157,1577,1578],{},"gérer les extentions XSL, JS, XML, HTML",[157,1580,1581],{},"gérer les WebServices",[157,1583,1584],{},"l'application elle-même",[157,1586,1587,1588,1590],{},"une application de migration de projet (pour migrer les fichiers\nprojets ",[22,1589,217],{}," quand ces derniers changent)",[157,1592,1593,1594,1599,544],{},"une librairie gérant l'éditeur de code (l'éditeur utilisé pour la\nprochaine version est ",[106,1595,1598],{"href":1596,"rel":1597},"http:\u002F\u002Fqcodeedit.edyuk.org\u002F",[163],"QCodeEdit",[103,1600,1601],{},[106,1602,1606],{"href":1603,"ariaDescribedBy":1604,"dataFootnoteRef":111,"id":1605},"#user-content-fn-5",[110],"user-content-fnref-5","5",[157,1608,1609,1610],{},"les librairies du framework ",[56,1611,948],{},[13,1613,1614,1615,1620,1621,1627,1628,1633],{},"Vous pouvez une documentation sur l'écriture de ",[106,1616,1619],{"href":1617,"rel":1618},"http:\u002F\u002Fxinx.shadoware.org\u002Fwiki\u002FXinxPlugins",[163],"plugins"," sur le site\nde ",[22,1622,1623],{},[106,1624,217],{"href":1625,"rel":1626},"http:\u002F\u002Fxinx.shadoware.org",[163]," ainsi qu'une documentation au format ",[106,1629,1632],{"href":1630,"rel":1631},"http:\u002F\u002Fxinx.shadoware.org\u002Fdoxygen\u002Fmain.html",[163],"Doxygen"," des\nlibrairies.",[183,1635,1637,1640],{"className":1636,"dataFootnotes":111},[186],[188,1638,192],{"className":1639,"id":110},[191],[194,1641,1642,1650,1661,1677,1691],{},[157,1643,1644,1646,1647],{"id":198},[22,1645,1410],{}," étant limité à la plateforme de Microsoft, et l'application ayant pris dés le début une mauvaise direction (orienté fichier de configuration plutôt que feuille de style) ",[106,1648,206],{"href":202,"ariaLabel":203,"className":1649,"dataFootnoteBackref":111},[205],[157,1651,1652,1654,1655,1122,1658],{"id":1128},[22,1653,1479],{}," est un éditeur de logiciel de gestion d'entreprise, dit ",[56,1656,1657],{},"ERP",[106,1659,206],{"href":1134,"ariaLabel":1135,"className":1660,"dataFootnoteBackref":111},[205],[157,1662,1664,1665,1668,1669,1122,1672],{"id":1663},"user-content-fn-3","Un acronyme qui contient l'acronyme même, comme ",[22,1666,1667],{},"Gnu"," pour ",[56,1670,1671],{},"Gnu Is not Unix",[106,1673,206],{"href":1674,"ariaLabel":1675,"className":1676,"dataFootnoteBackref":111},"#user-content-fnref-3","Back to reference 3",[205],[157,1678,1680,1682,1683,1685,1686],{"id":1679},"user-content-fn-4",[22,1681,217],{}," est un logiciel libre non parce que je n'avais pas le choix dû à la double licence de la librairie ",[56,1684,948],{}," mais bien par choix personnelle de développer du logiciel libre sur mon temps personnel. ",[106,1687,206],{"href":1688,"ariaLabel":1689,"className":1690,"dataFootnoteBackref":111},"#user-content-fnref-4","Back to reference 4",[205],[157,1692,1694,1695],{"id":1693},"user-content-fn-5","QCodeEdit est un éditeur de code écrit pour Qt. Il est très performant, et possède beaucoup de fonctionnalité utile. ",[106,1696,206],{"href":1697,"ariaLabel":1698,"className":1699,"dataFootnoteBackref":111},"#user-content-fnref-5","Back to reference 5",[205],{"title":111,"searchDepth":208,"depth":208,"links":1701},[1702,1703,1704],{"id":1401,"depth":211,"text":1402},{"id":1542,"depth":211,"text":1543},{"id":110,"depth":208,"text":192},"2009-02-18",{"type":10,"value":1707},[1708,1710,1716,1718],[13,1709,1380],{},[13,1711,1383,1712,1386,1714,1389],{},[22,1713,217],{},[22,1715,217],{},[13,1717,1392],{},[13,1719,1720],{},[42,1721],{"alt":1397,"src":1398},{},"\u002Fpost\u002Fxinx-editeur-de-feuille-de-style",{"title":1375,"description":1380},"xinx-editeur-de-feuille-de-style","posts\u002FXINX\u002F2009-02-18-xinx-editeur-de-feuille-de-style",[218,243,244,245],"zpIhRB-KvKQE1lDggeBl1D-gfvOgwt-duiaJNbpQxj4",{"id":1730,"title":1731,"author":8,"body":1732,"category":346,"categorySlug":347,"date":1826,"description":1380,"excerpt":1827,"extension":234,"location":235,"meta":1856,"navigation":237,"path":1857,"published":237,"seo":1858,"slug":1859,"stem":1860,"tags":1861,"timeToRead":596,"__hash__":1862},"posts\u002Fposts\u002FLogiciels\u002F2009-02-15-debian-lenny-est-sortie.md","Debian Lenny est sortie",{"type":10,"value":1733,"toc":1823},[1734,1736,1758,1763,1772,1791,1797],[13,1735,1380],{},[13,1737,1738,1739,1742,1743,1745,1746,1749,1750,1753,396],{},"Voici la grande nouvelle de ce Week-End :Hier, le jour de la ",[22,1740,1741],{},"St\nValentin",", la distribution stable ",[22,1744,387],{}," est passé de ",[22,1747,1748],{},"Etch","\nà ",[22,1751,1752],{},"Lenny",[103,1754,1755],{},[106,1756,113],{"href":108,"ariaDescribedBy":1757,"dataFootnoteRef":111,"id":112},[110],[13,1759,1760],{},[42,1761],{"alt":257,"src":1762},"\u002FLogiciels\u002Fdebian-lenny-est-sortie\u002Fdebian-logo.png",[13,1764,1765,1766,1768,1769,396],{},"Cela annonce donc non seulement une nouvelle version stable de\n",[22,1767,387],{}," (ce qui est loin d'arriver tous les jours) mais aussi le\ndéblocage de ",[22,1770,1771],{},"sid",[13,1773,1774,1775,1777,1778,1783,1784,1786,1787,1790],{},"Attention lors des prochaines mises à jour, ",[22,1776,391],{}," (ainsi que les\ndernières versions de tous les logiciels) arrivera doucement sur votre\nbureau",[103,1779,1780],{},[106,1781,1008],{"href":1005,"ariaDescribedBy":1782,"dataFootnoteRef":111,"id":1007},[110]," si vous êtes en ",[22,1785,1771],{}," ou en ",[22,1788,1789],{},"testing",". Cela va de\nmême pour les dernières versions du noyau qui devrait arriver également.",[13,1792,1793,1794,396],{},"La prochaine, future distribution stable (qui apparaîtra sûrement d'ici\n5 ans) sera ",[22,1795,1796],{},"squeeze",[183,1798,1800,1803],{"className":1799,"dataFootnotes":111},[186],[188,1801,192],{"className":1802,"id":110},[191],[194,1804,1805,1814],{},[157,1806,1807,1122,1811],{"id":198},[106,1808,1809],{"href":1809,"rel":1810},"http:\u002F\u002Fblog.ganneff.de\u002Fblog\u002F2009\u002F02\u002F14\u002Flenny-release.html",[163],[106,1812,206],{"href":202,"ariaLabel":203,"className":1813,"dataFootnoteBackref":111},[205],[157,1815,1816,1122,1820],{"id":1128},[106,1817,1818],{"href":1818,"rel":1819},"http:\u002F\u002Fpusling.com\u002Fblog\u002F?p=94",[163],[106,1821,206],{"href":1134,"ariaLabel":1135,"className":1822,"dataFootnoteBackref":111},[205],{"title":111,"searchDepth":208,"depth":208,"links":1824},[1825],{"id":110,"depth":208,"text":192},"2009-02-15",{"type":10,"value":1828},[1829,1831,1846,1850],[13,1830,1380],{},[13,1832,1738,1833,1742,1835,1745,1837,1749,1839,1841,396],{},[22,1834,1741],{},[22,1836,387],{},[22,1838,1748],{},[22,1840,1752],{},[103,1842,1843],{},[106,1844,113],{"href":108,"ariaDescribedBy":1845,"dataFootnoteRef":111,"id":112},[110],[13,1847,1848],{},[42,1849],{"alt":257,"src":1762},[13,1851,1765,1852,1768,1854,396],{},[22,1853,387],{},[22,1855,1771],{},{},"\u002Fpost\u002Fdebian-lenny-est-sortie",{"title":1731,"description":1380},"debian-lenny-est-sortie","posts\u002FLogiciels\u002F2009-02-15-debian-lenny-est-sortie",[454,369],"EsfsGGVO7y_WEe21bi9WNtGHTe0ADRHkYFuj9haww40",{"id":1864,"title":1865,"author":8,"body":1866,"category":346,"categorySlug":347,"date":2500,"description":2501,"excerpt":2502,"extension":234,"location":235,"meta":2514,"navigation":237,"path":2515,"published":237,"seo":2516,"slug":2282,"stem":2517,"tags":2518,"timeToRead":246,"__hash__":2520},"posts\u002Fposts\u002FLogiciels\u002F2008-10-22-email2trac.md","Email2Trac",{"type":10,"value":1867,"toc":2493},[1868,1877,1880,1883,1895,1903,1905,1915,1919,1925,1957,1961,1980,2016,2027,2031,2046,2113,2121,2125,2128,2146,2157,2161,2179,2183,2198,2204,2209,2215,2222,2237,2243,2263,2284,2288,2294,2315,2322,2328,2340,2365,2380,2386,2392,2411,2420,2424,2427,2446,2449,2465,2490],[13,1869,1870,1872,1873,1876],{},[56,1871,1865],{}," est un logiciel permettant de créer un ticket sous ",[56,1874,1875],{},"Trac","\nen envoyant un mail au système de suivi de ticket.",[13,1878,1879],{},"L'intérêt d'envoyer un mail au système de suivi plutôt que de se\nconnecter sur le site Internet pour faire ses rapports d'anomalie, est\nde faciliter l'accès à de nouvelles personnes.En effet, il est parfois\nplus facile d'envoyer un mail avec son client mail préféré (en\nconsidérant que le logiciel est quasiment toujours ouvert, ce qui doit\nêtre le cas en entreprise) que d'ouvrir le navigateur pour envoyer une\nanomalie de temps en temps (ouvrir le site, se logger, remplir tous les\nchamps, ...).",[13,1881,1882],{},"Ceci peut également être utilisé par un outil de rapport de bug,\nenvoyant un mail automatique (avec confirmation de l'utilisateur) au\ncrash dudit logiciel.",[13,1884,1885,1886,1889,1894],{},"Comme dit précédemment, ",[56,1887,1888],{},"EMail2Trac",[103,1890,1891],{},[106,1892,113],{"href":108,"ariaDescribedBy":1893,"dataFootnoteRef":111,"id":112},[110]," permet",[154,1896,1897,1900],{},[157,1898,1899],{},"d'ajouter un ticket en envoyant un mail, avec des fichiers attachés",[157,1901,1902],{},"mettre à jour un ticket (en répondant au mail du ticket par exemple)",[35,1904,827],{"id":826},[13,1906,1907,1908,1910,1911,1914],{},"Pour installer ",[56,1909,1865],{},", il faut télécharger le ",[106,1912,171],{"href":1913},"ftp:\u002F\u002Fftp.sara.nl\u002Fpub\u002Foutgoing\u002Femail2trac.tar.gz"," et le\ndécompresser dans un dossier temporaire (ou utilisateur).",[149,1916,1918],{"id":1917},"sans-gestionnaire-de-paquet","Sans gestionnaire de paquet",[13,1920,1921,1922],{},"Ensuite la compilation se fait à l'aide des habituelles ",[179,1923,1924],{},"autotools",[585,1926,1928],{"className":867,"code":1927,"language":869,"meta":111,"style":111},"configure --prefix=\u002Fusr\u002Flocal --with-mta_user=nobody --with-trac_user=www-data\nmake\nmake install\n",[179,1929,1930,1944,1949],{"__ignoreMap":111},[593,1931,1932,1935,1938,1941],{"class":595,"line":596},[593,1933,1934],{"class":606},"configure",[593,1936,1937],{"class":709}," --prefix=\u002Fusr\u002Flocal",[593,1939,1940],{"class":709}," --with-mta_user=nobody",[593,1942,1943],{"class":709}," --with-trac_user=www-data\n",[593,1945,1946],{"class":595,"line":208},[593,1947,1948],{"class":606},"make\n",[593,1950,1951,1954],{"class":595,"line":211},[593,1952,1953],{"class":606},"make",[593,1955,1956],{"class":728}," install\n",[149,1958,1960],{"id":1959},"sous-debian","Sous Debian",[13,1962,1963,1964,1967,1968,1971,1972,1975,1976,1979],{},"Après avoir installé les paquets ",[179,1965,1966],{},"cdbs"," et ",[179,1969,1970],{},"autotools-dev",", vous pouvez\nexécuter les commandes suivante en ",[56,1973,1974],{},"root"," (ou la première à l'aide de\n",[56,1977,1978],{},"fakeroot",") :",[585,1981,1983],{"className":867,"code":1982,"language":869,"meta":111,"style":111},"debian\u002Frules binary\ndpkg -i ..\u002Femail2trac_\u003Cversion>.deb\n",[179,1984,1985,1993],{"__ignoreMap":111},[593,1986,1987,1990],{"class":595,"line":596},[593,1988,1989],{"class":606},"debian\u002Frules",[593,1991,1992],{"class":728}," binary\n",[593,1994,1995,1998,2001,2004,2007,2010,2013],{"class":595,"line":208},[593,1996,1997],{"class":606},"dpkg",[593,1999,2000],{"class":709}," -i",[593,2002,2003],{"class":728}," ..\u002Femail2trac_",[593,2005,2006],{"class":603},"\u003C",[593,2008,2009],{"class":728},"versio",[593,2011,2012],{"class":603},"n>",[593,2014,2015],{"class":728},".deb\n",[13,2017,2018,2019,2022,2023],{},"Pour le gestionnaire de paquets ",[56,2020,2021],{},"RPM"," vous pouvez visiter la page\n",[106,2024,2025],{"href":2025,"rel":2026},"https:\u002F\u002Fsubtrac.sara.nl\u002Foss\u002Femail2trac\u002Fwiki\u002FEmail2tracInstallation",[163],[35,2028,2030],{"id":2029},"configuration-de-lapplication","Configuration de l'application",[13,2032,2033,2034,2037,2038,2043,2044,396],{},"La deuxième étape est l'édition du fichier ",[179,2035,2036],{},"\u002Fetc\u002Femail2trac.conf",". Dans\nce fichier les informations à renseigner concerne la gestion du projet\nTrac",[103,2039,2040],{},[106,2041,1008],{"href":1005,"ariaDescribedBy":2042,"dataFootnoteRef":111,"id":1007},[110]," par ",[56,2045,1865],{},[585,2047,2051],{"className":2048,"code":2049,"language":2050,"meta":111,"style":111},"language-ini shiki shiki-themes one-dark-pro","[DEFAULT]\nproject: \u002Fwww\u002Fsite\u002Ftrac\u002Fprojet1\nspam_level: 5\ndrop_spam: 1\nticket_update: 1\nstrip_signature: 1\n\n[projet2]\nproject: \u002Fwww\u002Fsite\u002Ftrac\u002Fprojet2\nspam_level: 5\ndrop_spam: 1\nticket_update: 1\nstrip_signature: 1\n","ini",[179,2052,2053,2058,2063,2068,2073,2078,2083,2087,2092,2097,2101,2105,2109],{"__ignoreMap":111},[593,2054,2055],{"class":595,"line":596},[593,2056,2057],{"class":606},"[DEFAULT]\n",[593,2059,2060],{"class":595,"line":208},[593,2061,2062],{"class":728},"project: \u002Fwww\u002Fsite\u002Ftrac\u002Fprojet1\n",[593,2064,2065],{"class":595,"line":211},[593,2066,2067],{"class":728},"spam_level: 5\n",[593,2069,2070],{"class":595,"line":246},[593,2071,2072],{"class":728},"drop_spam: 1\n",[593,2074,2075],{"class":595,"line":644},[593,2076,2077],{"class":728},"ticket_update: 1\n",[593,2079,2080],{"class":595,"line":659},[593,2081,2082],{"class":728},"strip_signature: 1\n",[593,2084,2085],{"class":595,"line":686},[593,2086,641],{"emptyLinePlaceholder":237},[593,2088,2089],{"class":595,"line":691},[593,2090,2091],{"class":606},"[projet2]\n",[593,2093,2094],{"class":595,"line":716},[593,2095,2096],{"class":728},"project: \u002Fwww\u002Fsite\u002Ftrac\u002Fprojet2\n",[593,2098,2099],{"class":595,"line":745},[593,2100,2067],{"class":728},[593,2102,2103],{"class":595,"line":758},[593,2104,2072],{"class":728},[593,2106,2107],{"class":595,"line":771},[593,2108,2077],{"class":728},[593,2110,2111],{"class":595,"line":776},[593,2112,2082],{"class":728},[13,2114,2115,2116,396],{},"Les différentes options dépendent de ce que vous souhaitez avoir. Les\ndifférentes possibilités sont à l'adresse ",[106,2117,2120],{"href":2118,"rel":2119},"https:\u002F\u002Fsubtrac.sara.nl\u002Foss\u002Femail2trac\u002Fwiki\u002FEmail2tracConfiguration",[163],"suivante",[149,2122,2124],{"id":2123},"spam","Spam",[13,2126,2127],{},"La gestion du SPAM se fait à l'aide des 3 lignes :",[585,2129,2131],{"className":2048,"code":2130,"language":2050,"meta":111,"style":111},"spam_level: 5\ndrop_spam: 1\nspam_header: X-Spam-Level\n",[179,2132,2133,2137,2141],{"__ignoreMap":111},[593,2134,2135],{"class":595,"line":596},[593,2136,2067],{"class":728},[593,2138,2139],{"class":595,"line":208},[593,2140,2072],{"class":728},[593,2142,2143],{"class":595,"line":211},[593,2144,2145],{"class":728},"spam_header: X-Spam-Level\n",[13,2147,2148,2149,2152,2153,2156],{},"La ligne ",[179,2150,2151],{},"spam_header"," étant à configurer suivant votre politique de\ngestion des spams (utilisation de ",[56,2154,2155],{},"SpamAssassin"," ou d'un autre\nutilitaire).",[35,2158,2160],{"id":2159},"configuration-de-postfix","Configuration de Postfix",[13,2162,2163,2164,2166,2167,2169,2170,2173,2174],{},"Il faut maintenant configurer notre système de messagerie pour intégrer\n",[56,2165,1865],{},". Nous allons détailler ici la mise en place de ",[56,2168,1865],{},"\nsous ",[56,2171,2172],{},"Postfix",". Pour les autres serveurs mails vous pouvez visiter la\npage : ",[106,2175,2178],{"href":2176,"rel":2177},"http:\u002F\u002Fsubtrac.sara.nl\u002Foss\u002Femail2trac\u002Fwiki",[163],"http:\u002F\u002Fsubtrac.sara.nl\u002Foss\u002Femail2trac\u002Fwiki\u002FEmail2tracMta",[149,2180,2182],{"id":2181},"aliases","Aliases",[13,2184,2185,2186,2189,2190,2193,2194,2197],{},"La première méthode concerne la modification du fichier des ",[56,2187,2188],{},"alias"," pour\nune configuration standard de ",[56,2191,2192],{},"postfix",". Nous allons commencer par\nmodifier le fichier ",[179,2195,2196],{},"\u002Fetc\u002Faliases"," en ajoutant la ligne suivante (pour\nle projet 1) :",[585,2199,2202],{"className":2200,"code":2201,"language":859},[857],"projet1: |\"\u002Fusr\u002Fbin\u002Frun_email2trac\"\n",[179,2203,2201],{"__ignoreMap":111},[13,2205,2206,2207,1979],{},"Il est également possible de préciser le projet sur lequel il faut\ntravailler (projet définit dans ",[179,2208,2036],{},[585,2210,2213],{"className":2211,"code":2212,"language":859},[857],"projet2: |\"\u002Fusr\u002Fbin\u002Frun_email2trac --project=projet2 --ticket_prefix=devel\"\n",[179,2214,2212],{"__ignoreMap":111},[13,2216,2217,2218,2221],{},"Dans le fichier ",[179,2219,2220],{},"\u002Fetc\u002Fpostfix\u002Fmain.cf",", il faut avoir défini\nl'emplacement des alias de la manière suivante :",[585,2223,2225],{"className":2048,"code":2224,"language":2050,"meta":111,"style":111},"alias_maps = hash:\u002Fetc\u002Faliases\n",[179,2226,2227],{"__ignoreMap":111},[593,2228,2229,2232,2234],{"class":595,"line":596},[593,2230,2231],{"class":614},"alias_maps",[593,2233,611],{"class":603},[593,2235,2236],{"class":728}," hash:\u002Fetc\u002Faliases\n",[13,2238,2239,2240,2242],{},"Les commandes suivantes permettent de mettre à jour le fichier des alias\net demander à ",[56,2241,2172],{}," de recharger la configuration :",[585,2244,2246],{"className":867,"code":2245,"language":869,"meta":111,"style":111},"postaliases \u002Fetc\u002Faliases\npostfix reload\n",[179,2247,2248,2256],{"__ignoreMap":111},[593,2249,2250,2253],{"class":595,"line":596},[593,2251,2252],{"class":606},"postaliases",[593,2254,2255],{"class":728}," \u002Fetc\u002Faliases\n",[593,2257,2258,2260],{"class":595,"line":208},[593,2259,2192],{"class":606},[593,2261,2262],{"class":728}," reload\n",[13,2264,2265,2266,2272,2273,2279,2280,2283],{},"Une fois ceci terminé, les mails envoyé à ",[56,2267,2268],{},[106,2269,2271],{"href":2270},"mailto:projet1@domain.org","projet1@domain.org"," et\n",[56,2274,2275],{},[106,2276,2278],{"href":2277},"mailto:projet2@domaine.org","projet2@domaine.org"," seront automatiquement redirigés vers ",[56,2281,2282],{},"email2trac","\nqui s'occupera de créer le ticket dans votre système de suivi.",[149,2285,2287],{"id":2286},"transport","Transport",[13,2289,2290,2291,2293],{},"Cette configuration concerne les personnes qui ont une configuration\nplus complexe de ",[56,2292,2192],{}," par exemple en gérant des domaines virtuels.\nIl est alors possible de définir une redirection des tickets pour un\nsous domaine.",[13,2295,2296,2297,2300,2301,2307,2308,2314],{},"Nous avons donc créé le sous-domaine ",[56,2298,2299],{},"tickets.domaine.org"," et voulons\nque les mails envoyés à ",[56,2302,2303],{},[106,2304,2306],{"href":2305},"mailto:projet1@tickets.domaine.org","projet1@tickets.domaine.org"," est\n",[56,2309,2310],{},[106,2311,2313],{"href":2312},"mailto:projet2@tickets.domaine.org","projet2@tickets.domaine.org"," soient redirigés vers email2trac.",[13,2316,2317,2318,2321],{},"Pour cela nous allons créer un fichier ",[179,2319,2320],{},"\u002Fetc\u002Fpostfix\u002Ftransport"," avec les\nlignes ci-dessous :",[585,2323,2326],{"className":2324,"code":2325,"language":859},[857],"projet1@tickets.domaine.org  projet1:\nprojet2@tickets.domaine.org  projet2:\n",[179,2327,2325],{"__ignoreMap":111},[13,2329,2330,2331,2333,2334,2336,2337,396],{},"Puis dans le fichier ",[179,2332,2220],{}," nous allons définir que pour\nle sous domaine ",[56,2335,2299],{},", il faut lire et utiliser le\nfichier des transports. (Attention il ne faut pas ajouter ce\nsous-domaine dans ",[179,2338,2339],{},"mydestination",[585,2341,2343],{"className":2048,"code":2342,"language":2050,"meta":111,"style":111},"relay_domains = tickets.domaine.org\ntransport_maps = hash:\u002Fetc\u002Fpostfix\u002Ftransport\n",[179,2344,2345,2355],{"__ignoreMap":111},[593,2346,2347,2350,2352],{"class":595,"line":596},[593,2348,2349],{"class":614},"relay_domains",[593,2351,611],{"class":603},[593,2353,2354],{"class":728}," tickets.domaine.org\n",[593,2356,2357,2360,2362],{"class":595,"line":208},[593,2358,2359],{"class":614},"transport_maps",[593,2361,611],{"class":603},[593,2363,2364],{"class":728}," hash:\u002Fetc\u002Fpostfix\u002Ftransport\n",[13,2366,2367,2368,2371,2372,2375,2376,2379],{},"Ensuite, il nous faut définir dans le fichier ",[179,2369,2370],{},"\u002Fetc\u002Fpostfix\u002Fmaster.cf","\nnotre nouveau mode de transport. Il n'est pas obligé d'utiliser\n",[179,2373,2374],{},"run_email2trac"," qui fait un changement d'utilisateur, car dans le\nfichier ",[179,2377,2378],{},"master.cf"," on peut directement définir l'utilisateur de\ndestination.",[585,2381,2384],{"className":2382,"code":2383,"language":859},[857],"projet1      unix  -       n       n       -       -       pipe\n    flags=FR user=www-data argv=\u002Fusr\u002Fbin\u002Femail2trac\n    ${nexthop} ${user}\nprojet2      unix  -       n       n       -       -       pipe\n    flags=FR user=www-data argv=\u002Fusr\u002Fbin\u002Femail2trac\n    ${nexthop} ${user}\\r\n",[179,2385,2383],{"__ignoreMap":111},[13,2387,2388,2389,2391],{},"Enfin il faut redémarrer ",[56,2390,2192],{}," :",[585,2393,2395],{"className":867,"code":2394,"language":869,"meta":111,"style":111},"postmap \u002Fetc\u002Fpostfix\u002Ftransport\npostfix reload\n",[179,2396,2397,2405],{"__ignoreMap":111},[593,2398,2399,2402],{"class":595,"line":596},[593,2400,2401],{"class":606},"postmap",[593,2403,2404],{"class":728}," \u002Fetc\u002Fpostfix\u002Ftransport\n",[593,2406,2407,2409],{"class":595,"line":208},[593,2408,2192],{"class":606},[593,2410,2262],{"class":728},[13,2412,2413,2414,396],{},"Et voilà vous pouvez envoyer vos mails à\n",[56,2415,2416],{},[106,2417,2419],{"href":2418},"mailto:projet1@tickets.shadoware.org","projet1@tickets.shadoware.org",[35,2421,2423],{"id":2422},"tester","Tester",[13,2425,2426],{},"Pour tester il est possible d'envoyer un mail, comme ceci :",[585,2428,2430],{"className":867,"code":2429,"language":869,"meta":111,"style":111},"mail projet1@tickets.shadoware.org \u003C ticket.txt\n",[179,2431,2432],{"__ignoreMap":111},[593,2433,2434,2437,2440,2443],{"class":595,"line":596},[593,2435,2436],{"class":606},"mail",[593,2438,2439],{"class":728}," projet1@tickets.shadoware.org",[593,2441,2442],{"class":603}," \u003C ",[593,2444,2445],{"class":728},"ticket.txt\n",[13,2447,2448],{},"En cas de problème, vous pouvez vérifier que email2trac est bien\nconfiguré avec la commande :",[585,2450,2452],{"className":867,"code":2451,"language":869,"meta":111,"style":111},"email2trac --project=projet1 \u003C ticket.txt\n",[179,2453,2454],{"__ignoreMap":111},[593,2455,2456,2458,2461,2463],{"class":595,"line":596},[593,2457,2282],{"class":606},[593,2459,2460],{"class":709}," --project=projet1",[593,2462,2442],{"class":603},[593,2464,2445],{"class":728},[183,2466,2468,2471],{"className":2467,"dataFootnotes":111},[186],[188,2469,192],{"className":2470,"id":110},[191],[194,2472,2473,2481],{},[157,2474,2475,1122,2478],{"id":198},[106,2476,2178],{"href":2176,"rel":2477},[163],[106,2479,206],{"href":202,"ariaLabel":203,"className":2480,"dataFootnoteBackref":111},[205],[157,2482,2483,1122,2487],{"id":1128},[106,2484,2485],{"href":2485,"rel":2486},"http:\u002F\u002Ftrac.edgewall.org\u002F",[163],[106,2488,206],{"href":1134,"ariaLabel":1135,"className":2489,"dataFootnoteBackref":111},[205],[904,2491,2492],{},"html pre.shiki code .sVbv2, html code.shiki .sVbv2{--shiki-default:#61AFEF}html pre.shiki code .sVC51, html code.shiki .sVC51{--shiki-default:#D19A66}html pre.shiki code .subq3, html code.shiki .subq3{--shiki-default:#98C379}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html pre.shiki code .sn6KH, html code.shiki .sn6KH{--shiki-default:#ABB2BF}html pre.shiki code .seHd6, html code.shiki .seHd6{--shiki-default:#C678DD}",{"title":111,"searchDepth":208,"depth":208,"links":2494},[2495,2496,2497,2498,2499],{"id":826,"depth":211,"text":827},{"id":2029,"depth":211,"text":2030},{"id":2159,"depth":211,"text":2160},{"id":2422,"depth":211,"text":2423},{"id":110,"depth":208,"text":192},"2008-10-22","Email2Trac est un logiciel permettant de créer un ticket sous Trac\nen envoyant un mail au système de suivi de ticket.",{"type":10,"value":2503},[2504,2510,2512],[13,2505,2506,1872,2508,1876],{},[56,2507,1865],{},[56,2509,1875],{},[13,2511,1879],{},[13,2513,1882],{},{},"\u002Fpost\u002Femail2trac",{"title":1865,"description":2501},"posts\u002FLogiciels\u002F2008-10-22-email2trac",[454,2519],"dedie","llLWYwDr2WQzswEZDA9vDYeLWcGqHIhabMKl6VUmCmo",1779664038758]