[소개] retekey - 개발자와 전문가를 위한 안드로이드 키보드(IME)
폰에서 터미널을 열거나 코드를 볼 때마다 Esc 가 없고 Tab 이 없고 Ctrl 조합이 안 먹는 키보드 때문에 답답하셨다면, 그 문제만 보고 만든 키보드입니다.
- GitHub — https://github.com/rubidus-api/retekey_apk
- 조만간 F-droid 에 등록될 예정입니다.
# 단축키 및 특수키 지원
키패드 자판 한 장에 개발할 때 필요한 키가 전부 들어 있습니다(키 우하단 특수문자(#!)버튼 홀드로 호출).
- Esc · Tab · Insert · Delete
- Home · End · PgUp · PgDn · 방향키 4종
- F1~F12·PrtSc·ScrLk·Pause·Menu
전부 진짜 키 이벤트로 나갑니다. 문자를 흉내 내 넣는 게 아니라 KEYCODE_ESCAPE, KEYCODE_TAB 이 그대로 앱에 도착하므로, vim 도 터미널 에뮬레이터도 코드 에디터도 물리 키보드를 붙인 것처럼 반응합니다.
Ctrl·Alt·Meta·Shift 는 세 가지 상태를 가집니다.
- 짧게 탭 - 다음 한 키에만 적용 (Ctrl 탭 → C = Ctrl+C)
- 길게 누름 - 계속 잠금 — 연속 단축키를 칠 때
- 잠긴 것을 탭 - 해제
지금 어느 상태인지 키 위에 표시됩니다 — 우상단의 속 빈 고리는 잠기지 않음, 꽉 찬 점은 잠김이고, 배경색도 함께 바뀝니다. Ctrl+B 를 연달아 쳐야 하는 tmux 같은 상황에서 Ctrl 을 매번 다시 누르지 않아도 됩니다.
Tab 도 같습니다 — 짧게 누르면 탭 하나, 길게 누르면 누른 채로 잠깁니다.
물리 키보드를 붙여도 자연스럽습니다
- 블루투스/USB 키보드를 연결하면 화면 자판이 알아서 내려갑니다.
- 물리 키보드로도 한글이 조합됩니다(2벌식).
- Ctrl/Alt/Meta 조합은 IME 가 먹지 않고 앱으로 통과시킵니다. 앱 자체 단축키가 그대로 삽니다.
- 한/영 전환과 한자 변환 키를 원하는 키에 직접 바인딩할 수 있습니다(예: Shift+Space, 오른쪽 Ctrl).
# 자판 구성
영문은 QWERTY 와 Dvorak을 지원합니다. 한글은 2벌식·천지인·나랏글을 지원합니다. 천지인은 밀어치기(스와이프 동작)를 지원합니다. 자음은 좌=예사소리, 우=거센소리, 하=된소리.
# 그 외의 장점
- 세로/가로 화면마다 높이·자판 목록·플로팅 패널을 따로 기억합니다.
- 화면 절반만 쓰는 플로팅 키보드를 원하는 위치·투명도로. 버튼 하나로 좌우 대칭으로 이동 가능.
- 시스템 라이트/다크 테마와 Material You 를 따릅니다.
- 안드로이드 9 이상용과 안드로이드 4.0 이상용 두 가지 빌드가 있습니다. 오래된 폰도 버리지 않았습니다.
버그나 기능 요청은 깃허브를 통해 해주세요. 많은 관심 바랍니다. 감사합니다.