आप YAML में टिप्पणियों को कैसे अवरुद्ध करते हैं?


1371

मैं YAML में लाइनों के एक ब्लॉक पर टिप्पणी कैसे करूं?


इस सवाल का कोई संकेत नहीं है कि इसे एक निश्चित पाठ संपादक के साथ कैसे किया जाए, इसलिए कृपया इसे यम वाक्यविन्यास नियमों और स्वतंत्रता के संदर्भ में उत्तर देने के लिए चिपके रहें।
अलेक्जेंडर स्टोह्र

जवाबों:


2004

YAML इनलाइन टिप्पणियों का समर्थन करता है, लेकिन ब्लॉक टिप्पणियों का समर्थन नहीं करता है।

से विकिपीडिया :

टिप्पणियाँ संख्या संकेत के साथ शुरू होती हैं ( # ) के , एक पंक्ति में कहीं भी शुरू हो सकती हैं, और पंक्ति के अंत तक जारी रह सकती हैं

JSON के साथ तुलना, विकिपीडिया से भी :

वाक्यविन्यास अंतर सूक्ष्म और शायद ही कभी व्यवहार में उत्पन्न होते हैं: JSON UTF-32 जैसे विस्तारित वर्णों को अनुमति देता है, YAML को कॉमा, समान और कोलोन जैसे विभाजक के बाद एक स्थान की आवश्यकता होती है, जबकि JSON नहीं करता है, और JSON के कुछ गैर-मानक प्रावधान व्याकरण को बढ़ाते हैं जावास्क्रिप्ट की /* ... */टिप्पणियों को शामिल करें। ऐसे किनारे के मामलों को संभालने के लिए इन-लाइन YAML के रूप में पार्स करने से पहले JSON के हल्के पूर्व-प्रसंस्करण की आवश्यकता हो सकती है।

# If you want to write
# a block-commented Haiku
# you'll need three pound signs

49
भयानक हाइकु (5/7/5 शब्दांश)
स्कॉट पेलक

224

कल्पना केवल टिप्पणियों अंकन करने का एक तरीका बताता है:

एक स्पष्ट टिप्पणी "#" संकेतक द्वारा चिह्नित है।

बस इतना ही। कोई ब्लॉक टिप्पणी नहीं है।


137

इसके बारे में होशियार होने की कोशिश नहीं कर रहा है, लेकिन अगर आप अपने संपादक के लिए उदात्त पाठ का उपयोग करते हैं, तो निम्न चरण हैं:

  1. ब्लॉक का चयन करें
  2. cmd+ /मैक या ctrl+ पर/ लिनक्स और विंडोज पर
  3. फायदा

मुझे लगता है कि अन्य संपादकों में भी समान कार्यक्षमता है। कौन सा एक आप प्रयोग कर रहें है? मुझे कुछ खुदाई करने में खुशी होगी।


8
एटम में भी काम करता है
mndrix

3
यदि आप YEdit प्लगइन के साथ एक्लिप्स में हैं, तो ytl फाइलों में ctrl- / के मानक Eclipse ब्लॉक-टिप्पणी-टॉगल को ब्लॉक टिप्पणी टॉगल करेगा।
मैट गिब्सन

1
कुछ संयोजन ग्रहण में काम करता है> 4.6 YAML के समर्थन में निर्मित
Faraz

3
JetBrains IDEs में काम करता है: RubyMine और Gogland
रिच Sutton

3
VSCode में भी काम करता है।
ज़ैन पटेल

67

विम में आप निम्न में से एक कर सकते हैं:

  • सभी पंक्तियों पर टिप्पणी करें: :%s/^/#
  • टिप्पणी लाइनें 10 - 15: :10,15s/^/#
  • टिप्पणी लाइन 10 से वर्तमान लाइन: :10,.s/^/#
  • टिप्पणी 10 से अंत तक: :10,$s/^/#

या दृश्य ब्लॉक का उपयोग कर:

  1. के माध्यम से दृश्य ब्लॉक में प्रवेश करने के बाद एक बहु-पंक्ति कॉलम का चयन करें Ctrl+v
  2. प्रेस rके बाद #चयन की जगह बहु-लाइन ब्लॉक बाहर टिप्पणी करने के लिए, या Shift+i#Escचयन से पहले टिप्पणी वर्ण सम्मिलित करने के लिए।

8
संभव सोच की कम से कम राशि;)। "Vim, I did a thing. do it here, and here and here and here and here..."
कॉनरैड.डीन जूल

