Autore Topic: Creare una struttura <ul><li> con la shell o con gambas  (Letto 1046 volte)

Offline alcresio

  • Grande Gambero
  • ***
  • Post: 100
    • Mostra profilo
Creare una struttura <ul><li> con la shell o con gambas
« il: 02 Novembre 2019, 21:15:06 »
Ho trovato questo CSS ( https://www.cssscript.com/demo/semantic-hierarchy-tree-treeflex/ ) che permette, tramite una struttura <ul><li> di creare una visualizzazione ad albero di vari elementi, è molto carino, e personalizzando il CSS si possono ottenere effetti grafici davvero accattivanti.

Ovviamente la struttura della lista <ul> non è standard ma segue una logica leggermente diversa da quella tradizionale: esempio:

Codice: [Seleziona]
<div class="tf-tree">
  <ul>
    <li>
      <span class="tf-nc">1</span>
      <ul>
        <li>
          <span class="tf-nc">2</span>
          <ul>
            <li><span class="tf-nc">4</span></li>
            <li><span class="tf-nc">5</span>
              <ul>
                <li><span class="tf-nc">9</span></li>
                <li><span class="tf-nc">10</span></li>
              </ul>
            </li>
            <li><span class="tf-nc">6</span></li>
          </ul>
        </li>
        <li>
          <span class="tf-nc">3</span>
          <ul>
            <li><span class="tf-nc">7</span></li>
            <li><span class="tf-nc">8</span></li>
          </ul>
        </li>
      </ul>
    </li>
  </ul>
</div>

Che genera una vista come quella allegata.
Ora, partendo da un file, generato da un db, con questa formattazione:

Codice: [Seleziona]
,,,
1:00931-002,,,
,2:00111-002,,
,,4:00876-002,
,,5:00564-002,
,,,9:00451-002
,,,10:00361-002
,,6:00261-002,
,3:00264-002,,
,,7:00221-002,
,,8:00161-002,

Vorrei generare la porzione di codice da inserire in una pagina html e poi eseguirla con il browser predefinito.

Chiarimenti sulla struttura del file:
la prima linea contiene un numero di virgole pari alla massima profondità di <ul>, in questo caso un padre e tre generazioni, quindi tre virgole.
Il padre non ha virgole in quanto è la generazione zero. Una virgola per la prima generazione e così via...

Credo che sia solo una questione di parsing e di taglia e cuci delle stringhe, ma non ho idea da dove partire...
Ho provato in Lazarus, che mi è più "alla mano", ma sono riuscito solo a capire che non mi riesce... :-(
Ho provato in python ed è andata un pò meglio, ma non riesco a risalire alla generazione precedente (vedi elemento "3" che è fratello di elemento "2" entrambi figli di elemento "1")

Volevo ricorrere alla potenza della bash, ma qualcosa mi sfugge...

Consigli?