/** Which finger types the key that is wanted right now, said in words. * * The keyboard shows *where*; this shows *which finger*, because at six the failure mode * is not finding the key, it is finding it with the wrong finger and building the habit * that the whole exercise exists to prevent. * * When the target is a capital it also names the Shift hand - the opposite one, which is * the single rule that separates touch typing from a pinky cramp. */ import { fingerOf, needsShift, shiftHandFor } from "../lib/fingers"; interface Props { nextKey: string | null; } export function HandHint({ nextKey }: Props) { if (!nextKey) return null; const finger = fingerOf(nextKey); if (!finger) return null; const shiftHand = needsShift(nextKey) ? shiftHandFor(nextKey) : null; return (
{finger.label} {shiftHand && ( + Umschalttaste {shiftHand} )}
); }