4
आप हिट भी कर सकते हैं :और s/^/#वर्तमान चयन टिप्पणी करने के लिए टाइप कर सकते हैं ।
hakunin

1
@ कॉनरैड। मैक में सोचने के लिए सीखने की कोशिश करें । हालांकि इस कार्य के लिए लगभग समान है, qqI#<esc>jqफिर @Q@Q@Q@Q@Q@Q(क्योंकि यह शिफ्ट कुंजी को बंद नहीं करने के लिए तेज़ है), एक आदत है जिसे आप बहुत अधिक जटिल कार्यों तक बढ़ा सकते हैं। छोटा शुरू करो। अक्सर अभ्यास करते हैं। जल्द ही आप बहुत जटिल मैक्रोज़ बनाएंगे। यदि आप पहले रजिस्टर को साफ करते हैं qqq, तो आप पुनरावृत्ति प्राप्त करने के लिए @qअंतिम qसे पहले शामिल कर सकते हैं (लेकिन केवल फ़ाइल के अंत तक)।
ब्रूनो ब्रोंस्की

@BrunoBronosky: उन सभी के बजाय @q, आप बस कर सकते हैं 6@qया 10000@qयदि आप चाहें।
बोदो

2
@ बोडो आप वास्तव में कर सकते हैं। अधिकांश विम कमांड्स :h countमल्टीप्लायरों को स्वीकार करते हैं । लेकिन मेरे लिए, 6 से अधिक नेत्रहीन कुछ भी और मुझे इसे हाथ से करना होगा क्योंकि मैं मज़बूती से इसका अनुमान नहीं लगा सकता। अपवाद यह है कि मुझे पता है कि मेरे टर्मिनल पर 60+ पंक्तियां हैं, इसलिए मैं इसका उपयोग बहुत बड़े मार्को प्लेबैक के लिए अनुमान लगाने के लिए करूंगा। एक बोनस के रूप में, मैं सभी :h gnको यह जानने के लिए सुझाव देने जा रहा हूं कि कौन .से खोज मैचों पर पुनरावृत्ति करना आसान है । देखें vimcasts.org/episodes/operating-on-search-matches-using-gn
ब्रूनो Bronosky

29

एक वैकल्पिक दृष्टिकोण:

अगर

  • आपकी YAML संरचना ने आपके ऐप द्वारा उपयोग किए जाने वाले फ़ील्ड को अच्छी तरह से परिभाषित किया है
  • और आप स्वतंत्र रूप से अतिरिक्त फ़ील्ड जोड़ सकते हैं जो आपके ऐप के साथ गड़बड़ नहीं करेगा

फिर

  • किसी भी स्तर पर आप "विवरण" या "टिप्पणी" या "नोट्स" या जो भी हो, जैसे एक नया ब्लॉक टेक्स्ट फ़ील्ड जोड़ सकते हैं

उदाहरण:

के बजाय

# This comment
# is too long

उपयोग

Description: >
  This comment
  is too long

या

Comment: >
    This comment is also too long
    and newlines survive from parsing!

अधिक लाभ:

  1. यदि टिप्पणियाँ बड़ी और जटिल हो जाती हैं और दोहराई जाने वाली परिपाटी होती है, तो आप उन्हें सादे पाठ खंडों से वस्तुओं तक प्रचारित कर सकते हैं
  2. आपका ऐप भविष्य में उन टिप्पणियों को पढ़ सकता है या अपडेट कर सकता है

होशियार! धन्यवाद।
जस्टिन क्रूस

