.Net IDE智能提示汉化(.Net6、AspNetCore)

先上现成的.net6汉化文件,可以手动下载后参照 如何为 .NET 安装本地化的 IntelliSense 文件 进行安装。或者使用后文的工具进行自动安装。

汉化内容来自 官方在线文档 ,某些内容可能存在明显的机翻痕迹。

上一些效果图:

.Net6 之前的版本汉化

.net6 之前的版本,微软官方提供了本地化包,可以在 Download localized .NET IntelliSense files 下载到,安装教程在 如何为 .NET 安装本地化的 IntelliSense 文件 。汉化内容包括NETStandard2.1NETCoreWindowsDesktop

.Net6 的汉化

到目前为止官方并没有提供 .net6 的本地化包。

官方文档仓库中有相关issue Need .net6.0 Localized IntelliSense Packs 。回答是不再提供本地化包了 - "Yes, unfortunately, we will no longer be localizing IntelliSense.",也没有在这里说明原因。

然而官方在线文档却是本地化了的,包括.net6的新API,如:System.DateOnlySystem.TimeOnly 等。猜测可能是没有人力进行本地化相关工作,使用了机翻,质量参差不齐,所以不再发布本地化包了。

虽然有些翻译质量差,但如果能够直接在IDE中提示,也好过完全看不懂某些单词的时候,也不用手动再去查一遍在线文档。我们完全可以通过在线文档来做一个本地化包,流程如下:查看xml文件->找到要本地化的项->查看对应的在线文档页面->复制对应内容并粘贴回xml。

机械化的重复流程可以使用代码来自动处理,并且还能生成 AspNetCore 的相关文档。

  • 生成逻辑:解析xml文件->获取其中成员->爬取对应文档页面->解析页面->生成本地化xml

当然缺陷是明显的 - 在线文档页面改版,就要重写解析逻辑。这里提供一个现成的生成工具。

本地化xml生成工具

工具以dotnet cli发布,使用dotnet tool进行安装

dotnet tool install -g islocalizer

.net6的汉化包已经有现成的了,可以直接进行安装

islocalizer install auto -m net6.0 -l zh-cn

工具会自动从github下载对应的包进行安装(可能需要访问加速)。

也可以通过-cc参数指定内容对照类型

  • OriginFirst: 原始内容在前
  • LocaleFirst: 本地化内容在前
  • None: 没有对照
islocalizer install auto -m net6.0 -l zh-cn -cc OriginFirst

自定义生成

如下示例生成.net6的原始内容在前的zh-cn本地化包,并使用 --------- 分隔原文和本地化内容,生成完成后的包路径会输出到控制台。

islocalizer build -m net6.0 -l zh-cn -cc OriginFirst -sl '---------'

可以通过 islocalizer build -h 查看更多的构建参数信息。

首次构建过程可能非常缓慢(需要爬取所有的页面),相关文件会被缓存(单zh-cn内容大小约3.5G),再次构建时会比较快;

安装

islocalizer install {包路径}

包路径为build命令完成后输出的路径。


可以通过 islocalizer -h 查看更多的命令帮助。

