스니펫으로 실행한 스크립트가 Ctrl+C(SIGINT)로 취소되지 않는 현상
対応予定[버그 신고] 스니펫으로 실행한 스크립트가 Ctrl+C로 취소되지 않는 현상
1. 문제 현상
- TasteSSH에서 등록된 스니펫(Snippet)을 통해 터미널에 스크립트/명령어를 실행했을 때, 실행 중인 작업을 취소하기 위해
Ctrl + C를 입력해도 아무런 반응이 없고 스크립트가 중단되지 않습니다. - 루프 문, 실시간 로그 모니터링(
tail -f), 장시간 소요 스크립트 등을 스니펫으로 실행했을 때 중간 취소가 불가능하여 결국 SSH 세션 연결을 끊거나 창을 닫아야 하는 불편이 발생합니다.
2. 정상 기대 동작
- 일반 대화형 셸에서 직접 명령어를 입력해 실행했을 때와 마찬가지로, 스니펫으로 실행 중인 스크립트도
Ctrl + C입력 시 즉시 인터럽트 신호(SIGINT)가 전달되어 작업이 중단되어야 합니다.
3. 원인 추정 및 기술적 확인 요청
- 입력 스트림(stdin) 전달 방식 차이: 스니펫 코드가 전송될 때 대화형 PTY 스트림이 아닌 백그라운드 일괄 실행/파이프 방식으로 처리되어 제어 문자(
\x03) 수신이 차단되는지 확인 필요. - 키보드 포커스 및 이벤트 전파: 스니펫 실행 중 터미널 뷰포트의 포커스 상태 또는 xterm/PTY 키 이벤트 핸들러가 제어 신호를 흡수해 버리는지 점검 필요.
- 취소 편의 기능(제안): 키보드 인터럽트 외에도 스니펫 실행 패널 또는 터미널 상단에 '실행 중단(Stop/Abort)' 액션 버튼이 함께 제공되면 좋을 것 같습니다.
수정중