मुझे लगता है कि यह सवाल का सबसे बड़ा जवाब है; विशेष रूप से अगर कोई चाहता है कि ये टिप्पणियां JSON या XML में दिखाई दें, यदि किसी को YAML से इन दोनों में बदलना है।
मोहम्मद

7

YAML में टिप्पणी ब्लॉक करने का एक तरीका नोटपैड ++ जैसे टेक्स्ट एडिटर का उपयोग करके एक बार में कई लाइनों में # (टिप्पणी) टैग जोड़ने का है।

नोटपैड ++ में आप चयनित पाठ के लिए "ब्लॉक टिप्पणी" राइट-क्लिक विकल्प का उपयोग कर सकते हैं।

वू छवियाँ!


18
यह एकमात्र तरीका नहीं है
चार्ली एगन

और FWIW, उसके लिए कीबोर्ड शॉर्टकट (np ++ में) ctrl-shift-Q (विंडोज़ के लिए) अन्य प्लेटफॉर्म के लिए, एडिट> कमेंट / अनकम्फर्ट मेनू देखें)।
चार्ली इशार्ट

6

यदि आप yedit प्लगइन (.yaml फ़ाइलों के लिए एक संपादक) के साथ ग्रहण का उपयोग कर रहे हैं, तो आप कई लाइनों के लिए टिप्पणी कर सकते हैं:

  1. टिप्पणियों का चयन करने के लिए लाइनें, और फिर
  2. Ctrl+ Shift+C

और टिप्पणी करने के लिए, उसी चरणों का पालन करें।


5

विंडोज पर रूबी माइन उपयोगकर्ताओं के लिए:

संपादक में फ़ाइल खोलें ब्लॉक का चयन करें और Ctrl+ दबाएं forward slash, आपके पास # से शुरू होने वाले ब्लॉक का चयन होगा।

अब अगर आपके पास अपठित टिप्पणी करने के लिए टिप्पणी की ब्लॉक चाहते हैं, प्रेस एक ही कुंजी संयोजन Ctrl+ forward slashफिर से


1
यह सभी JetBrains IDE के मेरे विचार से काम करता है। मुझे पता है कि यह PyCharm के लिए भी काम करता है :) मैक OSX पर भी काम करता है।
एडगर मार्टिनेज

5

Emacs ने टिप्पणी-dwim (क्या मेरा मतलब है) - बस ब्लॉक का चयन करें और करें:

म-;

यह एक टॉगल है - इसका उपयोग टिप्पणी और अनियंत्रित ब्लॉक करने के लिए करें।

यदि आपके पास यम-मोड स्थापित नहीं है, तो आपको हैश वर्ण (#) का उपयोग करने के लिए Emacs को बताना होगा।


5

विजुअल स्टूडियो कोड (VSCode) उपयोगकर्ताओं के लिए, कई लाइनों को टिप्पणी करने का शॉर्टकट है, उन लाइनों को उजागर करना है जिन्हें आप टिप्पणी करना चाहते हैं और फिर दबाएं:

ctrl + /

एक या अधिक चयनित लाइनों के लिए टिप्पणियों को टॉगल करने के लिए ctrl+ /फिर से दबाने का भी उपयोग किया जा सकता है।


1

Azure Devops ब्राउज़र में (पाइपलाइन यम संपादक),

Ctrl+ K+ Cटिप्पणी ब्लॉक

Ctrl+ K+ UUncomment ब्लॉक

वहाँ भी एक 'टॉगल ब्लॉक टिप्पणी' विकल्प है, लेकिन यह मेरे लिए काम नहीं किया। यहां छवि विवरण दर्ज करें

अन्य 'अजीब' तरीके भी हैं: 'कमांड पैलेट' या देखने के लिए राइट क्लिक करें F1

यहां छवि विवरण दर्ज करें

फिर एक कर्सर विकल्प चुनें। यहां छवि विवरण दर्ज करें

अब यह सिर्फ बात है #

या यहां तक ​​कि चालाक [ Ctrl+ k] + [ Ctrl+ c]

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