bors
42b2496320
Auto merge of #126597 - estebank:unicode-output, r=fmease
Add Unicode block-drawing compiler output support
Add nightly-only theming support to rustc output using Unicode box
drawing characters instead of ASCII-art to draw the terminal UI.
In order to enable, the flags `-Zunstable-options=yes --error-format=human-unicode` must be passed in.
After:
```
error: foo
╭▸ test.rs:3:3
│
3 │ X0 Y0 Z0
│ ┌───╿──│──┘
│ ┌│───│──┘
│ ┏││━━━┙
│ ┃││
4 │ ┃││ X1 Y1 Z1
5 │ ┃││ X2 Y2 Z2
│ ┃│└────╿──│──┘ `Z` label
│ ┃└─────│──┤
│ ┗━━━━━━┥ `Y` is a good letter too
│ `X` is a good letter
╰╴
note: bar
╭▸ test.rs:4:3
│
4 │ ┏ X1 Y1 Z1
5 │ ┃ X2 Y2 Z2
6 │ ┃ X3 Y3 Z3
│ ┗━━━━━━━━━━┛
├ note: bar
╰ note: baz
note: qux
╭▸ test.rs:4:3
│
4 │ X1 Y1 Z1
╰╴ ━━━━━━━━
```
Before:
```
error: foo
--> test.rs:3:3
|
3 | X0 Y0 Z0
| ___^__-__-
| |___|__|
| ||___|
| |||
4 | ||| X1 Y1 Z1
5 | ||| X2 Y2 Z2
| |||____^__-__- `Z` label
| ||_____|__|
| |______| `Y` is a good letter too
| `X` is a good letter
|
note: bar
--> test.rs:4:3
|
4 | / X1 Y1 Z1
5 | | X2 Y2 Z2
6 | | X3 Y3 Z3
| |__________^
= note: bar
= note: baz
note: qux
--> test.rs:4:3
|
4 | X1 Y1 Z1
| ^^^^^^^^
```
After:

Before:

2024-11-11 00:00:58 +00:00
..
2024-04-12 12:59:40 +09:00
2024-08-04 00:11:16 +08:00
2024-07-12 03:02:57 +00:00
2024-06-19 00:27:41 +02:00
2024-10-26 11:35:56 +08:00
2024-10-28 14:20:28 +11:00
2024-07-18 20:08:38 +00:00
2024-09-12 21:27:44 -04:00
2024-07-18 19:23:42 +00:00
2024-10-06 01:44:59 +00:00
2024-08-01 13:11:24 +00:00
2024-10-30 16:47:47 -07:00
2024-07-18 19:23:42 +00:00
2024-11-10 23:57:18 +01:00
2024-07-12 03:02:57 +00:00
2024-07-07 17:11:04 +02:00
2024-07-07 17:11:04 +02:00
2024-09-18 20:37:56 +02:00
2024-10-06 01:44:59 +00:00
2023-01-11 09:32:08 +00:00
2024-09-22 23:29:25 +03:00
2024-09-22 23:29:25 +03:00
2024-07-11 00:00:03 -04:00
2024-07-11 00:00:03 -04:00
2024-07-25 17:01:32 +08:00
2024-05-22 19:47:32 +08:00
2024-07-12 03:02:57 +00:00
2024-07-18 20:08:38 +00:00
2024-07-16 12:06:25 -04:00
2024-07-16 12:06:25 -04:00
2024-07-12 03:02:57 +00:00
2024-04-12 12:59:40 +09:00
2024-07-18 20:08:38 +00:00
2024-07-12 03:02:57 +00:00
2024-07-12 03:02:57 +00:00
2024-06-04 14:19:42 -03:00
2024-06-04 14:19:42 -03:00
2024-05-11 15:49:51 -07:00
2024-05-11 15:49:51 -07:00
2024-04-22 17:47:35 +02:00
2024-04-22 17:47:35 +02:00
2024-07-12 03:02:57 +00:00
2024-09-06 23:07:45 -04:00
2024-07-08 10:04:03 +04:00
2024-07-08 10:04:03 +04:00
2024-07-12 03:02:57 +00:00
2024-02-16 20:02:50 +00:00
2024-10-11 11:30:08 -04:00
2024-10-11 11:30:08 -04:00
2024-07-12 03:02:57 +00:00
2024-07-12 03:02:57 +00:00
2024-07-11 12:12:00 +04:00
2024-07-11 12:12:00 +04:00
2024-07-12 03:02:57 +00:00
2024-07-12 03:02:57 +00:00
2024-07-12 03:02:57 +00:00
2024-11-03 18:59:31 +00:00
2023-11-24 19:15:52 +01:00
2024-08-04 00:11:16 +08:00
2024-08-04 00:11:16 +08:00
2024-07-12 03:02:57 +00:00
2024-04-21 15:43:43 -03:00
2024-04-21 15:43:43 -03:00
2024-04-21 15:43:43 -03:00
2024-04-21 15:43:43 -03:00
2024-07-12 03:02:57 +00:00
2024-07-12 03:02:57 +00:00
2024-07-12 03:02:57 +00:00
2024-07-12 03:02:57 +00:00
2024-05-18 18:12:18 +02:00
2024-07-12 03:02:57 +00:00
2024-07-12 03:02:57 +00:00
2024-07-12 03:02:57 +00:00
2024-07-12 03:02:57 +00:00
2023-06-15 01:55:37 +00:00
2024-07-12 03:22:32 +00:00
2024-07-12 03:02:57 +00:00
2024-07-12 03:02:57 +00:00
2024-07-25 17:01:32 +08:00
2024-07-25 17:01:32 +08:00
2024-07-08 10:04:03 +04:00
2024-07-08 10:04:03 +04:00
2024-07-08 10:04:03 +04:00
2024-07-08 10:04:03 +04:00
2024-07-08 10:04:03 +04:00
2024-07-08 10:04:03 +04:00
2024-07-08 10:04:03 +04:00
2024-07-08 10:04:03 +04:00
2024-07-08 10:04:03 +04:00
2024-07-08 10:04:03 +04:00
2024-07-08 10:04:03 +04:00
2024-07-08 10:04:03 +04:00
2024-07-08 10:04:03 +04:00
2024-07-08 10:04:03 +04:00
2024-07-12 03:02:57 +00:00
2024-10-11 11:30:08 -04:00
2024-10-11 11:30:08 -04:00
2024-07-12 03:02:57 +00:00
2024-03-22 17:25:57 +01:00
2024-07-18 20:08:38 +00:00
2024-07-18 20:08:38 +00:00
2024-10-06 01:44:59 +00:00
2024-10-06 01:44:59 +00:00
2024-10-06 01:44:59 +00:00
2024-07-12 03:02:57 +00:00
2024-07-12 03:02:57 +00:00
2024-07-12 03:02:57 +00:00
2024-07-12 03:02:57 +00:00
2024-07-16 12:06:25 -04:00
2024-07-16 12:06:25 -04:00
2024-07-18 20:08:38 +00:00
2024-07-12 03:02:57 +00:00
2024-10-29 16:26:57 +00:00
2024-07-18 18:20:35 +00:00
2024-07-11 20:39:24 +00:00
2024-08-09 05:52:53 +00:00
2024-08-09 05:52:53 +00:00
2024-05-20 19:55:59 -07:00
2024-07-18 19:23:42 +00:00
2024-06-17 22:35:25 -04:00
2024-07-12 03:02:57 +00:00
2024-07-12 03:02:57 +00:00
2024-07-12 03:02:57 +00:00
2024-07-12 03:02:57 +00:00
2024-09-25 13:26:48 +02:00
2024-04-12 12:59:40 +09:00
2024-04-12 12:59:40 +09:00
2024-04-12 12:59:40 +09:00
2024-09-21 20:29:22 +03:00
2024-09-21 20:29:22 +03:00
2024-09-21 20:29:22 +03:00
2024-09-21 20:07:52 +03:00
2024-09-21 20:07:52 +03:00
2024-09-21 20:07:52 +03:00
2024-07-18 20:08:38 +00:00
2024-07-18 20:08:38 +00:00
2024-07-12 03:02:57 +00:00
2024-07-18 20:08:43 +00:00
2024-07-18 20:08:38 +00:00
2024-07-12 03:02:57 +00:00
2024-07-12 03:02:57 +00:00
2024-07-23 00:29:39 -03:00
2024-07-23 00:29:39 -03:00
2024-07-23 00:29:39 -03:00
2024-07-12 03:02:57 +00:00
2024-07-18 20:08:38 +00:00
2024-10-30 16:47:47 -07:00
2024-10-30 16:47:47 -07:00
2024-10-30 16:47:47 -07:00
2024-10-30 16:47:47 -07:00
2024-06-01 20:57:15 +02:00
2024-06-01 20:57:15 +02:00
2024-06-22 23:30:31 -07:00
2024-06-22 23:30:31 -07:00