summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Makefile2
-rw-r--r--README3
-rw-r--r--ikiwiki_nb.setup (renamed from ikiwiki.setup)9
-rw-r--r--ikiwiki_nb_admin.setup (renamed from ikiwiki_admin.setup)21
-rw-r--r--perl/IkiWiki/Plugin/farbar.pm53
-rw-r--r--perl/IkiWiki/Plugin/topbar.pm53
6 files changed, 129 insertions, 12 deletions
diff --git a/Makefile b/Makefile
index 721bd21..b797a25 100644
--- a/Makefile
+++ b/Makefile
@@ -19,7 +19,7 @@ ikiwiki_templates_FLAVORS = nonedit
dummy_MODULES = content_dummy
# uncomment this when ikiwiki.setup is configured for the local environment
-#CONFIGS = ikiwiki_admin.setup ikiwiki.setup
+#CONFIGS = ikiwiki_nb_admin.setup ikiwiki_nb.setup
# Everything after this is generic
diff --git a/README b/README
index 3becd90..4e6efe3 100644
--- a/README
+++ b/README
@@ -8,6 +8,9 @@ the following locales:
* danish (da) by Jonas Smedegaard <dr@jones.dk>
+Additionally, the configuration has been simplified to not mention non-Git VCS
+systems, and deprecated placeholder files has been removed from basewiki.
+
Getting the source
------------------
diff --git a/ikiwiki.setup b/ikiwiki_nb.setup
index 91a98be..89581a3 100644
--- a/ikiwiki.setup
+++ b/ikiwiki_nb.setup
@@ -33,11 +33,14 @@ use IkiWiki::Setup::Standard {
# plugins to disable
disable_plugins => [],
# location of template files
- templatedir => $ENV{'HOME'} . '/private_webdata/samplewiki/templates_nonedit',
+ templatedir => $ENV{'HOME'} . '/private_webdata/samplewiki/templates_nonedit_l10n/nb',
# base wiki source location
underlaydirs => [
$ENV{'HOME'} . "/private_webdata/samplewiki/content",
+ #$ENV{'HOME'} . "/private_webdata/samplewiki/smiley_l10n/nb",
+ $ENV{'HOME'} . "/private_webdata/samplewiki/basewiki_nonedit_l10n/nb",
],
+ # Some plugins (smiley in particular) need non-localized master underlay
underlaydir => $ENV{'HOME'} . '/private_webdata/samplewiki/basewiki_nonedit',
# display verbose messages when building?
#verbose => 1,
@@ -60,7 +63,7 @@ use IkiWiki::Setup::Standard {
# strftime format string to display date
timeformat => '%c',
# UTF-8 locale to use
- #locale => 'en_US.UTF-8',
+ locale => 'nb_NO.UTF-8',
# put user pages below specified page
userdir => '',
# how many backlinks to show before hiding excess (0 to show all)
@@ -126,7 +129,7 @@ use IkiWiki::Setup::Standard {
# git plugin
# git hook to generate
- #git_wrapper => $ENV{'HOME'} . '/public_websites/git.example.org/samplewiki_content.git/hooks/post-update-ikiwiki',
+ #git_wrapper => $ENV{'HOME'} . '/public_websites/git.example.org/samplewiki_content.git/hooks/post-update-ikiwiki-nb',
# mode for git_wrapper (can safely be made suid)
#git_wrappermode => '06755',
# gitweb url to show file history ([[file]] substituted)
diff --git a/ikiwiki_admin.setup b/ikiwiki_nb_admin.setup
index a7559ca..674e5d6 100644
--- a/ikiwiki_admin.setup
+++ b/ikiwiki_nb_admin.setup
@@ -21,9 +21,9 @@ use IkiWiki::Setup::Standard {
# base url to the wiki
url => 'http://admin.wiki.example.org',
# url to the ikiwiki.cgi
- cgiurl => 'http://admin.wiki.example.org/ikiwiki.cgi',
+ cgiurl => 'http://admin.wiki.example.org/ikiwiki.nb.cgi',
# cgi wrapper to generate
- cgi_wrapper => $ENV{'HOME'} . '/public_cgi/admin.wiki.example.org/ikiwiki.cgi',
+ cgi_wrapper => $ENV{'HOME'} . '/public_cgi/admin.wiki.example.org/ikiwiki.nb.cgi',
# mode for cgi_wrapper (can safely be made suid)
cgi_wrappermode => '06755',
# rcs backend to use
@@ -33,8 +33,13 @@ use IkiWiki::Setup::Standard {
# plugins to disable
disable_plugins => [],
# location of template files
- templatedir => $ENV{'HOME'} . '/private_webdata/samplewiki/templates',
+ templatedir => $ENV{'HOME'} . '/private_webdata/samplewiki/templates_l10n/nb',
# base wiki source location
+ underlaydirs => [
+ #$ENV{'HOME'} . "/private_webdata/samplewiki/smiley_l10n/nb",
+ $ENV{'HOME'} . "/private_webdata/samplewiki/basewiki_l10n/nb",
+ ],
+ # Some plugins (smiley in particular) need non-localized master underlay
underlaydir => $ENV{'HOME'} . '/private_webdata/samplewiki/basewiki',
# display verbose messages when building?
#verbose => 1,
@@ -53,11 +58,11 @@ use IkiWiki::Setup::Standard {
# extension to use for new pages
default_pageext => 'mdwn',
# extension to use for html files
- htmlext => 'html',
+ htmlext => 'nb.html',
# strftime format string to display date
timeformat => '%c',
# UTF-8 locale to use
- #locale => 'en_US.UTF-8',
+ locale => 'no_NB.UTF-8',
# put user pages below specified page
userdir => '',
# how many backlinks to show before hiding excess (0 to show all)
@@ -123,17 +128,17 @@ use IkiWiki::Setup::Standard {
# git plugin
# git hook to generate
- #git_wrapper => $ENV{'HOME'} . '/public_websites/git.example.org/samplewiki_content.git/hooks/post-update-ikiwiki-admin',
+ #git_wrapper => $ENV{'HOME'} . '/public_websites/git.example.org/samplewiki_content.git/hooks/post-update-ikiwiki-nb-admin',
# mode for git_wrapper (can safely be made suid)
#git_wrappermode => '06755',
# gitweb url to show file history ([[file]] substituted)
- #historyurl => 'http://git.example.org/gitweb.cgi?p=wiki.git;a=history;f=[[file]]', # ;hb=master
+ #historyurl => 'http://git.example.org/gitweb.cgi?p=wiki.git;a=history;f=[[file]];hb=master-nb',
# gitweb url to show a diff ([[sha1_to]], [[sha1_from]], [[sha1_parent]], and [[file]] substituted)
#diffurl => 'http://git.example.org/gitweb.cgi?p=wiki.git;a=blobdiff;h=[[sha1_to]];hp=[[sha1_from]];hb=[[sha1_parent]];f=[[file]]',
# where to pull and push changes (set to empty string to disable)
#gitorigin_branch => 'samplewiki',
# branch that the wiki is stored in
- #gitmaster_branch => 'master',
+ #gitmaster_branch => 'master-nb',
# htmlscrubber plugin
# PageSpec specifying pages not to scrub
diff --git a/perl/IkiWiki/Plugin/farbar.pm b/perl/IkiWiki/Plugin/farbar.pm
new file mode 100644
index 0000000..ab4390a
--- /dev/null
+++ b/perl/IkiWiki/Plugin/farbar.pm
@@ -0,0 +1,53 @@
+#!/usr/bin/perl
+# Farbar plugin.
+# by Jonas Smedegaard <dr@jones.dk>
+# Heavily based on Sidebar by Tuomo Valkonen <tuomov at iki dot fi>
+
+package IkiWiki::Plugin::farbar;
+
+use warnings;
+use strict;
+use IkiWiki 2.00;
+
+sub import { #{{{
+ hook(type => "pagetemplate", id => "farbar", call => \&pagetemplate);
+} # }}}
+
+sub farbar_content ($) { #{{{
+ my $page=shift;
+
+ my $farbar_page=bestlink($page, "farbar") || return;
+ my $farbar_file=$pagesources{$farbar_page} || return;
+ my $farbar_type=pagetype($farbar_file);
+
+ if (defined $farbar_type) {
+ # FIXME: This isn't quite right; it won't take into account
+ # adding a new farbar page. So adding such a page
+ # currently requires a wiki rebuild.
+ add_depends($page, $farbar_page);
+
+ my $content=readfile(srcfile($farbar_file));
+ return unless length $content;
+ return IkiWiki::htmlize($farbar_page, $page, $farbar_type,
+ IkiWiki::linkify($farbar_page, $page,
+ IkiWiki::preprocess($farbar_page, $page,
+ IkiWiki::filter($farbar_page, $page, $content))));
+ }
+
+} # }}}
+
+sub pagetemplate (@) { #{{{
+ my %params=@_;
+
+ my $page=$params{page};
+ my $template=$params{template};
+
+ if ($template->query(name => "farbar")) {
+ my $content=farbar_content($page);
+ if (defined $content && length $content) {
+ $template->param(farbar => $content);
+ }
+ }
+} # }}}
+
+1
diff --git a/perl/IkiWiki/Plugin/topbar.pm b/perl/IkiWiki/Plugin/topbar.pm
new file mode 100644
index 0000000..aa62a11
--- /dev/null
+++ b/perl/IkiWiki/Plugin/topbar.pm
@@ -0,0 +1,53 @@
+#!/usr/bin/perl
+# Topbar plugin.
+# by Jonas Smedegaard <dr@jones.dk>
+# Heavily based on Sidebar by Tuomo Valkonen <tuomov at iki dot fi>
+
+package IkiWiki::Plugin::topbar;
+
+use warnings;
+use strict;
+use IkiWiki 2.00;
+
+sub import { #{{{
+ hook(type => "pagetemplate", id => "topbar", call => \&pagetemplate);
+} # }}}
+
+sub topbar_content ($) { #{{{
+ my $page=shift;
+
+ my $topbar_page=bestlink($page, "topbar") || return;
+ my $topbar_file=$pagesources{$topbar_page} || return;
+ my $topbar_type=pagetype($topbar_file);
+
+ if (defined $topbar_type) {
+ # FIXME: This isn't quite right; it won't take into account
+ # adding a new topbar page. So adding such a page
+ # currently requires a wiki rebuild.
+ add_depends($page, $topbar_page);
+
+ my $content=readfile(srcfile($topbar_file));
+ return unless length $content;
+ return IkiWiki::htmlize($topbar_page, $page, $topbar_type,
+ IkiWiki::linkify($topbar_page, $page,
+ IkiWiki::preprocess($topbar_page, $page,
+ IkiWiki::filter($topbar_page, $page, $content))));
+ }
+
+} # }}}
+
+sub pagetemplate (@) { #{{{
+ my %params=@_;
+
+ my $page=$params{page};
+ my $template=$params{template};
+
+ if ($template->query(name => "topbar")) {
+ my $content=topbar_content($page);
+ if (defined $content && length $content) {
+ $template->param(topbar => $content);
+ }
+ }
+} # }}}
+
+1