2012-02-02 15 views
45

Possible Duplicate:
R: Multiline Comment Workarounds?आर: कोड के ब्लॉक बाहर टिप्पणी

मैं आर में कोड की कई लाइनों बाहर टिप्पणी करना चाहते हैं वहाँ एक # प्रत्येक पंक्ति से पहले डाल करने के लिए बिना यह कर के कोई तरीका है - एसएएस में /* blocked out code */ तरह तरह की ?

+0

आर बहु-पंक्ति टिप्पणियां नहीं करता है। समान धागा देखें: http://stackoverflow.com/questions/4131338/is-it-possible-to-have-a-multi-line-comments-in-r – Maiasaura

+0

मेरा सबसे अच्छा सुझाव मैक्रो (या प्लगइन) लिखना होगा यदि आप सब्लिमे टेक्स्ट 2 की तरह कुछ उपयोग करते हैं) और एक कीबाइंडिंग असाइन करें जैसे चयनित टेक्स्ट बाइंडिंग को दबाए जाने के बाद चयनित टेक्स्ट (यानी टिप्पणियां) सामने # हो। – Maiasaura

+0

एक विचार है। बहुत बुरा आर इसे मूल रूप से नहीं करता है। धन्यवाद, मायासोरा। – user702432

उत्तर

26

अधिकांश संपादक कोड के ब्लॉक को टिप्पणी करने के लिए किसी प्रकार का शॉर्टकट लेते हैं। डिफ़ॉल्ट संपादक कोड की चयनित पंक्तियों पर टिप्पणी करने के लिए कमांड या नियंत्रण और सिंगल कोट जैसे कुछ का उपयोग करते हैं। RStudio में यह आदेश या नियंत्रण '/' है। अपने संपादक में जांचें।

यह अभी भी रेखा से लाइन पर टिप्पणी कर रहा है, लेकिन वे चयनित लाइनों को भी असम्बद्ध करते हैं। मैक RGUI के लिए यह कमांड-विकल्प '(मुझे कल्पना है कि विंडोज़ नियंत्रण विकल्प है)। Rstudio के लिए यह सिर्फ आदेश या नियंत्रण + शिफ्ट + सी फिर से है।

+3

हाँ, यह एक सुपर-आसान सुविधा है। Emacs में, केवल क्षेत्र-से-टिप्पणी करने के लिए हाइलाइट करें, और उन अक्षरों के बाद 'सी-एक्स आर टी' टाइप करें जिन्हें आप जोड़ना चाहते हैं (कुछ "##" ')। SO के लिए कोड ब्लॉक इंडेंट करने के लिए, वही काम करें, लेकिन उन अंतिम तीन वर्णों को चार रिक्त स्थान से बदलें! –

+2

Emacs में आप 'एम-एक्स टिप्पणी-क्षेत्र' का भी उपयोग कर सकते हैं। 'सी-एक्स आर' के बारे में नहीं पता था, धन्यवाद! –

+16

CTRL + SHIFT + C ग्रहण/स्टेटेट के तहत चयन की टिप्पणी को टॉगल करता है। ब्लॉक टिप्पणियों को टॉगल करने के लिए –

35

ब्लॉक टिप्पणी एक प्रकार का एक अगर बयान का उपयोग करता है:

if(FALSE) { 
    all your code 
} 

यह काम करता है, लेकिन मैं लगभग हमेशा मेरी संपादकों (RStudio, केट, Kwrite) के ब्लॉक टिप्पणी विकल्प का उपयोग करें।

19

एक अप्रयुक्त समारोह में लपेट:

.f = function() { 

## unwanted code here: 

} 
1

मैं RStudio या Emacs का उपयोग करें और हमेशा क्षेत्रों टिप्पणी करने के लिए संपादक उपलब्ध शॉर्टकट का उपयोग करें। यदि यह कोई संभावना नहीं है तो आप पॉल के उत्तर का उपयोग कर सकते हैं लेकिन यह केवल तभी काम करता है जब आपका कोड वाक्य रचनात्मक रूप से सही हो।

यहाँ एक और गंदे तरह से मैं के साथ आया है, scan() में लपेट और परिणाम को हटा दें। यह थोड़ी देर के लिए स्मृति में टिप्पणी संग्रहीत करता है, इसलिए यह शायद बहुत बड़ी टिप्पणियों के साथ काम नहीं करेगा। सबसे अच्छा अभी भी # प्रत्येक पंक्ति के सामने संकेत (शायद संपादक शॉर्टकट के साथ) डालना है।

foo <- scan(what="character") 
These are comments 
These are still comments 
Can also be code: 
x <- 1:10 
One line must be blank 

rm(foo) 
+2

भी गंदे बदलाव है। परिभाषित करें '"#" <- फ़ंक्शन() अदृश्य (स्कैन करें (क्या = वर्ण())) फिर' # "()' के साथ अपनी टिप्पणी ब्लॉक शुरू करें। –

+0

पिछले उत्तर में उद्धरणों के बजाय वास्तव में बैकटिक्स होना चाहिए (हालांकि यह किसी भी मामले में काम करता है), लेकिन अगर मैं एक टिप्पणी के अंदर कोड ब्लॉक में बैकटिक्स कैसे प्राप्त कर सकता हूं तो मुझे डर दिया जाएगा। –

+0

रिची, अच्छा सुझाव, लेकिन स्लेश त्रुटि संदेशों को उत्पन्न करेगा: त्रुटि: अप्रत्याशित '/' में: "' # '(# टिप्पणी की शुरुआत http: /" – PatrickT

0

मैं पदों 94 में talkstats.com पर इस के साथ निपटा है, 101 & 103 धागा में पाया: Share Your Code। जैसा कि अन्य ने कहा है कि रुस्तुडियो जाने का एक बेहतर तरीका हो सकता है। मैं इन कार्यों को अपने .prprofile में संग्रहीत करता हूं और वास्तव में उनका उपयोग करता हूं लेकिन कोड की लाइनों को स्वचालित रूप से अवरुद्ध करने के लिए।

उतना अच्छा नहीं जितना आप उम्मीद कर रहे थे लेकिन एक दृष्टिकोण हो सकता है।