s/shortcut/shorthand/
diff --git a/flag.go b/flag.go
index 0bca41b..0ae1969 100644
--- a/flag.go
+++ b/flag.go
@@ -12,7 +12,7 @@
 	functionality of the flag package functions identically from a
 	developer's standpoint with one exception:
 
-	* There is an additional string field "Shortcut" in the Flag struct.
+	* There is an additional string field "Shorthand" in the Flag struct.
 	Most code never instantiates this struct directly, instead using the
 	flag.String(), Bool(), Int(), etc. functions, and is therefore
 	unaffected.
@@ -45,7 +45,7 @@
 	The arguments are indexed from 0 up to flag.NArg().
 
 	The pflag package also defines some new functions that are not in flag,
-	that give one-letter shortcuts for flags. You can use these by appending
+	that give one-letter shorthands for flags. You can use these by appending
 	'P' to the name of any function that defines a flag.
 		var ip = flag.IntP("flagname", "f", 1234, "help message")
 		var flagvar bool
@@ -53,8 +53,8 @@
 			flag.BoolVarP("boolname", "b", true, "help message")
 		}
 		flag.VarP(&flagVar, "varname", "v", 1234, "help message")
-	Shortcut letters can be used with single dashes on the command line.
-	Boolean shortcut flags can be combined with other shortcut flags.
+	Shorthand letters can be used with single dashes on the command line.
+	Boolean shorthand flags can be combined with other shorthand flags.
 
 	Command line flag syntax:
 		--flag    // boolean flags only
@@ -67,8 +67,8 @@
 	use the --flag=false form to turn off a boolean flag.
 
 	Unlike the flag package, a single dash before an option means something
-	different than a double dash. Single dashes signify a series of shortcut
-	letters for flags. All but the last shortcut letter must be boolean flags.
+	different than a double dash. Single dashes signify a series of shorthand
+	letters for flags. All but the last shorthand letter must be boolean flags.
 		-f          // f must be boolean
 		-abc        // all flags must be boolean
 		-abcn=1234
@@ -260,7 +260,7 @@
 	parsed        bool
 	actual        map[string]*Flag
 	formal        map[string]*Flag
-	shortcuts     map[byte]*Flag
+	shorthands    map[byte]*Flag
 	args          []string // arguments after flags
 	exitOnError   bool     // does the program exit if there's an error?
 	errorHandling ErrorHandling
@@ -269,11 +269,11 @@
 
 // A Flag represents the state of a flag.
 type Flag struct {
-	Name     string // name as it appears on command line
-	Shortcut string // one-letter abbreviated flag
-	Usage    string // help message
-	Value    Value  // value as set
-	DefValue string // default value (as text); for usage message
+	Name      string // name as it appears on command line
+	Shorthand string // one-letter abbreviated flag
+	Usage     string // help message
+	Value     Value  // value as set
+	DefValue  string // default value (as text); for usage message
 }
 
 // sortFlags returns the flags as a slice in lexicographical sorted order.
@@ -375,12 +375,12 @@
 			// put quotes on the value
 			format = "--%s=%q: %s\n"
 		}
-		if len(flag.Shortcut) > 0 {
+		if len(flag.Shorthand) > 0 {
 			format = "  -%s, " + format
 		} else {
 			format = "   %s   " + format
 		}
-		fmt.Fprintf(f.out(), format, flag.Shortcut, flag.Name, flag.DefValue, flag.Usage)
+		fmt.Fprintf(f.out(), format, flag.Shorthand, flag.Name, flag.DefValue, flag.Usage)
 	})
 }
 
@@ -445,9 +445,9 @@
 	f.VarP(newBoolValue(value, p), name, "", usage)
 }
 
