您的浏览器屏蔽了本站的Google AdSense,这是本站为数不多的收入来源。
为了维持服务器开销,烦请您将本站放入Adblock或其他广告屏蔽插件白名单内。
注册后可点击这里反选「AdSense可用性检测」永久关闭此提示。
您现在使用的中文变体可能会影响一些词语繁简转换的效果。建议您根据您的偏好切换到下列变体之一:大陆简体香港繁體澳門繁體大马简体新加坡简体臺灣正體。(不再提示 | 了解更多

Talk:国家

中文词条翻译评级[?]
公国级 初步翻译完成 - 此页面的主体部分已翻译完成,但尚需其他页面的翻译补充 公国级


請教huyla可以如何翻譯?-2017年12月12日 (二) 08:32 Ignatius

胡伊拉,参考汉化组使用的译名,[1]。另外签名的方式是四个半角波浪线(~~~~),不用手动输入--User pokewiz.jpg Pokewiz讨论) 2017年12月12日 (二) 10:18 (CST)

范式化建议

在策略栏第一段列出1444开局金币、收入、陆海军上限、人力、部队数目、总发展度、外交状况(历史的与可能的宿敌盟友)、点数以及值得关注的具体状况、开局地图(省份 核心 自带盟友附庸等)方便直接查阅, 以及自制各类决议地图,可以拟定范式后交给mod组成员(某几位划水的)

可参考的地图截取范式:涉及范围内留出一定长宽高;照顾整张图片长宽差距;便于理解及快速脑海定位;海外省份单独制作小图之类)——--Katty von Keksburg讨论) 2020年5月30日 (六) 01:26 (CST)

这个比较难做了,毕竟不能通过脚本文件直接获取。 Pokewiz批判一番 2020年5月30日 (六) 01:28 (CST)
只做十几个主要国家的话,手动就行,群里连手动填色全球的人都有,拉几个人力应该不难--Katty von Keksburg讨论) 2020年5月30日 (六) 01:48 (CST)

python脚本

由ChatGPT翻译自nodejs脚本,甚至一次通过,同样是异步处理,需要提前安装注明的库,绝了。

已补完1.34版本之前所有存在国家tag本地化文本的xml路径并将国旗改为本站的{{flag}}模板格式。 Pokewiz批判一番 2022年12月9日 (五) 23:35 (CST)

import os
import re
import pathlib
import asyncio

from aiofiles import open
from aiofiles.os import stat

gamepath = "C:\\Program Files (x86)\\Steam\\steamapps\\common\\Europa Universalis IV\\"
tagorderfile = pathlib.Path(gamepath, "common/country_tags/00_countries.txt")

names = {}


async def loadnamefile(countrynamefile: str):
    filename = pathlib.Path(gamepath, countrynamefile)
    async with open(filename,'r', encoding='utf-8') as f:
        pattern = re.compile(r"^\s(.+)\s\"(.+)\"$")
        async for line in f:
            match = pattern.match(line)
            if match:
                key = match.group(1)[:-2]
                if len(key) == 3:  # we only need the tag keys
                    names[key] = match.group(2)

async def main():
    await asyncio.gather(
        loadnamefile("localisation\\countries_l_english.yml"),
        loadnamefile("localisation\\tags_phase4_l_english.yml"),
        loadnamefile("localisation\\eldorado_l_english.yml"),
        loadnamefile("localisation\\text_l_english.yml"),
        loadnamefile("localisation\\EU4_l_english.yml"),
        loadnamefile("localisation\\emperor_content_l_english.yml"),
        loadnamefile("localisation\\origins_l_english.yml"),
        loadnamefile("localisation\\manchu_l_english.yml"),
        loadnamefile("localisation\\emperor_map_l_english.yml"),
        loadnamefile("localisation\\00_lanfang_l_english.yml"),
        loadnamefile("localisation\\leviathan_l_english.yml"),
        loadnamefile("localisation\\north_america_redone_l_english.yml"),
        loadnamefile("localisation\\synthetic_dawn_l_english.yml"),
    )

    async with open(tagorderfile, 'r') as f:
        counter = 1
        note = ""
        async for line in f:
            if line[0] == "#":  # new header
                note = line[1:].strip()
            elif len(line) > 22:  # just a country
                tag = line[:3]
                print(f"|-\n| {counter} || {{{{flag|{names.get(tag, 'NULL')}|size=50px}}}} '''[[{names.get(tag, 'NULL')}]]''' || {tag} || {note}")
                counter += 1

asyncio.run(main())