mirror of
				https://github.com/superseriousbusiness/gotosocial.git
				synced 2025-11-02 20:02:25 -06:00 
			
		
		
		
	Bumps [github.com/minio/minio-go/v7](https://github.com/minio/minio-go) from 7.0.48 to 7.0.49. - [Release notes](https://github.com/minio/minio-go/releases) - [Commits](https://github.com/minio/minio-go/compare/v7.0.48...v7.0.49) --- updated-dependencies: - dependency-name: github.com/minio/minio-go/v7 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
		
			
				
	
	
		
			124 lines
		
	
	
	
		
			3 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			124 lines
		
	
	
	
		
			3 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
# 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://pkg.go.dev/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
 |