-// Like BoolVar, but accepts a shortcut letter that can be used after a single dash.
-func (f *FlagSet) BoolVarP(p *bool, name, shortcut string, value bool, usage string) {
-	f.VarP(newBoolValue(value, p), name, shortcut, usage)
+// Like BoolVar, but accepts a shorthand letter that can be used after a single dash.
+func (f *FlagSet) BoolVarP(p *bool, name, shorthand string, value bool, usage string) {
+	f.VarP(newBoolValue(value, p), name, shorthand, usage)
 }
 
 // BoolVar defines a bool flag with specified name, default value, and usage string.
@@ -456,9 +456,9 @@
 	commandLine.VarP(newBoolValue(value, p), name, "", usage)
 }
 
-// Like BoolVar, but accepts a shortcut letter that can be used after a single dash.
-func BoolVarP(p *bool, name, shortcut string, value bool, usage string) {
-	commandLine.VarP(newBoolValue(value, p), name, shortcut, usage)
+// Like BoolVar, but accepts a shorthand letter that can be used after a single dash.
+func BoolVarP(p *bool, name, shorthand string, value bool, usage string) {
+	commandLine.VarP(newBoolValue(value, p), name, shorthand, usage)
 }
 
 // Bool defines a bool flag with specified name, default value, and usage string.
@@ -469,10 +469,10 @@
 	return p
 }
 
-// Like Bool, but accepts a shortcut letter that can be used after a single dash.
-func (f *FlagSet) BoolP(name, shortcut string, value bool, usage string) *bool {
+// Like Bool, but accepts a shorthand letter that can be used after a single dash.
+func (f *FlagSet) BoolP(name, shorthand string, value bool, usage string) *bool {
 	p := new(bool)
-	f.BoolVarP(p, name, shortcut, value, usage)
+	f.BoolVarP(p, name, shorthand, value, usage)
 	return p
 }
 
@@ -482,9 +482,9 @@
 	return commandLine.BoolP(name, "", value, usage)
 }
 
-// Like Bool, but accepts a shortcut letter that can be used after a single dash.
-func BoolP(name, shortcut string, value bool, usage string) *bool {
-	return commandLine.BoolP(name, shortcut, value, usage)
+// Like Bool, but accepts a shorthand letter that can be used after a single dash.
+func BoolP(name, shorthand string, value bool, usage string) *bool {
+	return commandLine.BoolP(name, shorthand, value, usage)
 }
 
 // IntVar defines an int flag with specified name, default value, and usage string.
@@ -493,9 +493,9 @@
 	f.VarP(newIntValue(value, p), name, "", usage)
 }
 
-// Like IntVar, but accepts a shortcut letter that can be used after a single dash.
-func (f *FlagSet) IntVarP(p *int, name, shortcut string, value int, usage string) {
-	f.VarP(newIntValue(value, p), name, shortcut, usage)
+// Like IntVar, but accepts a shorthand letter that can be used after a single dash.
+func (f *FlagSet) IntVarP(p *int, name, shorthand string, value int, usage string) {
+	f.VarP(newIntValue(value, p), name, shorthand, usage)
 }
 
 // IntVar defines an int flag with specified name, default value, and usage string.
@@ -504,9 +504,9 @@
 	commandLine.VarP(newIntValue(value, p), name, "", usage)
 }
 
-// Like IntVar, but accepts a shortcut letter that can be used after a single dash.
-func IntVarP(p *int, name, shortcut string, value int, usage string) {
-	commandLine.VarP(newIntValue(value, p), name, shortcut, usage)
+// Like IntVar, but accepts a shorthand letter that can be used after a single dash.
+func IntVarP(p *int, name, shorthand string, value int, usage string) {
+	commandLine.VarP(newIntValue(value, p), name, shorthand, usage)
 }
 
 // Int defines an int flag with specified name, default value, and usage string.
@@ -517,10 +517,10 @@
 	return p
 }
 
-// Like Int, but accepts a shortcut letter that can be used after a single dash.
-func (f *FlagSet) IntP(name, shortcut string, value int, usage string) *int {
+// Like Int, but accepts a shorthand letter that can be used after a single dash.
+func (f *FlagSet) IntP(name, shorthand string, value int, usage string) *int {
 	p := new(int)
-	f.IntVarP(p, name, shortcut, value, usage)
+	f.IntVarP(p, name, shorthand, value, usage)
 	return p
 }
 
@@ -530,9 +530,9 @@
 	return commandLine.IntP(name, "", value, usage)
 }
 
