Okay, it’s been nearly 6 years since this thread’s seen daylight. Time to bump it with a new AutoHotKey script. 
tl;dr:
This script enables ‘Freewrite Mode’, which will turn your feature-rich Scrivener software into a low-tech “distraction-free” editor that only supports backspace and a select few shortcuts.
Backstory:
The Astrohaus Freewrite is a $600 ‘smart’ typewriter with the following features: 10 line eInk screen, Cherry MX Brown mechanical keyboard, and cloud backups. It adopts an aggressively “distraction-free” “intended only for first drafts” “Hemingway mode” posture, in that the only editing capability it supports is the backspace key. The assumption is that you’ll use the Freewrite to bang out your first draft, and then use some other tool like Scrivener for subsequent drafts.
I have to admit, I’ve always been intrigued by the thing. I can see the use for it for someone like me. Once I get started, I can focus on a task for hours, but it’s the getting started part where I sometimes have to trick myself into cooperating with the flow. However, I couldn’t imagine trying to integrate yet another device into my workflow. Not to mention that price tag for a one-trick pony.
But–I’ve been learning AHK and looking for things to do with it, and the other day I realized–Hey! I already have a Cherry MX Brown mech keyboard, and cloud backups, and I can set Scriv Comp Mode to only view 10 lines–and dark mode is kinda like eInk, right?–so all I have to do to turn my $50 copy of Scrivener into a $600 Freewrite is disable a few keys with AHK!
The Script:
So that’s what this script does. All keys are disabled in Scrivener but the typing and backspace keys. Press F10 to toggle Freewrite Mode on and off.
If you prefer backspace disabled, simply tweak the two lines explicitly called out in the script. That will give you the full Hemingway “only move forward” treatment. 
Ctrl-S Save and Shift-F6 Sync with External folder are allowed, as backups are NEVER distractions.
I’ve also allowed myself Ctrl-U underline for emphasis. Feel free to enable or disable whatever you like.
Breaking this into two scripts greatly simplified the code. It also minimized interaction with Scrivener when Freewrite Mode is off, while maximizing disruption when Freewrite Mode is on. 
Be sure to name the scripts as noted below–Freewrite Mode.ahk and Freewrite Mode_proc.ahk–and keep them both in the same folder. Launch script Freewrite Mode.ahk by hand or add a shortcut to it in your Windows Startup folder. That script does nothing but monitor for F10, so it won’t impact Scrivener.
How to use it:
Get Scrivener set up as you prefer for heads down drafting. (I like Comp Mode with a reduced vertical window.) Put the cursor in the Scrivener editor where you want to start writing. Press F10 and off you go.
This script disables keys and shortcuts when the Scrivener main window is the active window. To navigate to another program, use Win+Tab or Alt+Tab. Or just press F10 to turn Freewrite Mode off.
Note that you can navigate to Quick Ref panels, so if you’ve launched Quick Ref panels prior to pressing F10, you can view notes or research while the main editor is locked down.
Enjoy!
Freewrite Mode.ahk
#NoEnv ; Recommended for performance and compatibility with future AutoHotkey releases.
#Warn ; Enable warnings to assist with detecting common errors.
SendMode Input ; Recommended for new scripts due to its superior speed and reliability.
SetWorkingDir %A_ScriptDir% ; Ensures a consistent starting directory.
;--------------------------------------------------------------------------
SetTitleMatchMode, 2
#IfWinActive, Scrivener
;--------------------------------------------------------------------------
; F10 engages Freewrite Mode
f10::
RunWait, Freewrite Mode_proc.ahk
return
Freewrite Mode_proc.ahk
;--------------------------------------------------------------------------
; Auto-Execute section
;--------------------------------------------------------------------------
#NoEnv ; Recommended for performance and compatibility with future AutoHotkey releases.
#Warn ; Enable warnings to assist with detecting common errors.
SendMode Input ; Recommended for new scripts due to its superior speed and reliability.
SetWorkingDir %A_ScriptDir% ; Ensures a consistent starting directory.
SetTitleMatchMode, 2
SetStoreCapsLockMode, Off ; Necessary to allow capslock
#IfWinActive, Scrivener
;--------------------------------------------------------------------------
; Progress bars use Scriv html Editor & Text colors
; File > Options > Appearance > Main Editor > Colors
;
; Default - Window color = CWffffff / Text Color = CT000000
; Dark Mode - Window color = CW3f3f3f / Text Color = CTFFFFFF
; Mellow Yellow - Window color = CW020202 / Text Color = CTffff00
; Solarized Dark - Window color = CW002c36 / Text Color = CTDEDEDE
; Midnight - Window color = CW02141f / Text Color = CTffffff
; Download Midnight here: https://forum.literatureandlatte.com/t/scrivener-3-1-accessibility/119430
CW_color := "CW02141f"
CT_color := "CTffffff"
;--------------------------------------------------------------------------
Progress, b2 fs16 zh0 %CW_color% %CT_color%, Freewrite Mode ON
Sleep, 750
Progress, Off
;--------------------------------------------------------------------------
; F10 disables Freewrite Mode
;--------------------------------------------------------------------------
f10::
Progress, b2 fs16 zh0 %CW_color% %CT_color%, Freewrite Mode OFF
Sleep, 750
Progress, Off
ExitApp
return
;--------------------------------------------------------------------------
; Shortcuts to allow
;--------------------------------------------------------------------------
$^u::Send ^u ; Allow Ctrl-U underline (to disable underline, comment out this line)
$^s::Send ^s ; Allow Ctrl-S manual save
$+f6::Send +{f6} ; Allow Sync with External Folder Now
; Allow shift + letters
$+a::Send +a
$+b::Send +b
$+c::Send +c
$+d::Send +d
$+e::Send +e
$+f::Send +f
$+g::Send +g
$+h::Send +h
$+i::Send +i
$+j::Send +j
$+k::Send +k
$+l::Send +l
$+m::Send +m
$+n::Send +n
$+o::Send +o
$+p::Send +p
$+q::Send +q
$+r::Send +r
$+s::Send +s
$+t::Send +t
$+u::Send +u
$+v::Send +v
$+w::Send +w
$+x::Send +x
$+y::Send +y
$+z::Send +z
; Allow shift + symbols/numbers
$+-::Send +{-}
$+;::Send +{;}
$+/::Send +{/}
$+1::Send +1
$+2::Send +2
$+3::Send +3
$+4::Send +4
$+5::Send +5
$+6::Send +6
$+7::Send +7
$+8::Send +8
$+9::Send +9
$+0::Send +0
;--------------------------------------------------------------------------
; Shortcuts to disable
;--------------------------------------------------------------------------
$^Backspace::Send {Backspace} ; Allow backspace, but not Ctrl-backspace (To disable backspace, comment out this line)
; Disable modifiers + letters
$*a::Send a
$*b::Send b
$*c::Send c
$*d::Send d
$*e::Send e
$*f::Send f
$*g::Send g
$*h::Send h
$*i::Send i
$*j::Send j
$*k::Send k
$*l::Send l
$*m::Send m
$*n::Send n
$*o::Send o
$*p::Send p
$*q::Send q
$*r::Send r
$*s::Send s
$*t::Send t
$*u::Send u
$*v::Send v
$*w::Send w
$*x::Send x
$*y::Send y
$*z::Send z
; Disable modifiers + symbols
$*'::Send {'}
$*-::Send {-}
$*"::Send {"}
$*(::Send {(}
$*)::Send {)}
$*,::Send {,}
$*/::Send {/}
$*;::Send {;}
$*[::Send {[}
$*\::Send {\}
$*]::Send {]}
$*^::Send {^}
; $*`::Send {`}
$*{::Send {{}
$*|::Send {|}
$*}::Send {}}
$*~::Send {~}
$*+::Send {+}
$*<::Send {<}
$*=::Send {=}
$*>::Send {>}
; Disable modifiers + numbers
; $*1::Send 1
$*2::Send 2
$*3::Send 3
$*4::Send 4
$*5::Send 5
$*6::Send 6
$*7::Send 7
$*8::Send 8
$*9::Send 9
$*0::Send 0
;--------------------------------------------------------------------------
; Keys to disable
;--------------------------------------------------------------------------
*Home::
*End::
*PgUp::
*PgDn::
*Up::
*Down::
*Left::
*Right::
*WheelDown::
*WheelUp::
*WheelLeft::
*WheelRight::
*LButton::
*RButton::
*XButton1::
*XButton2::
; *Backspace:: ; To disable backspace, remove the comment on this line
*Delete::
*Insert::
*Ctrl::
*LCtrl::
*RCtrl::
*Alt::
*LAlt::
*RAlt::
*AppsKey::
*Escape::
*f1::
*f2::
*f3::
*f4::
*f5::
*f6::
*f7::
*f8::
*f9::
*f10::
*f11::
*f12::
*f13::
*f14::
*f15::
*f16::
*f17::
*f18::
*f19::
*f20::
*f21::
*f22::
*f23::
*f24::
return