DiscoTOC - indice automatico

:discourse2: Riepilogo DiscoTOC ti consentirà di generare un indice interattivo per i tuoi argomenti con un solo clic!
:eyeglasses: Anteprima Anteprima su Discourse Theme Creator
:hammer_and_wrench: Link al repository https://github.com/discourse/DiscoTOC
:open_book: Novizio dei temi di Discourse? Guida introduttiva all’uso dei temi di Discourse

Installa questo componente tema

Esempi

Desktop

Mobile

Funzionalità

toc = indice

  • Genera automaticamente l’intero indice tramite un pulsante nel menu ingranaggi del composer

  • L’indice rimane sempre visibile sullo schermo - scorre insieme ai contenuti come il widget di avanzamento dell’argomento

  • Mentre scorri oltre le sezioni dell’argomento, l’elemento attivo nell’indice verrà impostato come attivo (evidenziazione blu)

  • aggiunge attributi id alle intestazioni (puoi collegare una sezione specifica da un altro argomento/post)

  • cliccando su qualsiasi link nell’indice, il browser navigerà verso la sezione rilevante (scorrimento fluido)

  • aggiunge un link copiabile accanto a ciascuna intestazione (se desideri collegarla)

  • Supporto RTL (da destra a sinistra)

  • I colori si basano sulla tua palette di colori attiva corrente

Come funziona?

In sintesi, cerca le intestazioni negli argomenti che sono contrassegnate per avere un indice (tramite il pulsante del composer) e, se risulta che l’argomento corrente è contrassegnato, prende tutte le intestazioni e le inserisce nell’indice (annidate in ordine di livello di intestazione) - ciò significa che il tuo markdown deve essere sintatticamente corretto.

# intestazione 1
## intestazione 2
### intestazione 3
#### intestazione 4
##### intestazione 5
###### intestazione 6

Puoi liberamente tornare indietro e avanti tra i livelli di intestazione, ma l’ordine deve essere corretto

# intestazione 2 
## intestazione 3
## intestazione 3
### intestazione 4
## intestazione 3
# intestazione 2

ecc...

Affinché i link nell’indice funzionino, le intestazioni devono avere attributi id. Il componente controllerà se le intestazioni hanno già degli id e, se sì, li rispetterà. Questo è utile se hai mai creato manualmente un indice.

Se le intestazioni non hanno id, ne genererà uno per ciascuna intestazione basato sul suo testo (i caratteri indesiderati vengono rimossi)

una volta fatto tutto ciò, aggiungerà anche un link accanto a ciascun pulsante che porta direttamente a quella sezione:

Impostazioni

Nome Descrizione
livello di fiducia minimo per creare l’indice Il livello di fiducia minimo che un utente deve avere per vedere il pulsante dell’indice nel composer
testo indice composer Testo che appare nella parte superiore del pannello di anteprima del composer per indicare che l’argomento avrà un indice
categorie indice automatico Abilita automaticamente l’indice per gli argomenti in queste categorie
tag indice automatico Abilita automaticamente l’indice per gli argomenti con questi tag
intestazione minima indice Numero minimo di intestazioni in un argomento affinché l’indice venga visualizzato

Traduzioni

Traduzione Default
table_of_contents indice
insert_table_of_contents Inserisci indice
jump_bottom Vai alla fine
toggle_toc.show_timeline Cronologia
toggle_toc.show_toc Contenuti

Il tema include tre stringhe che puoi tradurre o modificare.

table_of_contents: "indice"

questa viene utilizzata per il pulsante che apre l’indice sul mobile

insert_table_of_contents: "Inserisci indice"

questa è utilizzata come testo per il pulsante dell’indice nel menu ingranaggi del composer

topic_will_contain_a_table_of_contents: "Questo argomento conterrà un indice"

Questo è il testo che appare nell’anteprima del composer per indicare che verrà generato un indice per l’argomento

Come creo un indice?

  1. Scrivi un argomento con intestazioni sintatticamente corrette
  2. Clicca sul pulsante dell’indice nel menu ingranaggi (appare solo durante la creazione di un argomento regolare - le risposte e le MP vengono ignorate)
  3. Profitto.

Cosa succede al widget di avanzamento dell’argomento quando un argomento ha un indice?

Come puoi probabilmente immaginare, non c’è spazio per mostrarli entrambi contemporaneamente, quindi il modo in cui questo componente funziona è il seguente:

in un argomento con un indice, il widget di avanzamento dell’argomento è nascosto mentre il primo post è sullo schermo, e vedi invece l’indice.

Una volta che scorri oltre il primo post, l’indice non scorre con te e viene mostrato invece l’avanzamento dell’argomento mentre leggi le risposte.