-// Like Int, but accepts a shortcut letter that can be used after a single dash.
-func IntP(name, shortcut string, value int, usage string) *int {
-	return commandLine.IntP(name, shortcut, value, usage)
+// Like Int, but accepts a shorthand letter that can be used after a single dash.
+func IntP(name, shorthand string, value int, usage string) *int {
+	return commandLine.IntP(name, shorthand, value, usage)
 }
 
 // Int64Var defines an int64 flag with specified name, default value, and usage string.
@@ -541,9 +541,9 @@
 	f.VarP(newInt64Value(value, p), name, "", usage)
 }
 
-// Like Int64Var, but accepts a shortcut letter that can be used after a single dash.
-func (f *FlagSet) Int64VarP(p *int64, name, shortcut string, value int64, usage string) {
-	f.VarP(newInt64Value(value, p), name, shortcut, usage)
+// Like Int64Var, but accepts a shorthand letter that can be used after a single dash.
+func (f *FlagSet) Int64VarP(p *int64, name, shorthand string, value int64, usage string) {
+	f.VarP(newInt64Value(value, p), name, shorthand, usage)
 }
 
 // Int64Var defines an int64 flag with specified name, default value, and usage string.
@@ -552,9 +552,9 @@
 	commandLine.VarP(newInt64Value(value, p), name, "", usage)
 }
 
-// Like Int64Var, but accepts a shortcut letter that can be used after a single dash.
-func Int64VarP(p *int64, name, shortcut string, value int64, usage string) {
-	commandLine.VarP(newInt64Value(value, p), name, shortcut, usage)
+// Like Int64Var, but accepts a shorthand letter that can be used after a single dash.
+func Int64VarP(p *int64, name, shorthand string, value int64, usage string) {
+	commandLine.VarP(newInt64Value(value, p), name, shorthand, usage)
 }
 
 // Int64 defines an int64 flag with specified name, default value, and usage string.
@@ -565,10 +565,10 @@
 	return p
 }
 
-// Like Int64, but accepts a shortcut letter that can be used after a single dash.
-func (f *FlagSet) Int64P(name, shortcut string, value int64, usage string) *int64 {
+// Like Int64, but accepts a shorthand letter that can be used after a single dash.
+func (f *FlagSet) Int64P(name, shorthand string, value int64, usage string) *int64 {
 	p := new(int64)
-	f.Int64VarP(p, name, shortcut, value, usage)
+	f.Int64VarP(p, name, shorthand, value, usage)
 	return p
 }
 
@@ -578,9 +578,9 @@
 	return commandLine.Int64P(name, "", value, usage)
 }
 
-// Like Int64, but accepts a shortcut letter that can be used after a single dash.
-func Int64P(name, shortcut string, value int64, usage string) *int64 {
-	return commandLine.Int64P(name, shortcut, value, usage)
+// Like Int64, but accepts a shorthand letter that can be used after a single dash.
+func Int64P(name, shorthand string, value int64, usage string) *int64 {
+	return commandLine.Int64P(name, shorthand, value, usage)
 }
 
 // UintVar defines a uint flag with specified name, default value, and usage string.
@@ -589,9 +589,9 @@
 	f.VarP(newUintValue(value, p), name, "", usage)
 }
 
-// Like UintVar, but accepts a shortcut letter that can be used after a single dash.
-func (f *FlagSet) UintVarP(p *uint, name, shortcut string, value uint, usage string) {
-	f.VarP(newUintValue(value, p), name, shortcut, usage)
+// Like UintVar, but accepts a shorthand letter that can be used after a single dash.
+func (f *FlagSet) UintVarP(p *uint, name, shorthand string, value uint, usage string) {
+	f.VarP(newUintValue(value, p), name, shorthand, usage)
 }
 
 // UintVar defines a uint flag with specified name, default value, and usage string.
@@ -600,9 +600,9 @@
 	commandLine.VarP(newUintValue(value, p), name, "", usage)
 }
 
-// Like UintVar, but accepts a shortcut letter that can be used after a single dash.
-func UintVarP(p *uint, name, shortcut string, value uint, usage string) {
-	commandLine.VarP(newUintValue(value, p), name, shortcut, usage)
+// Like UintVar, but accepts a shorthand letter that can be used after a single dash.
+func UintVarP(p *uint, name, shorthand string, value uint, usage string) {
+	commandLine.VarP(newUintValue(value, p), name, shorthand, usage)
 }
 
 // Uint defines a uint flag with specified name, default value, and usage string.
@@ -613,10 +613,10 @@
 	return p
 }
 
-// Like Uint, but accepts a shortcut letter that can be used after a single dash.
-func (f *FlagSet) UintP(name, shortcut string, value uint, usage string) *uint {
+// Like Uint, but accepts a shorthand letter that can be used after a single dash.
+func (f *FlagSet) UintP(name, shorthand string, value uint, usage string) *uint {
 	p := new(uint)
-	f.UintVarP(p, name, shortcut, value, usage)
+	f.UintVarP(p, name, shorthand, value, usage)
 	return p
 }
 
@@ -626,9 +626,9 @@
 	return commandLine.UintP(name, "", value, usage)
 }
 
-// Like Uint, but accepts a shortcut letter that can be used after a single dash.
-func UintP(name, shortcut string, value uint, usage string) *uint {
-	return commandLine.UintP(name, shortcut, value, usage)
+// Like Uint, but accepts a shorthand letter that can be used after a single dash.
+func UintP(name, shorthand string, value uint, usage string) *uint {
+	return commandLine.UintP(name, shorthand, value, usage)
 }
 
 // Uint64Var defines a uint64 flag with specified name, default value, and usage string.
@@ -637,9 +637,9 @@
 	f.VarP(newUint64Value(value, p), name, "", usage)
 }
 
-// Like Uint64Var, but accepts a shortcut letter that can be used after a single dash.
-func (f *FlagSet) Uint64VarP(p *uint64, name, shortcut string, value uint64, usage string) {
-	f.VarP(newUint64Value(value, p), name, shortcut, usage)
+// Like Uint64Var, but accepts a shorthand letter that can be used after a single dash.
+func (f *FlagSet) Uint64VarP(p *uint64, name, shorthand string, value uint64, usage string) {
+	f.VarP(newUint64Value(value, p), name, shorthand, usage)
 }
 
 // Uint64Var defines a uint64 flag with specified name, default value, and usage string.
@@ -648,9 +648,9 @@
 	commandLine.VarP(newUint64Value(value, p), name, "", usage)
 }
 
-// Like Uint64Var, but accepts a shortcut letter that can be used after a single dash.
-func Uint64VarP(p *uint64, name, shortcut string, value uint64, usage string) {
-	commandLine.VarP(newUint64Value(value, p), name, shortcut, usage)
+// Like Uint64Var, but accepts a shorthand letter that can be used after a single dash.
+func Uint64VarP(p *uint64, name, shorthand string, value uint64, usage string) {
+	commandLine.VarP(newUint64Value(value, p), name, shorthand, usage)
 }
 
 // Uint64 defines a uint64 flag with specified name, default value, and usage string.
@@ -661,10 +661,10 @@
 	return p
 }
 
-// Like Uint64, but accepts a shortcut letter that can be used after a single dash.
-func (f *FlagSet) Uint64P(name, shortcut string, value uint64, usage string) *uint64 {
+// Like Uint64, but accepts a shorthand letter that can be used after a single dash.
+func (f *FlagSet) Uint64P(name, shorthand string, value uint64, usage string) *uint64 {
 	p := new(uint64)
-	f.Uint64VarP(p, name, shortcut, value, usage)
+	f.Uint64VarP(p, name, shorthand, value, usage)
 	return p
 }
 
@@ -674,9 +674,9 @@
 	return commandLine.Uint64P(name, "", value, usage)
 }
 
