diff --git a/ecrire/inc/utils.php b/ecrire/inc/utils.php
index 9c35668a68246e3151d94937db6b9bb32364969a..17db9c55f2450b00b64b70889c01754addc5066e 100644
--- a/ecrire/inc/utils.php
+++ b/ecrire/inc/utils.php
@@ -432,13 +432,20 @@ function spip_timer($t='rien') {
 	$b=explode(' ',$b);
 	if (count($b)==2) $a = end($b); // plus precis !
 	$b = reset($b);
-	if (isset($time[$t])) {
-		$p = $a + $b - $time[$t];
-		unset($time[$t]);
-		if ($p>0.01)	return sprintf("%.3fs", $p);
-		else					return sprintf("%.1fms", $p*1000);
-	} else
+	if (!isset($time[$t])) {
 		$time[$t] = $a + $b;
+	} else {
+		$p = ($a + $b - $time[$t]) * 1000;
+		unset($time[$t]);
+#			echo "'$p'";exit;
+		if ($p < 1000) 
+			$s = '';
+		else {
+			$s = sprintf("%d ", $x = floor($p/1000));
+			$p -= ($x*1000);
+		}
+		return $s . sprintf("%.3f ms", $p);
+	}
 }
 
 
diff --git a/ecrire/public/debusquer.php b/ecrire/public/debusquer.php
index beb9c1bc5817196f55ee54569ca361fe621c12fc..22f714722c4de5bcb9b176379ec9bee7120dda58 100644
--- a/ecrire/public/debusquer.php
+++ b/ecrire/public/debusquer.php
@@ -439,24 +439,31 @@ function debusquer_navigation_squelettes($self)
 	$res = '';
 	$boucles = !empty($debug_objets['boucle']) ? $debug_objets['boucle']:'';
 	$contexte = $debug_objets['contexte'];
-	foreach ($debug_objets['sourcefile'] as $nom_skel => $sourcefile) {
-		$self2 = parametre_url($self,'var_mode_objet', $nom_skel);
-		$res .= "<fieldset><legend>" ._T('squelette') . ' '  . $sourcefile ."&nbsp;: ";
-		$res .= "\n<a href='$self2&amp;var_mode_affiche=squelette#$nom_skel'>"._T('squelette')."</a>";
-		$res .= "\n<a href='$self2&amp;var_mode_affiche=resultat#$nom_skel'>"._T('zbug_resultat')."</a>";
-		$res .= "\n<a href='$self2&amp;var_mode_affiche=code#$nom_skel'>"._T('zbug_code')."</a>";
-		$res .= "\n<a href='" . str_replace('var_mode=debug', 'var_profile=1&amp;var_mode=recalcul', $self)
-		  . "'>" .
-		  _T('zbug_calcul')."</a></legend>";
-		$res .= "\n<span style='display:block;float:$spip_lang_right'>"._T('zbug_profile',array('time'=>isset($debug_objets['profile'][$sourcefile])?$debug_objets['profile'][$sourcefile]:0))."</span>";
-
-		$res .= debusquer_contexte($contexte[$sourcefile]);
-
-		if ($boucles)
-			$res .= "<table width='100%'>\n" .
-				debusquer_navigation_boucles($boucles, $nom_skel, $self) .
-				"</table>\n";
-		$res .= "</fieldset>\n";
+	$t_skel = _T('squelette');
+	foreach ($debug_objets['sourcefile'] as $nom => $sourcefile) {
+		$self2 = parametre_url($self,'var_mode_objet', $nom);
+		$nav = !$boucles ? '' : debusquer_navigation_boucles($boucles, $nom, $self);
+		$temps = !isset($debug_objets['profile'][$sourcefile]) ? '' : _T('zbug_profile', array('time'=>$debug_objets['profile'][$sourcefile]));
+
+		$res .= "<fieldset><legend>"
+		. $t_skel
+		. ' ' 
+		. $sourcefile
+		."&nbsp;:\n<a href='$self2&amp;var_mode_affiche=squelette#$nom'>"
+		. $t_skel
+		. "</a>\n<a href='$self2&amp;var_mode_affiche=resultat#$nom'>"
+		. _T('zbug_resultat')
+		. "</a>\n<a href='$self2&amp;var_mode_affiche=code#$nom'>"
+		. _T('zbug_code')
+		."</a>\n<a href='"
+		. str_replace('var_mode=debug', 'var_profile=1&amp;var_mode=recalcul', $self)
+		. "'>"
+		.  _T('zbug_calcul')
+		. "</a></legend>"
+		. (!$temps ? '' : ("\n<span style='display:block;float:$spip_lang_right'>$temps</span><br />"))
+		. debusquer_contexte($contexte[$sourcefile])
+		. (!$nav ? '' : ("<table width='100%'>\n$nav</table>\n"))
+		. "</fieldset>\n";
 	}
 	return $res;
 }