input_capabilities(3)

πŸ“¦
version 0.7.1 Β· 2 versions
, in nixos 26.05

πŸ’– input_capabilities(3) πŸ’–

okay so this is the Arcan Lua API page for input_capabilities, and bestie, it’s literally the β€œwhat input can this thing actually handle?” function. ✨

🌸 NAME 🌸

input_capabilities β€” query platform layer or target for input capabilities. πŸ’…

✨ SYNOPSIS ✨

captbl, ident
input_capabilities( vid:fsrv )

πŸ¦‹ DESCRIPTION πŸ¦‹

This function queries the platform β€” that’s the default β€” or a frameserver when you provide a valid fsrv argument. It asks for the current set of input capabilities in terms of devices (both cases) and data types (frameserver only). πŸ‘‘

What comes back is a table where the keys are indexed with booleans that indicate whether the type is supported or not. Simple vibe: key goes in, boolean comes out, supported or nope. 🫢

A frameserver may update this mask for a segment at will. When the mask is changed, an "input_mask" event will be sent to the frameservers assigned event handler. This mask will be applied to samples provided through target_input. πŸ”₯

For the platform, the set may also change when devices are added and removed in response to a device appearing and removing. So yeah, it’s lowkey alive like that. 🌈

The set of provided or accepted devices may be zero, one or many of the following β€” and I’m putting the exact spelling from the page here so nothing gets lost, no cap:

"keyboard, "mouse", "game", "touch", "position",
"orientation", "eyetracker"

The set of accepted datatypes may be zero, one or many of the following: "analog", "digital", "translated", "touch", "eyes". πŸŽ€

πŸŽ€ EXAMPLE πŸŽ€

function input_capabilities0()
      for k,v in pairs(input_capabilities()) do
            print(k, v);
      end
end

πŸ‘€ SEE ALSO: πŸ‘€

  • iodev β€” go peek, bestie. πŸ¦‹

that’s the whole page, bestie 🫢 β€” source/version says iodev, date is October 2026, and it’s the input_capabilities(3) page. periodt. πŸ’œ

πŸ“¦ where this page comes from