]> git.scottworley.com Git - tablify/blobdiff - src/lib.rs
Center text in each cell
[tablify] / src / lib.rs
index efdb7d812ec7c98724518d883f214b40871601a3..c261c782e8a0e69e478f61d04fe162687bf21c7b 100644 (file)
@@ -9,11 +9,12 @@ const HEADER: &str = "<!DOCTYPE html>
   <meta charset=\"utf-8\">
   <meta name=\"viewport\" content=\"width=device-width, initial-scale=1\">
   <style>
+    td { text-align: center; }
     /* h/t https://wabain.github.io/2019/10/13/css-rotated-table-header.html */
     th, td { white-space: nowrap; }
     th { text-align: left; font-weight: normal; }
     table { border-collapse: collapse }
-    tr.key > th { height: 8em; vertical-align: bottom; line-height: 1 }
+    tr.key > th { height: 10em; vertical-align: bottom; line-height: 1 }
     tr.key > th > div { width: 1em; }
     tr.key > th > div > div { width: 5em; transform-origin: bottom left; transform: translateX(1em) rotate(-65deg) }
     td { border: thin solid gray; }
@@ -137,7 +138,7 @@ fn column_counts(rows: &[RowInput]) -> Vec<(usize, String)> {
         .into_iter()
         .map(|(col, n)| (n, col))
         .collect();
-    counts.sort();
+    counts.sort_unstable_by(|(an, acol), (bn, bcol)| bn.cmp(an).then(acol.cmp(bcol)));
     counts
 }
 fn column_order(rows: &[RowInput]) -> Vec<String> {
@@ -353,7 +354,7 @@ mod tests {
                     .collect::<Result<Vec<_>, _>>()
                     .unwrap()
             ),
-            vec![(1, String::from("bar")), (2, String::from("baz"))]
+            vec![(2, String::from("baz")), (1, String::from("bar"))]
         );
         assert_eq!(
             column_counts(
@@ -361,7 +362,7 @@ mod tests {
                     .collect::<Result<Vec<_>, _>>()
                     .unwrap()
             ),
-            vec![(1, String::from("bar")), (2, String::from("baz"))]
+            vec![(2, String::from("baz")), (1, String::from("bar"))]
         );
         assert_eq!(
             column_counts(
@@ -369,7 +370,7 @@ mod tests {
                     .collect::<Result<Vec<_>, _>>()
                     .unwrap()
             ),
-            vec![(1, String::from("bar")), (2, String::from("baz"))]
+            vec![(2, String::from("baz")), (1, String::from("bar"))]
         );
     }