mirror of
				https://github.com/go-gitea/gitea.git
				synced 2025-10-31 21:28:11 +09:00 
			
		
		
		
	Show download count info in release list (#10124)
* Show download count info in release list * Use go-humanize
This commit is contained in:
		
							
								
								
									
										124
									
								
								vendor/github.com/dustin/go-humanize/README.markdown
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										124
									
								
								vendor/github.com/dustin/go-humanize/README.markdown
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							| @@ -0,0 +1,124 @@ | ||||
| # Humane Units [](https://travis-ci.org/dustin/go-humanize) [](https://godoc.org/github.com/dustin/go-humanize) | ||||
|  | ||||
| Just a few functions for helping humanize times and sizes. | ||||
|  | ||||
| `go get` it as `github.com/dustin/go-humanize`, import it as | ||||
| `"github.com/dustin/go-humanize"`, use it as `humanize`. | ||||
|  | ||||
| See [godoc](https://godoc.org/github.com/dustin/go-humanize) for | ||||
| complete documentation. | ||||
|  | ||||
| ## Sizes | ||||
|  | ||||
| This lets you take numbers like `82854982` and convert them to useful | ||||
| strings like, `83 MB` or `79 MiB` (whichever you prefer). | ||||
|  | ||||
| Example: | ||||
|  | ||||
| ```go | ||||
| fmt.Printf("That file is %s.", humanize.Bytes(82854982)) // That file is 83 MB. | ||||
| ``` | ||||
|  | ||||
| ## Times | ||||
|  | ||||
| This lets you take a `time.Time` and spit it out in relative terms. | ||||
| For example, `12 seconds ago` or `3 days from now`. | ||||
|  | ||||
| Example: | ||||
|  | ||||
| ```go | ||||
| fmt.Printf("This was touched %s.", humanize.Time(someTimeInstance)) // This was touched 7 hours ago. | ||||
| ``` | ||||
|  | ||||
| Thanks to Kyle Lemons for the time implementation from an IRC | ||||
| conversation one day. It's pretty neat. | ||||
|  | ||||
| ## Ordinals | ||||
|  | ||||
| From a [mailing list discussion][odisc] where a user wanted to be able | ||||
| to label ordinals. | ||||
|  | ||||
|     0 -> 0th | ||||
|     1 -> 1st | ||||
|     2 -> 2nd | ||||
|     3 -> 3rd | ||||
|     4 -> 4th | ||||
|     [...] | ||||
|  | ||||
| Example: | ||||
|  | ||||
| ```go | ||||
| fmt.Printf("You're my %s best friend.", humanize.Ordinal(193)) // You are my 193rd best friend. | ||||
| ``` | ||||
|  | ||||
| ## Commas | ||||
|  | ||||
| Want to shove commas into numbers? Be my guest. | ||||
|  | ||||
|     0 -> 0 | ||||
|     100 -> 100 | ||||
|     1000 -> 1,000 | ||||
|     1000000000 -> 1,000,000,000 | ||||
|     -100000 -> -100,000 | ||||
|  | ||||
| Example: | ||||
|  | ||||
| ```go | ||||
| fmt.Printf("You owe $%s.\n", humanize.Comma(6582491)) // You owe $6,582,491. | ||||
| ``` | ||||
|  | ||||
| ## Ftoa | ||||
|  | ||||
| Nicer float64 formatter that removes trailing zeros. | ||||
|  | ||||
| ```go | ||||
| fmt.Printf("%f", 2.24)                // 2.240000 | ||||
| fmt.Printf("%s", humanize.Ftoa(2.24)) // 2.24 | ||||
| fmt.Printf("%f", 2.0)                 // 2.000000 | ||||
| fmt.Printf("%s", humanize.Ftoa(2.0))  // 2 | ||||
| ``` | ||||
|  | ||||
| ## SI notation | ||||
|  | ||||
| Format numbers with [SI notation][sinotation]. | ||||
|  | ||||
| Example: | ||||
|  | ||||
| ```go | ||||
| humanize.SI(0.00000000223, "M") // 2.23 nM | ||||
| ``` | ||||
|  | ||||
| ## English-specific functions | ||||
|  | ||||
| The following functions are in the `humanize/english` subpackage. | ||||
|  | ||||
| ### Plurals | ||||
|  | ||||
| Simple English pluralization | ||||
|  | ||||
| ```go | ||||
| english.PluralWord(1, "object", "") // object | ||||
| english.PluralWord(42, "object", "") // objects | ||||
| english.PluralWord(2, "bus", "") // buses | ||||
| english.PluralWord(99, "locus", "loci") // loci | ||||
|  | ||||
| english.Plural(1, "object", "") // 1 object | ||||
| english.Plural(42, "object", "") // 42 objects | ||||
| english.Plural(2, "bus", "") // 2 buses | ||||
| english.Plural(99, "locus", "loci") // 99 loci | ||||
| ``` | ||||
|  | ||||
| ### Word series | ||||
|  | ||||
| Format comma-separated words lists with conjuctions: | ||||
|  | ||||
| ```go | ||||
| english.WordSeries([]string{"foo"}, "and") // foo | ||||
| english.WordSeries([]string{"foo", "bar"}, "and") // foo and bar | ||||
| english.WordSeries([]string{"foo", "bar", "baz"}, "and") // foo, bar and baz | ||||
|  | ||||
| english.OxfordWordSeries([]string{"foo", "bar", "baz"}, "and") // foo, bar, and baz | ||||
| ``` | ||||
|  | ||||
| [odisc]: https://groups.google.com/d/topic/golang-nuts/l8NhI74jl-4/discussion | ||||
| [sinotation]: http://en.wikipedia.org/wiki/Metric_prefix | ||||
		Reference in New Issue
	
	Block a user