diff --git a/doc/source/command-objects/identity-provider.rst b/doc/source/command-objects/identity-provider.rst
index ac46273638..ca773d811f 100644
--- a/doc/source/command-objects/identity-provider.rst
+++ b/doc/source/command-objects/identity-provider.rst
@@ -22,8 +22,8 @@ Create new identity provider
 
 .. option:: --remote-id <remote-id>
 
-    Remote IDs to associate with the Identity Provider (repeat to provide
-    multiple values)
+    Remote IDs to associate with the Identity Provider
+    (repeat option to provide multiple values)
 
 .. option:: --remote-id-file <file-name>
 
@@ -87,8 +87,8 @@ Set identity provider properties
 
 .. option:: --remote-id <remote-id>
 
-    Remote IDs to associate with the Identity Provider (repeat to provide
-    multiple values)
+    Remote IDs to associate with the Identity Provider
+    (repeat option to provide multiple values)
 
 .. option:: --remote-id-file <file-name>
 
diff --git a/doc/source/command-objects/network.rst b/doc/source/command-objects/network.rst
index 029e82e367..622568e4ee 100644
--- a/doc/source/command-objects/network.rst
+++ b/doc/source/command-objects/network.rst
@@ -58,8 +58,9 @@ Create new network
 
 .. option:: --availability-zone-hint <availability-zone>
 
-    Availability Zone in which to create this network (requires the Network
-    Availability Zone extension, this option can be repeated).
+    Availability Zone in which to create this network
+    (requires the Network Availability Zone extension,
+    repeat option to set multiple availability zones)
 
     *Network version 2 only*
 
diff --git a/doc/source/command-objects/port.rst b/doc/source/command-objects/port.rst
index c229524936..cc7723eaf6 100644
--- a/doc/source/command-objects/port.rst
+++ b/doc/source/command-objects/port.rst
@@ -33,7 +33,7 @@ Create new port
 
     Desired IP and/or subnet (name or ID) for this port:
     subnet=<subnet>,ip-address=<ip-address>
-    (this option can be repeated)
+    (repeat option to set multiple fixed IP addresses)
 
 .. option:: --device <device-id>
 
@@ -51,7 +51,7 @@ Create new port
 .. option:: --binding-profile <binding-profile>
 
     Custom data to be passed as binding:profile: <key>=<value>
-    (this option can be repeated)
+    (repeat option to set multiple binding:profile data)
 
 .. option:: --host <host-id>
 
@@ -137,7 +137,7 @@ Set port properties
 
     Desired IP and/or subnet (name or ID) for this port:
     subnet=<subnet>,ip-address=<ip-address>
-    (this option can be repeated)
+    (repeat option to set multiple fixed IP addresses)
 
 .. option:: --no-fixed-ip
 
@@ -159,7 +159,7 @@ Set port properties
 .. option:: --binding-profile <binding-profile>
 
     Custom data to be passed as binding:profile: <key>=<value>
-    (this option can be repeated)
+    (repeat option to set multiple binding:profile data)
 
 .. option:: --no-binding-profile
 
diff --git a/doc/source/command-objects/router.rst b/doc/source/command-objects/router.rst
index 9479af5f5d..dc645712ec 100644
--- a/doc/source/command-objects/router.rst
+++ b/doc/source/command-objects/router.rst
@@ -86,8 +86,9 @@ Create new router
 
 .. option:: --availability-zone-hint <availability-zone>
 
-    Availability Zone in which to create this router (requires the Router
-    Availability Zone extension, this option can be repeated).
+    Availability Zone in which to create this router
+    (requires the Router Availability Zone extension,
+    repeat option to set multiple availability zones)
 
 .. _router_create-name:
 .. describe:: <name>
@@ -206,10 +207,10 @@ Set router properties
 
 .. option:: --route destination=<subnet>,gateway=<ip-address>
 
-    Routes associated with the router.
-    Repeat this option to set multiple routes.
-    destination: destination subnet (in CIDR notation).
-    gateway: nexthop IP address.
+    Routes associated with the router
+    destination: destination subnet (in CIDR notation)
+    gateway: nexthop IP address
+    (repeat option to set multiple routes)
 
 .. option:: --clear-routes
 
diff --git a/doc/source/command-objects/server.rst b/doc/source/command-objects/server.rst
index 5141600d78..bf972986a9 100644
--- a/doc/source/command-objects/server.rst
+++ b/doc/source/command-objects/server.rst
@@ -90,7 +90,7 @@ Create a new server
 .. option:: --security-group <security-group-name>
 
     Security group to assign to this server (name or ID)
-    (repeat for multiple groups)
+    (repeat option to set multiple groups)
 
 .. option:: --key-name <key-name>
 
@@ -98,11 +98,13 @@ Create a new server
 
 .. option:: --property <key=value>
 
-    Set a property on this server (repeat for multiple values)
+    Set a property on this server
+    (repeat option to set multiple values)
 
 .. option:: --file <dest-filename=source-filename>
 
-    File to inject into image before boot (repeat for multiple files)
+    File to inject into image before boot
+    (repeat option to set multiple files)
 
 .. option:: --user-data <user-data>
 
@@ -569,8 +571,8 @@ Set server properties
 
 .. option:: --property <key=value>
 
-    Property to add/change for this server (repeat option to set
-    multiple properties)
+    Property to add/change for this server
+    (repeat option to set multiple properties)
 
 .. describe:: <server>
 
@@ -764,7 +766,8 @@ Unset server properties
 
 .. option:: --property <key>
 
-    Property key to remove from server (repeat to remove multiple values)
+    Property key to remove from server
+    (repeat option to remove multiple values)
 
 .. describe:: <server>
 
diff --git a/doc/source/command-objects/subnet-pool.rst b/doc/source/command-objects/subnet-pool.rst
index d0b6c635b2..80a9c013bb 100644
--- a/doc/source/command-objects/subnet-pool.rst
+++ b/doc/source/command-objects/subnet-pool.rst
@@ -23,8 +23,8 @@ Create subnet pool
 
 .. option:: --pool-prefix <pool-prefix>
 
-    Set subnet pool prefixes (in CIDR notation).
-    Repeat this option to set multiple prefixes.
+    Set subnet pool prefixes (in CIDR notation)
+    (repeat option to set multiple prefixes)
 
 .. option:: --default-prefix-length <default-prefix-length>
 
@@ -111,8 +111,8 @@ Set subnet pool properties
 
 .. option:: --pool-prefix <pool-prefix>
 
-    Set subnet pool prefixes (in CIDR notation).
-    Repeat this option to set multiple prefixes.
+    Set subnet pool prefixes (in CIDR notation)
+    (repeat option to set multiple prefixes)
 
 .. option:: --default-prefix-length <default-prefix-length>
 
diff --git a/doc/source/command-objects/subnet.rst b/doc/source/command-objects/subnet.rst
index e5026f5a02..50be5b0a96 100644
--- a/doc/source/command-objects/subnet.rst
+++ b/doc/source/command-objects/subnet.rst
@@ -56,7 +56,8 @@ Create new subnet
 .. option:: --allocation-pool start=<ip-address>,end=<ip-address>
 
     Allocation pool IP addresses for this subnet e.g.:
-    ``start=192.168.199.2,end=192.168.199.254`` (This option can be repeated)
+    ``start=192.168.199.2,end=192.168.199.254``
+    (repeat option to add multiple IP addresses)
 
 .. option:: --dhcp
 
@@ -68,7 +69,7 @@ Create new subnet
 
 .. option:: --dns-nameserver <dns-nameserver>
 
-     DNS name server for this subnet (This option can be repeated)
+     DNS server for this subnet (repeat option to set multiple DNS servers)
 
 .. option:: --gateway <gateway>
 
@@ -85,7 +86,7 @@ Create new subnet
      ``destination=10.10.0.0/16,gateway=192.168.71.254``
      destination: destination subnet (in CIDR notation)
      gateway: nexthop IP address
-     (This option can be repeated)
+     (repeat option to add multiple routes)
 
 .. option:: --ip-version {4,6}
 
