zsh 탭 완성 취소


10

완료가 완료되면 취소하는 방법이 있습니까? 때로는 어리석게도 Tab 키를 눌러 자동 완성 대상 (단순한 무모 함)을 만든 다음 방금 "설치"또는 "체크"전체를 직접 입력 한 것보다 더 오래 기다려야합니다.

zshzle 매뉴얼 페이지에 메모가 표시되지 않았지만 뭔가 빠졌습니까? 다른 쉘에이 기능이 있습니까?

편집 : 사소한 답변. 그래서 대신 : zsh가 탭 완성을 실행하는 데 비교적 오랜 시간이 걸릴 것이라고 추정하고 대신 사용자 가이 작업을 수행 할 것인지 묻는 방법이 있습니까?


2
ctrl-c작동하지 않습니까?
llua

1
젠장! 그것은 어떤 이유로 나에게 발생하지 않았습니다. Ctrl-C가 더 극적인 일을했을 것이라고 생각합니다. 질문을 삭제 하시겠습니까? (또는 어쩌면 당신은 어떤 담당자를 원하십니까?)
Zorawar

1
탭 완성에 걸리는 시간을 추정 할 수있는 방법이 없다고 생각합니다. 결과를 캐시 할 수도 있지만 그럴 수도 있습니다.
Ulrich Dangel

1
@ zorawar, 난 그냥 높은 점수를 얻을 수 있도록 노력하고 있습니다 :]
llua

1
ctrl-c는 모든 zsh의 완료 메커니즘에 대해 작동하지 않습니다. 누군가 이것을 막을 다른 방법을 알고 있다면. 여기에 그 대답을하는 것이 좋을 것입니다.
xer0x

답변:


7

SIGINT는 현재 완료 작업을 중단하고 다시 라인 편집기를 제공합니다. Ctrl+를 누르십시오 C. 결과는 즉각적이지 않을 수 있습니다. 인터프리터는 실행 중 특정 지점의 신호 만 확인하지만 (빈번한 경우) 시스템 호출에서 zsh 프로세스가 차단 된 경우 신호가 시간이 걸릴 수 있습니다 (예 : 파일 시스템이 응답하기를 기다리는 중)

불행히도, 잘못된 시간에 Ctrl+ 를 눌렀을 C때 신호가 전달 될 때까지 진행이 완료되지 않으면 현재 명령 행이 취소됩니다. 두 개의 다른 인터럽트 키 (하나는 완료를위한 것이고 다른 하나는 나머지를위한 것) 없이는 수정하기가 어렵고 zsh가이를 지원하는지 확실하지 않습니다.

완료에 시간이 오래 걸릴 수 있다고 경고하는 것은 실제로 불가능합니다. 완료 기능의 속도는 주로 파일 시스템에서 일부 정보를 읽을 수있는 속도에 의해 결정됩니다. 이 정보가 캐시에 있는지 여부, 존재하는 양 및 파일 시스템의 종류 (예 : 램 디스크, 하드 디스크 또는 NFS 마운트)가 많은 영향을 미칩니다.


1
아마도 탭 완성을 위해 구성 가능한 시간 초과가 정상적인 기본값 일 것입니다.
antiduh

3

ctrl+ k를 사용 하여 자동 완성을 취소 할 수 있습니다 . 그러나 zsh 안내서 에서 정보를 찾을 수 없지만 자동 완성을 취소합니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.