Display MSDN content in English

Redirects regional MSDN websites to the en-US original site to prevent annoying translation elements to appear. They also have more current (fixed) content there.

Tendrás que instalar una extensión para tu navegador como Tampermonkey, Greasemonkey o Violentmonkey si quieres utilizar este script.

Necesitarás instalar una extensión como Tampermonkey o Violentmonkey para instalar este script.

Necesitarás instalar una extensión como Tampermonkey o Violentmonkey para instalar este script.

Necesitarás instalar una extensión como Tampermonkey o Userscripts para instalar este script.

Necesitará instalar una extensión como Tampermonkey para instalar este script.

Necesitarás instalar una extensión para administrar scripts de usuario si quieres instalar este script.

(Ya tengo un administrador de scripts de usuario, déjame instalarlo)

Necesitará instalar una extensión como Stylus para instalar este estilo.

Necesitará instalar una extensión como Stylus para instalar este estilo.

Necesitará instalar una extensión como Stylus para instalar este estilo.

Necesitará instalar una extensión del gestor de estilos de usuario para instalar este estilo.

Necesitará instalar una extensión del gestor de estilos de usuario para instalar este estilo.

Necesitará instalar una extensión del gestor de estilos de usuario para instalar este estilo.

(Ya tengo un administrador de estilos de usuario, déjame instalarlo)

// Copyright (c) 2015, Yves Goergen, http://unclassified.software/source/msdn-english
//
// Copying and distribution of this file, with or without modification, are permitted provided the
// copyright notice and this notice are preserved. This file is offered as-is, without any warranty.

// Encoding: UTF-8 without BOM (auto-detect: °°°°°)

// ==UserScript==
// @namespace http://unclassified.software/
// @name Display MSDN content in English
// @name:de MSDN-Inhalte auf englisch anzeigen
// @description Redirects regional MSDN websites to the en-US original site to prevent annoying translation elements to appear. They also have more current (fixed) content there.
// @description:de Leitet regionale MSDN-Websites auf das englische Original (en-US) um, um nervende Übersetzungselemente auszublenden. Dort gibt es auch neuere (korrigierte) Inhalte.
// @version 2015.2.1
// @include http://msdn.microsoft.com/*
// @include https://msdn.microsoft.com/*
// @run-at document-start
// ==/UserScript==

(function() {

	// Gets the value of a single search param.
	// Source: https://developer.mozilla.org/en-US/docs/Web/API/URLUtils.search
	function getURLParam(oTarget, sVar)
	{
		return decodeURI(oTarget.search.replace(new RegExp("^(?:.*[&\\?]" + encodeURI(sVar).replace(/[\.\+\*]/g, "\\$&") + "(?:\\=([^&]*))?)?.*$", "i"), "$1"));
	}

	// Online help started from Visual Studio (2010-2013 at least)
	if (location.pathname.match(/\/query\/dev[0-9]{1,2}\.query/))
	{
		var locale = getURLParam(location, "l");
		if (locale && !locale.match(/EN-US/i))
		{
			var newUrl = location.href.replace("l=" + locale, "l=EN-US");
			location.replace(newUrl);
			return;
		}
	}

	// Regular library page as seen from web search
	var matches = location.pathname.match(/^\/([a-z]{2}-[a-z]{2})\/library\//i);
	if (matches)
	{
		var locale = matches[1];
		if (locale && !locale.match(/en-us/i))
		{
			var newUrl = location.href.replace("/" + locale + "/", "/en-us/");
			location.replace(newUrl);
			return;
		}
	}

})()