.Net IDE智能提示汉化(.Net6、AspNetCore)的更多相关文章

  1. .Net Core 智能提示汉化包

    在.Net Core 2.x 版本,Microsoft 官方没有提供 .Net Core 正式版的多语言安装包.因此,我们在用.Net Core 2.x 版本作为框架目标编写代码时,智能提成是英文的. ...

  2. Ubuntu Code::Blocks IDE 13.12 汉化

    Ubuntu Code::Blocks IDE 13.12 汉化: 安装很简单,不再赘述. 单说汉化: .下载中文简体汉化包(百度网盘):链接: http://pan.baidu.com/s/1kU3 ...

  3. 【扩展推荐】Laravel-ide-helper 高效的 IDE 智能提示插件 | Laravel China 社区 - 高品质的 Laravel 和 PHP 开发者社区 - Powered by PHPH

    说明# barryvdh/laravel-ide-helper 扩展包能让你的 IDE ( PHPStorm, Sublime ) 实现自动完成.代码智能提示和代码跟踪等功能,大大提高你的开发效率. ...

  4. unidbnavigator提示汉化

  5. ArcEngine 10.2 汉化问题

    开发环境:VS2010 + ArcEngine 10.2 + DEV 15.2 arcengine自带工具条提示汉化方法: 1:重写tool里的方法 2:利用工具箱里的ToopTip 3:把:ArcG ...

  6. SpringBoot魔法堂:说说带智能提示的spring-boot-starter

    前言 前几个月和隔壁组的老王闲聊,他说项目的供应商离职率居高不下,最近还有开发刚接手ESB订阅发布接口才两周就提出离职,而他能做的就只有苦笑和默默地接过这个烂摊子了. 而然幸福的家庭总是相似的,而不幸 ...

  7. 如何为.NETCore安装汉化包智能感知

    引言 具体不记得是在群里还是什么地方有人问过,.NETCore有没有汉化包,答案是有,目前微软已经为我们提供了.NETCore多种语言的语言包.下面看看如何安装与使用吧. 在哪下载? 在微软官方下载 ...

  8. C语言入门-ide的概念介绍及codeblocks编辑器安装汉化

    大家好,本章教程就ide(集成开发环境)来说一说. ide就是编译器+编辑器,原理就是在编辑器写代码,然后编辑器会让编译器来编译成二进制可执行文件. 常见的c/c++编译器有mingw64,msvc, ...

  9. 轻量级Lua IDE ZeroBrane Studio 的使用技巧和汉化

    快捷键 : alt + shift +鼠标 ,可以块选中文本. F12 折叠/展开 所有 F5 调试运行 点击第二次 将跳转到第一个断点处 F10 单步执行 shift +F10 单步执行,不进入函数 ...

随机推荐

  1. Java的重载以及与重写的区别

    一.什么是方法重载 方法的重载就是在同一个类中,有着若干个名字相同的方法.在具体调用这些方法的时候,通过传递参数的不同来调用这些重载方法. 二.为什么需要方法重载 方法名的定义需要做到见名知意,功能类 ...

  2. Semaphore 有什么作用 ?

    Semaphore 就是一个信号量,它的作用是限制某段代码块的并发数.Semaphore 有一个构造函数,可以传入一个 int 型整数 n,表示某段代码最多只有 n 个线程可 以访问,如果超出了 n, ...

  3. spring 支持哪些 ORM 框架 ?

    Hibernate iBatis JPA JDO OJB

  4. Redis 集群会有写操作丢失吗?为什么?

    Redis 并不能保证数据的强一致性,这意味这在实际中集群在特定的条件下可能会丢失写操作.

  5. java-属性集properties+加载配置文件

    简介 /* 使用properties集合存储数据,遍历取出properties集合中的数据 properties集合有一些操作字符串的特有方法 Object setProperty(String ke ...

  6. Redis Set Type

    集合中的元素个数最多为2的32次方-1个,集合中的元素师没有顺序的. Redis集合的操作命令和对应的api如下: smembers [set] JedisAPI:public Set<Stri ...

  7. MySQL怎么用命令修改字段长度

    MySQL怎么用命令修改double字段长度 1 alter table 表名 modify column 列名 类型(要修改的长度) COMMENT 备注信息; 2 alter table t_ov ...

  8. '\ddd'转义字符与八进制转换

    所有的ASCII码都可以用"\"加数字(一般是8进制数字)来表示.而C中定义了一些字母前加"\"来表示常见的那些不能显示的ASCII字符,如\0,\t,\n等, ...

  9. 一行代码让微信小程序支持 cookie

    weapp-cookie 一行代码让微信小程序支持 cookie,传送门:github Intro 微信原生的 wx.request 网络请求接口并不支持传统的 Cookie,但有时候我们现有的后端接 ...

  10. 小程序web-view加载H5信息不全

    满足小程序的web-view标签跳转网页形式 配置小程序后台的web-view(业务域名) 可打开关联的公众号的文章 通常实现逻辑 页面加载的时候赋值于一个data对象的值,然后赋值到web-view ...