Repository files navigation

SnapKey Advanced v3.0.0

SnapKey Advanced

SnapKey Advanced is a Windows application that provides intelligent key management for gaming and productivity. It features two distinct modes of operation: Standard Mode for advanced key simulation and Keyboard Mode for simple delay injection.

Features

  • Dual Operation Modes: Standard mode with key simulation or Keyboard mode with delay injection
  • System Tray Integration: Complete control via system tray with visual status indicators
  • Configurable Key Groups: Organize keys into logical groups for different movement combinations
  • Nanosecond Precision Delays: Highly precise timing control with randomization
  • Real-time Configuration: Toggle modes and settings without restarting
  • Automatic Configuration Management: Backup and restore functionality
  • Multi-instance Protection: Prevents multiple instances from running simultaneously

Operation Modes

Standard Mode (Default)

  • Intercepts configured keys and provides intelligent key simulation
  • Prevents multiple keys in the same group from being active simultaneously
  • Adds randomized delays between key transitions
  • Ideal for applications requiring precise key control

Keyboard Mode

  • Allows normal key presses to reach applications
  • Adds configurable delays only when keys are pressed
  • Useful for applications that need direct keyboard input with timing control
  • Toggle via system tray menu or configuration file

System Tray Controls

Right-click the system tray icon to access:

  • Rebind Keys: Opens configuration file for editing
  • Disable SnapKey: Temporarily disable all functionality (visual indicator changes)
  • Use Keyboard Mode: Toggle between Standard and Keyboard modes
  • Restart SnapKey: Restart the application
  • Version Info: Display current version
  • Key Delay Info: Show current delay settings
  • Exit: Close the application

Quick Toggle: Double-click the tray icon to quickly enable/disable SnapKey

Key Codes Reference

Letter Keys

  • A: 65
  • B: 66
  • C: 67
  • D: 68
  • E: 69
  • F: 70
  • G: 71
  • H: 72
  • I: 73
  • J: 74
  • K: 75
  • L: 76
  • M: 77
  • N: 78
  • O: 79
  • P: 80
  • Q: 81
  • R: 82
  • S: 83
  • T: 84
  • U: 85
  • V: 86
  • W: 87
  • X: 88
  • Y: 89
  • Z: 90

Arrow Keys

  • Up: 38
  • Down: 40
  • Left: 37
  • Right: 39

Special Keys

  • BACKSPACE: 8
  • L SHIFT: 160
  • R SHIFT: 161
  • L CONTROL: 162
  • R CONTROL: 163
  • ALT: 164
  • ESC: 27
  • SPACE: 32
  • DEL: 46

Numpad Keys

  • NUM0: 96
  • NUM1: 97
  • NUM2: 98
  • NUM3: 99
  • NUM4: 100
  • NUM5: 101
  • NUM6: 102
  • NUM7: 103
  • NUM8: 104
  • NUM9: 105

Keyboard Layouts

QWERTY

Default configuration: A/D + S/W (Keys: 65,68 / 83,87)

AZERTY

Recommended configuration: Q/D + Z/S (Keys: 81,68 / 90,83)

QWERTZ

Same as QWERTY: A/D + S/W (Keys: 65,68 / 83,87)

Configuration File Structure

The config.json file contains three main sections:

Settings Section

  • min_delay_ns: Minimum delay in nanoseconds (Standard Mode)
  • max_delay_ns: Maximum delay in nanoseconds (Standard Mode)
  • use_keyboard: Boolean to enable Keyboard Mode
  • version: Application version

Groups Section

  • id: Unique identifier for the key group
  • name: Human-readable name for the group
  • keys: Array of key codes that belong to this group

Keymap Section

  • Maps key codes to human-readable names for reference

Note: Most settings can be changed via the system tray menu without editing the configuration file directly. The application will automatically update the config file when settings are changed through the interface.

Example Configuration

{
"groups": [
{
"id": 1,
"keys": [65, 68],
"name": "Movement Keys 1"
},
{
"id": 2,
"keys": [83, 87],
"name": "Movement Keys 2"
}
],
"keymap": {
"65": "A",
"68": "D",
"83": "S",
"87": "W"
},
"settings": {
"min_delay_ns": 500000,
"max_delay_ns": 500000,
"use_keyboard": true,
"version": "3.0.0"
}
}

Installation and Usage

  1. Download: Get the latest SnapKeyAdvanced.exe from the releases
  2. Run: Execute the application (it will create a default config.json if none exists)
  3. Configure: Right-click the system tray icon to access settings
  4. Customize: Edit key bindings by opening the configuration file via the tray menu

Delay Settings

SnapKey uses nanosecond precision for timing:

  • Standard Values: 500,000 ns (0.5 ms) for general use
  • Range: Can be set from 0 to several million nanoseconds
  • Randomization: When min and max differ, delays are randomized within the range
  • Mode-Specific: Different delay settings can be configured for each mode

Troubleshooting

  • Multiple Instances: SnapKey prevents multiple instances automatically
  • Configuration Issues: Delete config.json to restore defaults
  • Tray Icon Missing: Check Windows notification area settings
  • Key Not Working: Verify key codes in the configuration match your keyboard layout

About

Windows keyboard management utility with intelligent key simulation and configurable delays for gaming.

Resources

Stars

