diff options
| author | Martin Haug <mhaug@live.de> | 2022-02-23 13:57:15 +0100 |
|---|---|---|
| committer | Martin Haug <mhaug@live.de> | 2022-02-23 14:50:38 +0100 |
| commit | 4c8634c600ad0bba03ccdf884b32f234ecbff30c (patch) | |
| tree | bef1e56ebe6533accc5a1e69ed7863d72b336789 /src/parse/resolve.rs | |
| parent | 20ac96f27a2e06b985abc1c95049c32c2b88ef5d (diff) | |
Early stop for falling indents.
Fix code edits and at_start handling.
Also fix dedenting for multi-byte chars in raw blocks.
Diffstat (limited to 'src/parse/resolve.rs')
| -rw-r--r-- | src/parse/resolve.rs | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/parse/resolve.rs b/src/parse/resolve.rs index e15ae339..0d4cf071 100644 --- a/src/parse/resolve.rs +++ b/src/parse/resolve.rs @@ -89,7 +89,12 @@ fn trim_and_split_raw(column: usize, mut raw: &str) -> (String, bool) { // Dedent based on column, but not for the first line. for line in lines.iter_mut().skip(1) { - let offset = line.chars().take(column).take_while(|c| c.is_whitespace()).count(); + let offset = line + .chars() + .take(column) + .take_while(|c| c.is_whitespace()) + .map(char::len_utf8) + .sum(); *line = &line[offset ..]; } |
