]> sipb.mit.edu Git - ikiwiki.git/blobdiff - IkiWiki/Plugin/link.pm
Merge branch 'master' of github.com:schmonz/ikiwiki
[ikiwiki.git] / IkiWiki / Plugin / link.pm
index f6c3573f75f5508dc810464162e9fb9a1ad8f527..ef01f110702228fb71356d7d76437161f134b156 100644 (file)
@@ -7,7 +7,7 @@ use IkiWiki 3.00;
 
 my $link_regexp;
 
-my $email_regexp = qr/^.+@.+$/;
+my $email_regexp = qr/^.+@.+\..+$/;
 my $url_regexp = qr/^(?:[^:]+:\/\/|mailto:).*/i;
 
 sub import {
@@ -64,24 +64,16 @@ sub checkconfig () {
        }
 }
 
-sub is_externallink ($$;$$) {
+sub is_externallink ($$;$) {
        my $page = shift;
        my $url = shift;
        my $anchor = shift;
-       my $force = shift;
        
        if (defined $anchor) {
                $url.="#".$anchor;
        }
 
-       if (! $force && $url =~ /$email_regexp/) {
-               # url looks like an email address, so we assume it
-               # is supposed to be an external link if there is no
-               # page with that name.
-               return (! (bestlink($page, linkpage($url))))
-       }
-
-       return ($url =~ /$url_regexp/)
+       return ($url =~ /$url_regexp|$email_regexp/)
 }
 
 sub externallink ($$;$) {
@@ -140,7 +132,7 @@ sub scan (@) {
        my $content=$params{content};
 
        while ($content =~ /(?<!\\)$link_regexp/g) {
-               if (! is_externallink($page, $2, $3, 1)) {
+               if (! is_externallink($page, $2, $3)) {
                        add_link($page, linkpage($2));
                }
        }