Skip to content

Commit 08d9130

Browse files
authored
Merge pull request #114 from CephalonRho/limit-lang
Limit shown languages to 6
2 parents f5296f2 + 9f080e4 commit 08d9130

File tree

1 file changed

+13
-1
lines changed

1 file changed

+13
-1
lines changed

Diff for: src/info.rs

+13-1
Original file line numberDiff line numberDiff line change
@@ -75,7 +75,19 @@ impl std::fmt::Display for Info {
7575
let title = "Languages: ";
7676
let pad = " ".repeat(title.len());
7777
let mut s = String::from("");
78-
for (cnt, language) in self.languages.iter().enumerate() {
78+
let languages: Vec<(String, f64)> = {
79+
let mut iter = self.languages.iter().map(|x| (format!("{}", x.0), x.1));
80+
if self.languages.len() > 6 {
81+
let mut languages = iter.by_ref().take(6).collect::<Vec<_>>();
82+
let other_sum = iter.fold(0.0, |acc, x| acc + x.1);
83+
languages.push(("Other".to_owned(), other_sum));
84+
languages
85+
} else {
86+
iter.collect()
87+
}
88+
};
89+
90+
for (cnt, language) in languages.iter().enumerate() {
7991
let formatted_number = format!("{:.*}", 2, language.1);
8092
if cnt != 0 && cnt % 3 == 0 {
8193
s = s + &format!("\n{}{} ({} %) ", pad, language.0, formatted_number);

0 commit comments

Comments
 (0)