|
10 | 10 | InspectInvisibleText = ( columnNames as list ) =>
|
11 | 11 | let return =
|
12 | 12 | List.Transform( columnNames, ( curName ) => [
|
13 |
| - HasWhitespace = RawName <> Text.Trim( curName ), |
| 13 | + HasOuterWhitespace = RawName <> Text.Trim( Text.Clean( curName ) ), |
14 | 14 | RawName = curName,
|
| 15 | + |
15 | 16 | Symbols = Text.FormatControlSymbols( curName ),
|
16 |
| - HexSummary = "Hex: " & Text.Combine( AsHexStr, ", " ), |
| 17 | + HexSummary = "Hex: " & Text.Combine( AsHexStr, ", " ), |
17 | 18 | DecSummary = "Dec: " & Text.Combine( List.Transform( Codepoints, each Text.From(_)), ", " ),
|
18 | 19 |
|
19 | 20 | CharList = Text.ToList( RawName ),
|
|
34 | 35 | is 0-127 in decimal
|
35 | 36 | or 0x0-0x7f in hexadecimal
|
36 | 37 | */
|
| 38 | + |
37 | 39 | /*
|
38 |
| - input: text with whitespace |
39 |
| - output: text with whitespace, visualized. Non-whitespace characters are preserved. |
| 40 | + input: text with whitespace |
| 41 | + output: text with whitespace visualized |
40 | 42 | Techincally this isn't codepoints, so it's not perfect, but works for all of ascii
|
41 | 43 |
|
42 | 44 | probably poor performance
|
43 |
| - |
44 |
| - example: |
45 |
| - in: " User#(cr,lf) Names" |
46 |
| - out: "␠␠User␍␊␠Names" |
47 |
| - |
48 |
| - in: "#(0020) Zero-Width #(200d) Joiner Inside", |
49 |
| - out: "␠␠Zero-Width␠<ZWJ>␠Joiner␠Inside" |
50 | 45 | */
|
51 | 46 | Text.FormatControlSymbols = (string as text) as text =>
|
52 | 47 | let
|
|
0 commit comments