Skip to content
forked from golang/text

[mirror] Go text processing support

License

Notifications You must be signed in to change notification settings

elliotwutingfeng/text

This branch is 21 commits behind golang/text:master.

Folders and files

NameName
Last commit message
Last commit date

Latest commit

fb697c0 · Jul 21, 2023
Jun 13, 2023
Jul 21, 2023
Apr 4, 2023
Jun 13, 2023
Feb 20, 2021
Jun 26, 2023
Jun 13, 2023
Jun 13, 2023
Jul 17, 2023
Jul 20, 2023
Feb 7, 2023
Oct 12, 2022
Mar 23, 2017
Jul 17, 2023
Sep 19, 2022
Jun 13, 2023
Jun 13, 2023
Dec 23, 2014
Mar 22, 2017
Mar 14, 2018
Mar 6, 2013
Mar 6, 2013
Dec 6, 2022
Mar 18, 2015
Feb 8, 2018
Sep 19, 2022
Jun 8, 2023
Feb 27, 2023

Repository files navigation

Go Text

Go Reference

This repository holds supplementary Go libraries for text processing, many involving Unicode.

CLDR Versioning

It is important that the Unicode version used in x/text matches the one used by your Go compiler. The x/text repository supports multiple versions of Unicode and will match the version of Unicode to that of the Go compiler. At the moment this is supported for Go compilers from version 1.7.

Download/Install

The easiest way to install is to run go get -u golang.org/x/text. You can also manually git clone the repository to $GOPATH/src/golang.org/x/text.

Contribute

To submit changes to this repository, see http://golang.org/doc/contribute.html.

To generate the tables in this repository (except for the encoding tables), run go generate from this directory. By default tables are generated for the Unicode version in core and the CLDR version defined in golang.org/x/text/unicode/cldr.

Running go generate will as a side effect create a DATA subdirectory in this directory, which holds all files that are used as a source for generating the tables. This directory will also serve as a cache.

Testing

Run

go test ./...

from this directory to run all tests. Add the "-tags icu" flag to also run ICU conformance tests (if available). This requires that you have the correct ICU version installed on your system.

TODO:

  • updating unversioned source files.

Generating Tables

To generate the tables in this repository (except for the encoding tables), run go generate from this directory. By default tables are generated for the Unicode version in core and the CLDR version defined in golang.org/x/text/unicode/cldr.

Running go generate will as a side effect create a DATA subdirectory in this directory which holds all files that are used as a source for generating the tables. This directory will also serve as a cache.

Versions

To update a Unicode version run

UNICODE_VERSION=x.x.x go generate

where x.x.x must correspond to a directory in https://www.unicode.org/Public/. If this version is newer than the version in core it will also update the relevant packages there. The idna package in x/net will always be updated.

To update a CLDR version run

CLDR_VERSION=version go generate

where version must correspond to a directory in https://www.unicode.org/Public/cldr/.

Note that the code gets adapted over time to changes in the data and that backwards compatibility is not maintained. So updating to a different version may not work.

The files in DATA/{iana|icu|w3|whatwg} are currently not versioned.

Report Issues / Send Patches

This repository uses Gerrit for code changes. To learn how to submit changes to this repository, see https://golang.org/doc/contribute.html.

The main issue tracker for the image repository is located at https://github.com/golang/go/issues. Prefix your issue with "x/text:" in the subject line, so it is easy to find.

About

[mirror] Go text processing support

Resources

License

Stars

Watchers

Forks

Languages

  • Go 100.0%