This is like Go fmt package but offers named format. Parameters will be parsed to function as map[string]interface{}.
go get -u github.com/chonla/format
Put <name>
in between %
and format. For example, %<name>s
.
Name can be any combination of A-Z, a-z, 0-9 or _ character.
var params = map[string]interface{}{
"sister": "Susan",
"brother": "Louis",
}
format.Printf("%<brother>s loves %<sister>s.", params)
Louis love Susan.
Named variable can be reused.
var params = map[string]interface{}{
"sister": "Susan",
"brother": "Louis",
}
format.Printf("%<brother>s loves %<sister>s. %<sister>s also loves %<brother>s.", params)
Louis loves Susan. Susan also loves Louis.
Printf formats string with named parameters and writes to standard output.
Printfln is like Printf but a newline is appended.
Sprintf formats string with named parameters and return the result.
Sprintfln is like Sprintf but a newline is appended.