diff --git a/ecrire/inc/utils.php b/ecrire/inc/utils.php
index 57afa33e78f011e54aa479b7351b2ff019894dee..e5a532d3bfecb766e59d6b4f00486aa23afb0766 100644
--- a/ecrire/inc/utils.php
+++ b/ecrire/inc/utils.php
@@ -555,10 +555,20 @@ function parametre_url($url, $c, $v = null, $sep = '&') {
 	return $a . $ancre;
 }
 
-// Prend une URL et lui ajoute/retire une ancre apres l'avoir nettoyee
-// pour l'ancre on translitere, vire les non alphanum du debut,
-// et on remplace ceux a l'interieur ou au bout par -
-// http://code.spip.net/@ancre_url
+/**
+ * Ajoute (ou retire) une ancre sur une URL
+ *
+ * L’ancre est nettoyée : on translitère, vire les non alphanum du début,
+ * et on remplace ceux à l'interieur ou au bout par `-`
+ *
+ * @example
+ *     - `$url = ancre_url($url, 'navigation'); // => mettra l’ancre #navigation
+ *     - `$url = ancre_url($url, ''); // => enlèvera une éventuelle ancre
+ * @uses translitteration()
+ * @param string $url
+ * @param string $ancre
+ * @return string
+ */
 function ancre_url($url, $ancre) {
 	// lever l'#ancre
 	if (preg_match(',^([^#]*)(#.*)$,', $url, $r)) {
@@ -568,10 +578,12 @@ function ancre_url($url, $ancre) {
 		if (!function_exists('translitteration')) {
 			include_spip('inc/charsets');
 		}
-		$ancre = preg_replace(array('/^[^-_a-zA-Z0-9]+/', '/[^-_a-zA-Z0-9]/'), array('', '-'),
-			translitteration($ancre));
+		$ancre = preg_replace(
+			array('/^[^-_a-zA-Z0-9]+/', '/[^-_a-zA-Z0-9]/'),
+			array('', '-'),
+			translitteration($ancre)
+		);
 	}
-
 	return $url . (strlen($ancre) ? '#' . $ancre : '');
 }