A new option that has less stress on the left pinky

This commit is contained in:
Nikolay Nemshilov 2016-12-12 10:45:39 +11:00
parent 9308fb4869
commit 21a61717b0
4 changed files with 21 additions and 8 deletions

View file

@ -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...");

View file

@ -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(":");

View file

@ -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;

View file

@ -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;
}
};