Enforce sort order

This commit is contained in:
Esteban Küber 2024-07-30 00:18:38 +00:00
parent 3945480ce7
commit 51b5bb1798

View File

@ -2561,41 +2561,42 @@ fn num_decimal_digits(num: usize) -> usize {
// Keep the following list in sync with `rustc_span::char_width`. // Keep the following list in sync with `rustc_span::char_width`.
// ATTENTION: keep lexicografically sorted so that the binary search will work // ATTENTION: keep lexicografically sorted so that the binary search will work
const OUTPUT_REPLACEMENTS: &[(char, &str)] = &[ const OUTPUT_REPLACEMENTS: &[(char, &str)] = &[
// tidy-alphabetical-start
// In terminals without Unicode support the following will be garbled, but in *all* terminals // In terminals without Unicode support the following will be garbled, but in *all* terminals
// the underlying codepoint will be as well. We could gate this replacement behind a "unicode // the underlying codepoint will be as well. We could gate this replacement behind a "unicode
// support" gate. // support" gate.
('\0', ""), ('\0', ""),
('\u{1}', ""), ('\u{0001}', ""),
('\u{2}', ""), ('\u{0002}', ""),
('\u{3}', ""), ('\u{0003}', ""),
('\u{4}', ""), ('\u{0004}', ""),
('\u{5}', ""), ('\u{0005}', ""),
('\u{6}', ""), ('\u{0006}', ""),
('\u{7}', ""), ('\u{0007}', ""),
('\u{8}', ""), ('\u{0008}', ""),
('\t', " "), // We do our own tab replacement ('\u{0009}', " "), // We do our own tab replacement
('\u{b}', ""), ('\u{000b}', ""),
('\u{c}', ""), ('\u{000c}', ""),
('\r', ""), ('\u{000d}', ""),
('\u{e}', ""), ('\u{000e}', ""),
('\u{f}', ""), ('\u{000f}', ""),
('\u{10}', ""), ('\u{0010}', ""),
('\u{11}', ""), ('\u{0011}', ""),
('\u{12}', ""), ('\u{0012}', ""),
('\u{13}', ""), ('\u{0013}', ""),
('\u{14}', ""), ('\u{0014}', ""),
('\u{15}', ""), ('\u{0015}', ""),
('\u{16}', ""), ('\u{0016}', ""),
('\u{17}', ""), ('\u{0017}', ""),
('\u{18}', ""), ('\u{0018}', ""),
('\u{19}', ""), ('\u{0019}', ""),
('\u{1a}', ""), ('\u{001a}', ""),
('\u{1b}', ""), ('\u{001b}', ""),
('\u{1c}', ""), ('\u{001c}', ""),
('\u{1d}', ""), ('\u{001d}', ""),
('\u{1e}', ""), ('\u{001e}', ""),
('\u{1f}', ""), ('\u{001f}', ""),
('\u{7f}', ""), ('\u{007f}', ""),
('\u{200d}', ""), // Replace ZWJ for consistent terminal output of grapheme clusters. ('\u{200d}', ""), // Replace ZWJ for consistent terminal output of grapheme clusters.
('\u{202a}', "<EFBFBD>"), // The following unicode text flow control characters are inconsistently ('\u{202a}', "<EFBFBD>"), // The following unicode text flow control characters are inconsistently
('\u{202b}', "<EFBFBD>"), // supported across CLIs and can cause confusion due to the bytes on disk ('\u{202b}', "<EFBFBD>"), // supported across CLIs and can cause confusion due to the bytes on disk
@ -2606,6 +2607,7 @@ const OUTPUT_REPLACEMENTS: &[(char, &str)] = &[
('\u{2067}', "<EFBFBD>"), ('\u{2067}', "<EFBFBD>"),
('\u{2068}', "<EFBFBD>"), ('\u{2068}', "<EFBFBD>"),
('\u{2069}', "<EFBFBD>"), ('\u{2069}', "<EFBFBD>"),
// tidy-alphabetical-end
]; ];
fn normalize_whitespace(s: &str) -> String { fn normalize_whitespace(s: &str) -> String {