• Stars
    star
    745
  • Rank 60,864 (Top 2 %)
  • Language
    Go
  • License
    BSD 3-Clause "New...
  • Created almost 10 years ago
  • Updated 3 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

[mirror] Go text processing support

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.

More Repositories

1

go

The Go programming language
Go
121,832
star
2

groupcache

groupcache is a caching and cache-filling library, intended as a replacement for memcached in many cases.
Go
12,859
star
3

dep

Go dependency management tool experiment (deprecated)
Go
12,857
star
4

protobuf

Go support for Google's protocol buffers
Go
9,676
star
5

mock

GoMock is a mocking framework for the Go programming language.
Go
9,286
star
6

tools

[mirror] Go Tools
Go
7,321
star
7

mobile

[mirror] Go on Mobile
Go
5,768
star
8

oauth2

Go OAuth2
Go
5,270
star
9

lint

[mirror] This is a linter for Go source code. (deprecated)
Go
3,974
star
10

vscode-go

Go extension for Visual Studio Code
TypeScript
3,810
star
11

glog

Leveled execution logs for Go
Go
3,520
star
12

proposal

Go Project Design Documents
Go
3,312
star
13

crypto

[mirror] Go supplementary cryptography libraries
Go
2,982
star
14

net

[mirror] Go supplementary network libraries
Go
2,846
star
15

example

Go example projects
Go
2,526
star
16

geo

S2 geometry library in Go
Go
1,655
star
17

tour

[mirror] A Tour of Go
Go
1,543
star
18

vgo

[mirror] Versioned Go Prototype
Go
1,519
star
19

snappy

The Snappy compression format in the Go programming language.
Go
1,512
star
20

sys

[mirror] Go packages for low-level interaction with the operating system
Go
1,253
star
21

pkgsite

[mirror] Home of the pkg.go.dev website
Go
1,148
star
22

leveldb

The LevelDB key-value database in the Go programming language.
Go
1,145
star
23

gddo

Go Doc Dot Org
Go
1,104
star
24

gofrontend

Go compiler frontend (gccgo)
Go
852
star
25

sync

[mirror] concurrency primitives
Go
848
star
26

exp

[mirror] Experimental and deprecated packages
Go
838
star
27

freetype

The Freetype font rasterizer in the Go programming language.
Go
783
star
28

playground

[mirror] The Go Playground
Go
741
star
29

talks

Go talks
694
star
30

appengine

Go App Engine packages
Go
669
star
31

build

[mirror] Go's continuous build and release infrastructure (no stability promises)
Go
627
star
32

vulndb

[mirror] The Go Vulnerability Database
Go
555
star
33

image

[mirror] Go supplementary image libraries
Go
522
star
34

blog

[mirror] Go Blog (obsolete)
389
star
35

time

[mirror] Go supplementary time packages
Go
383
star
36

vuln

[mirror] the database client and tools for the Go vulnerability database
Go
376
star
37

perf

[mirror] Performance measurement, storage, and analysis.
Go
375
star
38

website

[mirror] Home of the go.dev and golang.org websites
HTML
373
star
39

sublime-build

The official Sublime Text package for Go build system integration.
Python
343
star
40

xerrors

Go
277
star
41

term

Go terminal and console support
Go
272
star
42

debug

[mirror] debugging tools
Go
230
star
43

dl

[mirror] go install golang.org/dl/go1.N@latest
Go
189
star
44

mod

[mirror] Go module mechanics libraries
Go
187
star
45

benchmarks

Benchmarks for the perf dashboard
Go
181
star
46

arch

[mirror] architecture code
Go
145
star
47

review

[mirror] Tool for working with Gerrit code reviews
Go
143
star
48

cwg

Community outreach Working Group
132
star
49

oscar

[mirror] Open source contributor agent architecture repo.
Go
90
star
50

govulncheck-action

[mirror] GitHub action for govulncheck
89
star
51

sublime-config

A library for Go environment configuration in Sublime Text
Python
85
star
52

winstrap

Bootstrapping tools for windows builders
Go
48
star
53

telemetry

[mirror] Go Telemetry services and libraries
Go
36
star
54

wiki

[mirror] Go Wiki
29
star
55

scratch

[mirror] repository used for testing
Go
28
star
56

pkgsite-metrics

Code to serve pkg.go.dev/metrics [mirror]
Go
13
star
57

go-get-issue-15410

go-get-issue-15410
Go
4
star
58

.github

2
star
59

.allstar

2
star