Privacy
⌨️ 2wL VIRTUAL KEYBOARD
Release: 2wL T-800 beta 1.0 (Help → About)
On-screen keyboard for Windows — accessibility, gaming compatibility, dual clipboard, word prediction, and heavy theming
What is 2wL?

2wL is a free Windows on-screen keyboard: click keys into the foreground app, lock modifiers with right-click, manage two clipboard slots (with session paste recall), optional split keyboard, word prediction, Ext (Latin Extended-A), emoji bar, and seven Game modes for stubborn apps. Not a hack or anti-cheat tool — designed to complement the desktop. Full detail ships in 2wLhelp.txt (refreshed from the EXE each launch).


⬇️ DOWNLOAD NOW
Download 2wL.exe

Download: get 2wL.exe (portable — no 2wL_Setup.exe). Put it anywhere and double-click. Settings stay in %APPDATA%\2wL\.

Note: If 2wL becomes squirrely, unresponsive, or crashes continually, close 2wL, delete the %APPDATA%\2wL folder, then start 2wL again.

⚠️ Important! Read Instructions Below

✅ Windows 10/11 Compatible

✅ Download and run 2wL.exe (portable)

✅ Small footprint (~1 MB app + small INI/learning files)

✅ Always free — no ads, no telemetry

2wL is always free. If it helps you, an optional tip is appreciated — never required.

25+
Themes
Ext
Latin Ext-A panel
0
Ads
100%
Free

✨ KEY FEATURES
🎨
25 built-in themes + custom
Named schemes (e.g. Matrix Green default, Futuristic Blue, Neon Purple). Save any look as a custom theme in 2wL.ini via Settings — survives Reset to Defaults.
🔧
Appearance & sound
Ghost opacity, optional gradient and Bling, hover highlight, load custom .ttf fonts. Tick sounds are synthesized (no WAV files) with volume and presets on the Senses tab; themes and layout live on Insight.
🎮
Game modes (1–7)
Seven options change how keys are synthesized (SendInput scan codes, low-level hook, PostMessage path, DirectInput8, hold-only / repeat tuning, longer initial repeat delay, plus optional timing obfuscation). Enable one at a time and test — see below.
⌨️
Keys, Fn row, NumPad, Ext
QWERTY with optional F1–F12 row and NumPad (NumLock-aware). Ext opens Latin Extended-A characters with paging. Lock modes: single-shot (red), persistent (purple), chord lock (blue, double right-click).
📋
Dual Copybox + recall
Title-bar slots for latest and previous plain-text clipboard; click to paste; clr / hld (HOLD). Double right-click a box (empty or filled) to recall harvested pastes — cycle up to 3 priors per slot (same session).
🔮
Word prediction
Hybrid suggestions (~70% personal history + ~30% static “Google 10k” frequencies), optional custom dictionary. Learning under %APPDATA%\2wL\ — no network. Right-click a suggestion to Promote / Demote / Delete.
🪟
Split keyboard
Settings → Split Keyboard (2) opens two independent windows that share keyboard state — Copybox 1 on the left half, Copybox 2 on the right; title controls work per half.
↔️
Move, resize, elevate
Drag the title bar, resize from the grip. Settings → Above: Run as admin (elevated targets) and optional multi-instance. System tray icon stays available while minimized.
🔒
Private by design
No telemetry; settings and learning data stay local. Help file 2wLhelp.txt is refreshed from the executable each launch.

Always free · no ads. Optional tip if you want: PayPal · Zelle · Cash App


📋 SYSTEM REQUIREMENTS
Minimum Requirements:

📥 HOW TO RUN (PORTABLE)
Quick start (3 steps):
  1. Download 2wL using the button above
  2. Save 2wL.exe anywhere (no installer)
  3. Double-click 2wL.exe — use Settings → Above → Run as admin only when you need to send keys to elevated windows
ℹ️ First-Time Setup:

🎮 QUICK START GUIDE
Basic usage:
  • Left-click a key — sends press+release to the foreground app
  • Settings gear — opens Settings (Insight, Senses, Above)
  • Title bar — drag to move; resize from the grip (right-click grip for keyboard-only move mode)
  • Minimize (_) — hide 2wL; starting another instance brings it back
  • Lock-release (title bar) — same as Settings → All Key Release: drops every locked and chord-locked key
