forked from arpitjain11/ikiwiki
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
11 changed files
with
214 additions
and
5 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,9 @@ | ||
I turned on the sidebar plugin, with global_sidebars on (in the web setup page), created a sidebar page in the root, and edited the sidebar a few times. | ||
|
||
I then noticed that all pages on the root had been updated with a sidebar, but no subpages (i.e. a/b). Only after editing a subpage did it get a sidebar. Editing sidebar itself only updated subpages with sidebars, the other subpages had not been refreshed (proven by their unchanged filesystem date) | ||
|
||
After calling ikiwiki --setup on the command line all pages were updated. So this seems to be a difference between web-started --setup and command-line --setup. Or it just doesn't work the first time --setup is called after sidebars are enabled. | ||
|
||
|
||
|
||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,36 @@ | ||
Hi, | ||
I am trying to build a template. The compilation of this template results in a weird exception. I have isolated the cause of the exception to the following point: | ||
|
||
If i have this in the template code: | ||
|
||
\[[!inline<br/> | ||
pages="\<TMPL_VAR SEL_PAGES\>"<br/> | ||
template=extract-entry<br/> | ||
\]]<br/> | ||
|
||
There is no problem at all. I can use the template with the desired result. But if I try to use this (just adding the "show" parameter): | ||
|
||
\[[!inline <br/> | ||
pages="\<TMPL_VAR SEL_PAGES>"<br/> | ||
template=extract-entry<br/> | ||
show=\<TMPL_VAR CNTPG><br/> | ||
\]]<br/> | ||
|
||
I get this exception on the Git bash console: | ||
|
||
<pre> | ||
$ git push | ||
Counting objects: 7, done. | ||
Delta compression using up to 8 threads. | ||
Compressing objects: 100% (4/4), done. | ||
Writing objects: 100% (4/4), 410 bytes, done. | ||
Total 4 (delta 3), reused 0 (delta 0) | ||
remote: From /home/b-odelama-com/source | ||
remote: eb1421e..5e1bac5 master -> origin/master | ||
remote: Argument "\x{3c}\x{54}..." isn't numeric in numeric lt (<) at /usr/share/perl5/IkiWiki/Plugin/inline.pm line 231. | ||
remote: Argument "\x{3c}\x{54}..." isn't numeric in numeric lt (<) at /usr/share/perl5/IkiWiki/Plugin/inline.pm line 231. | ||
To ssh://b-odelama-com@odelama-com.branchable.com/ | ||
eb1421e..5e1bac5 master -> master | ||
</pre> | ||
|
||
Please, let me know what to do to avoid this kind of error. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
I use both [[plugins/moderatedcomments/]] and [[plugins/anonok]] on my [blog](http://feeding.cloud.geek.nz) but having to remember to visit the comment moderation page manually is not ideal. | ||
|
||
Is there a way to get an email notification (or maybe even just an RSS feed) whenever a new comment enters the moderation queue? |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,13 @@ | ||
[[!template id=plugin name=proxies author="[[schmonz]]"]] | ||
[[!template id=gitbranch branch=schmonz/proxies author="[[schmonz]]"]] | ||
[[!tag type/format]] | ||
|
||
This plugin enables ikiwiki to open outbound connections (such as | ||
found in [[plugins/aggregate]], [[plugins/openid]], and [[plugins/pinger]]) | ||
via a proxy. The proxy can be configurably avoided for connections | ||
to certain domains. | ||
|
||
### To do | ||
|
||
* Move duplicated user-agent setup out of other plugins into this one. | ||
* While I'm at it, fix [[bugs/http_proxy_for_openid]]. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,22 @@ | ||
[[!template id=plugin name=wc author="[[schmonz]]"]] | ||
[[!template id=gitbranch branch=schmonz/wc author="[[schmonz]]"]] | ||
[[!tag type/meta]] | ||
[[!tag patch]] | ||
|
||
This plugin counts words in a page. For a single page, write a | ||
`\[[!wc]]` directive and the word count will be interpolated there. | ||
For a site, add `<TMPL_VAR WORDCOUNT>` to your [[templates]]. | ||
|
||
If [[!cpan HTML::Strip]] is installed, the wordcount will be slightly | ||
more accurate. | ||
|
||
Possible enhancements: | ||
|
||
* Optimize: count words iff the result will be displayed. `sanitize()` | ||
seems like the right place to count. Since it's called well after | ||
`preprocess()`, I can tell whether a directive needs the result, | ||
but since it appears to be called before `pagetemplate()`, I can't | ||
tell whether a template wants to know and possibly skip the | ||
computation. (In other words, if I add `$needed_for_template` | ||
like `$needed_for_directive`, it gets set too late for `sanitize()` | ||
to see.) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,113 @@ | ||
ikiwiki's simple podcasting, while elegant and minimal, doesn't (as | ||
mentioned in [[todo/blogging]]) produce full-featured feeds. In | ||
fancy podcasts, episodes are accompanied by text content. The feeds | ||
also have lots more metadata. | ||
|
||
[[!toc]] | ||
|
||
## Design | ||
|
||
7. For each fancy podcast episode, write a blog post containing | ||
`\[[!meta enclosure="WikiLink/to/media.mp3"]]`. (Don't specify | ||
more than one enclosure -- but if you do, last one wins.) | ||
7. When rendering to HTML (single-page or inlined), append a link | ||
to the media file. | ||
7. When rendering to RSS/Atom, the text is the entry's content and | ||
the media file is its enclosure. | ||
7. Don't break simple podcasts in pursuit of fancy podcasts. | ||
|
||
## Implementation | ||
|
||
[[!template id=gitbranch branch=schmonz/fancypodcast author="[[schmonz]]"]] | ||
[[!tag patch]] | ||
|
||
### Completed | ||
|
||
* Cover the existing simple podcast behavior with tests. | ||
* Add an `enclosure` field to [[plugins/meta]] that expands the | ||
given [[ikiwiki/WikiLink]] to an absolute URL (feed enclosures | ||
pretty much need to be, and the reference feeds I've looked at | ||
all do this). | ||
* Write failing tests for the desired single-page and inlined | ||
HTML behavior, then make them pass by adding enclosure stanzas | ||
to `{,inline}page.tmpl`. | ||
* Write failing tests for the desired RSS/Atom behavior, then make | ||
them pass via changes to `{atom,rss}item.tmpl` and [[plugins/inline]]. | ||
* Match feature-for-feature with | ||
[tru_podcast](http://www.rainskit.com/blog/542/tru_podcast-a-podcasting-plugin-for-textpattern) | ||
(what [[schmonz]] will be migrating from). | ||
* Enrich [feed metadata](http://cyber.law.harvard.edu/rss/rss.html) | ||
by catching up `rsspage.tmpl` to `atompage.tmpl`. | ||
* Verify that [[plugins/more]] plays well with fancy podcasts. | ||
* Verify that the feeds validate. | ||
* Subscribe to a fancy feed in some common podcatchers and verify | ||
display details against a reference podcast. | ||
|
||
### Status | ||
|
||
[[!table data=""" | ||
Feature |iTunes RSS|iTunes Atom|Downcast RSS|Downcast Atom | ||
Feed image | | | | | ||
Feed title |(./) |(./) |(./) |(./) | ||
Feed publisher | | | | | ||
Feed "category" | | | | | ||
Feed date |(./) |(./) |(./) |(./) | ||
Feed description | | | | | ||
Episode image | | | | | ||
Episode title |(./) |(./) |(./) |(./) | ||
Episode date |(./) |(./) |(./) |(./) | ||
Episode duration | | | | | ||
Episode author |(./) |(./) |(./) |(./) | ||
Episode description|(./) |(./) |(./) | | ||
Episode enclosure |(./) |(./) |(./) |(./) | ||
"""]] | ||
|
||
### Must-have (for [[schmonz]], anyway) | ||
|
||
* Think carefully about... | ||
* UTF-8. | ||
* Other templates with `CONTENT` and whether they want to learn | ||
about `ENCLOSURE` (maybe `aggregatepost.tmpl`?). | ||
* Whether [[tips/howto avoid flooding aggregators]] suffices for | ||
migrating a fancy podcast into ikiwiki. | ||
* Verify that _all_ the tests pass (not just my new ones). | ||
|
||
----- | ||
|
||
## Future improvements | ||
|
||
### iTunes fancy podcasting | ||
|
||
* [iTunes-specific tags](https://www.apple.com/itunes/podcasts/specs.html) | ||
appear to be RSS-only | ||
* If they work in Atom, teach `inline` to optionally iTunesify RSS/Atom. | ||
* Else, add `itunes` as a third kind of feed (RSS plus more stuff). | ||
* Notable tags for feeds: | ||
* `itunes:subtitle` | ||
* `itunes:author` | ||
* `itunes:summary` (same as `description`) | ||
* `itunes:owner` (includes `itunes:name` and `itunes:email`) | ||
* `itunes:image href=''` | ||
* `itunes:publisher` | ||
* `itunes:category text=''` (can contain subcategories) | ||
* `itunes:keywords` | ||
* Notable tags for entries: | ||
* `itunes:duration` | ||
* [[!cpan Audio::TagLib]] might be fastest, if present and applicable | ||
* [ffprobe](http://ffmpeg.org/ffprobe.html) is reasonably fast | ||
* [mediainfo](http://mediainfo.sourceforge.net/) is way slower | ||
* Cache computed durations as pagestate | ||
|
||
### Other ideas | ||
|
||
* Optionally specify the enclosure's: | ||
* MIME type, in case `File::MimeInfo` guesses wrong. | ||
* Duration, in case `ffprobe` guesses wrong. | ||
* Optionally specify enclosures outside the wiki: | ||
* Some people don't want to store big unchanging files in the VCS. | ||
* Other people like [podcasting found media](http://huffduffer.com/about). | ||
* We'd have to download the file just to compute some metadata | ||
about it, and then somehow not frequently re-download it. | ||
* Configurably generate additional subscription links (such as | ||
iTunes) alongside the RSS/Atom ones in [[plugins/inline]]. | ||
* Support Apple's "enhanced podcasts" (if they're still relevant). |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
For an internal wiki, we occasionally get patches that link to internal wiki pages using the Markdown link syntax. I'd love to see an optional git hook to detect that and complain. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters