Enable pager in cton-util.

This commit is contained in:
Dan Gohman
2017-09-02 08:06:55 -07:00
parent 8dd46054a5
commit 54e4ab71d9
2 changed files with 21 additions and 0 deletions

View File

@@ -26,6 +26,9 @@ num_cpus = "1.5.1"
tempdir="0.3.5"
term = "0.4.6"
[target.'cfg(unix)'.dependencies]
pager = "0.13.0"
[workspace]
# Enable debug assertions and parallel compilation when building cretonne-tools

View File

@@ -10,11 +10,17 @@ extern crate num_cpus;
extern crate tempdir;
extern crate term;
#[cfg(unix)]
extern crate pager;
use cretonne::VERSION;
use docopt::Docopt;
use std::io::{self, Write};
use std::process;
#[cfg(unix)]
use pager::Pager;
mod utils;
mod filetest;
mod cat;
@@ -107,7 +113,19 @@ fn cton_util() -> CommandResult {
}
}
#[cfg(unix)]
fn enable_pager() {
Pager::new().skip_on_notty().setup();
}
#[cfg(not(unix))]
fn enable_pager() {
// For now, pager only supports unix-type platforms.
}
fn main() {
enable_pager();
if let Err(mut msg) = cton_util() {
if !msg.ends_with('\n') {
msg.push('\n');