Copybox, Ext, title bar:
  • Copybox 1 / 2 — latest and previous plain-text clipboard; click to paste; clr clears; double right-click clr (when non-empty) for HOLD (hld)
  • Right-click recall — double right-click a copybox (empty or filled) to cycle harvested pastes (up to 3 per slot, same session)
  • Ext — Latin Extended-A panel; double right-click Ext for the larger panel; Pg X-Y pages through the range
  • C:\_ — open command prompt (%ComSpec%); right-click for elevate / PowerShell menu
  • TM — Task Manager; smiley — emoji bar; gear right-click — cog menu (Device Manager, Regedit, etc.)
  • Split Keyboard (2) — two windows; Copybox 1 left / Copybox 2 right
Lock modes (right-click):
  • Single-shot (red) — stays down for the next character only
  • Persistent (purple) — stays down until you right-click again
  • Chord lock (blue)double right-click a key; multiple keys can be chord-locked (e.g. Ctrl+Shift+T)

If Windows Sticky Keys is on, latching can feel odd — 2wL warns on startup and can help turn it off (see help).

🎮 GAME MODES (SETTINGS → SENSES)
Game 1 — Simple Mode

SendInput using scan codes (virtual key zero). Often matches what DirectInput-only games expect (e.g. Elite Dangerous–class titles).

Game 2 — Hook Mode

Low-level keyboard hook (WH_KEYBOARD_LL); injects through it. Installed when first enabled. For apps that read input that way.

Game 3 — Minimal

PostMessage-style path with repeat logic — for picky apps that want WM_KEYDOWN/UP in their queue.

Game 4 — DirectInput

Sends through a DirectInput8 keyboard device — for legacy DirectInput games that ignore SendInput.

Game 5 — Hold Only

Disables auto-repeat while held — one down stroke and matching up when released (pairs with Game 6 for timing).

Game 6 — 1200 ms initial delay

Longer initial repeat delay (1200 ms vs 500 ms) to reduce accidental double actions on touchy surfaces; combine with Game 5 as needed.

Game 7 — Timing obfuscation

Optional small random delay before SendInput key-up (off by default for lowest latency). Not encryption; does not defeat anti-cheat — see 2wLhelp.txt.

💡 Suggested order to try (from help): Game 1 → Game 4 → Game 2 → Game 3 → Game 5 + 6 (try Game 7 only if you need that option). Use Run as admin on the Above tab when the target app is elevated — anti-cheat may still block injection by design.


🎨 CUSTOMIZATION OPTIONS
Appearance (Insight tab):
  • 25 built-in themes + unlimited named custom themes (Save Theme As → CustomTheme_* in 2wL.ini)
  • Button Color / Button Dim — key face hue and brightness
  • Key Color / Key Dim — label color and brightness
  • Ghost slider — window opacity
  • Optional vertical Gradient on keys; Bling (animated rainbow)
  • Load custom .ttf fonts; font size slider
Audio (Senses tab):
  • Synthesized tick presets (Standard, High Pitch, Low Pitch, Click, Tick, Beep Short/Long, Soft, Sharp, Echo, Deep Thud, Low Pop, Bass Snap) — no WAV files
  • Tick volume 0–100%; Test tick button
Layout & input:
  • Function row (toggle Fn or always-on in Settings)
  • NumPad column — NumLock-aware navigation labels when NumLock off
  • Hover highlight toggle
  • Ext — Latin Extended-A (0x01000x017F) with paging
  • Word Prediction — hybrid dictionary + learning; Load Dictionary for custom word list

📝 TRACING EXPLAINED
Optional Debugging Feature

2wL includes an optional trace logging system to help diagnose issues. Tracing is disabled by default. Turn it on under Settings → Senses or Above (same toggles on both tabs).

How Trace Files Work:
📍 File Location:
%APPDATA%\2wL\trace.txt

(Typically: C:\Users\YourName\AppData\Roaming\2wL\)

✅ Benefits:
  • Prevents unlimited disk space growth
  • Keeps recent debugging information available
  • Maximum 2MB total storage used
  • Old logs automatically managed

💡 When to Use Tracing:
Enable tracing only when troubleshooting issues or when asked by support. It records detailed system events to help diagnose problems.


⚙️ COMMAND LINE OPTIONS
Advanced startup switches:

Same flags as documented in 2wLhelp.txt (shipped next to settings and refreshed from the EXE each run).


