今回はRustで標準入力の内容を標準出力に出力してみます。
しかし、ただ標準出力に出すだけでは物足りないので、行番号を表示して、文字の色を変えてみます。
use std::io;
fn main() {
let mut line = String::new();
let mut n = 0;
while io::stdin().read_line(&mut line).unwrap() > 0 {
print!("{:>5} : \x1b[{}m{}\x1b[39m", n + 1, 31 + n % 7, line);
line.clear();
n += 1;
}
println!("{:>5} : ", n + 1);
}
実行するとこんな感じになります。
今回のプログラムの注意点としては、、、
- read_lineで得られるlineは何もしないと、どんどん文字が連結されるので、clearを忘れないように。
- 最後の「\x1b[39m」を忘れると、コマンド実行後に色が戻らなくなる。
たいしたプログラムでは無いですが、文字の色が変えられるとちょっとテンション上がりますね。