Cambiar la página de línea de time Fossil-SCM HTML

Necesito un cambio en el HTML de la página de línea de time generado por Fossil-SCM dentro del elemento td de la class timelineTableCell . El contenido actual de este elemento td es el siguiente

<td class="timelineTableCell" style="FOO"> <a class="timelineHistLink" href="FOO">[DF45GH67MD]</a> <span class="timelineLeaf">Leaf:</span> <span class="timelineComment">Any comment goes here</span> (user: <a href="FOO">User Name</a>,tags: <a href="FOO">Lyca+ HLR</a>) </td> 

Requiero cada elemento en td individual de la siguiente manera

 <td><a class="timelineHistLink" href="FOO">[DF45GH67MD]</a></td> <td><span class="timelineLeaf">Leaf(empty if not leaf)</span></td> <td><span class="timelineComment">Any comment goes here</span></td> <td>User: <a href="FOO">Usr_Name</a></td> <td>Tags: <a href="FOO">Tag_Name</a></td> 

Entonces, esta página se verá mejor alineada y más legible. ¿Cómo puedo hacer esto?

Puedo pensar de dos maneras:

  1. construyendo tu propia versión de Fossil . Clona el repository Fossil y crea una twig (privada) donde puedes cambiar el código fuente y comstack tu propia versión de Fossil. Esto significa que cada vez que desee actualizar fósil, deberá fusionar el tronco en su twig y comstackrlo de nuevo.
  2. usando CSS y Javascript . En la página Admin , puede insert elementos en las secciones de encabezado y pie de página que se generan para cada página.

    • busca la página CSS . Allí, puede especificar display: table-cell; para .timelineHistLink, .timelineLeaf, .timelineComment . Esto debería convertir esos tres elementos en celdas de tabla separadas. Tenga en count que no lo he probado, y puede que no funcione ya que ya están dentro de una celda de tabla. En cualquier caso, esto no convertirá al usuario y las tags en celdas separadas. Eso es algo que tendrías que hacer usando Javascript.
    • en la página de Footer página, puede insert una parte de Javascript para modificar la página de la forma que le guste. Aquí hay un ejemplo de un poco de script que una vez escribí para deshacerse del UUID de cada logging, y convertir el text de compromiso en un enlace:

(TH1 es el lenguaje del lado del server de Fossil; lo estoy usando aquí para indicar que este script solo debe generarse en la página de la línea de time en lugar de en cada página).

 <th1> if {$current_page eq "timeline"} { enable_output 1 } else { enable_output 0 } </th1> <script> (function() { var cells = document.getElementsByClassName('timelineTableCell'); for (var i = 0; i < cells.length; i++) { cells[i].innerHTML = cells[i].innerHTML.replace(/^[^<]*<a href="([^"]*)">[^<]*<\/a>\]\s*(.*)\s+(\(user:[^\0]*\))\s*$/, '<a href="$1">$2</a><br> <span style="font-size: smaller; font-style: italic; opacity: 0.75">$3</span>'); } })(); </script> <th1> enable_output 1 </th1>