Greasy Fork is available in English.

不要翻译github上的代码

避免google网页翻译github和npm```<pre>```标签内的内容

Versão de: 14/01/2019. Veja: a última versão.

// ==UserScript==
// @name         不要翻译github上的代码
// @namespace    http://floatsyi.com/
// @version      0.15
// @description  避免google网页翻译github和npm```<pre>```标签内的内容
// @author       floatsyi
// @include      *://github.com*
// @include      *://www.npmjs.com*
// @match        *://github.com*
// @match      *://www.npmjs.com*
// @grant        none
// ==/UserScript==

(function() {
    'use strict';
     var addCodeEle = function (ele) {ele.innerHTML = '<code>' + ele.innerHTML + '</code>'}
     var hasCodeEleChild = function(ele) {return !!ele.querySelector('code')}
     var href = window.location.href
     var isChange = function(){
         var yesOrNo = !(href === window.location.href)
         href = window.location.href
         return yesOrNo
     }
     var isLoaded = function(){return (!document.querySelector('.is-loading') && (!!document.querySelector('.file') || document.querySelectorAll('pre').length > 0))}
     var time = 1
     var doNotTranslateCode = function() {
         if (!!document.querySelector('.file') && !document.querySelector('.file').querySelector('code')) {
             addCodeEle(document.querySelector('.file'))
         } else {
           console.log('不要翻译github上的代码: 执行条件不足')
         }
         document.querySelectorAll('pre').forEach(function(pre){if (!!pre && !hasCodeEleChild(pre)) addCodeEle(pre)})
     }
     doNotTranslateCode()
     document.addEventListener('click', function(e){
       if (isChange()) {
          var id = setInterval(function(){
              // console.log(time)
              time++
              if (isLoaded() || time >= 1000) {
                 if (time>=1000) console.log('不要翻译github上的代码: 加载超时,请刷新浏览器')
                 // console.log('done')
                 doNotTranslateCode()
                 clearInterval(id)
                 time = 0
              }
          },50)
       }
     })
     window.addEventListener("popstate", doNotTranslateCode)
})();