-// Like Uint64, but accepts a shortcut letter that can be used after a single dash.
-func Uint64P(name, shortcut string, value uint64, usage string) *uint64 {
-	return commandLine.Uint64P(name, shortcut, value, usage)
+// Like Uint64, but accepts a shorthand letter that can be used after a single dash.
+func Uint64P(name, shorthand string, value uint64, usage string) *uint64 {
+	return commandLine.Uint64P(name, shorthand, value, usage)
 }
 
 // StringVar defines a string flag with specified name, default value, and usage string.
@@ -685,9 +685,9 @@
 	f.VarP(newStringValue(value, p), name, "", usage)
 }
 
-// Like StringVar, but accepts a shortcut letter that can be used after a single dash.
-func (f *FlagSet) StringVarP(p *string, name, shortcut string, value string, usage string) {
-	f.VarP(newStringValue(value, p), name, shortcut, usage)
+// Like StringVar, but accepts a shorthand letter that can be used after a single dash.
+func (f *FlagSet) StringVarP(p *string, name, shorthand string, value string, usage string) {
+	f.VarP(newStringValue(value, p), name, shorthand, usage)
 }
 
 // StringVar defines a string flag with specified name, default value, and usage string.
@@ -696,9 +696,9 @@
 	commandLine.VarP(newStringValue(value, p), name, "", usage)
 }
 
-// Like StringVar, but accepts a shortcut letter that can be used after a single dash.
-func StringVarP(p *string, name, shortcut string, value string, usage string) {
-	commandLine.VarP(newStringValue(value, p), name, shortcut, usage)
+// Like StringVar, but accepts a shorthand letter that can be used after a single dash.
+func StringVarP(p *string, name, shorthand string, value string, usage string) {
+	commandLine.VarP(newStringValue(value, p), name, shorthand, usage)
 }
 
 // String defines a string flag with specified name, default value, and usage string.
@@ -709,10 +709,10 @@
 	return p
 }
 
-// Like String, but accepts a shortcut letter that can be used after a single dash.
-func (f *FlagSet) StringP(name, shortcut string, value string, usage string) *string {
+// Like String, but accepts a shorthand letter that can be used after a single dash.
+func (f *FlagSet) StringP(name, shorthand string, value string, usage string) *string {
 	p := new(string)
-	f.StringVarP(p, name, shortcut, value, usage)
+	f.StringVarP(p, name, shorthand, value, usage)
 	return p
 }
 
@@ -722,9 +722,9 @@
 	return commandLine.StringP(name, "", value, usage)
 }
 
-// Like String, but accepts a shortcut letter that can be used after a single dash.
-func StringP(name, shortcut string, value string, usage string) *string {
-	return commandLine.StringP(name, shortcut, value, usage)
+// Like String, but accepts a shorthand letter that can be used after a single dash.
+func StringP(name, shorthand string, value string, usage string) *string {
+	return commandLine.StringP(name, shorthand, value, usage)
 }
 
 // Float64Var defines a float64 flag with specified name, default value, and usage string.
@@ -733,9 +733,9 @@
 	f.VarP(newFloat64Value(value, p), name, "", usage)
 }
 
-// Like Float64Var, but accepts a shortcut letter that can be used after a single dash.
-func (f *FlagSet) Float64VarP(p *float64, name, shortcut string, value float64, usage string) {
-	f.VarP(newFloat64Value(value, p), name, shortcut, usage)
+// Like Float64Var, but accepts a shorthand letter that can be used after a single dash.
+func (f *FlagSet) Float64VarP(p *float64, name, shorthand string, value float64, usage string) {
+	f.VarP(newFloat64Value(value, p), name, shorthand, usage)
 }
 
 // Float64Var defines a float64 flag with specified name, default value, and usage string.
@@ -744,9 +744,9 @@
 	commandLine.VarP(newFloat64Value(value, p), name, "", usage)
 }
 
