diff --git a/IkiWiki/Plugin/link.pm b/IkiWiki/Plugin/link.pm
index 1ba28eafd..61a397bf8 100644
--- a/IkiWiki/Plugin/link.pm
+++ b/IkiWiki/Plugin/link.pm
@@ -107,7 +107,13 @@ sub linkify (@) {
    my $page=$params{page};
    my $destpage=$params{destpage};

-   $params{content} =~ s{(\\?)$link_regexp}{
+    my $content;
+    for my $line ( split /\n/, $params{content} ) {
+        if ( $line =~ /^(?:\t|    )/ ) {
+            $content .= $line . "\n";
+            next;
+        }
+        $line =~ s{(\\?)$link_regexp}{
             defined $2
                 ? ( $1
                     ? "[[$2|$3".(defined $4 ? "#$4" : "")."]]"
@@ -122,8 +128,10 @@ sub linkify (@) {
                         : htmllink($page, $destpage, linkpage($3),
                             anchor => $4))
             }eg;
+        $content .= $line . "\n";
+    }

-   return $params{content};
+   return $content;
 }

 sub scan (@) {

Related to wiki links still processed inside code blocks and How to format [[foobar]] in code blocks?.

It looks as though this patch would break linkification in any syntactic construct that uses indentation but isn't a code block, for instance a list:

* This is a list
    * So is this
        * And [[this is a link|http://example.com]]

rendered as:

It's also assuming that Markdown is the only language available (trying to use Markdown rules), and even in Markdown it doesn't support Github-style fenced code blocks if enabled.

This is not something that can be done correctly by just patching the link plugin. I'm not sure whether it's something that can be done correctly at all, unfortunately.

--smcv