# Copyright (C) 2002-2004 gregoire HUBERT.
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
#
# This library 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
# Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with this library; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
#
# Author : gregoire HUBERT
#
# XML_node.objet
#
# This object is an XML node representation
#
# /- name (string)
# xml_node --- attributes (array)
# \- children (array) or value (string)
class xml_node {
var $name;
var $attributes = array();
var $children = array();
var $value = "";
function xml_node($name,$attributes,$children=array(),$value="") {
$this->name = $name;
if (is_array($attributes)) {
$this->attributes = $attributes;
}
$this->children = $children;
$this->value = $value;
}
}
# Copyright (C) 2003-2004 gregoire HUBERT.
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
#
# This library 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
# Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with this library; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
#
# Author : gregoire HUBERT
#
# xml_tree class
#
# This object parses an XML stream and offers a tree composed by xml_nodes
#
class xml_tree {
var $xml_stream;
var $current_node;
var $root_node;
var $index;
var $value;
function xml_tree() {
$this->root_node = new xml_node("__ROOT_NODE",array());
$this->current_node = $this->root_node;
}
function add_tree($xml_stream) {
# Managing the parser
$this->xml_stream = $xml_stream;
$xml_parser = xml_parser_create();
xml_parser_set_option($xml_parser,XML_OPTION_CASE_FOLDING,0);
xml_parser_set_option($xml_parser,XML_OPTION_SKIP_WHITE,1);
if (!xml_parse_into_struct($xml_parser,$this->xml_stream,$this->value,$this->index)) {
xml_parser_free($xml_parser);
die("XML Parse error");
}
xml_parser_free($xml_parser);
# Now, $this->value and $this->index are informed, we can use the get_node methode.
$tab_result = $this->get_node(0,count($this->value) - 1);
$this->root_node->children[] = $tab_result[0];
$this->current_node = $this->root_node;
}
function get_node($index_start,$index_stop) {
#echo " \n";
#echo "GET-NODE($index_start,$index_stop) \n";
# What we are going to return is an array of xml_nodes
$return_tab = array();
# depth is only here to check if everything is all right
$tab_node = $this->value[$index_start];
$depth = $tab_node["level"]-1;
# Now we have to be sure we do not forget a single node
for ($index = $index_start;$index <= $index_stop;$index++) {
#echo "\$index = $index ";
# get the current node
$tab_node = $this->value[$index];
# what type of node is it ?
switch($tab_node["type"]) {
case "complete" :
# Depth integrity check
if ($tab_node["level"] != $depth+1) {
die("ERREUR # contrainte d'intégrité au noeud complet $index, niveau $depth + 1 au lieu de ".$tab_node["level"]);
}
#echo "Noeud complet trouvé position $index TAG ".$tab_node["tag"]." \n";
# Easy one, no children to manage, only a value...
$return_tab[] = new xml_node($tab_node["tag"],$tab_node["attributes"],"",$tab_node["value"]);
break;
case "open" :
# Depth integrity check
if ($tab_node["level"] != $depth +1 ) {
die("ERREUR # contrainte d'intégrité au noeud ouvert $index, niveau $depth au lieu de ".$tab_node["level"]);
}
# Open tag, we re-use this methode to return its children
# Where is the correspondong close tag ?
$node_index = $this->index[$tab_node["tag"]];
$flipped_node_index = array_flip($node_index);
#echo "This ".$tab_node["tag"]." is at coords ".$flipped_node_index[$index]." ";
$i=1;
do {
$next_index = $node_index[$flipped_node_index[$index] + $i++];
$next_tag=$this->value[$next_index];
}
while ($next_tag["level"]!=$tab_node["level"]);
#echo "Ouverture de noeud détectée pos $index TAG ".$tab_node["tag"]." \n Parcours jusqu au $next_index \n";
# good, we can now instanciate our node
$return_tab[] = new xml_node($tab_node["tag"],$tab_node["attributes"],$this->get_node($index+1,$next_index),"");
# As we called the get_node methode, we are sure that nodes have been parsed to the corresponding close tag
$index = $next_index;
break;
case "close" :
# Depth integrity check
if ($tab_node["level"] != $depth ){
die("ERREUR # contrainte d'intégrité au noeud fermé $index, niveau $depth au lieu de ".$tab_node["level"]);
}
#echo "Fermeture de noeud detectée pos $index TAG ".$tab_node["tag"]."
\n";
# This ugly thing is useless because reaching a close tag means that $index==$index_stop but who knows ? =)
# it will be skipped soon
$index = $index_stop;
break;
default:
die("Erreur de type de TAG non déterminé :'".$tab_node["type"]."'");
}
}
# We are out ... returns the array with collected children...
return ($return_tab);
}
# this function browse the xml tree and set the current node to the selected node
function give_node($path) {
if ($path[0]=="/") {
$current_node=$this->root_node;
$path=substr($path,1);
#echo "ABSOLUTE PATH GIVEN=$path ";
}
else {
$current_node = $this->current_node;
}
#echo "PATH GIVEN=$path ";
$tab_path = split("/",$path);
foreach ($tab_path as $node_expr) {
#echo "STUDYING EXPR='$node_expr' ";
$node = $current_node;
$expr_tab = split("\?",$node_expr);
$node_name = $expr_tab[0];
$attr_tab = 0;
if (count($expr_tab)>1) {
##echo "TROUVE AU MOINS UNE CONDITION SUR LES ATTRIBUTS... ";
$attr_expr_tab=split(",",$expr_tab[1]);
$attr_tab=array();
foreach($attr_expr_tab as $attr_expr) {
$attr_split_expr=split("=",$attr_expr);
$attr_tab[$attr_split_expr[0]]=$attr_split_expr[1];
}
}
$last=0;
foreach ($node->children as $children) {
#echo "COMPARING WITH '$children->name' ";
if ($children->name == $node_name) {
##echo "TROUVE NOEUD CORRESPONDANT $node_name ";
if (is_array($attr_tab)) {
$node_attributes = $children->attributes;
foreach ($attr_tab as $key=>$value) {
if ($node_attributes[$key] == $value) {
#echo "ATTRIBUTE & CHANGE CURRENT NODE TO ".$children->name." ";
$current_node = $children;
$last = 1;
}
}
}
else {
##echo "CHILD=".$children->name." ";
#echo "CHANGE CURRENT NODE TO ".$children->name." ";
$current_node = $children;
$last=1;
}
}
if ($last) {
break;
}
}
if (!$last) {
#echo "PATH ERROR $node_name ";
#die("MMmmmh It seems that this file is not a DIA XML format...sorry...");
return 0;
}
}
return $current_node;
}
function browse_tree($path) {
$node = $this->give_node($path);
if (is_object($node)) {
$this->current_node = $node;
return 1;
}
return 0;
}
# this method dumps an html representation of the xml tree
function xml_show($node = "",$level=0,$last=0) {
if ($node=="") {
$node=$this->root_node;
}
if (!is_object($node)) {
die("ERROR : node is not an object");
}
$line="";
for($i=1;$i<=$level;$i++) {
if ((i==$level-1) and ($last)) {
$line.=" ";
}
else {
$line.=" |";
}
if ($i==$level) {
$line.="`-";
}
}
$line.=$node->name;
#echo $line;
$line.="".count($node->children)."";
if (count($node->children)==1) {
$line.=" (".$node->value.") \n";
echo "$line";
}
else {
$line.=" \n";
echo "$line";
$i=1;
foreach($node->children as $children) {
if ($i==count($node->children)) {
$this->xml_show($children,$level+1,1);
}
else {
$this->xml_show($children,$level+1);
}
$i++;
}
}
}
#END_CLASS
}
BAISE MA HACHE (FRA) - Bréviaire du Chaos (2016)

