मैंने एक प्रतिलिपि कंसोल में बहुत सारे कोड के साथ खेला है, मैं इसे कैसे साफ़ कर सकता हूं? मैं इसे फिर से शुरू किए बिना एक ताजा चाहता हूँ। क्या यह किया जा सकता है?क्या मैं प्रतिलिपि को साफ कर सकता हूं?
उत्तर
आप एक टर्मिनल विंडो के माध्यम से repl चला रहे हैं (जैसे: MacOS या टर्म/aterm/urxvt आदि लिनक्स पर पर Terminal.app) तो आप नियंत्रण-एल टाइप कर सकते हैं और यह टर्मिनल विंडो स्पष्ट और देना चाहिए आप एक नया प्रतिकृति संकेत। हालांकि आपके द्वारा पहले परिभाषित सभी मैक्रोज़/परमाणु अभी भी स्मृति में होने जा रहे हैं, इसलिए यह सिर्फ "प्रसाधन सामग्री" स्पष्ट है।
आप सभी अस्थायी चर और कार्यों की वर्तमान नाम स्थान साफ़ करना चाहते हैं आप घोषित आप इस एक लाइनर का उपयोग कर सकते हैं (या उसका एक कार्य करना):
(map #(ns-unmap *ns* %) (keys (ns-interns *ns*)))
या
(ns myutil)
(defn ns-clean
"Remove all internal mappings from a given name space or the current one if no parameter given."
([] (ns-clean *ns*))
([ns] (map #(ns-unmap ns %) (keys (ns-interns ns)))))
(ns mytest)
... make loads of junk ...
(myutil/ns-clean)
... great!!! I can now make all new junk ...
यह आपको एक स्क्केकी क्लीन नेमस्पेस देने का दावा नहीं करता है, केवल एक जंक के साथ जो आमतौर पर एक सामान्य प्रतिलिपि सत्र में जमा होता है।
सावधानी के साथ प्रयोग करें: अपने पैरों के नीचे से गलीचा खींचें मत!
धन्यवाद। मैं बस कंसोल में पाठ से छुटकारा पाने के बारे में सोच रहा था ... आप इसमें नई रोशनी डालते हैं – Belun
यह सही सवाल की तलाश में एक अद्भुत जवाब है। –
Emacs/कीचड़ REPLs प्रतिलिपि सह में पिछले निर्गम (मामले में आप कुछ है जो एक बहुत लंबे जवाब दिया टाइप किया है) प्रतिलिपि मो पूरी बात
सूक्ति टर्मिनल में साफ करता है को साफ करता है, तो आप मिल गया है एक मेनू विकल्प टर्मिनल/रीसेट और साफ़
ध्यान दें कि सी-सी एम-ओ वास्तव में पहले से ही आरईपीएल द्वारा व्याख्या किए गए किसी भी काम को मिटा नहीं देता है, यह सिर्फ स्क्रीन को साफ़ करता है। कोई परिभाषा अभी भी वहां है। – johnbakers
आप Emacs + nREPL
, आप कर सकते हैं या तो उपयोग कर रहे हैं:
- भागो एमएक्स
nrepl-clear-buffer
या - भागो सीगएमओ
कुंजी बाइंडिंग सक्षम नहीं है, को चलाने एमएक्सnrepl-interaction-mode
इसे सक्षम करने के। आप nrepl.el में अन्य उपयोगी शॉर्टकट ढूंढ सकते हैं और/या अपनी आवश्यकताओं के अनुसार कुंजी बाइंडिंग को कस्टमाइज़ कर सकते हैं।
नोट: यदि आप M-x v
nrepl-mode-map
चल रहा है और nrepl.el
लिंक का पालन करके सभी nREPL
के आपके सिस्टम में कुंजी बाइंडिंग पा सकते हैं।
क्यों हाँ मैं emacs चला रहा हूँ। यह बहुत अच्छा काम करता है, धन्यवाद! :) – enderland
shorcut पूरे बफर साफ करने के लिए: सी - यूसी - गसी - ओ
शॉर्टकट पिछले उत्पादन साफ करने के लिए: सी - सीसी - ओ
ध्यान दें, पुराने तरीके से किया गया था: सी - गएम - ओ
मैं उपयोग Emacs एम एक्स के माध्यम से cider-repl-clear-buffer
आदेश। एक उपसर्ग तर्क के साथ cider-repl-clear-output
का भी उपयोग कर सकता है: सी-यू सी-सी सी-ओ।
यह निर्भर करता है कि आप 'साफ' से क्या मतलब रखते हैं। 'पैकेज' के भीतर सभी नेमस्पेस को निकालने के लिए आप इसका उपयोग कर सकते हैं:
(mapv remove-ns
(map symbol
(filter #(.startsWith % "org.mycompany")
(map str (all-ns)))))
प्रारंभिक प्रश्न प्रतिलिपि को कॉस्मेटिक रूप से साफ़ करने के बारे में था। बाद में मुझे एहसास हुआ कि समाशोधन का मतलब कुछ और हो सकता है :) – Belun