We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
主题:
for example:program-in-chinese/CTS#10
这是一种汉化typescript的方案(记为方案1
枚举 性别_ {男,女} 类别 人{ 构造(公开 姓名:文字, 公开 性别:性别_,公开 年龄:数字){} } 类别 学生 扩展 人 { 构造(公开 基本信息:人,公开 学校:文字){ 父级(基本信息.姓名, 基本信息.性别,基本信息.年龄); } } 函数 问好(那谁:人){ 如果(那谁 身为 学生){ 返回 那谁.性别 === 性别_.男? `${那谁.学校}的小男孩 ${那谁.姓名} 真乖.` : `${那谁.学校}的小女孩 ${那谁.姓名} 真乖.` } } 常量 问好语句 = 问好(新建 学生(新建 人(“黄xx”,性别_.男,15, “八小”)); 文档.体.内部HTML = 问好语句 控制台.日志(问好语句)
方案1使用的映射表目测为:
个人觉得方案一有些地方可以优化,比如class->类别这种的,可以改写成bc。基于此法,则有方案二:
vE T性别 {男,女} bc 人{ cc( tp 姓名:文字, tp 性别:T性别, tp 年龄:数字){} cc(i){ cc(i.姓名,i.性别,i.年龄) } } bc 学生 be 人 { cc(tp 信息:人,tp 学校:文字){ bs(信息); } va 性别为男 = ()=> 此.性别 为 T性别.男 } bf 问好(某人:人){ vf(某人 从 学生){ va 某校 = 某人.学校 va 某某某 = 某人.姓名 返回 某人.性别为男? `${某校}的小男孩 ${某某某} 真乖.` : `${某校}的小女孩 ${某某某} 真乖.` } } vc v问好 = 问好(vn 学生(vn 人(“黄xx”,性别.男,15, “八小”)); 网页.内容.内部HTML = v问好 控.印(v问好)
方案二使用的映射表为:
// b=基础/basic,T=类型/type,v=值/value // 规范:预定义type用小写t开头,自定义用大写T开头
// i=info=信息,控.印=console.log // 网页.内容.内HTML = document.body.innerHTML // 类似for .. in的 in 这种,不需要再简化了
备注:方案二并不是一个最优化的版本,如何在英文字母组合和汉字间取舍,需要经过实践检验。
关于va vb vc这样的缩写,主要是受星际争霸快捷键的启发(玩游戏的时候按快捷键都是不用想的),故方案2也可以称作星际汉化法【说白了,就是把字母当汉字使
PS:vim的:wq,也是类似的逻辑(w=write,q=quit),但这是基于英语的,不适合中文语境
方案二在微信群里争议比较大,故折中考虑,来一个方案三:
enum T性别 {男,女} class 人{ 构造( pub 姓名:文字, pub 性别:T性别, pub 年龄:数字){} 构造(i){ cc(i.姓名,i.性别,i.年龄) } } class 学生 <- 人 { 构造(pub 信息:人,pub 学校:文字){ super(信息); } var 性别为男 = ()=> 此.性别 为 T性别.男 } fn 问好(某人:人){ if(某人 从 学生){ var 某校 = 某人.学校 var 某某某 = 某人.姓名 return 某人.性别为男? `${某校}的小男孩 ${某某某} 真乖.` : `${某校}的小女孩 ${某某某} 真乖.` } } const v问好 = 问好(new 学生(new 人(“黄xx”,性别.男,15,“八小”)); 网页.内容.内部HTML = v问好 控.印(v问好)
方案3使用的映射表为:
The text was updated successfully, but these errors were encountered:
如果英文字符组合比汉字方便
如果关键词如此简化, 为何命名要用中文?
Sorry, something went wrong.
@nobodxbodon 如果关键词如此简化, 为何命名要用中文?
中文命名主要时方便业务逻辑。而目前的一些关键词汉化,其实并没有让代码的视觉可读性提升。比如【公开 甲:整数】里面的[公开],这种属于次一级的语法元素,用英文反而可以降低视觉上的优先级,从而更focus中文部分。换句话说:
bc 人{ cc( tp 姓名:文字,tp 性别:T性别,tp 年龄:数字){} cc(i){cc(i.姓名,i.性别,i.年龄) } }
这段代码里,把[类别,公开]换成[tp,bc],可以减少视觉上的噪音
准备合并讨论。合并前简单总结一下:
ref: #40 (comment)
https://en.cppreference.com/w/cpp/keyword github.com/microsoft/TypeScript/issues/2536
No branches or pull requests
主题:
for example:program-in-chinese/CTS#10
这是一种汉化typescript的方案(记为方案1
方案1使用的映射表目测为:
个人觉得方案一有些地方可以优化,比如class->类别这种的,可以改写成bc。基于此法,则有方案二:
方案二使用的映射表为:
// b=基础/basic,T=类型/type,v=值/value
// 规范:预定义type用小写t开头,自定义用大写T开头
// i=info=信息,控.印=console.log
// 网页.内容.内HTML = document.body.innerHTML
// 类似for .. in的 in 这种,不需要再简化了
备注:方案二并不是一个最优化的版本,如何在英文字母组合和汉字间取舍,需要经过实践检验。
关于va vb vc这样的缩写,主要是受星际争霸快捷键的启发(玩游戏的时候按快捷键都是不用想的),故方案2也可以称作星际汉化法【说白了,就是把字母当汉字使
PS:vim的:wq,也是类似的逻辑(w=write,q=quit),但这是基于英语的,不适合中文语境
方案二在微信群里争议比较大,故折中考虑,来一个方案三:
方案3使用的映射表为:
The text was updated successfully, but these errors were encountered: