Ctrl+z로 인해 응용 프로그램이 중단되는 것을 방지하는 방법은 무엇입니까?

Ctrl+z로 인해 응용 프로그램이 중단되는 것을 방지하는 방법은 무엇입니까?

현재 dvtm터미널 내에서 실행 중이며 일시 vim중지 하려고 +를 dvtm누르면 일시 중지 됩니다 . 나 에게는 이 문제가 없으므로 뭔가 잘못되고 있는 것(또는 올바른 일을 하지 않는 것) 이 틀림없다고 생각합니다 . 이 문제를 어떻게 해결할 수 있나요?Ctrlzvimdvtmscreentmuxdvtm

업데이트: 제가 틀렸습니다 dvtm. 사실은 dtach+ dvtm조합을 사용했는데 dvtm에 문제가 있다고 잘못 생각했습니다. 문제는 실제로 입니다 dtach.

답변1

고쳐 쓰다(새 답변):

dtach-z"보류 중인 키 처리 비활성화"라는 옵션이 있습니다 . 라고 물어보면 헷갈리는데, Ctrl+Z캡쳐가 아닌 Vim으로 효과가 전달되는 것 같습니다 dtach.

dtachdvtm보다 일반적인 답변: "내부" 작업에 전달되는 모든 항목을 거의 절대적으로 제어하는 ​​프로그램 입니다. 이는 비서에게 받아쓰기를 맡기는 것과 같습니다. 원하는 것을 말할 수 있지만 실제로 종이에 나타나는 내용은 비서가 통제합니다. 따라서 최종 프로그램에서 Ctrl+Z를 허용하려면 명령줄 옵션이든 소스 코드 편집이든 모든 중간 계층이 협력하도록 해야 합니다.


내 생각에는 이것은 실수이다 dvtm. 소스 코드를 확인하면 SIGTSTP+를 누를 때 터미널의 포그라운드 애플리케이션으로 전송되는 신호를 캡처하지 않습니다 . 신호를 명시적으로 포착하지 못하기 때문에 기본 동작으로 돌아가 정지됩니다. 해야 할 일은 이 신호를 잡아서 창 중 하나로 전달하는 것뿐입니다.Ctrlzdvtm

관련 정보