anchor.diff:      int nextIndex = ReferenceAppendix.nextIndex(existRefs);
   
       // replace with placeholder and append appendix
  +    var placeholder = isStringBlank(selectionText)
  +                      ? i18n("kmark.auto-link-placeholder")
  +                      : selectionText.trim();
  +    var replacedText = " [$placeholder][$nextIndex] ";
  +
       // note that we only search first occurrence of link, so if multiple link present.
       // the replace will be problematic.
  -    var placeholder = i18n("kmark.auto-link-placeholder");
  -    var replacedText = " [$placeholder][$nextIndex] ";
       contentInput.value = contentInput.value.replaceFirst(link, replacedText);
       if (existRefs.isEmpty) {
         contentInput.value += "\n";
  
positive.code: import 'dart:html';
  import 'dart:math' as Math;
  import 'package:kaif_web/util.dart';
  
  
  class KmarkAutoLinker {
  
  
negative.code:       return;
      }
  
      _applyAutoLink(selectionText, link);
    }
  
    /**
     * detect pasted link is within <code> or <pre>, we count number of `fence` syntax before link text.
     * if count is odd, it means user is editing within the block.
     *
     * The same rule apply to `code` syntax.
     */
    bool _isLinkWithinCodeBlock(String fullText, String link) {
      var position = fullText.indexOf(link);
  