# # patch "format.cc" # from [02019fa68cfc1907d4d6fe63aafe2ed65148017c] # to [89c8a712b18ef4b392a00244087be07a2678c7a6] # # patch "monotone.1" # from [4eb5c3071fccd6049a1b32b58ba63519b560ca25] # to [b4333b9f17ba604ca732d3de2e833c78bf0991a7] # # patch "monotone.texi" # from [cd8a31e921d9fadf13b66aa2ea207b998d7d9dac] # to [4ec8f99151eb98cd9058d5afaa31dd94fd4c2166] # --- format.cc +++ format.cc @@ -363,9 +363,8 @@ if (*i == 's') { short_form = true; ++i; + N(i != e, F("%%s is not a valid format specifier")); } - if (i == e) - return; switch (*i) { @@ -387,7 +386,7 @@ N(!short_form, F("no short form for comment specifier")); print_cert (certs, comment_cert_name); break; - case 's': + case 'r': N(!short_form, F("no short form for testresult specifier")); print_cert (certs, testresult_cert_name); break; --- monotone.1 +++ monotone.1 @@ -321,7 +321,7 @@ .br %l : value of changelog certificate .br -%s : value of testresult certificate +%r : value of testresult certificate .br %t : value of tag certificate .br --- monotone.texi +++ monotone.texi @@ -4860,18 +4860,21 @@ substituted by the formatted changeset informations. The separate the common formatting expression is separated from the changeset ones by apposite markers. +Some formatting specifier have also a short form, obtained prepending +an 's' to the specifier code. As an example, the short form of the %d +specifier is %sd. Common formatting specifiers: @verbatim -%a : value of author certificate -%b : value of branch certificate -%d : value of date certificate +%[s]a : value of author certificate +%[s]b : value of branch certificate +%[s]d : value of date certificate %e : value of comment certificate -%i : revision id +%[s]i : revision id %l : value of changelog certificate -%s : value of testresult certificate +%r : value of testresult certificate %t : value of tag certificate -%m : manifest id +%[s]m : manifest id @end verbatim Changeset Placeholders: @@ -4885,6 +4888,11 @@ %M : modified files (marker @M) @end verbatim +The short forms have the following meanings: for ids, the first 8 +characters. For author, everything before the first @ symbol. For +branch, everything after the last '.' character. For date, everything +before the first 'T' character. + The %P,%A,%D,%E,%M changeset placeholders supports the private specifier %f, substituted with the file/directory/ancestor name/id The %R and %M placeholders supports the specifiers %f, current @@ -6584,7 +6592,7 @@ %i : revision id %si : shortened revision id %l : value of changelog certificate -%s : value of testresult certificate +%r : value of testresult certificate %t : value of tag certificate %m : manifest id %sm : shortened manifest id