@@ -1,5 +1,4 @@
11use std::io::{self, Write};
2−use std::mem::swap;
32
43use app::Config;
54use assets::HighlightingAssets;
@@ -7,7 +6,6 @@ use errors::*;
76use inputfile::{InputFile, InputFileReader};
87use line_range::{LineRanges, RangeCheckResult};
98use output::OutputType;
10−use preprocessor::replace_nonprintable;
119use printer::{InteractivePrinter, Printer, SimplePrinter};
1210
1311pub struct Controller<'a> {
@@ -66,14 +64,7 @@ impl<'b> Controller<'b> {
6664 input_file: InputFile<'a>,
6765 ) -> Result<()> {
6866 printer.print_header(writer, input_file)?;
69− self.print_file_ranges(
70− printer,
71− writer,
72− reader,
73− &self.config.line_ranges,
74− self.config.show_nonprintable,
75− self.config.tab_width,
76− )?;
67+ self.print_file_ranges(printer, writer, reader, &self.config.line_ranges)?;
7768 printer.print_footer(writer)?;
7869
7970 Ok(())
@@ -85,20 +76,11 @@ impl<'b> Controller<'b> {
8576 writer: &mut Write,
8677 mut reader: InputFileReader,
8778 line_ranges: &LineRanges,
88− show_nonprintable: bool,
89− tab_width: usize,
9079 ) -> Result<()> {
9180 let mut line_buffer = Vec::new();
92− let mut line_buffer_processed = Vec::new();
93−
9481 let mut line_number: usize = 1;
9582
9683 while reader.read_line(&mut line_buffer)? {
97− if show_nonprintable {
98− replace_nonprintable(&mut line_buffer, &mut line_buffer_processed, tab_width);
99− swap(&mut line_buffer, &mut line_buffer_processed);
100− }
101−
10284 match line_ranges.check(line_number) {
10385 RangeCheckResult::OutsideRange => {
10486 // Call the printer in case we need to call the syntax highlighter