-// Like Float64Var, but accepts a shortcut letter that can be used after a single dash.
-func Float64VarP(p *float64, name, shortcut string, value float64, usage string) {
-	commandLine.VarP(newFloat64Value(value, p), name, shortcut, usage)
+// Like Float64Var, but accepts a shorthand letter that can be used after a single dash.
+func Float64VarP(p *float64, name, shorthand string, value float64, usage string) {
+	commandLine.VarP(newFloat64Value(value, p), name, shorthand, usage)
 }
 
 // Float64 defines a float64 flag with specified name, default value, and usage string.
@@ -757,10 +757,10 @@
 	return p
 }
 
-// Like Float64, but accepts a shortcut letter that can be used after a single dash.
-func (f *FlagSet) Float64P(name, shortcut string, value float64, usage string) *float64 {
+// Like Float64, but accepts a shorthand letter that can be used after a single dash.
+func (f *FlagSet) Float64P(name, shorthand string, value float64, usage string) *float64 {
 	p := new(float64)
-	f.Float64VarP(p, name, shortcut, value, usage)
+	f.Float64VarP(p, name, shorthand, value, usage)
 	return p
 }
 
@@ -770,9 +770,9 @@
 	return commandLine.Float64P(name, "", value, usage)
 }
 
-// Like Float64, but accepts a shortcut letter that can be used after a single dash.
-func Float64P(name, shortcut string, value float64, usage string) *float64 {
-	return commandLine.Float64P(name, shortcut, value, usage)
+// Like Float64, but accepts a shorthand letter that can be used after a single dash.
+func Float64P(name, shorthand string, value float64, usage string) *float64 {
+	return commandLine.Float64P(name, shorthand, value, usage)
 }
 
 // DurationVar defines a time.Duration flag with specified name, default value, and usage string.
@@ -781,9 +781,9 @@
 	f.VarP(newDurationValue(value, p), name, "", usage)
 }
 
-// Like DurationVar, but accepts a shortcut letter that can be used after a single dash.
-func (f *FlagSet) DurationVarP(p *time.Duration, name, shortcut string, value time.Duration, usage string) {
-	f.VarP(newDurationValue(value, p), name, shortcut, usage)
+// Like DurationVar, but accepts a shorthand letter that can be used after a single dash.
+func (f *FlagSet) DurationVarP(p *time.Duration, name, shorthand string, value time.Duration, usage string) {
+	f.VarP(newDurationValue(value, p), name, shorthand, usage)
 }
 
 // DurationVar defines a time.Duration flag with specified name, default value, and usage string.
@@ -792,9 +792,9 @@
 	commandLine.VarP(newDurationValue(value, p), name, "", usage)
 }
 
-// Like DurationVar, but accepts a shortcut letter that can be used after a single dash.
-func DurationVarP(p *time.Duration, name, shortcut string, value time.Duration, usage string) {
-	commandLine.VarP(newDurationValue(value, p), name, shortcut, usage)
+// Like DurationVar, but accepts a shorthand letter that can be used after a single dash.
+func DurationVarP(p *time.Duration, name, shorthand string, value time.Duration, usage string) {
+	commandLine.VarP(newDurationValue(value, p), name, shorthand, usage)
 }
 
 // Duration defines a time.Duration flag with specified name, default value, and usage string.
@@ -805,10 +805,10 @@
 	return p
 }
 
-// Like Duration, but accepts a shortcut letter that can be used after a single dash.
-func (f *FlagSet) DurationP(name, shortcut string, value time.Duration, usage string) *time.Duration {
+// Like Duration, but accepts a shorthand letter that can be used after a single dash.
+func (f *FlagSet) DurationP(name, shorthand string, value time.Duration, usage string) *time.Duration {
 	p := new(time.Duration)
-	f.DurationVarP(p, name, shortcut, value, usage)
+	f.DurationVarP(p, name, shorthand, value, usage)
 	return p
 }
 
@@ -818,9 +818,9 @@
 	return commandLine.DurationP(name, "", value, usage)
 }
 
