입력하지 않은 상태에서 사용하는 방법?


11

docstring에서 :

보류중인 입력이없는 경우에만 BODY를 실행하십시오.
입력이 도착하면 BODY 실행이 종료되고 while-no-inputt가 반환됩니다. 종료하면 nil이 반환됩니다. BODY가 끝나면 BODY가 while-no-input생성 한 값을 반환합니다.

올바르게 이해하면이 매크로를 사용하면 인터페이스를 중단하지 않고 무거운 계산을 수행 할 수 있습니다. 그것은 내가 매력적으로 생각하는 개념이지만, 실제로 그것이 언제 유용한 지 궁금합니다.

발생한 위치에 대한 정보와 나중에 다시 시작하는 쉬운 방법없이 언제든지 계산을 중단 할 수 있습니다. 결국 그다지 유용하지 않을 것이라고 생각하게 만듭니다 ...

  • while-no-input매크로 를 사용하는 것이 권장되는 방법이 있습니까?
  • 이 매크로를 실제로 사용하는 예가 있습니까?

1
icomplete +, ivy, helm 처럼 보이는 패키지는 거의 사용하지 않습니다.
Kaushal Modi

답변:


10

실제로 재개는 지원되지 않습니다. 물론 본문은 while-no-input다음에 시작할 위치를 알기 위해 정기적 인 "체크 포인트"를 수행 할 수 있습니다.

그러나이 기능의 원래 동기는 다음 명령 후에 계산 된 정보가 쓸모없는 경우에있었습니다. 보다 구체적으로, icomplete완료 후보 세트의 계산으로 인해 사용자가 추가 텍스트를 입력하는 것을 막을 수 없습니다 (결과적으로 해당 완료 후보 세트의 재 계산이 필요함).


4

advisor-git-grep 에서 매우 유용합니다 . 키 입력 git grep 3,800,000 줄의 Emacs git 저장소 를 모두 호출 할 수 있습니다. 끊지 않습니다. 중단해도 괜찮습니다. 확인 만하면됩니다.

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