Label : Hammerbolt Productions
Sortie du Scud : 2 avril 2016
Pays : France
Genre : Black Metal
Type : Album
Playtime : 10 Titres - 53 Mins
On parle souvent de la scène BM canadienne en tant que référence absolue d'une musique sans concession, brute et atypique, mais on oublie souvent de se référencer aux groupes bien de chez nous, qui eux aussi, jouissent d'une identité très forte qui les démarque du Black européen.
Le BM français est rude, âpre, se réfère à des influences bien particulières, et si beaucoup de combos sont comme dans tant d'autres pays bons à jeter, certains laisseront une trace indélébile dans les manuels d'histoire musicale que personne n'écrira jamais...
Je pense à NIGHT évidemment, qui s'affirme avec les années, mais aussi à une frange particulièrement dure du BM option Raw, et qui présente sur le devant de la scène les immanquables PESTE NOIRE, SAINT PREUX, ou encore... BAISE MA HACHE.
Evacuons de suite les options délicates qui consistent toujours à discuter d'éventuelles accointances avec le NSBM.
Oui, BMH a souvent fricoté avec des modes de pensée et des options limites, mais ici, seule la musique nous concerne. Et celle dispensée par le troisième album des savoyards leur permettra sans conteste de distancer leurs homologues en termes de créativité et d'inspiration. D'autant plus qu'ils semblent vouloir s'éloigner de ces considérations douteuses en se focalisant sur des thématiques autres que les sempiternels "Travail, Famille, Patrie".
Et c'est une très bonne chose.
On connaît BAISE MA HACHE au travers de leurs deux premières réalisations, Le Grand Suicide et Ab Origine Fidelis. Celles-ci avaient éveillé un grand intérêt dans l'underground pas seulement français mais européen, et elles trouvent aujourd'hui un écho bien plus puissant que ce que l'on aurait pu imaginer au travers de Bréviaire du Chaos, l'album le plus ambitieux du duo.
Pour se faire, ils ont travaillé leurs compos, mais aussi leur son. Si celui-ci est toujours aussi sec et impitoyable, suivant les préceptes du Raw Black, il donne plus d'ampleur à l'instrumental qui enveloppe le chant d'un manteau de froid glacial, avec ces guitares frigorifiantes, cette basse gelée et cette batterie rigide qui frappe les chairs comme des congères tombées d'une vieille sépulture en hiver.
Musicalement, le duo est allé plus loin que d'habitude, et nous sert une dizaine de compositions irréprochables dans le fond comme dans la forme. Ils ont pour l'occasion dégainé les cartons d'invitation, puisque nous retrouvons à leurs côtés des voix bien connues, comme celle d'Outre-Tombe des québécois d'AKITSA, ou l'incontournable Hreidmarr, vocaliste borderline des CNK, qui trouve ici un écrin de qualité à son sens de la narration dramatique. Mais pas question d'accueillir ces guests sans dresser une table de conséquence, ils se contentent rarement d'un buffet dressé à la hâte qui n'est décidemment pas de leur rang.
Tout ça tombe très bien, puisque Jon et Thorwald ont mis les petits plats dans les grands, bien conscients que l'écueil du troisième LP est un cap très difficile à passer, même pour un groupe de BM aux aspirations particulières.
Bréviaire du Chaos se présente donc sous un artwork splendide, élaboré par l'agence Metastazis, qui nous dépeint des porte-haches d'outre-tombe, prêts à faire tomber les obstacles dressés par les lignes ennemies. Ces mêmes lignes ennemies peuvent se concevoir sous la forme d'une intelligentsia ne voyant en eux qu'une excroissance bâtarde de plus, tout juste bonne à irriter le derme d'une musique dite "rangée", ce que les deux compères ne pratiqueront bien sûr jamais, à notre plus grand bonheur.
Ils ont ménagé quelques effets notables, citent Céline, Caraco, et et Obertone, sur "Le Viol Des Foules", mais ont surtout développé des structures exploitant à merveille le son ample dont ils disposent.
Cette exploitation peut passer par des ambiances délétères et foncièrement violentes, comme le démontre le véhément "Le Fils de la Peste" qui rappelle que les BAISE MA HACHE ne sont pas les frères d'armes de PESTE NOIRE pour rien, ou au contraire par des intermèdes en forme de clin d'œil, "Whisky, tu es le diable", petite private joke qui profite du timbre affolant de Thorwald pour répandre ses effluves alcoolisées menant à une certaine forme de folie personnelle.
Personnel, le mot est lâché, mais pas au hasard. Tout sur cet album suggère une alliance infernale entre la brutalité crue d'un BM vraiment dur, et les mélodies amères et enivrantes de la scène Scandinave des 90's, la trademark de cette "nouvelle" scène française qui depuis des années travaille sans relâche dans l'ombre.
Si au départ, BAISE MA HACHE, comme tant d'autres, semblait si attaché à l'underground qu'on ne pouvait concevoir qu'ils puissent s'en extraire, Bréviaire du Chaos prouve sans ambages que leurs ambitions sont maintenant clairement affichées, et portées comme un étendard.
Des morceaux aux proportions épiques comme "L'Armée Furieuse" le démontrent avec une fermeté absolue, et mettent sous la lumière le fantastique travail accompli par Jon à la rythmique, qui ne se contente plus du simple rôle d'ossature, mais qui souvent donne la direction à suivre, direction que les guitares empruntent sans aucune retenue.
Si l'ambiance n'était pas aussi abrupte, on pourrait presque parler de BM symphonique, mais je suis sûr que les deux musiciens détesteraient cette prise de position.
Thorwald a aussi changé son approche vocale, rauque évidemment, mais proposant des modulations intéressantes. La haine et la colère sont bien sur les moteurs principaux, mais on peut discerner de çà et là quelques modulations inattendues qui apportent une incontestable plus-value, donnant plus de poids à ses textes.
Ce troisième album ne manque pas de morceaux de choix, même si j'admets une préférence toute personnelle pour le long "Une Lame pour les Infâmes", progression implacable utilisant parfaitement ses samples qu'il oppose au chant toujours plus vociféré par Thorwald, mais accompagné de chœurs grandiloquents du plus bel effet. Un peu MARDUK dans l'esprit, mais sans jamais se départir de leur identité propre, ce morceau est une véritable démonstration de force qui place désormais les BMH dans la catégorie des leaders incontestables.
C'est d'ailleurs ce qui ressort de Bréviaire du Chaos. Cette sensation que le duo étouffe dans l'œuf tout parallèle possible, et devient un groupe vraiment à part, et plus seulement "un des" représentants de la scène BM française.
Mais que vous détestiez le groupe ou non pour une raison ou une autre, vous devrez reconnaître leur talent, qui éclate au grand jour avec ce troisième LP.
Et peu importe les controverses, peu importe le passé. BAISE MA HACHE est un groupe d'avenir, qui ne se répète jamais.
Au contraire de l'histoire qu'ils nous racontent...
Ajouté : Samedi 23 Avril 2016 Chroniqueur : Mortne2001 Score :      Lien en relation: Baise Ma Hache Website Hits: 10834
|