Three-variants: Press and hold, press-twice, or dedicated secondary lock keys. Cover labeling of the modifier key and the individual keys: show the correct mode for virtual keypads, never caps labels when in lower-case, put the shifted label above it and gray if needed, as on a hardware keypad, etc. Make sure to keep consistent: avoid having one lock key and the rest use press-twice, but if you do then make sure there's a reason like access to the fn number pad is needed sometimes; never switch modes between virtual and hardware keyboards, or when you switch between keypad and keyboard, etc.