do not fail if len(rendered_lines) is == 1
also handle more rendered-lines
This commit is contained in:
parent
f359aa2762
commit
9d151a71c0
1 changed files with 14 additions and 10 deletions
|
@ -475,30 +475,34 @@ impl FileInfo {
|
|||
while let Some(line) = next_line {
|
||||
if line.annotations.is_empty() { break; }
|
||||
|
||||
let mut rendered_line = self.render_line(line);
|
||||
let mut rendered_lines = self.render_line(line);
|
||||
assert!(!rendered_lines.is_empty());
|
||||
if old_school {
|
||||
match self.primary_span {
|
||||
Some(span) => {
|
||||
let lo = codemap.lookup_char_pos(span.lo);
|
||||
rendered_line[0].text.insert(0, StyledString {
|
||||
rendered_lines[0].text.insert(0, StyledString {
|
||||
text: format!(":{} ", lo.line),
|
||||
style: Style::LineAndColumn,
|
||||
});
|
||||
rendered_line[0].text.insert(0, StyledString {
|
||||
rendered_lines[0].text.insert(0, StyledString {
|
||||
text: lo.file.name.clone(),
|
||||
style: Style::FileNameStyle,
|
||||
});
|
||||
let gap_amount = rendered_line[0].text[0].text.len() +
|
||||
rendered_line[0].text[1].text.len();
|
||||
rendered_line[1].text.insert(0, StyledString {
|
||||
text: vec![" "; gap_amount].join(""),
|
||||
style: Style::NoStyle
|
||||
});
|
||||
let gap_amount =
|
||||
rendered_lines[0].text[0].text.len() +
|
||||
rendered_lines[0].text[1].text.len();
|
||||
for i in 1..rendered_lines.len() {
|
||||
rendered_lines[i].text.insert(0, StyledString {
|
||||
text: vec![" "; gap_amount].join(""),
|
||||
style: Style::NoStyle
|
||||
});
|
||||
}
|
||||
}
|
||||
_ =>()
|
||||
}
|
||||
}
|
||||
output.append(&mut rendered_line);
|
||||
output.append(&mut rendered_lines);
|
||||
next_line = lines_iter.next();
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue