Skip to content
New issue

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

希望大家多帮忙完善下关键字 #2

Open
htwx opened this issue Oct 20, 2017 · 26 comments
Open

希望大家多帮忙完善下关键字 #2

htwx opened this issue Oct 20, 2017 · 26 comments

Comments

@htwx
Copy link
Collaborator

htwx commented Oct 20, 2017

今天看了官方的发布到2.7.0整数版.我想跟进这个版本. 所以这个是重开的一个项目.
今天看了新代码官方调整还是很大的.
上版的关键字我真是不满意, 这版想调整下.
现在有些我还是拿不准, 关键字真的是中文翻译的第一步, 我觉得真的很关键.
社区的多帮想想吧, 我想全部要求2个字.

这版想实现自写自身, 尽量把官方的标识符都翻译成中文的,最少把接口都汉化了.
这版关键字有好几个是这里朋友贡献的, 表示感谢.
希望继续发挥力量.
代码链接

关键字图片:

im3
im2
im1

@nobodxbodon
Copy link
Member

@htwx 能否把源码链接附一下? @swizl @hummerstudio 还请多多建议.

@htwx
Copy link
Collaborator Author

htwx commented Oct 21, 2017

这套代码咱们大家一起写怎么样. 我试想翻译过 C#, 相对于 C# 这个 TS 更容易实现,比 C#, Java 要容易.
如果有C# 或Java 基础或 js 基础, 学这个分分钟的事.

@nobodxbodon
Copy link
Member

@htwx 有兴趣. 先请问一下:

把官方的标识符都翻译成中文的,最少把接口都汉化了.

这里的"标识符"指的是...? "接口"又是?

@htwx
Copy link
Collaborator Author

htwx commented Oct 21, 2017

@nobodxbodon 标识符就是指 关键字以外的所有名称 源码就是由 : 关键字 + 标识符(Identifier) 或 字面量(文字或数字) + 杂项组成的 , 杂项 包括 空格(严格来说是空白)和各种评论组成的.
我上面提到的接口是指公开的API我没说清.标点符号运算符属于关键字

@nobodxbodon
Copy link
Member

小白问题: 请问API指哪些?

@htwx
Copy link
Collaborator Author

htwx commented Oct 21, 2017

外部可以调用的一样方法或命令

@nobodxbodon
Copy link
Member

比如console.log?

@htwx
Copy link
Collaborator Author

htwx commented Oct 21, 2017

哦不是的是指 ts(编译器) 本身对外提供的可由外部调用的公开方法 例如 : 解析编译选项\ 编译 \ 输出 等等这类基本就是这个文件里面声明的方法
如果这些都改了就基本和官方脱离了关系了, 基本官方的更新就只能手动更新了.

@nobodxbodon
Copy link
Member

这些吧?
在敲定最终的翻译之前, 最好还是附上原本的英文吧. 看到编译我第一反应是compile...

@htwx
Copy link
Collaborator Author

htwx commented Oct 21, 2017

这些是 ES5 的方法名 这些肯定要汉化的但是这个实际 不属于 ts 编译器里的

@htwx
Copy link
Collaborator Author

htwx commented Oct 21, 2017

是指 这套源码里 带有 export 关键字的方法

@htwx
Copy link
Collaborator Author

htwx commented Oct 21, 2017

这样的方法是 导出的 就是可以由外部 调用的

@nobodxbodon
Copy link
Member

我打算先从推敲关键字开始, 同时开始编写入门文档(也许更像TS学习笔记). 代码修改尽量参与.

再确认一下"自写自身"的意思
比如这段源码

    export function getFullWidth(node: Node) {
        return node.end - node.pos;
    }

目标是翻译成类似下面这样吗? 只是个演示, 具体翻译另议

    导出 函数 取全长(节点: 节点类) {
        返回 节点.末尾 - 节点.位置;
    }

另外,

这类基本就是这个文件里面声明的方法
如果这些都改了就基本和官方脱离了关系了, 基本官方的更新就只能手动更新了.

原本的英文API都还是支持的吧?

@htwx
Copy link
Collaborator Author

