| t | | t | |
| <table align="right"><tr><td><div class="toc"> | | |
| Contents: | | |
| <ul> | | |
| <li><a href="#To_Do">To Do</a></li> | | |
| <ul> | | |
| <li><a href="#done">done</a></li> | | |
| </ul> | | |
| <li><a href="#Features_I_want_the_blog_to_have">Features I want the blog to have</a></li> | | |
| <ul> | | |
| <li><a href="#Storage/Format">Storage/Format</a></li> | | |
| <li><a href="#Layout">Layout</a></li> | | |
| <li><a href="#Comments">Comments</a></li> | | |
| <li><a href="#Features_that_are_not_done_yet">Features that are not done yet</a></li> | | |
| </ul> | | |
| <li><a href="#Ideas_and_references">Ideas and references</a></li> | | |
| <ul> | | |
| <li><a href="#Blogs_that_I_like_the_look_of">Blogs that I like the look of</a></li> | | |
| <li><a href="#Blog_idea_resources">Blog idea resources</a></li> | | |
| </ul> | | |
| <li><a href="#design_details_for_ProcessorMultipageBlog">design details for ProcessorMultipageBlog</a></li> | | |
| <ul> | | |
| <li><a href="#page_names">page names</a></li> | | |
| <li><a href="#discussion_page_names">discussion page names</a></li> | | |
| <li><a href="#meta_data_format">meta data format</a></li> | | |
| <li><a href="#meta_data_format_for_discussion_pages">meta data format for discussion pages</a></li> | | |
| <li><a href="#processor_arguments">processor arguments</a></li> | | |
| <li><a href="#processor_actions">processor actions</a></li> | | |
| </ul> | | |
| </ul> | | |
| </div></td></tr></table> | | |
| <p> | | |
| Here are things I am working on finishing for the MultipageBlog feature. | | |
| <p> | | |
| Here are the test blogs: | | |
| <ul><li><a href="https://bird.org/test/TestBlog">test:TestBlog</a> - single-page | | |
| <li><a href="http://bird.org/test/TestProcessorMultipageBlog">test:TestProcessorMultipageBlog</a> - multi-page | | |
| </ul> | | |
| <p> | | |
| Here is a sample personal blog (that is multi-page), see: | | |
| <p> | | |
| <a href="https://bird.org/tbwiki/TimsBlog">https://bird.org/tbwiki/TimsBlog</a> | | |
| <p> | | |
| <h1><a name="To_Do">To Do</a> | | |
| <span align=right class="section_edit_link">[<a href="/tbwiki/Multipage_Blog_Dev_Notes?action=edit§ion=To_Do">edit section</a>]</font></span> | | |
| </h1> | | |
| <ul><li>Layout: | | |
| <ul><li>Make it look like Jeff Geerling's blog | | |
| <ul><li>**1** <b> <i>create preview page</i> </b> | | |
| <ul><li>blog page is a single-column list of shortened blog entries | | |
| </ul><li>link takes you to an individual blog entry | | |
| <li>entry page: | | |
| <ul><li>title, date, content, comments, search bar | | |
| </ul></ul></ul><li>Housekeeping: | | |
| <ul><li>make a sidebar page for the test blog | | |
| <ul><li>define default sidebar (show most recent 3 blog entries as a linked list, excluding the current entry) | | |
| </ul> | | |
| </ul> | | |
| </ul> | | |
| <p> | | |
| <ul><li>Features: | | |
| <ul><li>make a default sidebar, if no sidebar page is provided | | |
| <li>don't show the entry edit link if user does not match the entry author | | |
| </ul> | | |
| </ul> | | |
| <p> | | |
| <ul><li>create comment section | | |
| <ul><li>have each comment be its own page? or all comments on one talk page? | | |
| <ul><li>leaning towards each comment its own page | | |
| <ul><li>page name would be: comment_for_Test_blog_2025-10-11_22:50:27.11_on_2025-10-12_8:45:23.02 | | |
| <ul><li>prefix is comment_for_ | | |
| <li>separator is _on_ | | |
| </ul></ul><li>all on one page: | | |
| <ul><li>page name would be: Talk:Test_blog_2025-10-11_22:50:27.11 | | |
| </ul><li>either parse a single page into a complex (threaded) display | | |
| <li>or parse multiple pages into a complex (threaded) display | | |
| </ul> | | |
| </ul> | | |
| </ul> | | |
| <p> | | |
| <ul><li>Fix bugs: | | |
| <ul><li>blog entry list shows last entry first and last in list | | |
| </ul> | | |
| </ul> | | |
| <p> | | |
| <ul><li>Niceties: (nice to have items) | | |
| <ul><li>add 'return to Blog' on page showing 'saved' on a page edit | | |
| <ul><li>see 'save' action in tbwiki_engine.py | | |
| </ul><li>add a 'share' button, with a fixed url for accessing a blog entry | | |
| in blog context (not using entry number, which will change over time) | | |
| </ul> | | |
| </ul> | | |
| <p> | | |
| <h2><a name="done">done</a> | | |
| <span align=right class="section_edit_link">[<a href="/tbwiki/Multipage_Blog_Dev_Notes?action=edit§ion=done">edit section</a>]</font></span> | | |
| </h2> | | |
| <ul><li>2025-10-11 - by default, show pages in reverse chronological order | | |
| <li>2025-10-11 - add instructions to Blog entry form | | |
| <ul><li>markdown help, and tags field help (use commas for separators) | | |
| </ul><li>2025-10-11 - rename ProcessorBlogMultipage to ProcessorMultipageBlog | | |
| </ul> | | |
| <p> | | |
| <h1><a name="Features_I_want_the_blog_to_have">Features I want the blog to have</a> | | |
| <span align=right class="section_edit_link">[<a href="/tbwiki/Multipage_Blog_Dev_Notes?action=edit§ion=Features_I_want_the_blog_to_have">edit section</a>]</font></span> | | |
| </h1> | | |
| <p> | | |
| <h2><a name="Storage/Format">Storage/Format</a> | | |
| <span align=right class="section_edit_link">[<a href="/tbwiki/Multipage_Blog_Dev_Notes?action=edit§ion=Storage/Format">edit section</a>]</font></span> | | |
| </h2> | | |
| <ul><li>use individual pages for each post | | |
| <ul><li>Each page has a header with fixed data fields, and then the blog content | | |
| <li>The talk page has | | |
| <li>the page name has the format: | | |
| </ul> | | |
| </ul> | | |
| <p> | | |
| <h2><a name="Layout">Layout</a> | | |
| <span align=right class="section_edit_link">[<a href="/tbwiki/Multipage_Blog_Dev_Notes?action=edit§ion=Layout">edit section</a>]</font></span> | | |
| </h2> | | |
| <ul><li>nicer Blog layout | | |
| <ul><li>sidebar with navigation | | |
| <ul><li>recent posts | | |
| <li>categories | | |
| <li>search bar | | |
| <li>tags | | |
| </ul><li>page with background, layout, blog css | | |
| </ul> | | |
| </ul> | | |
| <p> | | |
| <ul><li>use graphics instead of characters for navigation arrows | | |
| <li>customizable background image | | |
| </ul> | | |
| <p> | | |
| <h2><a name="Comments">Comments</a> | | |
| <span align=right class="section_edit_link">[<a href="/tbwiki/Multipage_Blog_Dev_Notes?action=edit§ion=Comments">edit section</a>]</font></span> | | |
| </h2> | | |
| <ul><li>support for comments | | |
| <ul><li>all-in-one - use talk page, with indentation for nesting | | |
| </ul> | | |
| </ul> | | |
| <p> | | |
| <ul><li>create add-post form | | |
| <ul><li>page schema has title, content, date, tags, id | | |
| </ul> | | |
| </ul> | | |
| <p> | | |
| <ul><li>navigation to previous and next posts | | |
| <ul><li>response area | | |
| <ul><li>show threaded responses with "reply" button on each one | | |
| <li>response form with "post comment button | | |
| </ul> | | |
| </ul> | | |
| </ul> | | |
| <p> | | |
| <ul><li>show date, tags, response count | | |
| </ul> | | |
| <p> | | |
| <ul><li>ability to drag and drop images to upload to wiki | | |
| </ul> | | |
| <p> | | |
| <h2><a name="Features_that_are_not_done_yet">Features that are not done yet</a> | | |
| <span align=right class="section_edit_link">[<a href="/tbwiki/Multipage_Blog_Dev_Notes?action=edit§ion=Features_that_are_not_done_yet">edit section</a>]</font></span> | | |
| </h2> | | |
| <p> | | |
| <h1><a name="Ideas_and_references">Ideas and references</a> | | |
| <span align=right class="section_edit_link">[<a href="/tbwiki/Multipage_Blog_Dev_Notes?action=edit§ion=Ideas_and_references">edit section</a>]</font></span> | | |
| </h1> | | |
| <h2><a name="Blogs_that_I_like_the_look_of">Blogs that I like the look of</a> | | |
| <span align=right class="section_edit_link">[<a href="/tbwiki/Multipage_Blog_Dev_Notes?action=edit§ion=Blogs_that_I_like_the_look_of">edit section</a>]</font></span> | | |
| </h2> | | |
| <ul><li><a href="https://www.jeffgeerling.com/blog/2025/how-much-radiation-can-pi-handle-space">https://www.jeffgeerling.com/blog/2025/how-much-radiation-can-pi-handle-space</a> | | |
| <li><a href="https://borretti.me/article/unbundling-tools-for-thought">https://borretti.me/article/unbundling-tools-for-thought</a> | | |
| <li><a href="https://caseyhandmer.wordpress.com/">https://caseyhandmer.wordpress.com/</a> | | |
| <ul><li>obviously, this is a wordpress blog | | |
| </ul><li><a href="https://idlewords.com/">https://idlewords.com/</a> | | |
| <li><a href="https://daniel.haxx.se/blog/2025/10/10/">https://daniel.haxx.se/blog/2025/10/10/</a> | | |
| <li><a href="https://pebblebed.com/blog/kernel-bugs">https://pebblebed.com/blog/kernel-bugs</a> - simple and effective | | |
| <ul><li>and <a href="https://pebblebed.com/blog">https://pebblebed.com/blog</a> | | |
| </ul> | | |
| </ul> | | |
| <p> | | |
| <h2><a name="Blog_idea_resources">Blog idea resources</a> | | |
| <span align=right class="section_edit_link">[<a href="/tbwiki/Multipage_Blog_Dev_Notes?action=edit§ion=Blog_idea_resources">edit section</a>]</font></span> | | |
| </h2> | | |
| <ul><li>(read this first) <a href="https://borretti.me/article/unbundling-tools-for-thought">https://borretti.me/article/unbundling-tools-for-thought</a> | | |
| <li><a href="https://jekyllrb.com/docs/posts/">https://jekyllrb.com/docs/posts/</a> | | |
| <li>See <a href="https://bird.org/tbwiki/Blog_Layouts_and_Features">https://bird.org/tbwiki/Blog_Layouts_and_Features</a> | | |
| </ul> | | |
| <p> | | |
| <h1><a name="design_details_for_ProcessorMultipageBlog">design details for ProcessorMultipageBlog</a> | | |
| <span align=right class="section_edit_link">[<a href="/tbwiki/Multipage_Blog_Dev_Notes?action=edit§ion=design_details_for_ProcessorMultipageBlog">edit section</a>]</font></span> | | |
| </h1> | | |
| <p> | | |
| Here are some details about ProcessorMultipageBlog. | | |
| <p> | | |
| <h2><a name="page_names">page names</a> | | |
| <span align=right class="section_edit_link">[<a href="/tbwiki/Multipage_Blog_Dev_Notes?action=edit§ion=page_names">edit section</a>]</font></span> | | |
| </h2> | | |
| blog pages consist of a prefix, and a date and time stamp. | | |
| <p> | | |
| Here are some example page names: | | |
| <ul><li>Test_blog_2023-03-31_11:12:34 | | |
| <li>Space_blog_2023-04-03_15:21:56 | | |
| </ul> | | |
| <p> | | |
| Note that '_blog_' is not required. It is a convention to use | | |
| '_blog_' in the prefix of the blog page name, though. | | |
| <p> | | |
| <h2><a name="discussion_page_names">discussion page names</a> | | |
| <span align=right class="section_edit_link">[<a href="/tbwiki/Multipage_Blog_Dev_Notes?action=edit§ion=discussion_page_names">edit section</a>]</font></span> | | |
| </h2> | | |
| Comments are saved on the talk page for a blog page, and will | | |
| thus have names like: | | |
| <ul><li>Talk:Test_blog_2023-03-31_11:12:34 | | |
| <li>Talk:Space_blog_2023-04-03_15:21:56 | | |
| </ul> | | |
| <p> | | |
| <h2><a name="meta_data_format">meta data format</a> | | |
| <span align=right class="section_edit_link">[<a href="/tbwiki/Multipage_Blog_Dev_Notes?action=edit§ion=meta_data_format">edit section</a>]</font></span> | | |
| </h2> | | |
| Here is a sample page from a blog, showing the meta-data format. | | |
| <p> | | |
| Note that a page can be edited as a wiki page. | | |
| <ul><div style="background-color:#ffffe0; padding:5px; border-style: solid solid solid solid; border-width: 1px 1px 1px 1px;"> | | |
| <pre>---- | | |
| ; Subject: Blog entry title | | |
| ; Date: 2023-03-31_11:12:34 | | |
| ; Tags: test, blog, first | | |
| ; Author: tbird | | |
| ---- | | |
| Blog entry content | | |
| * in ''tbwiki'' Markdown!! | | |
| Hurray!</pre></div></ul> | | |
| | | |
| <p> | | |
| <h2><a name="meta_data_format_for_discussion_pages">meta data format for discussion pages</a> | | |
| <span align=right class="section_edit_link">[<a href="/tbwiki/Multipage_Blog_Dev_Notes?action=edit§ion=meta_data_format_for_discussion_pages">edit section</a>]</font></span> | | |
| </h2> | | |
| Here is a sample page from a blog, showing the discussion meta-data format. | | |
| <p> | | |
| Note that a page can be edited as a wiki page. | | |
| <div style="background-color:#ffffe0; padding:5px; border-style: solid none solid none; border-width: 1px 1px 1px 1px;"> | | |
| <p> | | |
| <b>TBD</b> | | |
| </div> | | |
| <p> | | |
| <h2><a name="processor_arguments">processor arguments</a> | | |
| <span align=right class="section_edit_link">[<a href="/tbwiki/Multipage_Blog_Dev_Notes?action=edit§ion=processor_arguments">edit section</a>]</font></span> | | |
| </h2> | | |
| <ul><li>prefix=<page_prefix> - a string indicating the prefix for the set of pages that make up the blog | | |
| <li>title - blog title | | |
| <li>sidebar=<sidebar_page_name> - the name of the wiki page which has the sidebar definition | | |
| <li>entries_to_show=x - number of entries to show (default is 5) | | |
| <li>show_standalone=1 - show page without wiki decorations | | |
| <li>show_edit_link=1 - show a link to edit the entry | | |
| <li>background_image - filename of background image | | |
| <li>show_entry_list=1 - show a list of entries, rather than the blog itself | | |
| </ul> | | |
| <p> | | |
| <h2><a name="processor_actions">processor actions</a> | | |
| <span align=right class="section_edit_link">[<a href="/tbwiki/Multipage_Blog_Dev_Notes?action=edit§ion=processor_actions">edit section</a>]</font></span> | | |
| </h2> | | |
| <ul><li>show_entry_form - used to show the edit form for creating a new blog entry | | |
| <li>add_entry - used to save a new blog entry | | |
| <li>main - show the blog | | |
| </ul> | | |
| <p> | | |
| <p> | | |