]> git.vanrenterghem.biz Git - git.ikiwiki.info.git/blobdiff - doc/todo/feed_enhancements_for_inline_pages.mdwn
Revert "removed"
[git.ikiwiki.info.git] / doc / todo / feed_enhancements_for_inline_pages.mdwn
index 9fb0867b42ae4b82e67d5c1f48eb1375cd856e44..fde5ac01f1a5b4ff9052bbbd2d0999fdb4b21eed 100644 (file)
@@ -1,64 +1,51 @@
 [[!template id=gitbranch branch=GiuseppeBilotta/inlinestuff author="Giuseppe Bilotta"]]
 
 [[!template id=gitbranch branch=GiuseppeBilotta/inlinestuff author="Giuseppe Bilotta"]]
 
-A few patches to clean up and improve feed management for inline pages.
+I rearranged my patchset once again, to clearly identify the origin and
+motivation of each patch, which is explained in the following.
+
+In my ikiwiki-based website I have the following situation:
+
+* `$config{usedirs}` is 1
+* there are a number of subdirectories (A/, B/, C/, etc)
+  with pages under each of them (A/page1, A/page2, B/page3, etc)
+* 'index pages' for each subdirectory: A.mdwn, B.mdwn, C.mdwn;
+  these are rather barebone, only contain an inline directive for their
+  respective subpages and become A/index.html, etc
+* there is also the main index.mdwn, which inlines A.mdwn, B.mdwn, C.mdwn,
+  etc (i.e. the top-level index files are also inlined on the homepage)
+
+With the upstream `inline` plugin, the feeds for A, B, C etc are located
+in `A/index.atom`, `B/index.atom`, etc; their title is the wiki name and
+their main link goes to the wiki homepage rather than to their
+respective subdir (e.g. I would expect `A/index.atom` to have a link to
+`http://website/A` but it actually points to `http://website/`).
+
+This is due to them being generated from the main index page, and is
+fixed by the first patch: ‘inline: base feed urls on included page
+name’. As explained in the commit message for the patch itself, this is
+a ‘forgotten part’ from a previous page vs destpage fix which has
+already been included upstream.
+
+The second patch, ‘inline: improve feed title and description
+management’, aligns feed title and description management by introducing
+a `title` option to complement `description`, and by basing the
+description on the page description if the entry is missing. If no
+description is provided by either the directive parameter or the page
+metadata, we use a user-configurable default based on both the page
+title and wiki name rather than hard-coding the wiki name as description.
+
+The third patch, ‘inline: allow assigning an id to postform/feedlink’,
+does just that. I don't currently use it, but it can be particularly
+useful in the postform case for example for scriptable management of
+multiple postforms in the same page.
+
+In one of my wiki setups I had a terminating '/' in `$config{url}`. You
+mention that it should not be present, but I have not seen this
+requirement described anywhere. Rather than restricting the user input,
+I propose a patch that prevents double slashes from appearing in links
+created by `urlto()` by fixing the routine itself.
+
+The inline plugin is also updated (in a separate patch) to use `urlto()`
+rather than hand-coding the feed urls. You might want to keep this
+change even if you discard the urlto patch.
 
 
-* the first patch simply replaces the id attribute in the default template for feedlinks with a class attribute by the same name. This is necessary in pages with multiple inlines to guarantee correctness
-
-  > Ok, but blogform.tmpl has the same problem. And either change can need
-  > CSS changes. (blogform in particular is used in style.css as an id.)
-  > So this needs more documentation and associated work. --[[Joey]]
-
-  >> I didn't include blogform in the change because the case of two
-  >> blog post forms in the same page is probably extremely rare. But
-  >> then again I remember doing having them in one of my ikiwiki
-  >> draftings, so I rewrote the patch to include blogform. I had
-  >> checked the distributed CSS for #feedlinks references, without
-  >> finding any. The new patch does include CSS changes for the
-  >> #blogform -> .blogform change. I have no idea on where to document
-  >> this change though.
-
-* the second patch tries to define the default description for a feed based not only on the wiki name, but also on the current page name. The actual way this is built might not be the optimal one, so I'm open to suggestions
-
-  > I don't really like using "wikiname/page" as the name of the feed. It's
-  > a bit too mechanical. I'd be ok with using just the page name,
-  > with a fallback to wikiname for the toplevel index. Or maybe
-  > something like "$wikiname's $page".
-  > 
-  > Also, shouldn't `pagetitle` be run on the page name? (Haven't checked.)
-  > --[[Joey]] 
-
-  >> The rewritten patch now uses the page title, obtained from meta if
-  >> possible. I introduce a new configuration key to customize
-  >> the actual automatic description allowing combinations of the wiki
-  >> name and page title.
-
-* the third patch passes the feed titles to the templates, changing the default templates to use these as title attributes for the links. a rel="alternate" attribute is also included
-
-  > Seems reasonable. Cherry-picked. Note that the title attribute
-  > will be shown by browsers as a tooltip. So I made it say 
-  > "$name (RSS feed)"
-
-  >> Good, thanks.
-
-* the fourth patch introduces a feedlinks parameter to the inline directive, to allow for the specifications of the locations where the feed links should appear. Currently, two options are allowed (head and body), plus both and none with obvious significance
-
-  > Hmm. This doesn't affect the feed links in the blogform.tmpl. Anyway,
-  > this is not something I see a real benefit of making configurable above
-  > the template editing level. I don't see any point whatsoever of
-  > allowing to turn off the feed links in the `<head>` -- they are not
-  > user-visible, and IIRC that is the recommended and most portable way
-  > to encode the information for feed discovery agents (rather than
-  > putting it in the body). And the sorry state of "modern" browsers, 
-  > such as chromium's support for RSS means that it still makes sense to 
-  > have user-visible feed buttons. If that changed, it would make sense to
-  > modify ikiwiki to globally remove them. --[[Joey]]
-
-  >> I was actually quite surprised myself by the lack of automatic feed
-  >> discovery in chromium (although I noticed there's a sort-of
-  >> official plugin to do it). Overall, I believe your critique is
-  >> well-founded, I'll scratch this patch.
-
-Instead, a new patch has been added, that fixes the url in the feeds to
-point to included page rather than the including one. This is actually
-a forgotten piece from the patch that based the feed paths on the
-included rather than the including page.