htwx commented Oct 21, 2017

我长期打算是这个意思, 但这个轻易不能动啊, 要等TS官方版本很稳定后再实现吧, 现在官方的变化太大了.

@nobodxbodon
Copy link
Member

同意. 打算什么时机公开发布第一个版本呢? 只要汉化了关键字, 入门教程的代码就可以大部分用中文了吧. 入门教程完成时同时发布第一版本如何?

@htwx
Copy link
Collaborator Author

htwx commented Oct 21, 2017

要汉化了关键字和 es5的 基本支出库, 没有这个 基本支持库 写不出多少东西来, 如果要翻译完 es5 的标识符
js 能写的就差不多了. ide 插件也要写完, 要是没有插件写起来不舒服,给人的感觉也不好, 我想的是先模仿 ts官网 先做个论坛 在里面发些教程.

@htwx
Copy link
Collaborator Author

htwx commented Oct 21, 2017

入门教程的代码就全是中文的了, 原来我的设想教程是从 微信的小程序开始, 我可以把微信的小程序 先汉化了,然后就可以写小程序了. 先拿这个做突破.

@htwx
Copy link
Collaborator Author

htwx commented Oct 21, 2017

目前 感觉 微软的这个版本还没完善 好几个 TODO ,从 2.5 到2.7 代码的改动还是很大的.

@htwx
Copy link
Collaborator Author

htwx commented Oct 21, 2017

微软的这套代码与 js 比真的好太多了 如果是 js 开发的这个 根本就是灾难. 运行效率也是非常高. 有后端经验人员直接放弃 js 就学这个就好了. 上手快太多了.

nobodxbodon pushed a commit to nobodxbodon/CTS that referenced this issue Oct 21, 2017
@nobodxbodon
Copy link
Member

@htwx 刚建了个PR, 请审阅. 那里面也可以comment

"微信的小程序"是指...? 能举个例子/链接吗? 对这方面很不了解.

@htwx
Copy link
Collaborator Author

htwx commented Oct 21, 2017

小程序知乎

@htwx
Copy link
Collaborator Author

htwx commented Oct 21, 2017

我感觉这个小程序是个释放创意的地方. 线下应用应该很广泛,现在官方推广的力度虽然很大,但是目前的开发门槛还是高了些, 所以现在没有达到预期,现在 这类的小程序有 微信小程序 和 支付宝小程序, 这个中文 CTS 能 前后端 一个语言搞定 所以 是最适合 新项目的(有历史包袱的可能服务器是 JAVA 开发的)
@nobodxbodon
可以说这个 CTS 是 完全快平台的编程语言, 既能写小型脚本 也能开发 服务器 程序, 这个是微软专门为了 规模开发 而设计的 脚本语言. 服务器 桌面 移动端 通吃的. 毕竟是JS的超级, 虽然这个语言后端人员入门更快, 原来的前端人员入门也没有 C# 和 JAVA 那么难.

@nobodxbodon
Copy link
Member

@htwx 了解. 这种非常实用的教程会比较有吸引力. 不过我可能会先做一个纯语言的学习笔记/入门教程. 如果有现成的TS语言入门教程请推荐一下, 合适的例程可以直接汉化, 省得再创造了.

@htwx
Copy link
Collaborator Author

htwx commented Oct 21, 2017

最好的应用教程是 VsCode 的源码 , 这个 编译器的源码 从 sys.ts 和 code.ts 及 utilities.ts 或 tsc.ts 入手看

@nobodxbodon
Copy link
Member

我想写的是给完全没有编程经验的新手看的. 类似之前写的Java一天入门

htwx added a commit that referenced this issue Oct 25, 2017
@nobodxbodon
Copy link
Member

刚注意到f6e204b#diff-a15280067dcb3b0929808762f8352e86L236
let 和 var的区别好像很难从用词上表现出来啊...之前的'块级'估计是想反映"block scoped"吧?
如果反正不能反映他们的实际区别, 是否可以考虑用接近原词的意思? 比如let->使得(其实'让'好像也行, 不过两字的没想到更好的), var应该是variable的缩写就还用"变量"?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants