aboutsummaryrefslogtreecommitdiff
path: root/srchr
diff options
context:
space:
mode:
authortslil clingman <tslil@posteo.de>2022-09-29 23:19:29 +0200
committertslil clingman <tslil@posteo.de>2022-09-29 23:19:29 +0200
commit55206dfdc7482acbd2e2b4dedf285c24e638f925 (patch)
treeed96b7602fa00bc4381bdbb9411b27b68b702765 /srchr
parentab985ecb4cb6bcc8a65ff79aa746a1f80fa4b2f4 (diff)
better reporting, record search result in config.rs
Diffstat (limited to 'srchr')
-rw-r--r--srchr/src/config.rs16
-rw-r--r--srchr/src/evaluation.rs1
-rw-r--r--srchr/src/layout.rs2
-rw-r--r--srchr/src/main.rs6
4 files changed, 22 insertions, 3 deletions
diff --git a/srchr/src/config.rs b/srchr/src/config.rs
index 99afa4c..6409ef7 100644
--- a/srchr/src/config.rs
+++ b/srchr/src/config.rs
@@ -1,3 +1,19 @@
+// With the below parameters and the supplied corpus searches seem to converge on the following
+
+// J , H G Q B C O U '
+// S A N T V F D E I R
+// X . L M K P W / Y Z
+//
+// Percent per key:
+// 0.1 1.8 6.0 1.9 0.1 1.5 2.3 7.4 2.8 1.0
+// 6.0 7.7 6.6 8.6 0.9 2.1 4.3 11.9 6.6 5.5
+// 0.1 1.2 4.0 2.6 0.8 1.6 2.3 0.2 2.0 0.1
+//
+// Finger usage: 6.29%, 10.70%, 16.56%, 14.88%, 14.05%, 19.47%, 11.45%, 6.60%
+// Hand usage: 48.43% vs 51.57%
+// Same finger bigrams: 0.000%, 0.029%, 0.092%, 0.032%, 0.042%, 0.096%, 0.113%, 0.031%
+// Total sfb: 0.43% (43414)
+
// Search parameters
pub const CORPUS_FILE_NAME: &str = "corpus.txt";
diff --git a/srchr/src/evaluation.rs b/srchr/src/evaluation.rs
index 9faeb88..bbbe364 100644
--- a/srchr/src/evaluation.rs
+++ b/srchr/src/evaluation.rs
@@ -68,7 +68,6 @@ impl Evaluation {
keypress[i] = corpus.get_character_count(c);
}
- // TODO: We make assumptions about NUM_KEYS here
for i in 0..8 {
let ind = if i < 4 { i } else { i + 2 };
diff --git a/srchr/src/layout.rs b/srchr/src/layout.rs
index d30e38b..a20e130 100644
--- a/srchr/src/layout.rs
+++ b/srchr/src/layout.rs
@@ -129,6 +129,8 @@ impl Layout {
wcol.swap(0, 1);
if N == 6 {
wcol.swap(3, 4);
+ wcol.swap(0, 2);
+ wcol.swap(3, 5);
}
(wcol.into_iter().map(|(k, _)| k).collect(), weight)
})
diff --git a/srchr/src/main.rs b/srchr/src/main.rs
index 46ec5d6..7c0ede9 100644
--- a/srchr/src/main.rs
+++ b/srchr/src/main.rs
@@ -104,9 +104,11 @@ fn main() {
count += 1;
if count > 65535 {
let duration = current.elapsed();
+ let rps = count as f32 / duration.as_millis() as f32 * 1000.0;
eprint!(
- "\u{001b}[2K\u{001b}[1000D{} layouts/s",
- (count * NUM_CONTESTANTS) as f32 / duration.as_millis() as f32 * 1000.0
+ "\u{001b}[2K\u{001b}[1000D{} layouts/s and {} tournaments/s",
+ rps * NUM_CONTESTANTS as f32,
+ rps
);
current = Instant::now();
count = 0;