@@ -162,7 +163,8 @@ Set subnet properties
 .. option:: --allocation-pool start=<ip-address>,end=<ip-address>
 
     Allocation pool IP addresses for this subnet e.g.:
-    ``start=192.168.199.2,end=192.168.199.254`` (This option can be repeated)
+    ``start=192.168.199.2,end=192.168.199.254``
+    (repeat option to add multiple IP addresses)
 
 .. option:: --dhcp
 
@@ -174,7 +176,7 @@ Set subnet properties
 
 .. option:: --dns-nameserver <dns-nameserver>
 
-     DNS name server for this subnet (This option can be repeated)
+     DNS server for this subnet (repeat option to set multiple DNS servers)
 
 .. option:: --gateway <gateway>
 
@@ -189,7 +191,7 @@ Set subnet properties
      ``destination=10.10.0.0/16,gateway=192.168.71.254``
      destination: destination subnet (in CIDR notation)
      gateway: nexthop IP address
-     (This option can be repeated)
+     (repeat option to add multiple routes)
 
 .. option:: --name
 
diff --git a/doc/source/command-objects/trust.rst b/doc/source/command-objects/trust.rst
index 556edc54d4..cb44c6b6cd 100644
--- a/doc/source/command-objects/trust.rst
+++ b/doc/source/command-objects/trust.rst
@@ -29,7 +29,7 @@ Create new trust
 
 .. option:: --role <role>
 
-    Roles to authorize (name or ID) (repeat to set multiple values) (required)
+    Roles to authorize (name or ID) (repeat option to set multiple values, required)
 
 .. option:: --impersonate
 
diff --git a/openstackclient/compute/v2/server.py b/openstackclient/compute/v2/server.py
index d3b601b0a6..bf9f0985df 100644
--- a/openstackclient/compute/v2/server.py
+++ b/openstackclient/compute/v2/server.py
@@ -293,7 +293,7 @@ class CreateServer(command.ShowOne):
             action='append',
             default=[],
             help=_('Security group to assign to this server (name or ID) '
-                   '(repeat for multiple groups)'),
+                   '(repeat option to set multiple groups)'),
         )
         parser.add_argument(
             '--key-name',
@@ -305,7 +305,7 @@ class CreateServer(command.ShowOne):
             metavar='<key=value>',
             action=parseractions.KeyValueAction,
             help=_('Set a property on this server '
-                   '(repeat for multiple values)'),
+                   '(repeat option to set multiple values)'),
         )
         parser.add_argument(
             '--file',
@@ -313,7 +313,7 @@ class CreateServer(command.ShowOne):
             action='append',
             default=[],
             help=_('File to inject into image before boot '
-                   '(repeat for multiple files)'),
+                   '(repeat option to set multiple files)'),
         )
         parser.add_argument(
             '--user-data',
@@ -1738,7 +1738,7 @@ class UnsetServer(command.Command):
             action='append',
             default=[],
             help=_('Property key to remove from server '
-                   '(repeat to remove multiple values)'),
+                   '(repeat option to remove multiple values)'),
         )
         return parser
 
diff --git a/openstackclient/identity/v3/identity_provider.py b/openstackclient/identity/v3/identity_provider.py
index 37f79ed6d0..276a7f576a 100644
--- a/openstackclient/identity/v3/identity_provider.py
+++ b/openstackclient/identity/v3/identity_provider.py
@@ -35,7 +35,7 @@ class CreateIdentityProvider(command.ShowOne):
             metavar='<remote-id>',
             action='append',
             help='Remote IDs to associate with the Identity Provider '