Quindi, i primi post ricevono l’indice, e i post successivi ricevono il widget di avanzamento dell’argomento regolare.

Questo avviene sia su desktop che su mobile.

Ci sono degli svantaggi nell’uso di questo componente?

Nessuno di cui io sia a conoscenza, tutte le modifiche vengono effettuate lato client. Quindi puoi facilmente rimuovere il componente e i tuoi post torneranno come erano prima dell’installazione.

Limitazioni

Questo componente presuppone il layout standard degli argomenti. Di conseguenza, non funzionerà con temi che modificano tale layout, come il tema Vincent. Il supporto per i temi popolari che modificano il layout arriverà in una fase successiva sotto forma di impostazioni del componente.

Crediti

Ho iniziato con la libreria tocify.js di Greg Franko. Tuttavia, sembra che non sia stata aggiornata da un po’, quindi questo è essenzialmente un hard-fork che rimuove molte funzionalità non necessarie, integra e stilizza il resto per Discourse.

Quindi, non ci sono richieste esterne e la dimensione totale è di circa 4kb gzip.

Un grande ringraziamento a @erlend_sh per il prezioso feedback e a @david per il suo aiuto nelle traduzioni.

:discourse2: Ospitato da noi? I componenti tema sono disponibili per l’uso sui nostri piani Pro, Business ed Enterprise.

182 Mi Piace
Automatic Table of Contents generation
Creative Uses of Discourse
Wiki improvement – Split content into multiple sections?
:cn: DiscoTOC 自动内容表格
Timeline with labelled step by step sections - how is this achieved?
Traditional multi level hierarchy vs flat discourse hierarchy
What are the different ways to customize content inside a post (custom attributes and such)
Is anyone working on a Discourse Wiki?
Tagged topic progress bar - feasible or not?
Big Header - Little Header
Theme Components - Can Discourse hosted sites install them?
How to get topic navigation menu
Reader Mode
How To Add Marker To Table Of Contents Feature?
How do you create a table of content like this one?
How can i show a floating sticky 300x250 Adsense Ad on right side bar of topic page above the fold?
How to add table of content sidebar beside a topic?
How do I add a table of contents sidebar to a topic?
Cannot deep link to anchor in text
How can I compare arbitrary revisions of a post?
Understanding Discourse for new users
Problem with DiscoTOC: TypeError: _offsetCalculator.headerOffset is not a function
How to create an In-app Knowledge Base with Discourse Docs?
OP Contents on Progress Bar
How to get topic sidebar
Customizing your site with existing theme components
Link to headers (anchor links)
Outline Enable
What is essential content for a new community?
Tools for creating image-heavy articles
Layouts Plugin
Adding DiscoTOC to Published Pages
Customize Your Site Branding
Discourse Doc Categories
Gif icon not displaying and showing error
Must have plugins and components for Discourse?
I created a bookmarklet to create the table of content for forum posts
Could a List of Recommended Topics Be Added to the Top Menu?
Living with corrupted SVGs for almost a year. Need Help!
Something recently changed, can't increase `--topic-body-width`
How to enable side navigation?
Displaying "full topic" text on category page + access to subcategory from menu bar
Improve iPad screen real estate
Missing anchor links in certain TOC topics?
DiscoTOC not showing in composer after latest component update
Missing anchor links in certain TOC topics?
How to create a documentation theme used by discourse
Where's Jump to end?
Handling anchors in posts created with markdown
Reader Mode
Hidden Timeline button
Horizon Theme
Collections
Bulk Export of Raw Post Sources with Markup
AI summary in topic header
Contents button and Timeline button floating unexpectedly
:cn: Discourse Post Formatting Guide 加点格式,让帖子多姿多彩
Wiki table of contents on pro plan
Auto-Linkify Words
Missing strings (DiscoTOC)
Copy pasting nested lists from Word into a post
?page=n URLs have high CLS hence bad SEO
Require users to "Reply as Linked Topic"
Links not working
Using Posts as a Wiki?
Using Posts as a Wiki?
Is anyone working on a Discourse Wiki?
Using Posts as a Wiki?
Using Posts as a Wiki?
DiscoTOC & Brand Header - using together
Docs: Add link to top menu
More than two levels of [details]
Category page with fixed organization of topics
Blog Post Styling
Inlink the topics within the same article
Navigating to local URL fragment doesn't modify browser history
Relating to Profile Picture Scroll Functionality
Need to include PGN (chess game notation) in a post
How can I get a table of contents for my docs?
Linking to a heading within a post
Topic list on the right side
Set up Slack notifications using the discourse-chat-integration plugin
Wrong title in the history popup (firefox)
Possible to insert post in a topic
I created a bookmarklet to create the table of content for forum posts