love-keyboard

Automate Love2D keyboard APIs for key presses, scancodes, and text input.

1|Updated Jan 23, 2026
One-click install
npx skills add https://github.com/RedKenrok/skills --skill love-keyboard
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: love-keyboard
Source: https://github.com/RedKenrok/skills/tree/main/skills/love-keyboard
Command: npx skills add https://github.com/RedKenrok/skills --skill love-keyboard

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This Skill provides a ready-to-use interface for handling keyboard input in LÖVE games, consolidating key and scancode handling, screen keyboard support, and text input toggling into a single, discoverable entry.

Core Features & Use Cases

  • Detect and map physical keys to logical actions via love.keyboard.getKeyFromScancode and love.keyboard.getScancodeFromKey.
  • Manage input state with hasKeyRepeat, isDown, and isScancodeDown, enabling responsive controls across platforms.
  • Enable or disable text input with setTextInput and support on-screen keyboards on platforms that require it.
  • Support international keyboard layouts and modifiers for flexible controls.

Quick Start

Use the love-keyboard skill to detect the Escape key to quit the game and to handle general text input via love.textinput for UI or chat.

Frequently Asked Questions about love-keyboard

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I handle keyboard input in LÖVE for international keyboard layouts?

Handle keyboard input for international layouts in LÖVE by mapping physical keys to logical actions using scancodes via getKeyFromScancode and getScancodeFromKey, ensuring consistent controls across different keyboard regions.

What is the difference between isDown and isScancodeDown for LÖVE game development?

The difference between isDown and isScancodeDown in LÖVE is that isDown checks the logical key character, while isScancodeDown checks the physical hardware key location, enabling platform-independent controls.

How do I enable text input for a chat interface in a Lua LÖVE game?

Enable text input for a chat interface in a Lua LÖVE game by calling setTextInput to toggle text entry, which activates on-screen keyboards on mobile platforms and routes typed characters through love.textinput.

Does LÖVE support key repeat events for responsive game controls?

LÖVE supports key repeat events for responsive game controls through the setKeyRepeat and hasKeyRepeat functions, allowing you to configure whether holding a key continuously triggers input events.

Can I use a single interface to manage both key states and screen keyboard support in LÖVE?

You can use a single interface to manage key states and screen keyboard support in LÖVE by consolidating scancode handling, input state checks, and setTextInput toggling into one workflow.

Why should I use scancodes instead of key names for cross-platform LÖVE controls?

Use scancodes instead of key names for cross-platform LÖVE controls because scancodes map to physical key locations rather than character outputs, ensuring your game responds correctly on different keyboard layouts.