nexedit/presenters/
error.rs

1use crate::errors::*;
2use crate::view::{Colors, StatusLineData, Style, View};
3use scribe::Workspace;
4
5pub fn display(workspace: &mut Workspace, view: &mut View, error: &Error) -> Result<()> {
6    let data;
7    let mut presenter = view.build_presenter().unwrap();
8
9    if let Some(buffer) = workspace.current_buffer.as_ref() {
10        data = buffer.data();
11        let _ = presenter.print_buffer(buffer, &data, &workspace.syntax_set, None, None);
12    }
13
14    presenter.print_status_line(&[StatusLineData {
15        content: error.description().to_string(),
16        style: Style::Bold,
17        colors: Colors::Warning,
18    }]);
19
20    presenter.present()?;
21
22    Ok(())
23}