-                 '(repeat to provide multiple values)'
+                 '(repeat option to provide multiple values)'
         )
         identity_remote_id_provider.add_argument(
             '--remote-id-file',
@@ -139,7 +139,7 @@ class SetIdentityProvider(command.Command):
             metavar='<remote-id>',
             action='append',
             help='Remote IDs to associate with the Identity Provider '
-                 '(repeat to provide multiple values)'
+                 '(repeat option to provide multiple values)'
         )
         identity_remote_id_provider.add_argument(
             '--remote-id-file',
diff --git a/openstackclient/identity/v3/token.py b/openstackclient/identity/v3/token.py
index 62a4c4a363..bdc5e95f69 100644
--- a/openstackclient/identity/v3/token.py
+++ b/openstackclient/identity/v3/token.py
@@ -40,7 +40,7 @@ class AuthorizeRequestToken(command.ShowOne):
             action='append',
             default=[],
             help='Roles to authorize (name or ID) '
-                 '(repeat to set multiple values) (required)',
+                 '(repeat option to set multiple values, required)',
             required=True
         )
         return parser
diff --git a/openstackclient/identity/v3/trust.py b/openstackclient/identity/v3/trust.py
index 26fb8338fe..b6f5c6b41f 100644
--- a/openstackclient/identity/v3/trust.py
+++ b/openstackclient/identity/v3/trust.py
@@ -48,7 +48,7 @@ class CreateTrust(command.ShowOne):
             action='append',
             default=[],
             help='Roles to authorize (name or ID) '
-                 '(repeat to set multiple values) (required)',
+                 '(repeat option to set multiple values, required)',
             required=True
         )
         parser.add_argument(
diff --git a/openstackclient/network/v2/network.py b/openstackclient/network/v2/network.py
index ebd5cb63de..20d943ed67 100644
--- a/openstackclient/network/v2/network.py
+++ b/openstackclient/network/v2/network.py
@@ -142,7 +142,7 @@ class CreateNetwork(common.NetworkAndComputeShowOne):
             metavar='<availability-zone>',
             help='Availability Zone in which to create this network '
                  '(requires the Network Availability Zone extension, '
-                 'this option can be repeated).',
+                 'repeat option to set multiple availability zones)',
         )
         external_router_grp = parser.add_mutually_exclusive_group()
         external_router_grp.add_argument(
diff --git a/openstackclient/network/v2/port.py b/openstackclient/network/v2/port.py
index a9e8042868..820f2ac22f 100644
--- a/openstackclient/network/v2/port.py
+++ b/openstackclient/network/v2/port.py
@@ -210,13 +210,13 @@ class CreatePort(command.ShowOne):
             optional_keys=['subnet', 'ip-address'],
             help='Desired IP and/or subnet (name or ID) for this port: '
                  'subnet=<subnet>,ip-address=<ip-address> '
-                 '(this option can be repeated)')
+                 '(repeat option to set multiple fixed IP addresses)')
         parser.add_argument(
             '--binding-profile',
             metavar='<binding-profile>',
             action=parseractions.KeyValueAction,
             help='Custom data to be passed as binding:profile: <key>=<value> '
-                 '(this option can be repeated)')
+                 '(repeat option to set multiple binding:profile data)')
         admin_group = parser.add_mutually_exclusive_group()
         admin_group.add_argument(
             '--enable',
@@ -360,7 +360,7 @@ class SetPort(command.Command):
             optional_keys=['subnet', 'ip-address'],
             help='Desired IP and/or subnet (name or ID) for this port: '
                  'subnet=<subnet>,ip-address=<ip-address> '
-                 '(this option can be repeated)')
+                 '(repeat option to set multiple fixed IP addresses)')
         fixed_ip.add_argument(
             '--no-fixed-ip',
             action='store_true',
@@ -371,7 +371,7 @@ class SetPort(command.Command):
             metavar='<binding-profile>',
             action=parseractions.KeyValueAction,
             help='Custom data to be passed as binding:profile: <key>=<value> '
-                 '(this option can be repeated)')
+                 '(repeat option to set multiple binding:profile data)')
         binding_profile.add_argument(
             '--no-binding-profile',
             action='store_true',
diff --git a/openstackclient/network/v2/router.py b/openstackclient/network/v2/router.py
index 6a78be6c8e..2ededae87e 100644
--- a/openstackclient/network/v2/router.py
+++ b/openstackclient/network/v2/router.py
@@ -179,7 +179,7 @@ class CreateRouter(command.ShowOne):
             dest='availability_zone_hints',
             help='Availability Zone in which to create this router '
                  '(requires the Router Availability Zone extension, '
-                 'this option can be repeated).',
+                 'repeat option to set multiple availability zones)',
         )
 
         identity_common.add_project_domain_option_to_parser(parser)
