Print a debug message if a page has multiple source files.
parent
c4777e30a9
commit
9cbcda14ac
|
@ -279,7 +279,11 @@ sub refresh () { #{{{
|
|||
else {
|
||||
$f=~s/^\Q$config{srcdir}\E\/?//;
|
||||
push @files, $f;
|
||||
$exists{pagename($f)}=1;
|
||||
my $pagename = pagename($f);
|
||||
if ($exists{$pagename}) {
|
||||
debug(sprintf(gettext("%s has multiple possible source pages"), $pagename));
|
||||
}
|
||||
$exists{$pagename}=1;
|
||||
}
|
||||
}
|
||||
},
|
||||
|
|
|
@ -16,6 +16,7 @@ ikiwiki (2.65) UNRELEASED; urgency=low
|
|||
* edittemplate: Link to template, to allow creating it. (Willu)
|
||||
* editpage: Add a missing check that the page name contains only legal
|
||||
characters, in addition to the existing check for pruned filenames.
|
||||
* Print a debug message if a page has multiple source files.
|
||||
|
||||
-- Joey Hess <joeyh@debian.org> Wed, 17 Sep 2008 14:26:56 -0400
|
||||
|
||||
|
|
|
@ -4,6 +4,10 @@ I realised that this is going to have problems when you ask it to process `.c` a
|
|||
|
||||
I tested it briefly with `test.java` and `test.mdwn` just to see what would happen. Things got quite strange. The source-highlighting plugin was called (probably for the java file), but then when it calls `pagetype($pagesources{$page})` to figure out the file type, that function returns `mdwn`, which confuses things somewhat.
|
||||
|
||||
> This is a known possible point of confusion. If there are multiple source
|
||||
> files, it will render them both, in an arbitrary sequence, so one "wins".
|
||||
> --[[Joey]]
|
||||
|
||||
Anyway, I'm thinking about possible solutions. The best option I've come up with so far is: when registering an htmlize hook, add a new optional paramter 'keep_extension'. This would make a source file of `hello.c` generate a page with name `hello.c` rather than the current `hello`. This would keep the pages unique (until someone makes `hello.c.mdwn`...).
|
||||
|
||||
Suggestions welcome.
|
||||
|
@ -12,6 +16,11 @@ Suggestions welcome.
|
|||
|
||||
> Ok, this turned out not to be a hard change. [[patch]] is below. With this patch you can tell IkiWiki not to drop the suffix when you register a hook: `hook(type => "htmlize", id => $lang, call => \&htmlize, leavesuffix => 1);`
|
||||
|
||||
>> I think that's a good solution to the problem that most syntax plugins
|
||||
>> have struggled with. It makes sense. It doesn't solve the case where
|
||||
>> you have source files without any extension (eg `Makefile`), but at
|
||||
>> least it covers the common cases.
|
||||
|
||||
diff --git a/IkiWiki.pm b/IkiWiki.pm
|
||||
index 4e4da11..853f905 100644
|
||||
--- a/IkiWiki.pm
|
||||
|
|
Loading…
Reference in New Issue