⚠️ This project is archived and kept for historical purposes only. It was built for Windows XP/Vista and is no longer actively maintained. Modern operating systems and tools now solve this problem natively — see the alternatives below.
Keyboard shortcuts like Undo, Cut, Copy, and Paste are designed with the QWERTY layout in mind — they can all be performed one-handed on QWERTY, but land in awkward positions on Dvorak. This project provided Windows-only tools (circa 2005–2008) to type in Dvorak while keeping Ctrl-shortcuts in their QWERTY positions.
Most operating systems now include built-in Dvorak-QWERTY hybrid layouts:
- macOS: System Settings → Keyboard → Input Sources → add Dvorak-QWERTY ⌘ — typing is Dvorak, but ⌘-shortcuts stay in QWERTY positions.
- Linux:
setxkbmap dvorakfor standard Dvorak; use tools like KMonad or Key Mapper for hybrid Ctrl behavior. - Windows: Built-in Dvorak layout available in Settings → Time & Language → Language → Keyboard; use AutoHotkey scripts for hybrid Ctrl behavior.
- Karabiner-Elements (macOS) — Powerful key remapper; can enforce QWERTY shortcuts while typing in Dvorak.
- AutoHotkey (Windows) — Scripting-based remapping; popular for Dvorak-QWERTY hybrids.
- KMonad (Cross-platform) — Advanced keyboard manager with layer support.
| Project | Platform | Approach |
|---|---|---|
| Dvorak-QWERTY-Ctrl | Windows | Custom keyboard layout that keeps QWERTY mappings when Ctrl is held |
| Dvorak Improved (DIM) | Windows, Linux | Modern Dvorak layout variants with ergonomic and programming focus |
If you use a programmable keyboard (e.g., QMK/VIA-compatible), you can flash the Dvorak layout directly onto the firmware with a separate QWERTY layer for shortcuts — portable across any computer.
📦 Original Project Details (Historical)
A custom Windows keyboard layout (DLL) that behaves as standard US Dvorak but toggles to QWERTY while the Ctrl key is held down.
- Created by Jeffrey Min
- Built with Keyboard Layout Manager
- Supports 32-bit (
kbdverty.dll) and 64-bit (kbdverty64.dll) - Tested on Windows XP, Vista, and Vista x64
Note: For 64-bit systems, use
kbdverty64.dllanddverty64.reg.
- Copy
dverty/kbdverty.dlltoC:\WINDOWS\system32\ - Run
dverty/dverty.regto add the layout to the Windows Registry - Reboot Windows
- Add the layout via Control Panel:
- Regional and Language Options → Languages tab → Details… → Add…
- Select United States-Dvorak (Ctrl + Qwerty)
A Windows tray application (written in Delphi/Object Pascal) that lets you quickly switch between QWERTY and Dvorak layouts. This is a modified version of cLabs DVAssist adapted to switch between QWERTY and Dverty.
- Created by Chris Morris (cLabs)
- Licensed under the BSD License
- Uses a keyboard hook DLL (
DVAHOOK.DLL) to intercept keypresses
├── dverty/ # Dverty keyboard layout
│ ├── kbdverty.dll # 32-bit layout DLL
│ ├── kbdverty64.dll # 64-bit layout DLL
│ ├── dverty.reg # 32-bit registry entries
│ ├── dverty64.reg # 64-bit registry entries
│ └── README.txt # Original Dverty readme
├── dvassist/ # DVAssist layout switcher
│ ├── src/ # Delphi source code
│ ├── lib/ # Dependencies (clutil, DUnit)
│ ├── bin/ # Compiled binaries
│ ├── doc/ # Documentation & license
│ ├── test/ # Unit tests (DUnit)
│ └── work/ # Development/scratch files
├── orig/ # Original Dverty website files
├── dverty.zip # Dverty distributable archive
├── DVassist.exe # DVAssist executable (Git LFS)
└── AUTHORS # Original author URLs
- Some keys in CapsLock mode may not work correctly with Dverty.
- DVAssist: BSD License — see dvassist/doc/license.txt
- Dverty: See dverty/README.txt
- Jeffrey Min — Dverty keyboard layout (jeffmin.com)
- Chris Morris (cLabs) — DVAssist (clabs.org)