Merge remote branch 'davrieb/autotag' into autotag
[ikiwiki.git] / doc / users / tschwinge.mdwn
1 [[!meta title="Thomas Schwinge"]]
2 # Thomas Schwinge
3
4 <tschwinge@gnu.org>  
5 <http://www.thomas.schwinge.homeip.net/>
6
7 I have converted the [GNU Hurd](http://www.gnu.org/software/hurd/)'s previous
8 web pages and previous wiki pages to a *[[ikiwiki]]* system; and all that while
9 preserving the previous content's history, which was stored in a CVS repository
10 for the HTML web pages and a TWiki RCS repository for the wiki; see
11 <http://www.gnu.org/software/hurd/colophon.html>.
12
13 # Issues to Work On
14
15 ## Stability of Separate Builds
16
17 The goal is that separate builds of the same source files should yield the
18 exactly same HTML code (of course, except for changes due to differences in
19 Markdown rendering, for example).
20
21   * Timestamps -- [[forum/ikiwiki__39__s_notion_of_time]], [[forum/How_does_ikiwiki_remember_times__63__]]
22
23     Git set's the current *mtime* when checking out files.  The result is that
24     <http://www.gnu.org/software/hurd/contact_us.html> and
25     <http://www.bddebian.com:8888/~hurd-web/contact_us/> show different *Last
26     edited* timestamps.
27
28     This can either be solved by adding a facility to Git to set the
29     checked-out files' *mtime* according to the *AuthorDate* / *CommitDate*
30     (which one...), or doing that retroactively with the
31     <http://www.gnu.org/software/hurd/set_mtimes> script before building, or
32     with a ikiwiki-internal solution.
33
34   * HTML character entities
35
36     <http://www.gnu.org/software/hurd/purify_html>
37
38 ## Tags -- [[bugs/tagged__40____41___matching_wikilinks]]
39
40 Tags should be a separate concept from wikilinks.
41
42 ### \[[!map]] behavior
43
44 The \[[!map]] on, for example,
45 <http://www.gnu.org/software/hurd/tag/open_issue_hurd.html>, should not show
46 the complete hierarchy of pages, but instead just the pages that actually *do*
47 contain the \[[!tag open_issue_hurd]].
48
49 > `tagged(open_issue_hurd)` in its pagespec should do that. --[[Joey]]
50
51 >> Well, that's exactly what this page contains: \[[!map
52 >> pages="tagged(open_issue_hurd) and !open_issues and !*/discussion"
53 >> show=title]]
54 >> 
55 >> This is currently rendered as can be seen on
56 >> <http://www.gnu.org/software/hurd/tag/open_issue_hurd.html>, but I'd imagine
57 >> it to be rendered by **only** linking to the pages that actually do contain
58 >> the tag, (**only** the outer leaf ones, which are *capturing stdout and
59 >> stderr*, *ramdisk*, *syncfs*, ...; but **not** to *hurd*, *debugging*,
60 >> *translator*, *libstore*, *examples*, ...).  Otherwise, the way it's being
61 >> rendered at the moment, it appears to the reader that *hurd*, *debugging*,
62 >> *translator*, *libstore*, *examples*, ... were all tagged, too, and not only
63 >> the outer ones.
64
65 ## Anchors -- [[ikiwiki/wikilink/discussion]]
66
67 ## Default Content for Meta Values -- [[plugins/contrib/default_content_for___42__copyright__42___and___42__license__42__]]
68
69 This will decrease to be relevant, as we're going to add copyright and
70 licensing headers to every single file.
71
72 ## [[bugs/img vs align]]
73
74 ## Texinfo -- [[plugins/contrib/texinfo]]
75
76 Not very important.  Have to consider external commands / files / security (see
77 [[plugins/teximg]] source code)?
78
79 ## Shortcuts -- [[plugins/shortcut/discussion]]
80
81 ## \[[!meta redir]] -- [[todo/__42__forward__42__ing_functionality_for_the_meta_plugin]]
82
83 Implement a checker that makes sure that no pages that use \[[!meta redir]]
84 redirect to another page (and are thus considered legacy pages for providing
85 stable URLs, for example) are linked to from other wiki pages.  This is useful
86 w.r.t. backlinks.  Alternative, the backlinks to the \[[!meta redir]]-using
87 pages could perhaps be passed on to the referred-to page?
88
89 > I found that backlinks was an easy way to find such links to such pages.
90 > (Although the redirection made it hard to see the backlinks!) --[[Joey]] 
91
92 ## \[[!meta redir]] -- tell what's going on
93
94 Add functionality that a text like *this page's content has moved to [new
95 page]; in a few seconds you'll be redirected thither* is displayed on every
96 page that uses \[[!meta redir]].
97
98 ## Sendmail -- [[todo/passwordauth:_sendmail_interface]]
99
100 ## [[bugs/Broken Parentlinks]]
101
102 ## Modifying [[plugins/inline]] for showing only an *appetizer*
103
104 Currently ikiwiki's inline plugin will either show the full page or nothing of
105 it.  Often that's too much.  One can manually use the [[plugins/toggle]] plugin
106 -- see the *News* section on <http://www.gnu.org/software/hurd/>.  Adding a new
107 mode to the inline plugin to only show an *appetizer* ending with *... (read
108 on)* after a customizable amount of characters (or lines) would be a another
109 possibility.  The *... (read on)* would then either toggle the full content
110 being displayed or link to the complete page.
111
112 > You're looking for [[plugins/more]] (or possibly a way to do that automatically, 
113 > I suppose. --[[Joey]] 
114
115 ## Prefix For the HTML Title
116
117 The title of each page (as in `<html><head><title>`...) should be prefixed with
118 *GNU Project - GNU Hurd -*.  We can either do this directly in `page.tmpl`, or
119 create a way to modify the `TITLE` template variable suitably.
120
121 ## [[plugins/inline]] feedfile option
122
123 Not that important.  Git commit b67632cdcdd333cf0a88d03c0f7e6e62921f32c3.  This
124 would be nice to have even when *not* using *usedirs*.  Might involve issues as
125 discussed in *N-to-M Mapping of Input and Output Files* on
126 [[plugins/contrib/texinfo]].
127
128 ## Unverified -- these may be bugs, but have yet to be verified
129
130   * ikiwiki doesn't change its internal database when \[[!meta date]] /
131     \[[!meta updated]] are added / removed, and thusly these meta values are
132     not promulgated in RSS / Atom feeds.
133
134     > I would rather see this filed as a bug, but FWIW, the problem
135     > is probably that meta does not override the mdate_3339
136     > template variable used by the atom and rss templates.
137     > (Meta does store ctime directly in the ikiwiki database, but cannot
138     > store mtime in \%pagemtime because it would mess up detection of when
139     > actual file mtimes change.) --[[Joey]]
140
141   * Complicated issue w.r.t. *no text was copied in this page*
142     ([[plugins/cutpaste]]) in RSS feed (only; not Atom?) under some conditions
143     (refresh only, but not rebuild?).  Perhaps missing to read in / parse some
144     files?
145
146   * [[plugins/recentchanges]]
147
148       * Creates non-existing links to changes.
149
150       * Invalid *directory link* with `--usedirs`.
151
152       * Doesn't honor `$timeformat`.
153
154       * Does create `recentchangees.*` files even if that is overridden.