3 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Add copy buttons to all
 blocks\n(function() {\n function addCopyButtons() {\n document.querySelectorAll('pre code').forEach(function(codeBlock) {\n if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;\n codeBlock.parentElement.setAttribute('data-copy-added', 'true');\n \n var btn = document.createElement('button');\n btn.textContent = 'Copy';\n btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';\n btn.onmouseover = function() { this.style.opacity = '1'; };\n btn.onmouseout = function() { this.style.opacity = '0.7'; };\n btn.onclick = function() {\n navigator.clipboard.writeText(codeBlock.textContent).then(function() {\n btn.textContent = 'Copied!';\n setTimeout(function() { btn.textContent = 'Copy'; }, 1500);\n });\n };\n codeBlock.parentElement.style.position = 'relative';\n codeBlock.parentElement.appendChild(btn);\n });\n }\n \n addCopyButtons();\n \n // Re-run on dynamic content\n var observer = new MutationObserver(addCopyButtons);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Add Copy Buttons to Code Blocks");
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
Skip to content

Repository files navigation

SnapKey Advanced v3.0.0

SnapKey Advanced

SnapKey Advanced is a Windows application that provides intelligent key management for gaming and productivity. It features two distinct modes of operation: Standard Mode for advanced key simulation and Keyboard Mode for simple delay injection.

Features

  • Dual Operation Modes: Standard mode with key simulation or Keyboard mode with delay injection
  • System Tray Integration: Complete control via system tray with visual status indicators
  • Configurable Key Groups: Organize keys into logical groups for different movement combinations
  • Nanosecond Precision Delays: Highly precise timing control with randomization
  • Real-time Configuration: Toggle modes and settings without restarting
  • Automatic Configuration Management: Backup and restore functionality
  • Multi-instance Protection: Prevents multiple instances from running simultaneously

Operation Modes

Standard Mode (Default)

  • Intercepts configured keys and provides intelligent key simulation
  • Prevents multiple keys in the same group from being active simultaneously
  • Adds randomized delays between key transitions
  • Ideal for applications requiring precise key control

Keyboard Mode

  • Allows normal key presses to reach applications
  • Adds configurable delays only when keys are pressed
  • Useful for applications that need direct keyboard input with timing control
  • Toggle via system tray menu or configuration file

System Tray Controls

Right-click the system tray icon to access:

  • Rebind Keys: Opens configuration file for editing
  • Disable SnapKey: Temporarily disable all functionality (visual indicator changes)
  • Use Keyboard Mode: Toggle between Standard and Keyboard modes
  • Restart SnapKey: Restart the application
  • Version Info: Display current version
  • Key Delay Info: Show current delay settings
  • Exit: Close the application

Quick Toggle: Double-click the tray icon to quickly enable/disable SnapKey

Key Codes Reference

Letter Keys

  • A: 65
  • B: 66
  • C: 67
  • D: 68
  • E: 69
  • F: 70
  • G: 71
  • H: 72
  • I: 73
  • J: 74
  • K: 75
  • L: 76
  • M: 77
  • N: 78
  • O: 79
  • P: 80
  • Q: 81
  • R: 82
  • S: 83
  • T: 84
  • U: 85
  • V: 86
  • W: 87
  • X: 88
  • Y: 89
  • Z: 90

Arrow Keys

  • Up: 38
  • Down: 40
  • Left: 37
  • Right: 39

Special Keys

  • BACKSPACE: 8
  • L SHIFT: 160
  • R SHIFT: 161
  • L CONTROL: 162
  • R CONTROL: 163
  • ALT: 164
  • ESC: 27
  • SPACE: 32
  • DEL: 46

Numpad Keys

  • NUM0: 96
  • NUM1: 97
  • NUM2: 98
  • NUM3: 99
  • NUM4: 100
  • NUM5: 101
  • NUM6: 102
  • NUM7: 103
  • NUM8: 104
  • NUM9: 105

Keyboard Layouts

QWERTY

Default configuration: A/D + S/W (Keys: 65,68 / 83,87)

AZERTY

Recommended configuration: Q/D + Z/S (Keys: 81,68 / 90,83)

QWERTZ

Same as QWERTY: A/D + S/W (Keys: 65,68 / 83,87)

Configuration File Structure

The config.json file contains three main sections:

Settings Section

  • min_delay_ns: Minimum delay in nanoseconds (Standard Mode)
  • max_delay_ns: Maximum delay in nanoseconds (Standard Mode)
  • use_keyboard: Boolean to enable Keyboard Mode
  • version: Application version

Groups Section

  • id: Unique identifier for the key group
  • name: Human-readable name for the group
  • keys: Array of key codes that belong to this group

Keymap Section

  • Maps key codes to human-readable names for reference

Note: Most settings can be changed via the system tray menu without editing the configuration file directly. The application will automatically update the config file when settings are changed through the interface.

Example Configuration

{
"groups": [
{
"id": 1,
"keys": [65, 68],
"name": "Movement Keys 1"
},
{
"id": 2,
"keys": [83, 87],
"name": "Movement Keys 2"
}
],
"keymap": {
"65": "A",
"68": "D",
"83": "S",
"87": "W"
},
"settings": {
"min_delay_ns": 500000,
"max_delay_ns": 500000,
"use_keyboard": true,
"version": "3.0.0"
}
}

Installation and Usage

  1. Download: Get the latest SnapKeyAdvanced.exe from the releases
  2. Run: Execute the application (it will create a default config.json if none exists)
  3. Configure: Right-click the system tray icon to access settings
  4. Customize: Edit key bindings by opening the configuration file via the tray menu

Delay Settings

SnapKey uses nanosecond precision for timing:

  • Standard Values: 500,000 ns (0.5 ms) for general use
  • Range: Can be set from 0 to several million nanoseconds
  • Randomization: When min and max differ, delays are randomized within the range
  • Mode-Specific: Different delay settings can be configured for each mode

Troubleshooting

  • Multiple Instances: SnapKey prevents multiple instances automatically
  • Configuration Issues: Delete config.json to restore defaults
  • Tray Icon Missing: Check Windows notification area settings
  • Key Not Working: Verify key codes in the configuration match your keyboard layout

About

Windows keyboard management utility with intelligent key simulation and configurable delays for gaming.

Resources

Stars

3 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Force GitHub README to respect dark mode\n(function() {\n var style = document.createElement('style');\n style.textContent = '\n .markdown-body {\n color-scheme: dark light;\n }\n .markdown-body pre { background: #161b22 !important; }\n .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; }\n .markdown-body table th, .markdown-body table td { border-color: #30363d !important; }\n .markdown-body img { background: #0d1117; }\n .markdown-body blockquote { border-left-color: #8b949e; }\n .markdown-body hr { border-color: #30363d; }\n ';\n document.head.appendChild(style);\n})();", "GitHub Dark Mode README Fix"); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

SnapKey Advanced v3.0.0

SnapKey Advanced

SnapKey Advanced is a Windows application that provides intelligent key management for gaming and productivity. It features two distinct modes of operation: Standard Mode for advanced key simulation and Keyboard Mode for simple delay injection.

Features

  • Dual Operation Modes: Standard mode with key simulation or Keyboard mode with delay injection
  • System Tray Integration: Complete control via system tray with visual status indicators
  • Configurable Key Groups: Organize keys into logical groups for different movement combinations
  • Nanosecond Precision Delays: Highly precise timing control with randomization
  • Real-time Configuration: Toggle modes and settings without restarting
  • Automatic Configuration Management: Backup and restore functionality
  • Multi-instance Protection: Prevents multiple instances from running simultaneously

Operation Modes

Standard Mode (Default)

  • Intercepts configured keys and provides intelligent key simulation
  • Prevents multiple keys in the same group from being active simultaneously
  • Adds randomized delays between key transitions
  • Ideal for applications requiring precise key control

Keyboard Mode

  • Allows normal key presses to reach applications
  • Adds configurable delays only when keys are pressed
  • Useful for applications that need direct keyboard input with timing control
  • Toggle via system tray menu or configuration file

System Tray Controls

Right-click the system tray icon to access:

  • Rebind Keys: Opens configuration file for editing
  • Disable SnapKey: Temporarily disable all functionality (visual indicator changes)
  • Use Keyboard Mode: Toggle between Standard and Keyboard modes
  • Restart SnapKey: Restart the application
  • Version Info: Display current version
  • Key Delay Info: Show current delay settings
  • Exit: Close the application

Quick Toggle: Double-click the tray icon to quickly enable/disable SnapKey

Key Codes Reference

Letter Keys

  • A: 65
  • B: 66
  • C: 67
  • D: 68
  • E: 69
  • F: 70
  • G: 71
  • H: 72
  • I: 73
  • J: 74
  • K: 75
  • L: 76
  • M: 77
  • N: 78
  • O: 79
  • P: 80
  • Q: 81
  • R: 82
  • S: 83
  • T: 84
  • U: 85
  • V: 86
  • W: 87
  • X: 88
  • Y: 89
  • Z: 90

Arrow Keys

  • Up: 38
  • Down: 40
  • Left: 37
  • Right: 39

Special Keys

  • BACKSPACE: 8
  • L SHIFT: 160
  • R SHIFT: 161
  • L CONTROL: 162
  • R CONTROL: 163
  • ALT: 164
  • ESC: 27
  • SPACE: 32
  • DEL: 46

Numpad Keys

  • NUM0: 96
  • NUM1: 97
  • NUM2: 98
  • NUM3: 99
  • NUM4: 100
  • NUM5: 101
  • NUM6: 102
  • NUM7: 103
  • NUM8: 104
  • NUM9: 105

Keyboard Layouts

QWERTY

Default configuration: A/D + S/W (Keys: 65,68 / 83,87)

AZERTY

Recommended configuration: Q/D + Z/S (Keys: 81,68 / 90,83)

QWERTZ

Same as QWERTY: A/D + S/W (Keys: 65,68 / 83,87)

Configuration File Structure

The config.json file contains three main sections:

Settings Section

  • min_delay_ns: Minimum delay in nanoseconds (Standard Mode)
  • max_delay_ns: Maximum delay in nanoseconds (Standard Mode)
  • use_keyboard: Boolean to enable Keyboard Mode
  • version: Application version

Groups Section

  • id: Unique identifier for the key group
  • name: Human-readable name for the group
  • keys: Array of key codes that belong to this group

Keymap Section

  • Maps key codes to human-readable names for reference

Note: Most settings can be changed via the system tray menu without editing the configuration file directly. The application will automatically update the config file when settings are changed through the interface.

Example Configuration

{
"groups": [
{
"id": 1,
"keys": [65, 68],
"name": "Movement Keys 1"
},
{
"id": 2,
"keys": [83, 87],
"name": "Movement Keys 2"
}
],
"keymap": {
"65": "A",
"68": "D",
"83": "S",
"87": "W"
},
"settings": {
"min_delay_ns": 500000,
"max_delay_ns": 500000,
"use_keyboard": true,
"version": "3.0.0"
}
}

Installation and Usage

  1. Download: Get the latest SnapKeyAdvanced.exe from the releases
  2. Run: Execute the application (it will create a default config.json if none exists)
  3. Configure: Right-click the system tray icon to access settings
  4. Customize: Edit key bindings by opening the configuration file via the tray menu

Delay Settings

SnapKey uses nanosecond precision for timing:

  • Standard Values: 500,000 ns (0.5 ms) for general use
  • Range: Can be set from 0 to several million nanoseconds
  • Randomization: When min and max differ, delays are randomized within the range
  • Mode-Specific: Different delay settings can be configured for each mode

Troubleshooting

  • Multiple Instances: SnapKey prevents multiple instances automatically
  • Configuration Issues: Delete config.json to restore defaults
  • Tray Icon Missing: Check Windows notification area settings
  • Key Not Working: Verify key codes in the configuration match your keyboard layout

About

Windows keyboard management utility with intelligent key simulation and configurable delays for gaming.

Resources

Stars

3 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Highlight search terms from Google/DuckDuckGo/Bing referrer\n(function() {\n var ref = document.referrer;\n var terms = [];\n \n if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) {\n var url = new URL(ref);\n var q = url.searchParams.get('q') || url.searchParams.get('p');\n if (q) {\n terms = q.split(/\\s+/).filter(function(t) { return t.length > 2; });\n }\n }\n \n if (terms.length === 0) return;\n \n var style = document.createElement('style');\n style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }';\n document.head.appendChild(style);\n \n function highlight(node) {\n if (node.nodeType === 3) { // text node\n var text = node.textContent;\n var found = false;\n terms.forEach(function(term) {\n var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\') + ')', 'gi');\n if (regex.test(text)) {\n found = true;\n var frag = document.createDocumentFragment();\n var parts = text.split(regex);\n parts.forEach(function(part, i) {\n if (i % 2 === 0) {\n frag.appendChild(document.createTextNode(part));\n } else {\n var span = document.createElement('span');\n span.className = 'userscript-highlight';\n span.textContent = part;\n frag.appendChild(span);\n }\n });\n node.parentNode.replaceChild(frag, node);\n }\n });\n } else if (node.nodeType === 1 && node.childNodes) { // element\n var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT'];\n if (!skipTags.includes(node.tagName)) {\n Array.from(node.childNodes).forEach(highlight);\n }\n }\n }\n \n highlight(document.body);\n \n // Re-highlight on dynamic content\n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1 || node.nodeType === 3) highlight(node);\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Highlight Search Terms"); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

SnapKey Advanced v3.0.0

SnapKey Advanced

SnapKey Advanced is a Windows application that provides intelligent key management for gaming and productivity. It features two distinct modes of operation: Standard Mode for advanced key simulation and Keyboard Mode for simple delay injection.

Features

  • Dual Operation Modes: Standard mode with key simulation or Keyboard mode with delay injection
  • System Tray Integration: Complete control via system tray with visual status indicators
  • Configurable Key Groups: Organize keys into logical groups for different movement combinations
  • Nanosecond Precision Delays: Highly precise timing control with randomization
  • Real-time Configuration: Toggle modes and settings without restarting
  • Automatic Configuration Management: Backup and restore functionality
  • Multi-instance Protection: Prevents multiple instances from running simultaneously

Operation Modes

Standard Mode (Default)

  • Intercepts configured keys and provides intelligent key simulation
  • Prevents multiple keys in the same group from being active simultaneously
  • Adds randomized delays between key transitions
  • Ideal for applications requiring precise key control

Keyboard Mode

  • Allows normal key presses to reach applications
  • Adds configurable delays only when keys are pressed
  • Useful for applications that need direct keyboard input with timing control
  • Toggle via system tray menu or configuration file

System Tray Controls

Right-click the system tray icon to access:

  • Rebind Keys: Opens configuration file for editing
  • Disable SnapKey: Temporarily disable all functionality (visual indicator changes)
  • Use Keyboard Mode: Toggle between Standard and Keyboard modes
  • Restart SnapKey: Restart the application
  • Version Info: Display current version
  • Key Delay Info: Show current delay settings
  • Exit: Close the application

Quick Toggle: Double-click the tray icon to quickly enable/disable SnapKey

Key Codes Reference

Letter Keys

  • A: 65
  • B: 66
  • C: 67
  • D: 68
  • E: 69
  • F: 70
  • G: 71
  • H: 72
  • I: 73
  • J: 74
  • K: 75
  • L: 76
  • M: 77
  • N: 78
  • O: 79
  • P: 80
  • Q: 81
  • R: 82
  • S: 83
  • T: 84
  • U: 85
  • V: 86
  • W: 87
  • X: 88
  • Y: 89
  • Z: 90

Arrow Keys

  • Up: 38
  • Down: 40
  • Left: 37
  • Right: 39

Special Keys

  • BACKSPACE: 8
  • L SHIFT: 160
  • R SHIFT: 161
  • L CONTROL: 162
  • R CONTROL: 163
  • ALT: 164
  • ESC: 27
  • SPACE: 32
  • DEL: 46

Numpad Keys

  • NUM0: 96
  • NUM1: 97
  • NUM2: 98
  • NUM3: 99
  • NUM4: 100
  • NUM5: 101
  • NUM6: 102
  • NUM7: 103
  • NUM8: 104
  • NUM9: 105

Keyboard Layouts

QWERTY

Default configuration: A/D + S/W (Keys: 65,68 / 83,87)

AZERTY

Recommended configuration: Q/D + Z/S (Keys: 81,68 / 90,83)

QWERTZ

Same as QWERTY: A/D + S/W (Keys: 65,68 / 83,87)

Configuration File Structure

The config.json file contains three main sections:

Settings Section

  • min_delay_ns: Minimum delay in nanoseconds (Standard Mode)
  • max_delay_ns: Maximum delay in nanoseconds (Standard Mode)
  • use_keyboard: Boolean to enable Keyboard Mode
  • version: Application version

Groups Section

  • id: Unique identifier for the key group
  • name: Human-readable name for the group
  • keys: Array of key codes that belong to this group

Keymap Section

  • Maps key codes to human-readable names for reference

Note: Most settings can be changed via the system tray menu without editing the configuration file directly. The application will automatically update the config file when settings are changed through the interface.

Example Configuration

{
"groups": [
{
"id": 1,
"keys": [65, 68],
"name": "Movement Keys 1"
},
{
"id": 2,
"keys": [83, 87],
"name": "Movement Keys 2"
}
],
"keymap": {
"65": "A",
"68": "D",
"83": "S",
"87": "W"
},
"settings": {
"min_delay_ns": 500000,
"max_delay_ns": 500000,
"use_keyboard": true,
"version": "3.0.0"
}
}

Installation and Usage

  1. Download: Get the latest SnapKeyAdvanced.exe from the releases
  2. Run: Execute the application (it will create a default config.json if none exists)
  3. Configure: Right-click the system tray icon to access settings
  4. Customize: Edit key bindings by opening the configuration file via the tray menu

Delay Settings

SnapKey uses nanosecond precision for timing:

  • Standard Values: 500,000 ns (0.5 ms) for general use
  • Range: Can be set from 0 to several million nanoseconds
  • Randomization: When min and max differ, delays are randomized within the range
  • Mode-Specific: Different delay settings can be configured for each mode

Troubleshooting

  • Multiple Instances: SnapKey prevents multiple instances automatically
  • Configuration Issues: Delete config.json to restore defaults
  • Tray Icon Missing: Check Windows notification area settings
  • Key Not Working: Verify key codes in the configuration match your keyboard layout

About

Windows keyboard management utility with intelligent key simulation and configurable delays for gaming.

Resources

Stars

3 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Strip utm_, fbclid, gclid, etc. from all links on page\n(function() {\n var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content',\n 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid',\n 'ref', 'ref_src', 'source', 'medium', 'campaign'];\n \n function cleanUrl(url) {\n try {\n var u = new URL(url, window.location.origin);\n var changed = false;\n trackingParams.forEach(function(p) {\n if (u.searchParams.has(p)) {\n u.searchParams.delete(p);\n changed = true;\n }\n });\n return changed ? u.toString() : url;\n } catch (e) {\n return url;\n }\n }\n \n function cleanLinks() {\n document.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n \n cleanLinks();\n \n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1) {\n if (node.tagName === 'A') cleanLinks();\n node.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Remove Tracking Parameters from Links"); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + '
Skip to content

Repository files navigation

SnapKey Advanced v3.0.0

SnapKey Advanced

SnapKey Advanced is a Windows application that provides intelligent key management for gaming and productivity. It features two distinct modes of operation: Standard Mode for advanced key simulation and Keyboard Mode for simple delay injection.

Features

  • Dual Operation Modes: Standard mode with key simulation or Keyboard mode with delay injection
  • System Tray Integration: Complete control via system tray with visual status indicators
  • Configurable Key Groups: Organize keys into logical groups for different movement combinations
  • Nanosecond Precision Delays: Highly precise timing control with randomization
  • Real-time Configuration: Toggle modes and settings without restarting
  • Automatic Configuration Management: Backup and restore functionality
  • Multi-instance Protection: Prevents multiple instances from running simultaneously

Operation Modes

Standard Mode (Default)

  • Intercepts configured keys and provides intelligent key simulation
  • Prevents multiple keys in the same group from being active simultaneously
  • Adds randomized delays between key transitions
  • Ideal for applications requiring precise key control

Keyboard Mode

  • Allows normal key presses to reach applications
  • Adds configurable delays only when keys are pressed
  • Useful for applications that need direct keyboard input with timing control
  • Toggle via system tray menu or configuration file

System Tray Controls

Right-click the system tray icon to access:

  • Rebind Keys: Opens configuration file for editing
  • Disable SnapKey: Temporarily disable all functionality (visual indicator changes)
  • Use Keyboard Mode: Toggle between Standard and Keyboard modes
  • Restart SnapKey: Restart the application
  • Version Info: Display current version
  • Key Delay Info: Show current delay settings
  • Exit: Close the application

Quick Toggle: Double-click the tray icon to quickly enable/disable SnapKey

Key Codes Reference

Letter Keys

  • A: 65
  • B: 66
  • C: 67
  • D: 68
  • E: 69
  • F: 70
  • G: 71
  • H: 72
  • I: 73
  • J: 74
  • K: 75
  • L: 76
  • M: 77
  • N: 78
  • O: 79
  • P: 80
  • Q: 81
  • R: 82
  • S: 83
  • T: 84
  • U: 85
  • V: 86
  • W: 87
  • X: 88
  • Y: 89
  • Z: 90

Arrow Keys

  • Up: 38
  • Down: 40
  • Left: 37
  • Right: 39

Special Keys

  • BACKSPACE: 8
  • L SHIFT: 160
  • R SHIFT: 161
  • L CONTROL: 162
  • R CONTROL: 163
  • ALT: 164
  • ESC: 27
  • SPACE: 32
  • DEL: 46

Numpad Keys

  • NUM0: 96
  • NUM1: 97
  • NUM2: 98
  • NUM3: 99
  • NUM4: 100
  • NUM5: 101
  • NUM6: 102
  • NUM7: 103
  • NUM8: 104
  • NUM9: 105

Keyboard Layouts

QWERTY

Default configuration: A/D + S/W (Keys: 65,68 / 83,87)

AZERTY

Recommended configuration: Q/D + Z/S (Keys: 81,68 / 90,83)

QWERTZ

Same as QWERTY: A/D + S/W (Keys: 65,68 / 83,87)

Configuration File Structure

The config.json file contains three main sections:

Settings Section

  • min_delay_ns: Minimum delay in nanoseconds (Standard Mode)
  • max_delay_ns: Maximum delay in nanoseconds (Standard Mode)
  • use_keyboard: Boolean to enable Keyboard Mode
  • version: Application version

Groups Section

  • id: Unique identifier for the key group
  • name: Human-readable name for the group
  • keys: Array of key codes that belong to this group

Keymap Section

  • Maps key codes to human-readable names for reference

Note: Most settings can be changed via the system tray menu without editing the configuration file directly. The application will automatically update the config file when settings are changed through the interface.

Example Configuration

{
"groups": [
{
"id": 1,
"keys": [65, 68],
"name": "Movement Keys 1"
},
{
"id": 2,
"keys": [83, 87],
"name": "Movement Keys 2"
}
],
"keymap": {
"65": "A",
"68": "D",
"83": "S",
"87": "W"
},
"settings": {
"min_delay_ns": 500000,
"max_delay_ns": 500000,
"use_keyboard": true,
"version": "3.0.0"
}
}

Installation and Usage

  1. Download: Get the latest SnapKeyAdvanced.exe from the releases
  2. Run: Execute the application (it will create a default config.json if none exists)
  3. Configure: Right-click the system tray icon to access settings
  4. Customize: Edit key bindings by opening the configuration file via the tray menu

Delay Settings

SnapKey uses nanosecond precision for timing:

  • Standard Values: 500,000 ns (0.5 ms) for general use
  • Range: Can be set from 0 to several million nanoseconds
  • Randomization: When min and max differ, delays are randomized within the range
  • Mode-Specific: Different delay settings can be configured for each mode

Troubleshooting

  • Multiple Instances: SnapKey prevents multiple instances automatically
  • Configuration Issues: Delete config.json to restore defaults
  • Tray Icon Missing: Check Windows notification area settings
  • Key Not Working: Verify key codes in the configuration match your keyboard layout

About

Windows keyboard management utility with intelligent key simulation and configurable delays for gaming.

Resources

Stars

3 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Auto-enable theater mode on YouTube\n(function() {\n function tryTheater() {\n var btn = document.querySelector('button[aria-label=\"Theater mode\"], ytd-player #player button[title=\"Theater mode\"]');\n if (btn && !btn.classList.contains('activated')) {\n btn.click();\n }\n }\n \n // Try immediately\n tryTheater();\n \n // Try after navigation (SPA)\n var lastUrl = location.href;\n setInterval(function() {\n if (location.href !== lastUrl) {\n lastUrl = location.href;\n setTimeout(tryTheater, 500);\n }\n }, 1000);\n \n // Also try on player load\n var observer = new MutationObserver(tryTheater);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "YouTube Theater Mode Default"); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

SnapKey Advanced v3.0.0

SnapKey Advanced

SnapKey Advanced is a Windows application that provides intelligent key management for gaming and productivity. It features two distinct modes of operation: Standard Mode for advanced key simulation and Keyboard Mode for simple delay injection.

Features

  • Dual Operation Modes: Standard mode with key simulation or Keyboard mode with delay injection
  • System Tray Integration: Complete control via system tray with visual status indicators
  • Configurable Key Groups: Organize keys into logical groups for different movement combinations
  • Nanosecond Precision Delays: Highly precise timing control with randomization
  • Real-time Configuration: Toggle modes and settings without restarting
  • Automatic Configuration Management: Backup and restore functionality
  • Multi-instance Protection: Prevents multiple instances from running simultaneously

Operation Modes

Standard Mode (Default)

  • Intercepts configured keys and provides intelligent key simulation
  • Prevents multiple keys in the same group from being active simultaneously
  • Adds randomized delays between key transitions
  • Ideal for applications requiring precise key control

Keyboard Mode

  • Allows normal key presses to reach applications
  • Adds configurable delays only when keys are pressed
  • Useful for applications that need direct keyboard input with timing control
  • Toggle via system tray menu or configuration file

System Tray Controls

Right-click the system tray icon to access:

  • Rebind Keys: Opens configuration file for editing
  • Disable SnapKey: Temporarily disable all functionality (visual indicator changes)
  • Use Keyboard Mode: Toggle between Standard and Keyboard modes
  • Restart SnapKey: Restart the application
  • Version Info: Display current version
  • Key Delay Info: Show current delay settings
  • Exit: Close the application

Quick Toggle: Double-click the tray icon to quickly enable/disable SnapKey

Key Codes Reference

Letter Keys

  • A: 65
  • B: 66
  • C: 67
  • D: 68
  • E: 69
  • F: 70
  • G: 71
  • H: 72
  • I: 73
  • J: 74
  • K: 75
  • L: 76
  • M: 77
  • N: 78
  • O: 79
  • P: 80
  • Q: 81
  • R: 82
  • S: 83
  • T: 84
  • U: 85
  • V: 86
  • W: 87
  • X: 88
  • Y: 89
  • Z: 90

Arrow Keys

  • Up: 38
  • Down: 40
  • Left: 37
  • Right: 39

Special Keys

  • BACKSPACE: 8
  • L SHIFT: 160
  • R SHIFT: 161
  • L CONTROL: 162
  • R CONTROL: 163
  • ALT: 164
  • ESC: 27
  • SPACE: 32
  • DEL: 46

Numpad Keys

  • NUM0: 96
  • NUM1: 97
  • NUM2: 98
  • NUM3: 99
  • NUM4: 100
  • NUM5: 101
  • NUM6: 102
  • NUM7: 103
  • NUM8: 104
  • NUM9: 105

Keyboard Layouts

QWERTY

Default configuration: A/D + S/W (Keys: 65,68 / 83,87)

AZERTY

Recommended configuration: Q/D + Z/S (Keys: 81,68 / 90,83)

QWERTZ

Same as QWERTY: A/D + S/W (Keys: 65,68 / 83,87)

Configuration File Structure

The config.json file contains three main sections:

Settings Section

  • min_delay_ns: Minimum delay in nanoseconds (Standard Mode)
  • max_delay_ns: Maximum delay in nanoseconds (Standard Mode)
  • use_keyboard: Boolean to enable Keyboard Mode
  • version: Application version

Groups Section

  • id: Unique identifier for the key group
  • name: Human-readable name for the group
  • keys: Array of key codes that belong to this group

Keymap Section

  • Maps key codes to human-readable names for reference

Note: Most settings can be changed via the system tray menu without editing the configuration file directly. The application will automatically update the config file when settings are changed through the interface.

Example Configuration

{
"groups": [
{
"id": 1,
"keys": [65, 68],
"name": "Movement Keys 1"
},
{
"id": 2,
"keys": [83, 87],
"name": "Movement Keys 2"
}
],
"keymap": {
"65": "A",
"68": "D",
"83": "S",
"87": "W"
},
"settings": {
"min_delay_ns": 500000,
"max_delay_ns": 500000,
"use_keyboard": true,
"version": "3.0.0"
}
}

Installation and Usage

  1. Download: Get the latest SnapKeyAdvanced.exe from the releases
  2. Run: Execute the application (it will create a default config.json if none exists)
  3. Configure: Right-click the system tray icon to access settings
  4. Customize: Edit key bindings by opening the configuration file via the tray menu

Delay Settings

SnapKey uses nanosecond precision for timing:

  • Standard Values: 500,000 ns (0.5 ms) for general use
  • Range: Can be set from 0 to several million nanoseconds
  • Randomization: When min and max differ, delays are randomized within the range
  • Mode-Specific: Different delay settings can be configured for each mode

Troubleshooting

  • Multiple Instances: SnapKey prevents multiple instances automatically
  • Configuration Issues: Delete config.json to restore defaults
  • Tray Icon Missing: Check Windows notification area settings
  • Key Not Working: Verify key codes in the configuration match your keyboard layout

About

Windows keyboard management utility with intelligent key simulation and configurable delays for gaming.

Resources

Stars

3 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Remove or un-stick sticky/fixed headers that block content\n(function() {\n function unstick() {\n document.querySelectorAll('header, nav, [role=\"banner\"], .header, .navbar, .sticky, .fixed-top, [style*=\"position: fixed\"], [style*=\"position:sticky\"]').forEach(function(el) {\n if (el.style.position === 'fixed' || el.style.position === 'sticky' || \n getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') {\n el.style.position = 'static';\n el.style.top = 'auto';\n el.style.zIndex = 'auto';\n }\n });\n }\n \n unstick();\n \n var observer = new MutationObserver(unstick);\n observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] });\n})();", "Kill Sticky Headers"); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

SnapKey Advanced v3.0.0

SnapKey Advanced

SnapKey Advanced is a Windows application that provides intelligent key management for gaming and productivity. It features two distinct modes of operation: Standard Mode for advanced key simulation and Keyboard Mode for simple delay injection.

Features

  • Dual Operation Modes: Standard mode with key simulation or Keyboard mode with delay injection
  • System Tray Integration: Complete control via system tray with visual status indicators
  • Configurable Key Groups: Organize keys into logical groups for different movement combinations
  • Nanosecond Precision Delays: Highly precise timing control with randomization
  • Real-time Configuration: Toggle modes and settings without restarting
  • Automatic Configuration Management: Backup and restore functionality
  • Multi-instance Protection: Prevents multiple instances from running simultaneously

Operation Modes

Standard Mode (Default)

  • Intercepts configured keys and provides intelligent key simulation
  • Prevents multiple keys in the same group from being active simultaneously
  • Adds randomized delays between key transitions
  • Ideal for applications requiring precise key control

Keyboard Mode

  • Allows normal key presses to reach applications
  • Adds configurable delays only when keys are pressed
  • Useful for applications that need direct keyboard input with timing control
  • Toggle via system tray menu or configuration file

System Tray Controls

Right-click the system tray icon to access:

  • Rebind Keys: Opens configuration file for editing
  • Disable SnapKey: Temporarily disable all functionality (visual indicator changes)
  • Use Keyboard Mode: Toggle between Standard and Keyboard modes
  • Restart SnapKey: Restart the application
  • Version Info: Display current version
  • Key Delay Info: Show current delay settings
  • Exit: Close the application

Quick Toggle: Double-click the tray icon to quickly enable/disable SnapKey

Key Codes Reference

Letter Keys

  • A: 65
  • B: 66
  • C: 67
  • D: 68
  • E: 69
  • F: 70
  • G: 71
  • H: 72
  • I: 73
  • J: 74
  • K: 75
  • L: 76
  • M: 77
  • N: 78
  • O: 79
  • P: 80
  • Q: 81
  • R: 82
  • S: 83
  • T: 84
  • U: 85
  • V: 86
  • W: 87
  • X: 88
  • Y: 89
  • Z: 90

Arrow Keys

  • Up: 38
  • Down: 40
  • Left: 37
  • Right: 39

Special Keys

  • BACKSPACE: 8
  • L SHIFT: 160
  • R SHIFT: 161
  • L CONTROL: 162
  • R CONTROL: 163
  • ALT: 164
  • ESC: 27
  • SPACE: 32
  • DEL: 46

Numpad Keys

  • NUM0: 96
  • NUM1: 97
  • NUM2: 98
  • NUM3: 99
  • NUM4: 100
  • NUM5: 101
  • NUM6: 102
  • NUM7: 103
  • NUM8: 104
  • NUM9: 105

Keyboard Layouts

QWERTY

Default configuration: A/D + S/W (Keys: 65,68 / 83,87)

AZERTY

Recommended configuration: Q/D + Z/S (Keys: 81,68 / 90,83)

QWERTZ

Same as QWERTY: A/D + S/W (Keys: 65,68 / 83,87)

Configuration File Structure

The config.json file contains three main sections:

Settings Section

  • min_delay_ns: Minimum delay in nanoseconds (Standard Mode)
  • max_delay_ns: Maximum delay in nanoseconds (Standard Mode)
  • use_keyboard: Boolean to enable Keyboard Mode
  • version: Application version

Groups Section

  • id: Unique identifier for the key group
  • name: Human-readable name for the group
  • keys: Array of key codes that belong to this group

Keymap Section

  • Maps key codes to human-readable names for reference

Note: Most settings can be changed via the system tray menu without editing the configuration file directly. The application will automatically update the config file when settings are changed through the interface.

Example Configuration

{
"groups": [
{
"id": 1,
"keys": [65, 68],
"name": "Movement Keys 1"
},
{
"id": 2,
"keys": [83, 87],
"name": "Movement Keys 2"
}
],
"keymap": {
"65": "A",
"68": "D",
"83": "S",
"87": "W"
},
"settings": {
"min_delay_ns": 500000,
"max_delay_ns": 500000,
"use_keyboard": true,
"version": "3.0.0"
}
}

Installation and Usage

  1. Download: Get the latest SnapKeyAdvanced.exe from the releases
  2. Run: Execute the application (it will create a default config.json if none exists)
  3. Configure: Right-click the system tray icon to access settings
  4. Customize: Edit key bindings by opening the configuration file via the tray menu

Delay Settings

SnapKey uses nanosecond precision for timing:

  • Standard Values: 500,000 ns (0.5 ms) for general use
  • Range: Can be set from 0 to several million nanoseconds
  • Randomization: When min and max differ, delays are randomized within the range
  • Mode-Specific: Different delay settings can be configured for each mode

Troubleshooting

  • Multiple Instances: SnapKey prevents multiple instances automatically
  • Configuration Issues: Delete config.json to restore defaults
  • Tray Icon Missing: Check Windows notification area settings
  • Key Not Working: Verify key codes in the configuration match your keyboard layout

About

Windows keyboard management utility with intelligent key simulation and configurable delays for gaming.

Resources

Stars

3 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Universal Dark Mode - works on any site\n(function() {\n var enabled = true;\n \n function applyDarkMode() {\n if (!enabled) return;\n \n // Create style element if it doesn't exist\n var style = document.getElementById('universal-dark-mode-style');\n if (!style) {\n style = document.createElement('style');\n style.id = 'universal-dark-mode-style';\n document.head.appendChild(style);\n }\n \n // Dark mode CSS - inverts colors but preserves images/video\n style.textContent = '\n /* Invert everything except media */\n html {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #1a1a2e !important;\n }\n \n /* Restore images, videos, iframes, canvas */\n img, video, iframe, canvas, svg, picture, [style*=\"background-image\"] {\n filter: invert(1) hue-rotate(180deg) !important;\n }\n \n /* Preserve specific elements that should not be inverted */\n .no-dark-mode, .no-dark-mode *,\n [data-theme=\"light\"], [data-theme=\"light\"],\n .ace_editor, .ace_editor *,\n .CodeMirror, .CodeMirror *,\n .monaco-editor, .monaco-editor *,\n .markdown-body pre, .markdown-body pre *,\n .highlight, .highlight *,\n pre code, pre code * {\n filter: none !important;\n }\n \n /* Fix common UI elements */\n .modal, .popup, .dropdown-menu, .tooltip, .popover {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #2d2d44 !important;\n border-color: #444 !important;\n }\n \n /* Scrollbars */\n ::-webkit-scrollbar { background: #1a1a2e !important; }\n ::-webkit-scrollbar-thumb { background: #444 !important; }\n ::-webkit-scrollbar-thumb:hover { background: #555 !important; }\n \n /* Selection */\n ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ';\n }\n \n function removeDarkMode() {\n var style = document.getElementById('universal-dark-mode-style');\n if (style) style.remove();\n }\n \n // Toggle with Alt+Shift+D\n document.addEventListener('keydown', function(e) {\n if (e.altKey && e.shiftKey && e.key === 'D') {\n e.preventDefault();\n enabled = !enabled;\n if (enabled) {\n applyDarkMode();\n console.log('[Universal Dark Mode] Enabled');\n } else {\n removeDarkMode();\n console.log('[Universal Dark Mode] Disabled');\n }\n }\n });\n \n // Apply on load\n applyDarkMode();\n \n // Re-apply on dynamic content\n var observer = new MutationObserver(function(mutations) {\n if (enabled && !document.getElementById('universal-dark-mode-style')) {\n applyDarkMode();\n }\n });\n observer.observe(document.head, { childList: true });\n \n console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle');\n})();", "Universal Dark Mode"); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })();
Skip to content

Repository files navigation

SnapKey Advanced v3.0.0

SnapKey Advanced

SnapKey Advanced is a Windows application that provides intelligent key management for gaming and productivity. It features two distinct modes of operation: Standard Mode for advanced key simulation and Keyboard Mode for simple delay injection.

Features

  • Dual Operation Modes: Standard mode with key simulation or Keyboard mode with delay injection
  • System Tray Integration: Complete control via system tray with visual status indicators
  • Configurable Key Groups: Organize keys into logical groups for different movement combinations
  • Nanosecond Precision Delays: Highly precise timing control with randomization
  • Real-time Configuration: Toggle modes and settings without restarting
  • Automatic Configuration Management: Backup and restore functionality
  • Multi-instance Protection: Prevents multiple instances from running simultaneously

Operation Modes

Standard Mode (Default)

  • Intercepts configured keys and provides intelligent key simulation
  • Prevents multiple keys in the same group from being active simultaneously
  • Adds randomized delays between key transitions
  • Ideal for applications requiring precise key control

Keyboard Mode

  • Allows normal key presses to reach applications
  • Adds configurable delays only when keys are pressed
  • Useful for applications that need direct keyboard input with timing control
  • Toggle via system tray menu or configuration file

System Tray Controls

Right-click the system tray icon to access:

  • Rebind Keys: Opens configuration file for editing
  • Disable SnapKey: Temporarily disable all functionality (visual indicator changes)
  • Use Keyboard Mode: Toggle between Standard and Keyboard modes
  • Restart SnapKey: Restart the application
  • Version Info: Display current version
  • Key Delay Info: Show current delay settings
  • Exit: Close the application

Quick Toggle: Double-click the tray icon to quickly enable/disable SnapKey

Key Codes Reference

Letter Keys

  • A: 65
  • B: 66
  • C: 67
  • D: 68
  • E: 69
  • F: 70
  • G: 71
  • H: 72
  • I: 73
  • J: 74
  • K: 75
  • L: 76
  • M: 77
  • N: 78
  • O: 79
  • P: 80
  • Q: 81
  • R: 82
  • S: 83
  • T: 84
  • U: 85
  • V: 86
  • W: 87
  • X: 88
  • Y: 89
  • Z: 90

Arrow Keys

  • Up: 38
  • Down: 40
  • Left: 37
  • Right: 39

Special Keys

  • BACKSPACE: 8
  • L SHIFT: 160
  • R SHIFT: 161
  • L CONTROL: 162
  • R CONTROL: 163
  • ALT: 164
  • ESC: 27
  • SPACE: 32
  • DEL: 46

Numpad Keys

  • NUM0: 96
  • NUM1: 97
  • NUM2: 98
  • NUM3: 99
  • NUM4: 100
  • NUM5: 101
  • NUM6: 102
  • NUM7: 103
  • NUM8: 104
  • NUM9: 105

Keyboard Layouts

QWERTY

Default configuration: A/D + S/W (Keys: 65,68 / 83,87)

AZERTY

Recommended configuration: Q/D + Z/S (Keys: 81,68 / 90,83)

QWERTZ

Same as QWERTY: A/D + S/W (Keys: 65,68 / 83,87)

Configuration File Structure

The config.json file contains three main sections:

Settings Section

  • min_delay_ns: Minimum delay in nanoseconds (Standard Mode)
  • max_delay_ns: Maximum delay in nanoseconds (Standard Mode)
  • use_keyboard: Boolean to enable Keyboard Mode
  • version: Application version

Groups Section

  • id: Unique identifier for the key group
  • name: Human-readable name for the group
  • keys: Array of key codes that belong to this group

Keymap Section

  • Maps key codes to human-readable names for reference

Note: Most settings can be changed via the system tray menu without editing the configuration file directly. The application will automatically update the config file when settings are changed through the interface.

Example Configuration

{
"groups": [
{
"id": 1,
"keys": [65, 68],
"name": "Movement Keys 1"
},
{
"id": 2,
"keys": [83, 87],
"name": "Movement Keys 2"
}
],
"keymap": {
"65": "A",
"68": "D",
"83": "S",
"87": "W"
},
"settings": {
"min_delay_ns": 500000,
"max_delay_ns": 500000,
"use_keyboard": true,
"version": "3.0.0"
}
}

Installation and Usage

  1. Download: Get the latest SnapKeyAdvanced.exe from the releases
  2. Run: Execute the application (it will create a default config.json if none exists)
  3. Configure: Right-click the system tray icon to access settings
  4. Customize: Edit key bindings by opening the configuration file via the tray menu

Delay Settings

SnapKey uses nanosecond precision for timing:

  • Standard Values: 500,000 ns (0.5 ms) for general use
  • Range: Can be set from 0 to several million nanoseconds
  • Randomization: When min and max differ, delays are randomized within the range
  • Mode-Specific: Different delay settings can be configured for each mode

Troubleshooting

  • Multiple Instances: SnapKey prevents multiple instances automatically
  • Configuration Issues: Delete config.json to restore defaults
  • Tray Icon Missing: Check Windows notification area settings
  • Key Not Working: Verify key codes in the configuration match your keyboard layout

About

Windows keyboard management utility with intelligent key simulation and configurable delays for gaming.

Resources

Stars

3 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages