Merge branch 'master' of ssh://git.ikiwiki.info/srv/git/ikiwiki.info
[ikiwiki] / 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 ## Discussion Pages of Discussion Pages of...
103
104 Is it useful to have Discussion pages of Discussion pages (etc.)?  -- On
105 <http://www.gnu.org/software/hurd/hurd/building/cross-compiling/discussion.html>,
106 this possibility is offered.
107
108 ## Modifying [[plugins/inline]] for showing only an *appetizer*
109
110 Currently ikiwiki's inline plugin will either show the full page or nothing of
111 it.  Often that's too much.  One can manually use the [[plugins/toggle]] plugin
112 -- see the *News* section on <http://www.gnu.org/software/hurd/>.  Adding a new
113 mode to the inline plugin to only show an *appetizer* ending with *... (read
114 on)* after a customizable amount of characters (or lines) would be a another
115 possibility.  The *... (read on)* would then either toggle the full content
116 being displayed or link to the complete page.
117
118 > You're looking for [[plugins/more]] (or possibly a way to do that automatically, 
119 > I suppose. --[[Joey]] 
120
121 ## Prefix For the HTML Title
122
123 The title of each page (as in `<html><head><title>`...) should be prefixed with
124 *GNU Project - GNU Hurd -*.  We can either do this directly in `page.tmpl`, or
125 create a way to modify the `TITLE` template variable suitably.
126
127 ## [[plugins/inline]] feedfile option
128
129 Not that important.  Git commit b67632cdcdd333cf0a88d03c0f7e6e62921f32c3.  This
130 would be nice to have even when *not* using *usedirs*.  Might involve issues as
131 discussed in *N-to-M Mapping of Input and Output Files* on
132 [[plugins/contrib/texinfo]].
133
134 ## Unverified -- these may be bugs, but have yet to be verified
135
136   * ikiwiki doesn't change its internal database when \[[!meta date]] /
137     \[[!meta updated]] are added / removed, and thusly these meta values are
138     not promulgated in RSS / Atom feeds.
139
140     > I would rather see this filed as a bug, but FWIW, the problem
141     > is probably that meta does not override the mdate_3339
142     > template variable used by the atom and rss templates.
143     > (Meta does store ctime directly in the ikiwiki database, but cannot
144     > store mtime in \%pagemtime because it would mess up detection of when
145     > actual file mtimes change.) --[[Joey]]
146
147   * Complicated issue w.r.t. *no text was copied in this page*
148     ([[plugins/cutpaste]]) in RSS feed (only; not Atom?) under some conditions
149     (refresh only, but not rebuild?).  Perhaps missing to read in / parse some
150     files?
151
152   * [[plugins/recentchanges]]
153
154       * Creates non-existing links to changes.
155
156       * Invalid *directory link* with `--usedirs`.
157
158       * Doesn't honor `$timeformat`.
159
160       * Does create `recentchangees.*` files even if that is overridden.