Greasy Fork is available in English.

Stackoverflow 轻度汉化

查看stackoverflow时,可以按中文格式看时间,原版时间不显示年份,英文方式不方便查看

Stan na 21-03-2019. Zobacz najnowsza wersja.

// ==UserScript==
// @name         Stackoverflow 轻度汉化
// @namespace    http://tampermonkey.net/
// @version      3.0
// @description  查看stackoverflow时,可以按中文格式看时间,原版时间不显示年份,英文方式不方便查看
// @author       Zszen
// @match        https://stackoverflow.com/questions/*
// @grant        none
// ==/UserScript==

(function() {
    'use strict';
    //修改日期格式
    //setTimeout(()=>{
    var dicTrans = {"Log In":"登陆","Sign Up":"注册","Ask Question":"提个问题","answered":"回答","asked":"提问","edited":"修改","today":"今天","yesterday":"昨天","days":"天","ago":"以前","times":"次","months":"个月","month":"个月","years":"年","year":"年","half":"半"};
    var dates = $("span.relativetime-clean");
    //console.log(dates.length);
    for(var i=0;i<dates.length;i++){
        dates[i].textContent = getLocaleDateStr(dates[i].title)
    }
    dates = $("span.relativetime")
    for(i=0;i<dates.length;i++){
        dates[i].textContent = getLocaleDateStr(dates[i].title)
    }
    //登陆
    var nm = $("a.login-link.s-btn.btn-topbar-clear.py8")[0];
    nm.textContent = transMe(nm.textContent)
    nm = $("a.login-link.s-btn.s-btn__primary.py8.btn-topbar-primary")[0];
    nm.textContent = transMe(nm.textContent)
    nm = $("a.d-inline-flex.ai-center.ws-nowrap.s-btn.s-btn__primary")[0];
    nm.textContent = transMe(nm.textContent)
    //修改
    var infos = $("div.user-action-time").find("a")
    for(i=0;i<infos.length;i++){
        if(infos[i].childNodes[0])infos[i].childNodes[0].textContent = transMe(infos[i].childNodes[0].textContent);
        //if(infos[i].childNodes[0]
    }
    //回答
    infos = $("div.user-action-time");
    for(i=0;i<infos.length;i++){
        infos[i].childNodes[0].textContent = transMe(infos[i].childNodes[0].textContent);
    }
    //console.log([123,infos.textContent])
    //插入评论
    var bts = $("a.js-add-link.comments-link.disabled-link");
    for(i=0;i<bts.length;i++){
        bts[i].textContent = "插入评论"
    }
    //分享
    bts = $("a.short-link");
    for(i=0;i<bts.length;i++){
        bts[i].textContent = "分享"
    }
    //改良内容
    bts = $("a.suggest-edit-post");
    for(i=0;i<bts.length;i++){
        bts[i].textContent = "改良内容"
    }
    //提问者信息
    var datas = $("div.module.question-stats").find("p.label-key");
    var type = 0;
    for(i=0;i<datas.length;i++){
        console.log(datas[i])
        if(datas[i].textContent=="asked"){
            datas[i].textContent="提问时间";
            type = 1;
            continue;
        }else if(datas[i].textContent=="viewed"){
            datas[i].textContent="访问次数";
            type = 2;
            continue;
        }else if(datas[i].textContent=="active"){
            datas[i].textContent="最近访问";
            type = 3;
            continue;
        }
        datas[i].textContent = transMe(str);
    }

    function transMe(str){
        var str = str;
        for(var key in dicTrans){
            str = str.replace(key,dicTrans[key]);
        }
        return str;
    }

    //},500)
    function getLocaleDateStr(strDateOriginal){//"2013-09-21 14:10:03Z"
        var arrDate = strDateOriginal.split(" ")[0].split("-")
        var arrTime = strDateOriginal.split(" ")[1].split(":")
        var dt = new Date(parseInt(arrDate[0]),parseInt(arrDate[1]),parseInt(arrDate[2]),parseInt(arrTime[0]),parseInt(arrTime[1]),parseInt(arrTime[2]));
        return dt.toLocaleDateString()+" "+dt.toLocaleTimeString()
    }
})();