[GH-ISSUE #3521] [FR] Table of contents for documents #1592

Open
opened 2026-03-23 20:51:26 +00:00 by mirror · 14 comments
Owner

Originally created by @tio-trom on GitHub (Sep 24, 2023).
Original GitHub issue: https://github.com/AppFlowy-IO/AppFlowy/issues/3521

Description

Would be very useful to have a table of contents based on the Headings of a document. This way you can structure a document better. This can be added to a right pane.

Impact

For long documents it is essential to be able to jump to "chapters", that can be represented with "headings" in markdown.

Additional Context

No response

Originally created by @tio-trom on GitHub (Sep 24, 2023). Original GitHub issue: https://github.com/AppFlowy-IO/AppFlowy/issues/3521 ### Description Would be very useful to have a table of contents based on the Headings of a document. This way you can structure a document better. This can be added to a right pane. ### Impact For long documents it is essential to be able to jump to "chapters", that can be represented with "headings" in markdown. ### Additional Context _No response_
Author
Owner

@LucasXu0 commented on GitHub (Sep 25, 2023):

@tio-trom Do you mean the outline block?

image

<!-- gh-comment-id:1732781614 --> @LucasXu0 commented on GitHub (Sep 25, 2023): @tio-trom Do you mean the outline block? ![image](https://github.com/AppFlowy-IO/AppFlowy/assets/11863087/2c503759-101d-453e-98b6-897148ad644e)
Author
Owner

@tio-trom commented on GitHub (Sep 25, 2023):

I mean something like Zettlr has:
2023-09-25_03-50

Where the Headings become "chapters" and when you click one it scrolls to it. If you know what I mean.

<!-- gh-comment-id:1732783634 --> @tio-trom commented on GitHub (Sep 25, 2023): I mean something like Zettlr has: ![2023-09-25_03-50](https://github.com/AppFlowy-IO/AppFlowy/assets/38043315/c8683ed2-3344-4de3-ab3e-924ad840c3ce) Where the Headings become "chapters" and when you click one it scrolls to it. If you know what I mean.
Author
Owner

@LucasXu0 commented on GitHub (Sep 25, 2023):

Where the Headings become "chapters" and when you click one it scrolls to it. If you know what I mean.

I believe the outline block is precisely what you're looking for, but it's currently displayed on the page instead of in the sidebar.

https://github.com/AppFlowy-IO/AppFlowy/assets/11863087/efc27b34-f542-466f-b7ef-673753997a47

<!-- gh-comment-id:1732984116 --> @LucasXu0 commented on GitHub (Sep 25, 2023): > Where the Headings become "chapters" and when you click one it scrolls to it. If you know what I mean. I believe the outline block is precisely what you're looking for, but it's currently displayed on the page instead of in the sidebar. https://github.com/AppFlowy-IO/AppFlowy/assets/11863087/efc27b34-f542-466f-b7ef-673753997a47
Author
Owner

@tio-trom commented on GitHub (Sep 25, 2023):

Ahhh ok...yes that's what I meant, but positioning it like that makes it less efficient if you want to have a quick access you have to always scroll up. Would make more sense in a separate tab or at least a scroll to top icon somewhere.

<!-- gh-comment-id:1733678414 --> @tio-trom commented on GitHub (Sep 25, 2023): Ahhh ok...yes that's what I meant, but positioning it like that makes it less efficient if you want to have a quick access you have to always scroll up. Would make more sense in a separate tab or at least a scroll to top icon somewhere.
Author
Owner

@emmggi commented on GitHub (Sep 25, 2023):

It makes a lot more sense to me, from a practical standpoint, to have it in a panel. A block would be useful when exporting to a PDF or similar.

<!-- gh-comment-id:1733927657 --> @emmggi commented on GitHub (Sep 25, 2023): It makes a lot more sense to me, from a practical standpoint, to have it in a panel. A block would be useful when exporting to a PDF or similar.
Author
Owner

@LucasXu0 commented on GitHub (Sep 26, 2023):

Would make more sense in a separate tab or at least a scroll to top icon somewhere.
Sounds reasonable.

I see. @tio-trom @emmggi so do you prefer to display the characters on the panel or the sidebar rather than in the document?

<!-- gh-comment-id:1734982568 --> @LucasXu0 commented on GitHub (Sep 26, 2023): > Would make more sense in a separate tab or at least a scroll to top icon somewhere. Sounds reasonable. I see. @tio-trom @emmggi so do you prefer to display the characters on the panel or the sidebar rather than in the document?
Author
Owner

@tio-trom commented on GitHub (Sep 26, 2023):

Would make more sense in a separate tab or at least a scroll to top icon somewhere.
Sounds reasonable.

I see. @tio-trom @emmggi so do you prefer to display the characters on the panel or the sidebar rather than in the document?

I think it makes a lot more sense. It is helpful to jump to sections in a document. If you put it at the top you always have to scroll up to then jump to certain sections.

<!-- gh-comment-id:1735487474 --> @tio-trom commented on GitHub (Sep 26, 2023): > > Would make more sense in a separate tab or at least a scroll to top icon somewhere. > > Sounds reasonable. > > I see. @tio-trom @emmggi so do you prefer to display the characters on the panel or the sidebar rather than in the document? I think it makes a lot more sense. It is helpful to jump to sections in a document. If you put it at the top you always have to scroll up to then jump to certain sections.
Author
Owner

@emmggi commented on GitHub (Sep 29, 2023):

@LucasXu0 I'm not sure about the design. I think having a separate panel for outline that can be toggled on/off makes most sense.

<!-- gh-comment-id:1740942694 --> @emmggi commented on GitHub (Sep 29, 2023): @LucasXu0 I'm not sure about the design. I think having a separate panel for outline that can be toggled on/off makes most sense.
Author
Owner

@YBYCS commented on GitHub (Dec 14, 2023):

I also really need this feature.

<!-- gh-comment-id:1855225172 --> @YBYCS commented on GitHub (Dec 14, 2023): I also really need this feature.
Author
Owner

@annieappflowy commented on GitHub (Dec 16, 2023):

@YBYCS , did you mean having the outline floated on a separate panel?

<!-- gh-comment-id:1858657263 --> @annieappflowy commented on GitHub (Dec 16, 2023): @YBYCS , did you mean having the outline floated on a separate panel?
Author
Owner

@YBYCS commented on GitHub (Dec 16, 2023):

@YBYCS , did you mean having the outline floated on a separate panel?

Yes, I believe this contributes to efficiency.

<!-- gh-comment-id:1858659065 --> @YBYCS commented on GitHub (Dec 16, 2023): > @YBYCS , did you mean having the outline floated on a separate panel? Yes, I believe this contributes to efficiency.
Author
Owner

@dandv commented on GitHub (Dec 8, 2024):

Having the table of contents in a panel would make navigation easier than if it was only at the top of the document.

Consider how much easier it is to navigate among pages in Notion given they are displayed in a tree on the left side. If that tree were at the top and scrolled out, you'd have to scroll up to the top every time you wanted to navigate somewhere.

Notion also displays an automatic table of contents on the right.

In the same vein, editors have a "preview" of the file lines in the right pane.

<!-- gh-comment-id:2525375883 --> @dandv commented on GitHub (Dec 8, 2024): Having the table of contents in a panel would make navigation easier than if it was only at the top of the document. Consider how much easier it is to navigate among pages in Notion given they are displayed in a tree on the left side. If that tree were at the top and scrolled out, you'd have to scroll up to the top every time you wanted to navigate somewhere. Notion also displays an automatic table of contents on the right. In the same vein, editors have a "preview" of the file lines in the right pane.
Author
Owner

@Yacine-Benali commented on GitHub (Dec 25, 2024):

Yeah this feature is a must for me especially when dealing with big documents. its the only thing preventing me from migrating form obsidian right now

<!-- gh-comment-id:2561903321 --> @Yacine-Benali commented on GitHub (Dec 25, 2024): Yeah this feature is a must for me especially when dealing with big documents. its the only thing preventing me from migrating form obsidian right now
Author
Owner

@zhaob1n commented on GitHub (Feb 18, 2025):

Would make more sense in a separate tab or at least a scroll to top icon somewhere.
Sounds reasonable.

I see. @tio-trom @emmggi so do you prefer to display the characters on the panel or the sidebar rather than in the document?

I suggest a toggleable sidebar from the right, similar to the current left side bar.

<!-- gh-comment-id:2665970142 --> @zhaob1n commented on GitHub (Feb 18, 2025): > > Would make more sense in a separate tab or at least a scroll to top icon somewhere. > > Sounds reasonable. > > I see. [@tio-trom](https://github.com/tio-trom) [@emmggi](https://github.com/emmggi) so do you prefer to display the characters on the panel or the sidebar rather than in the document? I suggest a toggleable sidebar from the right, similar to the current left side bar.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
AppFlowy-IO/AppFlowy#1592
No description provided.