इनपुट-नो-इनपुट का उपयोग कैसे करें?


11

डॉकस्ट्रिंग से:

केवल तब तक निष्पादित करें जब तक कोई लंबित इनपुट न हो।
यदि इनपुट आता है, जो BODY के निष्पादन को समाप्त करता है, और while-no-inputt को लौटाता है। छोड़ने से यह शून्य हो जाता है। यदि BODY समाप्त हो जाता है, तो BODY while-no-inputजो भी उत्पादन करता है , उसे वापस करता है

अगर मैं सही तरीके से समझूं, तो यह मैक्रो इंटरफ़ेस को लटकाए बिना मुझे एक भारी गणना करने की कोशिश करता है। यह निश्चित रूप से एक अवधारणा है जो मुझे आकर्षक लगती है, लेकिन मैं आश्चर्यचकित रह जाता हूं कि यह व्यवहार में कब उपयोगी है।

ऐसा लगता है कि गणना किसी भी क्षण बाधित हो सकती है, जहां यह जानकारी नहीं है कि यह कहां हुआ है, और बाद में इसे फिर से शुरू करने का कोई आसान तरीका नहीं है। जो मुझे लगता है कि यह सब के बाद उपयोगी नहीं हो सकता है ...

  • while-no-inputमैक्रो का उपयोग करने का एक अनुशंसित तरीका है ?
  • वहाँ जंगली में इस मैक्रो के किसी भी उदाहरण usages है?

1
ऐसा लगता है कि icomplete +, ivy, helm उपयोग करने वाले कुछ पैकेज हैं।
कौशल मोदी

जवाबों:


10

वास्तव में, फिर से शुरू करने के लिए कोई समर्थन नहीं है। बेशक, शरीर while-no-inputनियमित रूप से "चौकियों" कर सकता है ताकि यह पता चल सके कि अगली बार कहां शुरू करना है।

लेकिन इस कार्यक्षमता के लिए मूल प्रेरणा उन मामलों में थी जहां गणना की गई जानकारी अगले आदेश के बाद बेकार है। अधिक विशेष रूप से, इसके लिए पेश किया गया था icomplete, ताकि पूरा होने वाले उम्मीदवारों के सेट की गणना उपयोगकर्ता को आगे के पाठ को टाइप करने से न रोक सके (जो बदले में वैसे भी पूर्ण उम्मीदवारों के उस सेट के पुनर्संयोजन की आवश्यकता होती है)।


4

यह काउंसिल-गिट-ग्रीप में सुपर-उपयोगी है : मैं प्रत्येक कुंजी स्ट्रोक के बादgit grep एमएसीएस गिट रिपॉजिटरी की पूरी 3,800,000 लाइनों पर कॉल करने में सक्षम हूं । कोई हैंगअप नहीं। और यह बाधित होना ठीक है, आपको बस उसके लिए जाँच करने की आवश्यकता है।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.