! 하드웨어 키보드로 텍스트 입력 (:send_text)
이 메서드는 20260805 이후 버전에서만 사용할 수 있습니다
선언
성공 여부, 오류 정보 = 하드웨어 키보드 객체:send_text(텍스트[, 키별 지연, Shift 키 지연])
매개변수
- 텍스트
입력할 문자열입니다. 영문자, 숫자, 공백, 반각 문자와
"\b","\r","\t"만 지원합니다. - 키별 지연 각 키 동작 사이의 지연 시간을 밀리초 단위로 지정하는 실수형 선택 매개변수이며 기본값은 0입니다.
- Shift 키 지연 Shift를 누르거나 놓기 전후의 지연 시간을 밀리초 단위로 지정하는 실수형 선택 매개변수이며 기본값은 0입니다.
반환값
- 성공 여부
불리언입니다. 모든 텍스트 전송에 성공하면
true, 실패하면false를 반환합니다. - 오류 정보 문자열이며 전송에 실패하면 오류 정보를 반환합니다.
설명
현재 Lua의 미국식 키보드 매핑에 따라 키와 Shift 조합을 생성합니다. 입력 과정에서 기다릴 때 암묵적으로 실행권을 양보하므로 메서드가 반환되기 전에 다른 스레드가 실행 기회를 얻을 수 있습니다.
- 최종 입력 문자는 대상 시스템의 키보드 배열에도 영향을 받습니다.
- 이 메서드는 호출 전에 이미 눌려 있던 일반 키와 보조 키(modifier)를 보호합니다.
- 같은 하드웨어 키보드에서
:press또는:send_text시퀀스를 실행 중이면 새 작업은false, "hardware keyboard is busy"를 반환합니다. - 전송에 실패해도 다른 입력 방식으로 자동 재시도하지 않습니다.
예제
local keyboard = assert(key.connect_keyboard())
assert(keyboard:send_text("Hello"))
assert(keyboard:send_text("Hello", 30, 10))
assert(keyboard:disconnect())