@@ -368,10 +368,10 @@ class SetRouter(command.Command):
             dest='routes',
             default=None,
             required_keys=['destination', 'gateway'],
-            help="Routes associated with the router. "
-                 "Repeat this option to set multiple routes. "
-                 "destination: destination subnet (in CIDR notation). "
-                 "gateway: nexthop IP address.",
+            help="Routes associated with the router "
+                 "destination: destination subnet (in CIDR notation) "
+                 "gateway: nexthop IP address "
+                 "(repeat option to set multiple routes)",
         )
         routes_group.add_argument(
             '--clear-routes',
diff --git a/openstackclient/network/v2/subnet.py b/openstackclient/network/v2/subnet.py
index abe49a6985..3d539fea4d 100644
--- a/openstackclient/network/v2/subnet.py
+++ b/openstackclient/network/v2/subnet.py
@@ -52,15 +52,15 @@ def _get_common_parse_arguments(parser):
         required_keys=['start', 'end'],
         help='Allocation pool IP addresses for this subnet '
              'e.g.: start=192.168.199.2,end=192.168.199.254 '
-             '(This option can be repeated)',
+             '(repeat option to add multiple IP addresses)',
     )
     parser.add_argument(
         '--dns-nameserver',
         metavar='<dns-nameserver>',
         action='append',
         dest='dns_nameservers',
-        help='DNS name server for this subnet '
-             '(This option can be repeated)',
+        help='DNS server for this subnet '
+             '(repeat option to set multiple DNS servers)',
     )
     parser.add_argument(
         '--host-route',
@@ -72,7 +72,7 @@ def _get_common_parse_arguments(parser):
              'e.g.: destination=10.10.0.0/16,gateway=192.168.71.254 '
              'destination: destination subnet (in CIDR notation) '
              'gateway: nexthop IP address '
-             '(This option can be repeated)',
+             '(repeat option to add multiple routes)',
     )
 
 
diff --git a/openstackclient/network/v2/subnet_pool.py b/openstackclient/network/v2/subnet_pool.py
index 652baaae4f..0837f81b51 100644
--- a/openstackclient/network/v2/subnet_pool.py
+++ b/openstackclient/network/v2/subnet_pool.py
@@ -73,8 +73,8 @@ def _add_prefix_options(parser):
         metavar='<pool-prefix>',
         dest='prefixes',
         action='append',
-        help='Set subnet pool prefixes (in CIDR notation). '
-             'Repeat this option to set multiple prefixes.',
+        help='Set subnet pool prefixes (in CIDR notation) '
+             '(repeat option to set multiple prefixes)',
     )
     parser.add_argument(
         '--default-prefix-length',
diff --git a/openstackclient/volume/v1/snapshot.py b/openstackclient/volume/v1/snapshot.py
index c54bac8aef..46ea86ae60 100644
--- a/openstackclient/volume/v1/snapshot.py
+++ b/openstackclient/volume/v1/snapshot.py
@@ -249,7 +249,7 @@ class UnsetSnapshot(command.Command):
             action='append',
             default=[],
             help='Property to remove from snapshot '
-                 '(repeat to remove multiple values)',
+                 '(repeat option to remove multiple values)',
             required=True,
         )
         return parser
diff --git a/openstackclient/volume/v2/snapshot.py b/openstackclient/volume/v2/snapshot.py
index c9e502976a..0b3da128ab 100644
--- a/openstackclient/volume/v2/snapshot.py
+++ b/openstackclient/volume/v2/snapshot.py
@@ -240,7 +240,7 @@ class UnsetSnapshot(command.Command):
             action='append',
             default=[],
             help='Property to remove from snapshot '
-                 '(repeat to remove multiple values)',
+                 '(repeat option to remove multiple values)',
         )
         return parser