A new option that has less stress on the left pinky
This commit is contained in:
parent
9308fb4869
commit
21a61717b0
4 changed files with 21 additions and 8 deletions
|
@ -5,7 +5,7 @@ const { text, trigrams, docs, code } = require("./data");
|
|||
const { QWERTY, Workman, Colemak, Dvorak } = require('./presets');
|
||||
|
||||
const data = text;
|
||||
const runner = new Runner(data, { effortLimit: 20000000 });
|
||||
const runner = new Runner(data, { effortLimit: 40000000 });
|
||||
// const symbols = ['<','\\[','\\{','`','~','\!','@','\$','%','\\^','&','\\*','\\(','-','_','\\+','\\=','\\|', '\\\\','\\/'];
|
||||
// const entries = symbols.map(symbol => (
|
||||
// [symbol, data.match(new RegExp(symbol, "g")).length]
|
||||
|
@ -48,8 +48,21 @@ const Halmak21 = new Layout("Halmak21", `
|
|||
F M V W / Y G X K P
|
||||
`);
|
||||
|
||||
const Halmak22 = new Layout("Halmak22", `
|
||||
\` 1 2 3 4 5 6 7 8 9 0 - =
|
||||
~ ! @ # $ % ^ & * < > _ +
|
||||
w l r b z ; q u d j [ ] \\
|
||||
W L R B Z : Q U D J { } |
|
||||
s h n t , . a e o i ' \\n
|
||||
S H N T ( ) A E O I " \\n
|
||||
f m v c ? g p x k y
|
||||
F M V C / G P X K Y
|
||||
`);
|
||||
|
||||
|
||||
|
||||
const LAYOUTS = [
|
||||
QWERTY, Workman, Colemak, Dvorak, Halmak1, Halmak2, Halmak21
|
||||
QWERTY, Workman, Colemak, Dvorak, Halmak1, Halmak2, Halmak21, Halmak22
|
||||
];
|
||||
|
||||
console.log("Running measurements...");
|
||||
|
|
|
@ -5,9 +5,9 @@ const { QWERTY } = require("./presets");
|
|||
const QWERTY_SEQUENCE = QWERTY.toSequence();
|
||||
const LOCK_POSITIONS = {}; `
|
||||
\`:\` 1:1 2:2 3:3 4:4 5:5 6:6 7:7 8:8 9:9 0:0 -:- =:=
|
||||
l:w r:e ;:y u:i d:o [:[ ]:] \\:\\
|
||||
s:a h:s n:d t:f ,:g .:h a:j e:k o:l i:; ':' \\n:\\n
|
||||
/:b
|
||||
l:w r:e ;:y u:i d:o [:[ ]:] \\:\\
|
||||
s:a h:s n:d t:f ,:g .:h a:j e:k o:l i:; ':' \\n:\\n
|
||||
c:v /:b y:/
|
||||
|
||||
`.trim().split(/\s+/).map(i => {
|
||||
const [key, value] = i.split(":");
|
||||
|
|
|
@ -51,13 +51,13 @@ module.exports = class Runner {
|
|||
// various hand movement overheads
|
||||
if (hand !== false && key !== prevKey) { // skipping repeats and spaces
|
||||
if (finger === prevKey.finger) { // same finger usage penalty
|
||||
const prevEffort = prevKey.effort === 0 ? 1 : prevKey.effort;
|
||||
const prevEffort = prevKey.effort + 1;
|
||||
const overhead = prevEffort * sameFingerPenalty;
|
||||
// console.log(' same finger overhead', overhead);
|
||||
effort += overhead;
|
||||
sameFingerOverheads += overhead;
|
||||
} else if (hand === prevKey.hand) { // same hand usage penalty
|
||||
const prevEffort = prevKey.effort === 0 ? 1 : prevKey.effort;
|
||||
const prevEffort = prevKey.effort + 1;
|
||||
const overhead = prevEffort * sameHandPenalty;
|
||||
// console.log(' same hand overhead', overhead);
|
||||
effort += overhead;
|
||||
|
|
|
@ -90,6 +90,6 @@ module.exports = class Stats {
|
|||
|
||||
get total() {
|
||||
const overhead_reduction_bonus = this.position/(this.overheads / this.effort)
|
||||
return this.position// + overhead_reduction_bonus / 10;
|
||||
return this.position// * this.evenness / 100;// + overhead_reduction_bonus / 10;
|
||||
}
|
||||
};
|
||||
|
|
Loading…
Reference in a new issue