📝 TROUBLESHOOTING
❓ Squirrely, unresponsive, or crashing continually?

→ Close 2wL, delete the %APPDATA%\2wL folder, then start 2wL again.

❓ Keys not reaching a game or app?

→ Try Game modes one at a time (see order above). If the foreground app is elevated, enable Run as admin on the Above tab. Anti-cheat may still block all synthetic input.

❓ Copybox shows nothing / cleared by mistake?

→ Confirm Enable Copybox / Copybox 2 in Settings. Slots update only for plain text. Double right-click the box to recall harvested pastes (cycle up to 3); see help → COPYBOX → RIGHT-CLICK RECALL.

❓ Sticky Keys warning?

→ Windows Sticky Keys can interfere with lock modes. 2wL warns on startup and can turn Sticky Keys off; or disable in Windows Settings → Accessibility → Keyboard.

❓ Settings not saving?

→ Check that %APPDATA%\2wL\ folder has write permissions.

❓ Keys repeating too fast/slow?

→ Toggle Game 5 (Hold Only) and/or Game 6 (1200 ms); avoid stacking Game modes — test one at a time.

❓ Help file looks wrong or old?

→ Close 2wL and relaunch — %APPDATA%\2wL\2wLhelp.txt is overwritten from the executable each launch.


🛡️ PRIVACY & SECURITY
🔒
100% Private • 0% Telemetry
Data Collection:
  • No telemetry or analytics
  • No internet connection required
  • No data sent to servers
Local Storage Only:
  • Settings: %APPDATA%\2wL\2wL.ini
  • Word prediction: learning.dat, static_frequencies.txt; built-in corpus in the EXE; optional custom dictionary path in Settings
  • Logs (optional): %APPDATA%\2wL\trace.txt
  • Custom fonts: paths under [CustomFonts] in 2wL.ini — tick audio is synthesized, not stored as files
⚠️ About Antivirus False Positives

2wL Virtual Keyboard is 100% safe and clean. However, some antivirus programs may flag it as suspicious. This is a false positive and occurs because:

📊 Antivirus heuristics

Low-level keyboard injection can trigger generic or behavioral alerts on some engines. Results vary by build, packer, and vendor database version — scan the exact binary you downloaded if unsure.

✅ What 2wL does not do
  • No network use for core operation — word lists and sounds are local / synthesized
  • No telemetry or analytics
  • Local storage only under %APPDATA%\2wL\
  • Documented Windows APIs for input, hooks, and DirectInput where selected in Game modes

If your antivirus blocks the download:
Add an exception for 2wL.exe in your antivirus settings. The software is completely safe to use.


📜 VERSION HISTORY
T-800 beta 1.0 (current — Help → About) - Help / download docs: if 2wL is squirrely, unresponsive, or crashes continually, close it, delete %APPDATA%\2wL, restart - Portable distribution: single 2wL.exe (no 2wL_Setup). Optional first-run desktop menu / Defender exclusion. Data under %APPDATA%\2wL\ - Game modes 1–7 (SendInput scan codes, LL hook, PostMessage path, DirectInput8, hold-only / repeat tuning, 1200 ms initial delay, optional timing obfuscation) - Word prediction: hybrid personal + static frequencies; Promote/Demote/Delete; optional custom dictionary - Dual Copybox with HOLD + right-click paste recall (up to 3 harvested pastes per slot, session) - Split Keyboard (2) — dual windows sharing keyboard state - 25 built-in themes + Save Theme As; Bling / Gradient / Ghost; synthesized tick sounds - Run as admin; multi-instance; tray icon; title CMD / gear context menus; Ext + emoji + TM - Trace + optional debug (Senses / Above); help file refreshed from EXE each launch

💬 SUPPORT & FEEDBACK
Found a bug? Have a feature request?

Email: mxyzptlk1922@gmail.com

Please include:
• 2wL version from Help → About (e.g. 2wL T-800 beta 1.0)
• Windows version
• Steps to reproduce issue
• Screenshot (if applicable)

2wL stays free. Prefer to tip? PayPal, Zelle, or Cash App — same links as above.


📄 CREDITS
© 2026 [Mx]
Built with:
  • Windows API
  • GDI+ for rendering
  • Modern C++
Third-party:
  • None - pure Windows API

Thank you for using 2wL Virtual Keyboard! ⌨️
⬆️