249 lines
8.7 KiB
Markdown
249 lines
8.7 KiB
Markdown
|
# Changelog
|
|||
|
|
|||
|
## [0.20.0] (2023-05-14)
|
|||
|
|
|||
|
* **Changed** 使用 [pinyin-data][pinyin-data] v0.13.0 的拼音数据
|
|||
|
|
|||
|
|
|||
|
## [0.19.0] (2021-12-11)
|
|||
|
|
|||
|
* **Changed** 使用 [pinyin-data][pinyin-data] v0.12.0 的拼音数据
|
|||
|
|
|||
|
|
|||
|
## [0.18.0] (2020-06-13)
|
|||
|
|
|||
|
* **Changed** 使用 [pinyin-data][pinyin-data] v0.9.0 的拼音数据
|
|||
|
* **Bugfixed** 修复自定义的 Fallback 函数可能会导致结果乱码的问题 Fixes [#35]
|
|||
|
|
|||
|
## [0.17.0] (2020-04-09)
|
|||
|
|
|||
|
* **Changed** 因为依赖的 gojieba 经常出现安装异常,撤销 v0.16.0 的修改,撤销后 v0.17.0 的代码跟 v0.15.0 基本是一样的。
|
|||
|
如果有需要使用 v0.16.0 新增的 ``func Paragraph(p string) string`` 功能的请使用 v0.16.0 版本或者通过 v0.16.0 中相关代码实现类似的需求。
|
|||
|
|
|||
|
## [0.16.0] (2019-12-05)
|
|||
|
|
|||
|
* **NEW** 增加 ``func Paragraph(p string) string`` 用于便捷处理大段文字
|
|||
|
(thanks [@huacnlee] via [#37][#37])
|
|||
|
|
|||
|
## [0.15.0] (2019-04-06)
|
|||
|
|
|||
|
* **Changed** 使用 [pinyin-data][pinyin-data] v0.7.0 的拼音数据
|
|||
|
* **NEW** 添加 go.mod 文件
|
|||
|
|
|||
|
|
|||
|
## [0.14.0] (2018-08-05)
|
|||
|
|
|||
|
* **Changed** 使用 [pinyin-data][pinyin-data] v0.6.1 的拼音数据
|
|||
|
* **Changed** 命令行工具移到 `cmd/pinyin/` 目录下,现在需要改为使用
|
|||
|
`go get -u github.com/mozillazg/go-pinyin/cmd/pinyin` 来安装命令行工具。
|
|||
|
|
|||
|
|
|||
|
## [0.13.0] (2018-04-29)
|
|||
|
|
|||
|
* **Changed** 使用 [pinyin-data][pinyin-data] v0.5.1 的拼音数据 (via [#30])
|
|||
|
* **Changed** 修改命令行工具 `-s` 参数的值(thanks [@wdscxsj][@wdscxsj] via [#19][#19]):
|
|||
|
* `Normal` 改为 `zhao`
|
|||
|
* `Tone` 改为 `zh4ao`
|
|||
|
* `Tone2` 改为 `zha4o`
|
|||
|
* `Tone3` 改为 `zhao4`
|
|||
|
* `Initials` 改为 `zh`
|
|||
|
* `FirstLetter` 改为 `z`
|
|||
|
* `Finals` 改为 `ao`
|
|||
|
* `FinalsTone` 改为 `4ao`
|
|||
|
* `FinalsTone2` 改为 `a4o`
|
|||
|
* `FinalsTone3` 改为 `ao4`
|
|||
|
* **Changed** 严格限制命令行参数中 `-s` 选项的值(thanks [@wdscxsj][@wdscxsj] via [#20][#20]):
|
|||
|
|
|||
|
|
|||
|
## [0.12.0] (2017-04-25)
|
|||
|
|
|||
|
|
|||
|
* **NEW** 命令行程序支持通过 -s 指定新增的 `Tone3` 和 `FinalsTone3` 拼音风格
|
|||
|
|
|||
|
$ pinyin -s Tone3 请至少输入一个汉字
|
|||
|
qing3 zhi4 shao3 shu1 ru4 yi1 ge4 han4 zi4
|
|||
|
|
|||
|
$ pinyin -s FinalsTone3 请至少输入一个汉字
|
|||
|
ing3 i4 ao3 u1 u4 i1 e4 an4 i4
|
|||
|
|
|||
|
* **Changed** use [pinyin-data](https://github.com/mozillazg/pinyin-data) v0.4.1
|
|||
|
|
|||
|
|
|||
|
## [0.11.0] (2016-10-28)
|
|||
|
|
|||
|
* **Changed** 不再使用 `0` 表示轻声(因为之前并没有正确的实现这个功能, 同时也觉得这个功能没必要)。
|
|||
|
顺便修复了 Tone2 中 `ü` 标轻声的问题(像 `侵略 -> qi1n lv0e4` )
|
|||
|
* **NEW** 新增 `Tone3` 和 `FinalsTone3` 拼音风格。
|
|||
|
|
|||
|
hans := "中国人"
|
|||
|
args := pinyin.NewArgs()
|
|||
|
args.Style = pinyin.Tone3
|
|||
|
fmt.Println("Tone3:", pinyin.Pinyin(hans, args))
|
|||
|
// Output: Tone3: [[zhong1] [guo2] [ren2]]
|
|||
|
|
|||
|
args.Style = pinyin.FinalsTone3
|
|||
|
fmt.Println("FinalsTone3:", pinyin.Pinyin(hans, args))
|
|||
|
// Output: FinalsTone3: [[ong1] [uo2] [en2]]
|
|||
|
|
|||
|
|
|||
|
|
|||
|
## [0.10.0] (2016-10-18)
|
|||
|
|
|||
|
* **Changed** use [pinyin-data](https://github.com/mozillazg/pinyin-data) v0.4.0
|
|||
|
|
|||
|
|
|||
|
## [0.9.0] (2016-09-04):
|
|||
|
|
|||
|
* **NEW** 新增 `func Convert(s string, a *Args) [][]string`
|
|||
|
* **NEW** 新增 `func LazyConvert(s string, a *Args) []string`
|
|||
|
|
|||
|
之所以增加这两个函数是希望 `a` 参数支持 `nil`
|
|||
|
|
|||
|
|
|||
|
|
|||
|
## [0.8.0] (2016-08-19)
|
|||
|
|
|||
|
* **Changed** use [pinyin-data](https://github.com/mozillazg/pinyin-data) v0.3.0
|
|||
|
* Fixed [#13](https://github.com/mozillazg/go-pinyin/issues/13) . thanks [@aisq2008](https://github.com/aisq2008)
|
|||
|
* Fixed pinyin of 罗
|
|||
|
|
|||
|
|
|||
|
## [0.7.0] (2016-08-02)
|
|||
|
|
|||
|
* **Changed** use [pinyin-data](https://github.com/mozillazg/pinyin-data) v0.2.0
|
|||
|
* **Improved** golint and gofmt
|
|||
|
|
|||
|
|
|||
|
## [0.6.0] (2016-05-14)
|
|||
|
|
|||
|
* **NEW** 命令行程序支持指定拼音风格:
|
|||
|
|
|||
|
```shell
|
|||
|
$ pinyin -s Normal 你好
|
|||
|
ni hao
|
|||
|
```
|
|||
|
* **Bugfixed** 解决韵母 i, u, ü 的问题:根据以下拼音方案,还原出正确的韵母
|
|||
|
[#8](https://github.com/mozillazg/go-pinyin/pull/8), [python-pinyin#26](https://github.com/mozillazg/python-pinyin/pull/26)
|
|||
|
|
|||
|
> i 行的韵母,前面没有声母的时候,写成:yi(衣),yɑ(呀),ye(耶),
|
|||
|
> yɑo(腰),you(忧),yɑn(烟),yin(因),yɑnɡ(央),yinɡ(英),yonɡ(雍)。
|
|||
|
>
|
|||
|
> u 行的韵母,前面没有声母的时候,写成wu(乌),wɑ(蛙),wo(窝),
|
|||
|
> wɑi(歪),wei(威),wɑn(弯),wen(温),wɑnɡ(汪),wenɡ(翁)。
|
|||
|
>
|
|||
|
> ü行的韵母跟声母j,q,x拼的时候,写成ju(居),qu(区),xu(虚),
|
|||
|
> ü上两点也省略;但是跟声母l,n拼的时候,仍然写成lü(吕),nü(女)。
|
|||
|
|
|||
|
**注意** `y` 既不是声母也不是韵母。详见 [汉语拼音方案](http://www.edu.cn/20011114/3009777.shtml)
|
|||
|
|
|||
|
* **Bugfixed** 解决未正确处理鼻音 ḿ, ń, ň, ǹ 的问题:包含鼻音的拼音不应该有声母
|
|||
|
|
|||
|
|
|||
|
|
|||
|
## [0.5.0] (2016-03-12)
|
|||
|
|
|||
|
* **CHANGE** 改为使用来自 [pinyin-data](https://github.com/mozillazg/pinyin-data) 的拼音数据。
|
|||
|
* **NEW** 命令行程序支持从标准输入读取数据(支持管道和重定向输入):
|
|||
|
|
|||
|
```shell
|
|||
|
$ echo "你好" | pinyin
|
|||
|
nǐ hǎo
|
|||
|
$ pinyin < hello.txt
|
|||
|
nǐ hǎo
|
|||
|
```
|
|||
|
|
|||
|
|
|||
|
## [0.4.0] (2016-01-29)
|
|||
|
|
|||
|
* **NEW** `Args` 结构体新增 field: `Fallback func(r rune, a Args) []string`
|
|||
|
用于处理没有拼音的字符(默认忽略没有拼音的字符):
|
|||
|
```go
|
|||
|
a := pinyin.NewArgs()
|
|||
|
a.Fallback = func(r rune, a pinyin.Args) []string {
|
|||
|
return []string{string(r + 1)}
|
|||
|
}
|
|||
|
fmt.Println(pinyin.Pinyin("中国人abc", a))
|
|||
|
// Output: [[zhong] [guo] [ren] [b] [c] [d]]
|
|||
|
|
|||
|
// or
|
|||
|
pinyin.Fallback = func(r rune, a pinyin.Args) []string {
|
|||
|
return []string{string(r)}
|
|||
|
}
|
|||
|
fmt.Println(pinyin.Pinyin("中国人abc", pinyin.NewArgs()))
|
|||
|
// Output: [[zhong] [guo] [ren] [a] [b] [c]]
|
|||
|
```
|
|||
|
|
|||
|
|
|||
|
## [0.3.0] (2015-12-29)
|
|||
|
|
|||
|
* fix "当字符串中有非中文的时候,会出现下标越界的情况"(影响 `pinyin.LazyPinyin` 和 `pinyin.Slug` ([#1](https://github.com/mozillazg/go-pinyin/issues/1)))
|
|||
|
* 调整对非中文字符的处理:当遇到没有拼音的字符时,直接忽略
|
|||
|
```go
|
|||
|
// before
|
|||
|
fmt.Println(pinyin.Pinyin("中国人abc", pinyin.NewArgs()))
|
|||
|
[[zhong] [guo] [ren] [] [] []]
|
|||
|
|
|||
|
// after
|
|||
|
fmt.Println(pinyin.Pinyin("中国人abc", pinyin.NewArgs()))
|
|||
|
[[zhong] [guo] [ren]]
|
|||
|
```
|
|||
|
|
|||
|
|
|||
|
## [0.2.1] (2015-08-26)
|
|||
|
|
|||
|
* `yu`, `y`, `w` 不是声母
|
|||
|
|
|||
|
|
|||
|
## [0.2.0] (2015-01-04)
|
|||
|
|
|||
|
* 新增 `func NewArgs() Args`
|
|||
|
* 解决 `Args.Separator` 无法赋值为 `""` 的 BUG
|
|||
|
* 规范命名:
|
|||
|
* `NORMAL` -> `Normal`
|
|||
|
* `TONE` -> `Tone`
|
|||
|
* `TONE2` -> `Tone2`
|
|||
|
* `INITIALS` -> `Initials`
|
|||
|
* `FIRST_LETTER` -> `FirstLetter`
|
|||
|
* `FINALS` -> `Finals`
|
|||
|
* `FINALS_TONE` -> `FinalsTone`
|
|||
|
* `FINALS_TONE2` -> `FinalsTone2`
|
|||
|
|
|||
|
## [0.1.1] (2014-12-07)
|
|||
|
* 更新拼音库
|
|||
|
|
|||
|
|
|||
|
## 0.1.0 (2014-11-23)
|
|||
|
* Initial Release
|
|||
|
|
|||
|
|
|||
|
[pinyin-data]: https://github.com/mozillazg/pinyin-data
|
|||
|
[@wdscxsj]: https://github.com/wdscxsj
|
|||
|
[@huacnlee]: https://github.com/huacnlee
|
|||
|
[#19]: https://github.com/mozillazg/go-pinyin/pull/19
|
|||
|
[#20]: https://github.com/mozillazg/go-pinyin/pull/20
|
|||
|
[#30]: https://github.com/mozillazg/go-pinyin/pull/30
|
|||
|
[#37]: https://github.com/mozillazg/go-pinyin/pull/37
|
|||
|
[#35]: https://github.com/mozillazg/go-pinyin/issues/35
|
|||
|
|
|||
|
[0.1.1]: https://github.com/mozillazg/go-pinyin/compare/v0.1.0...v0.1.1
|
|||
|
[0.2.0]: https://github.com/mozillazg/go-pinyin/compare/v0.1.1...v0.2.0
|
|||
|
[0.2.1]: https://github.com/mozillazg/go-pinyin/compare/v0.2.0...v0.2.1
|
|||
|
[0.3.0]: https://github.com/mozillazg/go-pinyin/compare/v0.2.1...v0.3.0
|
|||
|
[0.4.0]: https://github.com/mozillazg/go-pinyin/compare/v0.3.0...v0.4.0
|
|||
|
[0.5.0]: https://github.com/mozillazg/go-pinyin/compare/v0.4.0...v0.5.0
|
|||
|
[0.6.0]: https://github.com/mozillazg/go-pinyin/compare/v0.5.0...v0.6.0
|
|||
|
[0.7.0]: https://github.com/mozillazg/go-pinyin/compare/v0.6.0...v0.7.0
|
|||
|
[0.8.0]: https://github.com/mozillazg/go-pinyin/compare/v0.7.0...v0.8.0
|
|||
|
[0.9.0]: https://github.com/mozillazg/go-pinyin/compare/v0.8.0...v0.9.0
|
|||
|
[0.10.0]: https://github.com/mozillazg/go-pinyin/compare/v0.9.0...v0.10.0
|
|||
|
[0.11.0]: https://github.com/mozillazg/go-pinyin/compare/v0.10.0...v0.11.0
|
|||
|
[0.12.0]: https://github.com/mozillazg/go-pinyin/compare/v0.11.0...v0.12.0
|
|||
|
[0.13.0]: https://github.com/mozillazg/go-pinyin/compare/v0.12.0...v0.13.0
|
|||
|
[0.14.0]: https://github.com/mozillazg/go-pinyin/compare/v0.13.0...v0.14.0
|
|||
|
[0.15.0]: https://github.com/mozillazg/go-pinyin/compare/v0.14.0...v0.15.0
|
|||
|
[0.16.0]: https://github.com/mozillazg/go-pinyin/compare/v0.15.0...v0.16.0
|
|||
|
[0.17.0]: https://github.com/mozillazg/go-pinyin/compare/v0.16.0...v0.17.0
|
|||
|
[0.18.0]: https://github.com/mozillazg/go-pinyin/compare/v0.17.0...v0.18.0
|
|||
|
[0.19.0]: https://github.com/mozillazg/go-pinyin/compare/v0.18.0...v0.19.0
|
|||
|
[0.20.0]: https://github.com/mozillazg/go-pinyin/compare/v0.19.0...v0.20.0
|