基于范例的“拼音风格”命令行选项#19
Merged
Merged
Conversation
Owner
|
@wdscxsj 👍 新的命令行选项很符合 Go 的风格,让我一下就想到了 time 的格式化风格 。之前一直不理解为什么跟其他语言不一样,原来这个叫【基于范例】的XXX,学习了 👍 。
P.S. 可以考虑把上面的【对应关系】添加到 README.md 中。 |
Owner
|
|
Contributor
Author
|
@mozillazg 过谦了,有点帮助就好。 另外,目前所有不匹配的拼音风格都默认采用 |
Owner
|
@wdscxsj 好建议 👍 ,更严格的限制确实更合理。 |
Closed
Owner
|
@wdscxsj 关于严格限制拼音风格选项的值,最近比较忙没时间修改,欢迎提交 PR. |
bors-homu
added a commit
to mozillazg/python-pinyin
that referenced
this pull request
Oct 26, 2017
简化的pypinyin命令行选项 包括2个修改: - 增加了 short flags:`-f`, `-s`, `-p`(记如part), `-e`, `-m`(记如multiple,而且是heteronym的最后一个字母) - 增加了基于范例的“拼音风格”命令行选项,思路见Go版:mozillazg/go-pinyin#19 提出这些调整的原因,一是原命令行较难记忆,二是输起来太费劲了(尤其是在手机上),都可能吓走用户。 BOPOMOFO、CYRILLIC的4个选项,我不懂怎么设计范例,只好照抄。本来还想弄成不区分大小写、有没有下划线都无所谓的,但对于日常使用,这样应该已经挺方便了。
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
实用工具pinyin目前直接采用源代码定义的拼音风格名作为命令行选项,似乎存在以下问题:
strconv.ToLower()一下再比较,用户体验也会好一些。Normal改称Toneless似乎更精确;哪些风格带有复数s,什么是2什么是3,为什么没有1,用户回忆起来恐怕也得“顿一下”。如果仅作为第三方库给悲催的程序员调用,以上问题(除了代码维护)似乎也无所谓。但既然提供了命令行工具,个人倾向于对用户更温柔些。
在此建议改用基于范例的风格选项,好处是:容易拼写,也容易记忆;用户注意力集中到问题域,不容易写错;隐藏了实现方式,利于代码维护;容易基于现有代码修改,不易改错。
建议采用的范例字是“赵”,好处是:好记(百家姓首位);拼音短;涵盖了现有的全部风格;挺欢乐……
对应如下:
附注标*处的说明:zhào和ào不容易输入,命令行选项就要采取折衷,这是用户唯一需要“硬记”的地方。其中Tone是默认选项,一般不需要指定;必须指定时,也只要记得“4在a前面”(for all?),这也是a4o、ao4的自然外推。