-// Like Duration, but accepts a shortcut letter that can be used after a single dash.
-func DurationP(name, shortcut string, value time.Duration, usage string) *time.Duration {
-	return commandLine.DurationP(name, shortcut, value, usage)
+// Like Duration, but accepts a shorthand letter that can be used after a single dash.
+func DurationP(name, shorthand string, value time.Duration, usage string) *time.Duration {
+	return commandLine.DurationP(name, shorthand, value, usage)
 }
 
 // Var defines a flag with the specified name and usage string. The type and
@@ -833,10 +833,10 @@
 	f.VarP(value, name, "", usage)
 }
 
-// Like Var, but accepts a shortcut letter that can be used after a single dash.
-func (f *FlagSet) VarP(value Value, name, shortcut, usage string) {
+// Like Var, but accepts a shorthand letter that can be used after a single dash.
+func (f *FlagSet) VarP(value Value, name, shorthand, usage string) {
 	// Remember the default value as a string; it won't change.
-	flag := &Flag{name, shortcut, usage, value, value.String()}
+	flag := &Flag{name, shorthand, usage, value, value.String()}
 	_, alreadythere := f.formal[name]
 	if alreadythere {
 		fmt.Fprintf(f.out(), "%s flag redefined: %s\n", f.name, name)
@@ -847,23 +847,23 @@
 	}
 	f.formal[name] = flag
 
-	if len(shortcut) == 0 {
+	if len(shorthand) == 0 {
 		return
 	}
-	if len(shortcut) > 1 {
-		fmt.Fprintf(f.out(), "%s shortcut more than ASCII character: %s\n", f.name, shortcut)
-		panic("shortcut is more than one character")
+	if len(shorthand) > 1 {
+		fmt.Fprintf(f.out(), "%s shorthand more than ASCII character: %s\n", f.name, shorthand)
+		panic("shorthand is more than one character")
 	}
-	if f.shortcuts == nil {
-		f.shortcuts = make(map[byte]*Flag)
+	if f.shorthands == nil {
+		f.shorthands = make(map[byte]*Flag)
 	}
-	c := shortcut[0]
-	old, alreadythere := f.shortcuts[c]
+	c := shorthand[0]
+	old, alreadythere := f.shorthands[c]
 	if alreadythere {
-		fmt.Fprintf(f.out(), "%s shortcut reused: %q for %s and %s\n", f.name, c, name, old.Name)
-		panic("shortcut redefinition")
+		fmt.Fprintf(f.out(), "%s shorthand reused: %q for %s and %s\n", f.name, c, name, old.Name)
+		panic("shorthand redefinition")
 	}
-	f.shortcuts[c] = flag
+	f.shorthands[c] = flag
 }
 
 
@@ -939,30 +939,30 @@
 			}
 			flag = m[name]
 		} else {
-			shortcuts := s[1:]
-			for i := 0; i < len(shortcuts); i++ {
-				c := shortcuts[i]
-				_, alreadythere := f.shortcuts[c]
+			shorthands := s[1:]
+			for i := 0; i < len(shorthands); i++ {
+				c := shorthands[i]
+				_, alreadythere := f.shorthands[c]
 				if !alreadythere {
 					if c == 'h' { // special case for nice help message.
 						f.usage()
 						return ErrHelp
 					}
-					return f.failf("unknown short flag: %q in -%s", c, shortcuts)
+					return f.failf("unknown shorthand flag: %q in -%s", c, shorthands)
 				}
-				flag = f.shortcuts[c]
-				if i == len(shortcuts) - 1 {
+				flag = f.shorthands[c]
+				if i == len(shorthands) - 1 {
 					break
 				}
-				if shortcuts[i+1] == '=' {
-					value = shortcuts[i+2:]
+				if shorthands[i+1] == '=' {
+					value = shorthands[i+2:]
 					has_value = true
 					break
 				}
 				if fv, ok := flag.Value.(*boolValue); ok {
 					fv.Set("true")
 				} else {
-					value = shortcuts[i+1:]
+					value = shorthands[i+1:]
 					has_value = true
 					break
 				}