52 lines
1.4 KiB
Markdown
52 lines
1.4 KiB
Markdown
This patch adds function bestdir() which returns best directory from the directory structure. This is in addition to the bestlink() function which is there in IkiWiki.pm
|
|
|
|
> Um, what is this for? :-) It would probably be a lot easier to review if it
|
|
> had documentation, and/or a plugin that used it. --[[smcv]]
|
|
|
|
-------
|
|
|
|
Index: IkiWiki.pm
|
|
===================================================================
|
|
--- IkiWiki.pm (revision 9)
|
|
+++ IkiWiki.pm (working copy)
|
|
@@ -391,6 +391,35 @@
|
|
return "";
|
|
}
|
|
|
|
+sub bestdir ($$) {
|
|
+ my $page=shift;
|
|
+ my $link=shift;
|
|
+ my $cwd=$page;
|
|
+
|
|
+ if ($link=~s/^\/+//) {
|
|
+ $cwd="";
|
|
+ }
|
|
+
|
|
+ do {
|
|
+ my $l=$cwd;
|
|
+ $l.="/" if length $l;
|
|
+ $l.=$link;
|
|
+ if (-d "$config{srcdir}/$l") {
|
|
+ return $l;
|
|
+ }
|
|
+ } while $cwd=~s!/?[^/]+$!!;
|
|
+
|
|
+ if (length $config{userdir}) {
|
|
+ my $l = "$config{userdir}/".lc($link);
|
|
+
|
|
+ if (-d $l) {
|
|
+ return $l;
|
|
+ }
|
|
+ }
|
|
+
|
|
+ return "";
|
|
+}
|
|
+
|
|
sub isinlinableimage ($) {
|
|
my $file=shift;
|
|
|
|
----
|
|
-[[users/arpitjain]]
|
|
|
|
[[!tag patch patch/core]]
|