Reorder the message definitions to fit the PO template order
Marco Ricci

Marco Ricci commited on 2025-02-11 23:16:11
Zeige 1 geänderte Dateien mit 254 Einfügungen und 255 Löschungen.

... ...
@@ -679,15 +679,11 @@ class Label(enum.Enum):
679 679
         'service-specific settings',
680 680
     )
681 681
     """"""
682
-    DERIVEPASSPHRASE_01 = commented(
683
-        'This is the first paragraph of the command help text, '
684
-        'but it also appears (in truncated form, if necessary) '
685
-        'as one-line help text for this command.  '
686
-        'The translation should thus be as meaningful as possible '
687
-        'even if truncated.',
682
+    CONFIGURATION_EPILOG = commented(
683
+        '',
688 684
     )(
689
-        'Label :: Help text :: One-line description',
690
-        'Derive a strong passphrase, deterministically, from a master secret.',
685
+        'Label :: Help text :: Explanation',
686
+        'Use $VISUAL or $EDITOR to configure the spawned editor.',
691 687
     )
692 688
     """"""
693 689
     DERIVEPASSPHRASE_02 = commented(
... ...
@@ -719,17 +715,6 @@ class Label(enum.Enum):
719 715
         r'`C:\Users\<user>\AppData\Roaming\Derivepassphrase` on Windows.',
720 716
     )
721 717
     """"""
722
-    DERIVEPASSPHRASE_EXPORT_01 = commented(
723
-        'This is the first paragraph of the command help text, '
724
-        'but it also appears (in truncated form, if necessary) '
725
-        'as one-line help text for this command.  '
726
-        'The translation should thus be as meaningful as possible '
727
-        'even if truncated.',
728
-    )(
729
-        'Label :: Help text :: One-line description',
730
-        'Export a foreign configuration to standard output.',
731
-    )
732
-    """"""
733 718
     DERIVEPASSPHRASE_EXPORT_02 = commented(
734 719
         '',
735 720
     )(
... ...
@@ -741,17 +726,6 @@ class Label(enum.Enum):
741 726
     """"""
742 727
     DERIVEPASSPHRASE_EXPORT_03 = DERIVEPASSPHRASE_03
743 728
     """"""
744
-    DERIVEPASSPHRASE_EXPORT_VAULT_01 = commented(
745
-        'This is the first paragraph of the command help text, '
746
-        'but it also appears (in truncated form, if necessary) '
747
-        'as one-line help text for this command.  '
748
-        'The translation should thus be as meaningful as possible '
749
-        'even if truncated.',
750
-    )(
751
-        'Label :: Help text :: One-line description',
752
-        'Export a vault-native configuration to standard output.',
753
-    )
754
-    """"""
755 729
     DERIVEPASSPHRASE_EXPORT_VAULT_02 = commented(
756 730
         'The metavar is Label.EXPORT_VAULT_METAVAR_PATH.',
757 731
     )(
... ...
@@ -774,17 +748,6 @@ class Label(enum.Enum):
774 748
         flags='python-brace-format',
775 749
     )
776 750
     """"""
777
-    DERIVEPASSPHRASE_VAULT_01 = commented(
778
-        'This is the first paragraph of the command help text, '
779
-        'but it also appears (in truncated form, if necessary) '
780
-        'as one-line help text for this command.  '
781
-        'The translation should thus be as meaningful as possible '
782
-        'even if truncated.',
783
-    )(
784
-        'Label :: Help text :: One-line description',
785
-        'Derive a passphrase using the vault derivation scheme.',
786
-    )
787
-    """"""
788 751
     DERIVEPASSPHRASE_VAULT_02 = commented(
789 752
         'The metavar is Label.VAULT_METAVAR_SERVICE.',
790 753
     )(
... ...
@@ -850,6 +813,23 @@ class Label(enum.Enum):
850 813
         'et dolore magna aliqua.',
851 814
     )
852 815
     """"""
816
+    PASSPHRASE_GENERATION_EPILOG = commented(
817
+        'The metavar is Label.PASSPHRASE_GENERATION_METAVAR_NUMBER.',
818
+    )(
819
+        'Label :: Help text :: Explanation',
820
+        'Use {metavar}=0 to exclude a character type from the output.',
821
+        flags='python-brace-format',
822
+    )
823
+    """"""
824
+    STORAGE_MANAGEMENT_EPILOG = commented(
825
+        'The metavar is Label.STORAGE_MANAGEMENT_METAVAR_PATH.',
826
+    )(
827
+        'Label :: Help text :: Explanation',
828
+        'Using "-" as {metavar} for standard input/standard output '
829
+        'is supported.',
830
+        flags='python-brace-format',
831
+    )
832
+    """"""
853 833
     DEPRECATED_COMMAND_LABEL = commented(
854 834
         'We use this format string to indicate, at the beginning '
855 835
         "of a command's help text, that this command is deprecated.",
... ...
@@ -869,155 +849,217 @@ class Label(enum.Enum):
869 849
         '# - - - - - >8 - - - - - >8 - - - - - >8 - - - - - >8 - - - - -',
870 850
     )
871 851
     """"""
872
-    DEBUG_OPTION_HELP_TEXT = commented(
873
-        '',
852
+    EXPORT_VAULT_FORMAT_METAVAR_FMT = commented(
853
+        'This text is used as {metavar} in '
854
+        'Label.EXPORT_VAULT_FORMAT_HELP_TEXT, yielding e.g. '
855
+        '"Try the following storage format FMT."',
874 856
     )(
875
-        'Label :: Help text :: One-line description',
876
-        'Also emit debug information.  Implies --verbose.',
857
+        'Label :: Help text :: Metavar :: export vault',
858
+        'FMT',
877 859
     )
878 860
     """"""
879
-    EXPORT_VAULT_FORMAT_HELP_TEXT = commented(
880
-        'The defaults_hint is Label.EXPORT_VAULT_FORMAT_DEFAULTS_HELP_TEXT, '
881
-        'the metavar is Label.EXPORT_VAULT_FORMAT_METAVAR_FMT.',
861
+    EXPORT_VAULT_KEY_METAVAR_K = commented(
862
+        'This text is used as {metavar} in '
863
+        'Label.EXPORT_VAULT_KEY_HELP_TEXT, yielding e.g. '
864
+        '"Use K as the storage master key."',
882 865
     )(
883
-        'Label :: Help text :: One-line description',
884
-        'Try the following storage format {metavar}.  '
885
-        'If specified multiple times, the '
886
-        'formats will be tried in order.  '
887
-        '{defaults_hint}',
888
-        flags='python-brace-format',
866
+        'Label :: Help text :: Metavar :: export vault',
867
+        'K',
889 868
     )
890 869
     """"""
891
-    EXPORT_VAULT_FORMAT_DEFAULTS_HELP_TEXT = commented(
892
-        'See EXPORT_VAULT_FORMAT_HELP_TEXT.  '
893
-        'The format names/labels "v0.3", "v0.2" and "storeroom" '
894
-        'should not be translated.',
870
+    EXPORT_VAULT_METAVAR_PATH = commented(
871
+        'Used as "path_metavar" in '
872
+        'Label.DERIVEPASSPHRASE_EXPORT_VAULT_02 and others, '
873
+        'yielding e.g. "Depending on the configuration format, '
874
+        'PATH may either be a file or a directory."',
875
+    )(
876
+        'Label :: Help text :: Metavar :: export vault',
877
+        'PATH',
878
+    )
879
+    """"""
880
+    PASSPHRASE_GENERATION_METAVAR_NUMBER = commented(
881
+        'This metavar is used in Label.PASSPHRASE_GENERATION_EPILOG, '
882
+        'Label.DERIVEPASSPHRASE_VAULT_LENGTH_HELP_TEXT and others, '
883
+        'yielding e.g. "Ensure a passphrase length of NUMBER characters.".  ',
884
+    )(
885
+        'Label :: Help text :: Metavar :: vault',
886
+        'NUMBER',
887
+    )
888
+    """"""
889
+    STORAGE_MANAGEMENT_METAVAR_PATH = commented(
890
+        'This metavar is used in Label.STORAGE_MANAGEMENT_EPILOG, '
891
+        'Label.DERIVEPASSPHRASE_VAULT_IMPORT_HELP_TEXT and others, '
892
+        'yielding e.g. "Ensure a passphrase length of NUMBER characters.".  ',
893
+    )(
894
+        'Label :: Help text :: Metavar :: vault',
895
+        'PATH',
896
+    )
897
+    """"""
898
+    VAULT_METAVAR_SERVICE = commented(
899
+        'This metavar is used as "service_metavar" in multiple help texts, '
900
+        'such as Label.DERIVEPASSPHRASE_VAULT_CONFIG_HELP_TEXT, '
901
+        'Label.DERIVEPASSPHRASE_VAULT_02, ErrMsgTemplate.SERVICE_REQUIRED, '
902
+        'etc.  Sample texts are "Deriving a passphrase requires a SERVICE.", '
903
+        '"save the given settings for SERVICE, or global" and '
904
+        '"If operating on global settings, or importing/exporting settings, '
905
+        'then SERVICE must be omitted."',
906
+    )(
907
+        'Label :: Help text :: Metavar :: vault',
908
+        'SERVICE',
909
+    )
910
+    """"""
911
+    DEBUG_OPTION_HELP_TEXT = commented(
912
+        '',
895 913
     )(
896 914
         'Label :: Help text :: One-line description',
897
-        'Default: v0.3, v0.2, storeroom.',
915
+        'Also emit debug information.  Implies --verbose.',
898 916
     )
899 917
     """"""
900
-    EXPORT_VAULT_KEY_HELP_TEXT = commented(
901
-        'The defaults_hint is Label.EXPORT_VAULT_KEY_DEFAULTS_HELP_TEXT, '
902
-        'the metavar is Label.EXPORT_VAULT_KEY_METAVAR_K.',
918
+    DERIVEPASSPHRASE_01 = commented(
919
+        'This is the first paragraph of the command help text, '
920
+        'but it also appears (in truncated form, if necessary) '
921
+        'as one-line help text for this command.  '
922
+        'The translation should thus be as meaningful as possible '
923
+        'even if truncated.',
903 924
     )(
904 925
         'Label :: Help text :: One-line description',
905
-        'Use {metavar} as the storage master key.  {defaults_hint}',
906
-        flags='python-brace-format',
926
+        'Derive a strong passphrase, deterministically, from a master secret.',
907 927
     )
908 928
     """"""
909
-    EXPORT_VAULT_KEY_DEFAULTS_HELP_TEXT = commented(
910
-        'See EXPORT_VAULT_KEY_HELP_TEXT.',
929
+    DERIVEPASSPHRASE_EXPORT_01 = commented(
930
+        'This is the first paragraph of the command help text, '
931
+        'but it also appears (in truncated form, if necessary) '
932
+        'as one-line help text for this command.  '
933
+        'The translation should thus be as meaningful as possible '
934
+        'even if truncated.',
911 935
     )(
912 936
         'Label :: Help text :: One-line description',
913
-        'Default: check the VAULT_KEY, LOGNAME, USER, or USERNAME '
914
-        'environment variables.',
937
+        'Export a foreign configuration to standard output.',
915 938
     )
916 939
     """"""
917
-    HELP_OPTION_HELP_TEXT = commented(
918
-        '',
940
+    DERIVEPASSPHRASE_EXPORT_VAULT_01 = commented(
941
+        'This is the first paragraph of the command help text, '
942
+        'but it also appears (in truncated form, if necessary) '
943
+        'as one-line help text for this command.  '
944
+        'The translation should thus be as meaningful as possible '
945
+        'even if truncated.',
919 946
     )(
920 947
         'Label :: Help text :: One-line description',
921
-        'Show this help text, then exit.',
948
+        'Export a vault-native configuration to standard output.',
922 949
     )
923 950
     """"""
924
-    QUIET_OPTION_HELP_TEXT = commented(
925
-        '',
951
+    DERIVEPASSPHRASE_VAULT_01 = commented(
952
+        'This is the first paragraph of the command help text, '
953
+        'but it also appears (in truncated form, if necessary) '
954
+        'as one-line help text for this command.  '
955
+        'The translation should thus be as meaningful as possible '
956
+        'even if truncated.',
926 957
     )(
927 958
         'Label :: Help text :: One-line description',
928
-        'Suppress even warnings; emit only errors.',
959
+        'Derive a passphrase using the vault derivation scheme.',
929 960
     )
930 961
     """"""
931
-    VERBOSE_OPTION_HELP_TEXT = commented(
932
-        '',
962
+    DERIVEPASSPHRASE_VAULT_CONFIG_HELP_TEXT = commented(
963
+        'The metavar is Label.VAULT_METAVAR_SERVICE.',
933 964
     )(
934 965
         'Label :: Help text :: One-line description',
935
-        'Emit extra/progress information to standard error.',
966
+        'Save the given settings for {service_metavar}, or global.',
967
+        flags='python-brace-format',
936 968
     )
937 969
     """"""
938
-    VERSION_OPTION_HELP_TEXT = commented(
939
-        '',
970
+    DERIVEPASSPHRASE_VAULT_DASH_HELP_TEXT = commented(
971
+        'The metavar is Label.PASSPHRASE_GENERATION_METAVAR_NUMBER.',
940 972
     )(
941 973
         'Label :: Help text :: One-line description',
942
-        'Show applicable version information, then exit.',
974
+        'Ensure at least {metavar} "-" or "_" characters.',
975
+        flags='python-brace-format',
943 976
     )
944 977
     """"""
945
-
946
-    DERIVEPASSPHRASE_VAULT_PHRASE_HELP_TEXT = commented(
978
+    DERIVEPASSPHRASE_VAULT_DELETE_ALL_HELP_TEXT = commented(
947 979
         '',
948 980
     )(
949 981
         'Label :: Help text :: One-line description',
950
-        'Prompt for a master passphrase.',
982
+        'Delete all settings.',
951 983
     )
952 984
     """"""
953
-    DERIVEPASSPHRASE_VAULT_KEY_HELP_TEXT = commented(
985
+    DERIVEPASSPHRASE_VAULT_DELETE_GLOBALS_HELP_TEXT = commented(
954 986
         '',
955 987
     )(
956 988
         'Label :: Help text :: One-line description',
957
-        'Select a suitable SSH key from the SSH agent.',
989
+        'Delete the global settings.',
958 990
     )
959 991
     """"""
960
-    DERIVEPASSPHRASE_VAULT_LENGTH_HELP_TEXT = commented(
961
-        'The metavar is Label.PASSPHRASE_GENERATION_METAVAR_NUMBER.',
992
+    DERIVEPASSPHRASE_VAULT_DELETE_HELP_TEXT = commented(
993
+        'The metavar is Label.VAULT_METAVAR_SERVICE.',
962 994
     )(
963 995
         'Label :: Help text :: One-line description',
964
-        'Ensure a passphrase length of {metavar} characters.',
996
+        'Delete the settings for {service_metavar}.',
965 997
         flags='python-brace-format',
966 998
     )
967 999
     """"""
968
-    DERIVEPASSPHRASE_VAULT_REPEAT_HELP_TEXT = commented(
969
-        'The metavar is Label.PASSPHRASE_GENERATION_METAVAR_NUMBER.',
1000
+    DERIVEPASSPHRASE_VAULT_EDITOR_INTERFACE_HELP_TEXT = commented(
1001
+        'The corresponding option is displayed as '
1002
+        '"--modern-editor-interface / --vault-legacy-editor-interface", '
1003
+        'so you may want to hint that the default (legacy) '
1004
+        'is the second of those options.  '
1005
+        'Though the vault(1) legacy editor interface clearly has deficiencies '
1006
+        'and (in my opinion) should only be used for compatibility purposes, '
1007
+        'the one-line help text should try not to sound too judgmental, '
1008
+        'if possible.',
970 1009
     )(
971 1010
         'Label :: Help text :: One-line description',
972
-        'Forbid any run of {metavar} identical characters.',
973
-        flags='python-brace-format',
1011
+        'Edit notes using the modern editor interface '
1012
+        'or the vault-like legacy one (default).',
974 1013
     )
975 1014
     """"""
976
-    DERIVEPASSPHRASE_VAULT_LOWER_HELP_TEXT = commented(
977
-        'The metavar is Label.PASSPHRASE_GENERATION_METAVAR_NUMBER.',
1015
+    DERIVEPASSPHRASE_VAULT_EXPORT_AS_HELP_TEXT = commented(
1016
+        'The corresponding option is displayed as '
1017
+        '"--export-as=json|sh", so json refers to the JSON format (default) '
1018
+        'and sh refers to the POSIX sh format.  '
1019
+        'Please ensure that it is clear what the "json" and "sh" refer to '
1020
+        'in your translation... even if you cannot use texutal correspondence '
1021
+        'like the English text does.',
978 1022
     )(
979 1023
         'Label :: Help text :: One-line description',
980
-        'Ensure at least {metavar} lowercase characters.',
981
-        flags='python-brace-format',
1024
+        'When exporting, export as JSON (default) or as POSIX sh.',
982 1025
     )
983 1026
     """"""
984
-    DERIVEPASSPHRASE_VAULT_UPPER_HELP_TEXT = commented(
985
-        'The metavar is Label.PASSPHRASE_GENERATION_METAVAR_NUMBER.',
1027
+    DERIVEPASSPHRASE_VAULT_EXPORT_HELP_TEXT = commented(
1028
+        'The metavar is Label.STORAGE_MANAGEMENT_METAVAR_PATH.',
986 1029
     )(
987 1030
         'Label :: Help text :: One-line description',
988
-        'Ensure at least {metavar} uppercase characters.',
1031
+        'Export all saved settings to {metavar}.',
989 1032
         flags='python-brace-format',
990 1033
     )
991 1034
     """"""
992
-    DERIVEPASSPHRASE_VAULT_NUMBER_HELP_TEXT = commented(
993
-        'The metavar is Label.PASSPHRASE_GENERATION_METAVAR_NUMBER.',
1035
+    DERIVEPASSPHRASE_VAULT_IMPORT_HELP_TEXT = commented(
1036
+        'The metavar is Label.STORAGE_MANAGEMENT_METAVAR_PATH.',
994 1037
     )(
995 1038
         'Label :: Help text :: One-line description',
996
-        'Ensure at least {metavar} digits.',
1039
+        'Import saved settings from {metavar}.',
997 1040
         flags='python-brace-format',
998 1041
     )
999 1042
     """"""
1000
-    DERIVEPASSPHRASE_VAULT_SPACE_HELP_TEXT = commented(
1001
-        'The metavar is Label.PASSPHRASE_GENERATION_METAVAR_NUMBER.',
1043
+    DERIVEPASSPHRASE_VAULT_KEY_HELP_TEXT = commented(
1044
+        '',
1002 1045
     )(
1003 1046
         'Label :: Help text :: One-line description',
1004
-        'Ensure at least {metavar} spaces.',
1005
-        flags='python-brace-format',
1047
+        'Select a suitable SSH key from the SSH agent.',
1006 1048
     )
1007 1049
     """"""
1008
-    DERIVEPASSPHRASE_VAULT_DASH_HELP_TEXT = commented(
1050
+    DERIVEPASSPHRASE_VAULT_LENGTH_HELP_TEXT = commented(
1009 1051
         'The metavar is Label.PASSPHRASE_GENERATION_METAVAR_NUMBER.',
1010 1052
     )(
1011 1053
         'Label :: Help text :: One-line description',
1012
-        'Ensure at least {metavar} "-" or "_" characters.',
1054
+        'Ensure a passphrase length of {metavar} characters.',
1013 1055
         flags='python-brace-format',
1014 1056
     )
1015 1057
     """"""
1016
-    DERIVEPASSPHRASE_VAULT_SYMBOL_HELP_TEXT = commented(
1058
+    DERIVEPASSPHRASE_VAULT_LOWER_HELP_TEXT = commented(
1017 1059
         'The metavar is Label.PASSPHRASE_GENERATION_METAVAR_NUMBER.',
1018 1060
     )(
1019 1061
         'Label :: Help text :: One-line description',
1020
-        'Ensure at least {metavar} symbol characters.',
1062
+        'Ensure at least {metavar} lowercase characters.',
1021 1063
         flags='python-brace-format',
1022 1064
     )
1023 1065
     """"""
... ...
@@ -1030,59 +1071,62 @@ class Label(enum.Enum):
1030 1071
         flags='python-brace-format',
1031 1072
     )
1032 1073
     """"""
1033
-    DERIVEPASSPHRASE_VAULT_CONFIG_HELP_TEXT = commented(
1034
-        'The metavar is Label.VAULT_METAVAR_SERVICE.',
1074
+    DERIVEPASSPHRASE_VAULT_NUMBER_HELP_TEXT = commented(
1075
+        'The metavar is Label.PASSPHRASE_GENERATION_METAVAR_NUMBER.',
1035 1076
     )(
1036 1077
         'Label :: Help text :: One-line description',
1037
-        'Save the given settings for {service_metavar}, or global.',
1078
+        'Ensure at least {metavar} digits.',
1038 1079
         flags='python-brace-format',
1039 1080
     )
1040 1081
     """"""
1041
-    DERIVEPASSPHRASE_VAULT_DELETE_HELP_TEXT = commented(
1042
-        'The metavar is Label.VAULT_METAVAR_SERVICE.',
1082
+    DERIVEPASSPHRASE_VAULT_OVERWRITE_HELP_TEXT = commented(
1083
+        'The corresponding option is displayed as '
1084
+        '"--overwrite-existing / --merge-existing", so you may want to '
1085
+        'hint that the default (merge) is the second of those options.',
1043 1086
     )(
1044 1087
         'Label :: Help text :: One-line description',
1045
-        'Delete the settings for {service_metavar}.',
1046
-        flags='python-brace-format',
1088
+        'Overwrite or merge (default) the existing configuration.',
1047 1089
     )
1048 1090
     """"""
1049
-    DERIVEPASSPHRASE_VAULT_DELETE_GLOBALS_HELP_TEXT = commented(
1091
+    DERIVEPASSPHRASE_VAULT_PHRASE_HELP_TEXT = commented(
1050 1092
         '',
1051 1093
     )(
1052 1094
         'Label :: Help text :: One-line description',
1053
-        'Delete the global settings.',
1095
+        'Prompt for a master passphrase.',
1054 1096
     )
1055 1097
     """"""
1056
-    DERIVEPASSPHRASE_VAULT_DELETE_ALL_HELP_TEXT = commented(
1057
-        '',
1098
+    DERIVEPASSPHRASE_VAULT_PRINT_NOTES_BEFORE_HELP_TEXT = commented(
1099
+        'The corresponding option is displayed as '
1100
+        '"--print-notes-before / --print-notes-after", so you may want to '
1101
+        'hint that the default (after) is the second of those options.',
1058 1102
     )(
1059 1103
         'Label :: Help text :: One-line description',
1060
-        'Delete all settings.',
1104
+        'Print the service notes (if any) before or after (default) '
1105
+        'the existing configuration.',
1061 1106
     )
1062 1107
     """"""
1063
-    DERIVEPASSPHRASE_VAULT_EXPORT_HELP_TEXT = commented(
1064
-        'The metavar is Label.STORAGE_MANAGEMENT_METAVAR_PATH.',
1108
+    DERIVEPASSPHRASE_VAULT_REPEAT_HELP_TEXT = commented(
1109
+        'The metavar is Label.PASSPHRASE_GENERATION_METAVAR_NUMBER.',
1065 1110
     )(
1066 1111
         'Label :: Help text :: One-line description',
1067
-        'Export all saved settings to {metavar}.',
1112
+        'Forbid any run of {metavar} identical characters.',
1068 1113
         flags='python-brace-format',
1069 1114
     )
1070 1115
     """"""
1071
-    DERIVEPASSPHRASE_VAULT_IMPORT_HELP_TEXT = commented(
1072
-        'The metavar is Label.STORAGE_MANAGEMENT_METAVAR_PATH.',
1116
+    DERIVEPASSPHRASE_VAULT_SPACE_HELP_TEXT = commented(
1117
+        'The metavar is Label.PASSPHRASE_GENERATION_METAVAR_NUMBER.',
1073 1118
     )(
1074 1119
         'Label :: Help text :: One-line description',
1075
-        'Import saved settings from {metavar}.',
1120
+        'Ensure at least {metavar} spaces.',
1076 1121
         flags='python-brace-format',
1077 1122
     )
1078 1123
     """"""
1079
-    DERIVEPASSPHRASE_VAULT_OVERWRITE_HELP_TEXT = commented(
1080
-        'The corresponding option is displayed as '
1081
-        '"--overwrite-existing / --merge-existing", so you may want to '
1082
-        'hint that the default (merge) is the second of those options.',
1124
+    DERIVEPASSPHRASE_VAULT_SYMBOL_HELP_TEXT = commented(
1125
+        'The metavar is Label.PASSPHRASE_GENERATION_METAVAR_NUMBER.',
1083 1126
     )(
1084 1127
         'Label :: Help text :: One-line description',
1085
-        'Overwrite or merge (default) the existing configuration.',
1128
+        'Ensure at least {metavar} symbol characters.',
1129
+        flags='python-brace-format',
1086 1130
     )
1087 1131
     """"""
1088 1132
     DERIVEPASSPHRASE_VAULT_UNSET_HELP_TEXT = commented(
... ...
@@ -1098,125 +1142,79 @@ class Label(enum.Enum):
1098 1142
         'May be specified multiple times.',
1099 1143
     )
1100 1144
     """"""
1101
-    DERIVEPASSPHRASE_VAULT_EXPORT_AS_HELP_TEXT = commented(
1102
-        'The corresponding option is displayed as '
1103
-        '"--export-as=json|sh", so json refers to the JSON format (default) '
1104
-        'and sh refers to the POSIX sh format.  '
1105
-        'Please ensure that it is clear what the "json" and "sh" refer to '
1106
-        'in your translation... even if you cannot use texutal correspondence '
1107
-        'like the English text does.',
1145
+    DERIVEPASSPHRASE_VAULT_UPPER_HELP_TEXT = commented(
1146
+        'The metavar is Label.PASSPHRASE_GENERATION_METAVAR_NUMBER.',
1108 1147
     )(
1109 1148
         'Label :: Help text :: One-line description',
1110
-        'When exporting, export as JSON (default) or as POSIX sh.',
1149
+        'Ensure at least {metavar} uppercase characters.',
1150
+        flags='python-brace-format',
1111 1151
     )
1112 1152
     """"""
1113
-    DERIVEPASSPHRASE_VAULT_EDITOR_INTERFACE_HELP_TEXT = commented(
1114
-        'The corresponding option is displayed as '
1115
-        '"--modern-editor-interface / --vault-legacy-editor-interface", '
1116
-        'so you may want to hint that the default (legacy) '
1117
-        'is the second of those options.  '
1118
-        'Though the vault(1) legacy editor interface clearly has deficiencies '
1119
-        'and (in my opinion) should only be used for compatibility purposes, '
1120
-        'the one-line help text should try not to sound too judgmental, '
1121
-        'if possible.',
1153
+
1154
+    EXPORT_VAULT_FORMAT_DEFAULTS_HELP_TEXT = commented(
1155
+        'See EXPORT_VAULT_FORMAT_HELP_TEXT.  '
1156
+        'The format names/labels "v0.3", "v0.2" and "storeroom" '
1157
+        'should not be translated.',
1122 1158
     )(
1123 1159
         'Label :: Help text :: One-line description',
1124
-        'Edit notes using the modern editor interface '
1125
-        'or the vault-like legacy one (default).',
1160
+        'Default: v0.3, v0.2, storeroom.',
1126 1161
     )
1127 1162
     """"""
1128
-    DERIVEPASSPHRASE_VAULT_PRINT_NOTES_BEFORE_HELP_TEXT = commented(
1129
-        'The corresponding option is displayed as '
1130
-        '"--print-notes-before / --print-notes-after", so you may want to '
1131
-        'hint that the default (after) is the second of those options.',
1163
+    EXPORT_VAULT_FORMAT_HELP_TEXT = commented(
1164
+        'The defaults_hint is Label.EXPORT_VAULT_FORMAT_DEFAULTS_HELP_TEXT, '
1165
+        'the metavar is Label.EXPORT_VAULT_FORMAT_METAVAR_FMT.',
1132 1166
     )(
1133 1167
         'Label :: Help text :: One-line description',
1134
-        'Print the service notes (if any) before or after (default) '
1135
-        'the existing configuration.',
1136
-    )
1137
-    """"""
1138
-
1139
-    EXPORT_VAULT_FORMAT_METAVAR_FMT = commented(
1140
-        'This text is used as {metavar} in '
1141
-        'Label.EXPORT_VAULT_FORMAT_HELP_TEXT, yielding e.g. '
1142
-        '"Try the following storage format FMT."',
1143
-    )(
1144
-        'Label :: Help text :: Metavar :: export vault',
1145
-        'FMT',
1146
-    )
1147
-    """"""
1148
-    EXPORT_VAULT_KEY_METAVAR_K = commented(
1149
-        'This text is used as {metavar} in '
1150
-        'Label.EXPORT_VAULT_KEY_HELP_TEXT, yielding e.g. '
1151
-        '"Use K as the storage master key."',
1152
-    )(
1153
-        'Label :: Help text :: Metavar :: export vault',
1154
-        'K',
1155
-    )
1156
-    """"""
1157
-    EXPORT_VAULT_METAVAR_PATH = commented(
1158
-        'Used as "path_metavar" in '
1159
-        'Label.DERIVEPASSPHRASE_EXPORT_VAULT_02 and others, '
1160
-        'yielding e.g. "Depending on the configuration format, '
1161
-        'PATH may either be a file or a directory."',
1162
-    )(
1163
-        'Label :: Help text :: Metavar :: export vault',
1164
-        'PATH',
1168
+        'Try the following storage format {metavar}.  '
1169
+        'If specified multiple times, the '
1170
+        'formats will be tried in order.  '
1171
+        '{defaults_hint}',
1172
+        flags='python-brace-format',
1165 1173
     )
1166 1174
     """"""
1167
-    PASSPHRASE_GENERATION_METAVAR_NUMBER = commented(
1168
-        'This metavar is used in Label.PASSPHRASE_GENERATION_EPILOG, '
1169
-        'Label.DERIVEPASSPHRASE_VAULT_LENGTH_HELP_TEXT and others, '
1170
-        'yielding e.g. "Ensure a passphrase length of NUMBER characters.".  ',
1175
+    EXPORT_VAULT_KEY_DEFAULTS_HELP_TEXT = commented(
1176
+        'See EXPORT_VAULT_KEY_HELP_TEXT.',
1171 1177
     )(
1172
-        'Label :: Help text :: Metavar :: vault',
1173
-        'NUMBER',
1178
+        'Label :: Help text :: One-line description',
1179
+        'Default: check the VAULT_KEY, LOGNAME, USER, or USERNAME '
1180
+        'environment variables.',
1174 1181
     )
1175 1182
     """"""
1176
-    STORAGE_MANAGEMENT_METAVAR_PATH = commented(
1177
-        'This metavar is used in Label.STORAGE_MANAGEMENT_EPILOG, '
1178
-        'Label.DERIVEPASSPHRASE_VAULT_IMPORT_HELP_TEXT and others, '
1179
-        'yielding e.g. "Ensure a passphrase length of NUMBER characters.".  ',
1183
+    EXPORT_VAULT_KEY_HELP_TEXT = commented(
1184
+        'The defaults_hint is Label.EXPORT_VAULT_KEY_DEFAULTS_HELP_TEXT, '
1185
+        'the metavar is Label.EXPORT_VAULT_KEY_METAVAR_K.',
1180 1186
     )(
1181
-        'Label :: Help text :: Metavar :: vault',
1182
-        'PATH',
1187
+        'Label :: Help text :: One-line description',
1188
+        'Use {metavar} as the storage master key.  {defaults_hint}',
1189
+        flags='python-brace-format',
1183 1190
     )
1184 1191
     """"""
1185
-    VAULT_METAVAR_SERVICE = commented(
1186
-        'This metavar is used as "service_metavar" in multiple help texts, '
1187
-        'such as Label.DERIVEPASSPHRASE_VAULT_CONFIG_HELP_TEXT, '
1188
-        'Label.DERIVEPASSPHRASE_VAULT_02, ErrMsgTemplate.SERVICE_REQUIRED, '
1189
-        'etc.  Sample texts are "Deriving a passphrase requires a SERVICE.", '
1190
-        '"save the given settings for SERVICE, or global" and '
1191
-        '"If operating on global settings, or importing/exporting settings, '
1192
-        'then SERVICE must be omitted."',
1192
+    HELP_OPTION_HELP_TEXT = commented(
1193
+        '',
1193 1194
     )(
1194
-        'Label :: Help text :: Metavar :: vault',
1195
-        'SERVICE',
1195
+        'Label :: Help text :: One-line description',
1196
+        'Show this help text, then exit.',
1196 1197
     )
1197 1198
     """"""
1198
-    CONFIGURATION_EPILOG = commented(
1199
+    QUIET_OPTION_HELP_TEXT = commented(
1199 1200
         '',
1200 1201
     )(
1201
-        'Label :: Help text :: Explanation',
1202
-        'Use $VISUAL or $EDITOR to configure the spawned editor.',
1202
+        'Label :: Help text :: One-line description',
1203
+        'Suppress even warnings; emit only errors.',
1203 1204
     )
1204 1205
     """"""
1205
-    PASSPHRASE_GENERATION_EPILOG = commented(
1206
-        'The metavar is Label.PASSPHRASE_GENERATION_METAVAR_NUMBER.',
1206
+    VERBOSE_OPTION_HELP_TEXT = commented(
1207
+        '',
1207 1208
     )(
1208
-        'Label :: Help text :: Explanation',
1209
-        'Use {metavar}=0 to exclude a character type from the output.',
1210
-        flags='python-brace-format',
1209
+        'Label :: Help text :: One-line description',
1210
+        'Emit extra/progress information to standard error.',
1211 1211
     )
1212 1212
     """"""
1213
-    STORAGE_MANAGEMENT_EPILOG = commented(
1214
-        'The metavar is Label.STORAGE_MANAGEMENT_METAVAR_PATH.',
1213
+    VERSION_OPTION_HELP_TEXT = commented(
1214
+        '',
1215 1215
     )(
1216
-        'Label :: Help text :: Explanation',
1217
-        'Using "-" as {metavar} for standard input/standard output '
1218
-        'is supported.',
1219
-        flags='python-brace-format',
1216
+        'Label :: Help text :: One-line description',
1217
+        'Show applicable version information, then exit.',
1220 1218
     )
1221 1219
     """"""
1222 1220
     COMMANDS_LABEL = commented(
... ...
@@ -1525,6 +1523,24 @@ Master keys data:
1525 1523
         flags='python-brace-format',
1526 1524
     )
1527 1525
     """"""
1526
+    VAULT_NATIVE_CHECKING_MAC_DETAILS = commented(
1527
+        'This message is emitted by the vault configuration exporter '
1528
+        'for "native"-type configuration directories.  '
1529
+        'It is preceded by the info message '
1530
+        'VAULT_NATIVE_PARSING_IV_PAYLOAD_MAC; see the commentary there '
1531
+        'concerning the terms and thoughts on translating them.',
1532
+    )(
1533
+        'Debug message',
1534
+        """\
1535
+MAC details:
1536
+
1537
+  \b
1538
+  MAC input: {mac_input}
1539
+  Expected MAC: {mac}
1540
+""",
1541
+        flags='python-brace-format',
1542
+    )
1543
+    """"""
1528 1544
     VAULT_NATIVE_EVP_BYTESTOKEY_INIT = commented(
1529 1545
         'This message is emitted by the vault configuration exporter '
1530 1546
         'for "native"-type configuration directories: '
... ...
@@ -1585,24 +1601,6 @@ evp_bytestokey_md5 (round update):
1585 1601
   \b
1586 1602
   Buffer length: {buffer_length}
1587 1603
   Buffer: {buffer}
1588
-""",
1589
-        flags='python-brace-format',
1590
-    )
1591
-    """"""
1592
-    VAULT_NATIVE_CHECKING_MAC_DETAILS = commented(
1593
-        'This message is emitted by the vault configuration exporter '
1594
-        'for "native"-type configuration directories.  '
1595
-        'It is preceded by the info message '
1596
-        'VAULT_NATIVE_PARSING_IV_PAYLOAD_MAC; see the commentary there '
1597
-        'concerning the terms and thoughts on translating them.',
1598
-    )(
1599
-        'Debug message',
1600
-        """\
1601
-MAC details:
1602
-
1603
-  \b
1604
-  MAC input: {mac_input}
1605
-  Expected MAC: {mac}
1606 1604
 """,
1607 1605
         flags='python-brace-format',
1608 1606
     )
... ...
@@ -1636,16 +1634,6 @@ Buffer: {contents}
1636 1634
         flags='python-brace-format',
1637 1635
     )
1638 1636
     """"""
1639
-    VAULT_NATIVE_PLAINTEXT = commented(
1640
-        'This message is emitted by the vault configuration exporter '
1641
-        'for "native"-type configuration directories.  '
1642
-        '"plaintext" is a cryptographic term.',
1643
-    )(
1644
-        'Debug message',
1645
-        'Plaintext: {contents}',
1646
-        flags='python-brace-format',
1647
-    )
1648
-    """"""
1649 1637
     VAULT_NATIVE_PBKDF2_CALL = commented(
1650 1638
         '',
1651 1639
     )(
... ...
@@ -1661,6 +1649,16 @@ Master key derivation:
1661 1649
         flags='python-brace-format',
1662 1650
     )
1663 1651
     """"""
1652
+    VAULT_NATIVE_PLAINTEXT = commented(
1653
+        'This message is emitted by the vault configuration exporter '
1654
+        'for "native"-type configuration directories.  '
1655
+        '"plaintext" is a cryptographic term.',
1656
+    )(
1657
+        'Debug message',
1658
+        'Plaintext: {contents}',
1659
+        flags='python-brace-format',
1660
+    )
1661
+    """"""
1664 1662
     VAULT_NATIVE_V02_PAYLOAD_MAC_POSTPROCESSING = commented(
1665 1663
         'This message is emitted by the vault configuration exporter '
1666 1664
         'for "native"-type configuration directories.  '
... ...
@@ -2152,21 +2150,21 @@ class ErrMsgTemplate(enum.Enum):
2152 2150
         flags='python-brace-format',
2153 2151
     )
2154 2152
     """"""
2155
-    PARAMS_NEEDS_SERVICE_OR_CONFIG = commented(
2153
+    PARAMS_NEEDS_SERVICE = commented(
2156 2154
         'The param is a long-form command-line option name, '
2157 2155
         'the metavar is Label.VAULT_METAVAR_SERVICE.',
2158 2156
     )(
2159 2157
         'Error message',
2160
-        '{param} requires a {service_metavar} or --config.',
2158
+        '{param} requires a {service_metavar}.',
2161 2159
         flags='python-brace-format',
2162 2160
     )
2163 2161
     """"""
2164
-    PARAMS_NEEDS_SERVICE = commented(
2162
+    PARAMS_NEEDS_SERVICE_OR_CONFIG = commented(
2165 2163
         'The param is a long-form command-line option name, '
2166 2164
         'the metavar is Label.VAULT_METAVAR_SERVICE.',
2167 2165
     )(
2168 2166
         'Error message',
2169
-        '{param} requires a {service_metavar}.',
2167
+        '{param} requires a {service_metavar} or --config.',
2170 2168
         flags='python-brace-format',
2171 2169
     )
2172 2170
     """"""
2173 2171