Markdown Hyperlink Spacing logo
Markdown Hyperlink Spacing Free

MD Hyperlink Spacing QA check is designed to identify unnecessary spaces between the link text and URL in Markdown hyperlinks

Get

Requires Crowdin account

/**
 * Custom QA Check Script for Crowdin
 * Detects and corrects spacing mistakes in Markdown links
 */

var result = { success: false };

source = crowdin.source.replace(/(?:\r\n|\r)/g, '\n');
translation = crowdin.translation.replace(/(?:\r\n|\r)/g, '\n');

// Regular expression to detect Markdown links
var mdLinkRegex = /\[([^\]]+)\]\((https:\/\/[^\)]+)\)/
// Regular expression to detect spacing mistake in Markdown links
var spacingMistakeRegex = /\[([^\]]+)\]\s+\((https:\/\/[^\)]+)\)/

function hasMarkdownLinks(string) {
  return mdLinkRegex.test(string);
}

function checkForSpacingMistake(string) {
  return spacingMistakeRegex.test(string);
}

// Check if there are Markdown links in the source
var sourceHasMdLinks = hasMarkdownLinks(source);

if (sourceHasMdLinks) {
  // Check for spacing mistake in the translation
  var translationSpacingMistake = checkForSpacingMistake(translation);

  if (translationSpacingMistake) {
    var match = spacingMistakeRegex.exec(translation);
    var correctLink = '[' + match[1] + '](' + match[2] + ')';

    result.message = 'Spacing mistake detected in MD link format';
    result.fixes = [{
      from_pos: match.index,
      to_pos: match.index + match[0].length,
      replacement: correctLink
    }];
  } else {
    result.success = true;
  }
} else {
  result.success = true;
}

return result;
Categories
Tags
Works with
  • Crowdin Enterprise
Details

Released on Jul 26, 2024

Updated on Jan 17, 2025

Published by Crowdin

Identifier:markdown-hyperlink-spacing

Markdown Hyperlink Spacing - Crowdin Marketplace