यह .yaml या .yml है?


336

Yaml.org के अनुसार , आधिकारिक फाइल एक्सटेंशन है .yaml

उद्धरण:

वहाँ YAML फ़ाइलों के लिए एक आधिकारिक विस्तार है?

कृपया जब संभव हो तो ".yaml" का उपयोग करें।

हालांकि इंटरनेट पर असहमति प्रतीत होती है कि किस एक्सटेंशन का उपयोग करना है। यदि आप वेब पर उदाहरण देखते हैं , तो उनमें से कई का उपयोग बिना .ymlविस्तार के किया जाता है।

Google को सर्च करने से लगभग 3 गुना कम रिटर्न मिलता है।


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


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


तो मैं कौन सा उपयोग करने वाला हूं? रचनाकार द्वारा सुझाया गया उचित 4 अक्षर विस्तार, या इंटरनेट के जंगली पश्चिम में पाया गया 3 अक्षर विस्तार?


3
शायद जनता को यहां शिकायत करनी चाहिए और उन्हें आधिकारिक सिफारिश को ".yml" में बदलने के लिए कहना चाहिए। संगठन (और संस्थापक) स्वाभाविक रूप से "धीमे" हो सकते हैं, लेकिन शायद वे वास्तविक दुनिया के उपयोग का पालन करने के लिए आश्वस्त हो सकते हैं (यदि केवल भाषा को आगे बढ़ाने के लिए)।
मार्कबडलैकवेल

3
@AndrewWagner, अगर वे अपना रेक बदल देते हैं .yml, तो लोग बदल सकते हैं .yaml:-)
go2null

4
yaml.org/faq.html -> का प्रयोग करें .yaml
Wannes

6
मुझे यकीन नहीं है कि yaml.org बहुत ज्यादा मदद कर रहा है क्योंकि वे अभी भी दिखाते हैं:© 2001-2006 YAML.org All Rights Reserved
सीन

6
अब आप .htm या .html का उपयोग कर रहे हैं? यदि आप अभी भी .htm से चिपके रहते हैं, तो संभवतः .yml आपके लिए सही विकल्प है। अन्यथा, आप .yaml का उपयोग करने के लिए बेहतर हो सकते हैं। :-)
xorcus

जवाबों:


215

फ़ाइल एक्सटेंशन की प्रकृति और यहां तक ​​कि अस्तित्व प्लेटफ़ॉर्म-निर्भर है (कुछ अस्पष्ट प्लेटफ़ॉर्म भी उनके पास नहीं हैं, याद रखें) - अन्य प्रणालियों में वे केवल पारंपरिक (यूनिक्स और इसके ilk) हैं, जबकि अभी भी अन्य में उनके पास निश्चित शब्दार्थ हैं और कुछ मामलों में लंबाई या वर्ण सामग्री (विंडोज, आदि) पर विशिष्ट सीमाएं।

चूंकि रखरखावकर्ताओं ने पूछा है कि आप ".yaml" का उपयोग करते हैं, इसलिए यह "आधिकारिक" सत्तारूढ़ के करीब है जितना आप प्राप्त कर सकते हैं, लेकिन 8.3 की आदत मुश्किल है (और, 2013 में, कभी-कभी प्रासंगिक भी)।


4
क्या बदतर है Notepad ++ की मेरी स्थापना यह गलत :-( प्राप्त करने के लिए लगता है
शमूएल Harmer

35
3-अक्षर प्रत्यय सम्मेलन लगभग 2 दशकों से अप्रचलित है। अगर कुछ भी हो, तो मेरा तर्क है कि वर्ल्ड-वाइड वेब ने इसे 90 के दशक में चित्रित किया। यह अपमानजनक है कि कोई भी देखभाल करने की कोशिश करता है। पर्याप्त है कि मैं सॉफ्टवेयर के किसी भी टुकड़े के खिलाफ एक बग दर्ज करूंगा जो इसकी वजह से टूट जाता है।
डेव

3
विकिपीडिया की श्रेणी: Filename_extensions पेज .a , .o और .z के लिए प्रविष्टियों को सूचीबद्ध करता है । किसी तरह, यह .c और .h याद किया । ये एकल-अक्षर एक्सटेंशन हमें यह देखने में मदद करते हैं कि एक्सटेंशन लंबे समय तक आवश्यक होने चाहिए, लेकिन अब ( - आइंस्टीन को आधा-कोट करने के लिए )।
MarkDBlackwell

19
मैंने अपनी फाइल को नाम दिया है .ymlऔर ऐसा कुछ भी नहीं है जो आप इसके खिलाफ कर सकते हैं।
bvdb

4
@ क्या मैं आपकी बहुमूल्य प्रतिक्रिया को ध्यान में रखूंगा। ( आपकी प्रतिक्रिया को सहेजना DOCUME~1.HTM )
bvdb

31

संपादित करें:

तो मैं कौन सा उपयोग करने वाला हूं? रचनाकार द्वारा सुझाया गया उचित 4 अक्षर विस्तार, या इंटरनेट के जंगली पश्चिम में पाया गया 3 अक्षर विस्तार?

यह सवाल हो सकता है:

  1. सलाह के लिए एक अनुरोध; या

  2. उस विशेष भावना की एक स्वाभाविक अभिव्यक्ति जो अनुभव की जाती है, जबकि कोई यह देख रहा है कि कुछ आधिकारिक सिफारिश की अवहेलना की जा रही है - या यहां तक ​​कि मुख्य रूप से।

लोगों को निम्नलिखित के लिए उनकी भविष्यवाणी में भिन्नता है:

  1. आधिकारिक सलाह; या

  2. अभ्यास का पूर्वानुभव।

बेशक, मैं आपको प्रभावित करने की संभावना नहीं हूं, आप इन दोनों रास्तों में से कौन सा रास्ता लेना चाहते हैं!

निम्न में (और, विज्ञान की भावना में), मैं केवल एक परिकल्पना करता हूं, क्या (केवल एक तथ्य के रूप में) ने 3-अक्षर विस्तार का उपयोग करने के लिए अधिकांश लोगों का नेतृत्व किया। और, मैं कुशल कारणों पर ध्यान केंद्रित करता हूं

इसके द्वारा, मैं नैतिक उद्बोधन का इरादा नहीं रखता। जैसा कि आप याद कर सकते हैं, तथ्य यह है कि कुछ है, इसका मतलब यह नहीं है कि यह होना चाहिए।

आपका व्यक्तिगत झुकाव जो भी हो, एक मार्ग या दूसरे का पालन करना हो, मुझे इससे कोई आपत्ति नहीं है।

(संपादन का अंत)

यह सुझाव, कि यह वरीयता (वास्तविक जीवन में उपयोग) OS.३ अक्षर DOS-ish सीमा के कारण होती है, IMO एक लाल हेरिंग (गलत और भ्रामक) है।

अगस्त, 2016 तक, Google की खोज YML और YAML के लिए लगभग 6,000,000 और 4,100,000 (सटीक के दो अंकों) की गणना थी। इसके अलावा, "YAML" की गिनती गलत रूप से अधिक थी क्योंकि इसमें विस्तार के रूप में इसके उपयोग से परे भाषा का नाम शामिल था।

जुलाई, 2018 के रूप में, गूगल के खोज YML और YAML के लिए मायने रखता है लगभग थे 8,100,000 और 4,100,000 (फिर से, परिशुद्धता के दो अंक के लिए)। इसलिए, पिछले दो वर्षों में, YML अनिवार्य रूप से लोकप्रियता में दोगुनी हो गई है, लेकिन YAML ने उसी पर रोक लगाई है।

एक अन्य सांस्कृतिक उपाय वेबसाइट है जो फ़ाइल एक्सटेंशन को समझाने का प्रयास करता है। उदाहरण के लिए, के लिए पृष्ठ का (जुलाई, 2018) के रूप में FilExt वेबसाइट पर YAML में परिणाम: "। ओह FILEXT.com डेटाबेस पर फाइल एक्सटेंशन .YAML में कोई जानकारी नहीं है"

जबकि, इसमें YML के लिए एक प्रविष्टि है , जो देता है: "YAML ... एक टेक्स्ट फ़ाइल का उपयोग करता है और इसे एक प्रारूप में व्यवस्थित करता है जो मानव-पठनीय है। 'डेटाबेस.आईएमएल' एक विशिष्ट उदाहरण है जब YAML का उपयोग रूबी ऑन रेल्स द्वारा किया जाता है। एक डेटाबेस से कनेक्ट करने के लिए। "

नवंबर 2014 के रूप में, विस्तार पर विकिपीडिया के लेख YML अभी भी कहा कि ".yml" "है YAML फ़ाइल प्रारूप के लिए फाइल एक्सटेंशन" (जोर जोड़ा)। इसके YAML लेख में वरीयता व्यक्त किए बिना, दोनों एक्सटेंशनों को सूचीबद्ध किया गया है।

विस्तार ".yml" पर्याप्त रूप से स्पष्ट है, अधिक संक्षिप्त है (इस प्रकार टाइप करना और पहचानना आसान है), और बहुत अधिक सामान्य है।

बेशक, इन दोनों एक्सटेंशन को लंबे, संभावित विस्तार के संक्षिप्त रूप में देखा जा सकता है, ".yamlaintmarkuplanguage"। लेकिन प्रोग्रामर (और उपयोगकर्ता) वह सब टाइप नहीं करना चाहते हैं!

इसके बजाय, हम प्रोग्रामर (और उपयोगकर्ता) जितना संभव हो उतना कम टाइप करना चाहते हैं, और फिर भी अभी तक स्पष्ट और स्पष्ट नहीं हैं। और हम यह देखना चाहते हैं कि यह किस तरह की फाइल है, जितनी जल्दी हो सके, बिना लंबे समय तक पढ़े। टाइपिंग में इन दोनों लक्ष्यों में से कितने अक्षर पूरे होते हैं? उत्तर तीन (3) नहीं है? दूसरे शब्दों में, YML?

विकिपीडिया की श्रेणी: Filename_extensions पेज .a , .o और .Z के लिए प्रविष्टियों को सूचीबद्ध करता है । किसी तरह, यह .c और .h (C भाषा द्वारा प्रयुक्त) से चूक गया। ये उदाहरण एकल-पत्र एक्सटेंशन हमें यह देखने में मदद करते हैं कि एक्सटेंशन लंबे समय तक आवश्यक होने चाहिए, लेकिन अब (अल्बर्ट आइंस्टीन को आधा-उद्धरण) नहीं करना चाहिए।

इसके बजाय, ध्यान दें कि, सामान्य रूप से, कुछ एक्सटेंशन "Y" से शुरू होते हैं। आम तौर पर, दूसरी तरफ, अक्षर X का उपयोग "क्रॉस," "एक्स्टेंसिबल," "चरम," "वेरिएबल," आदि सहित कई प्रकार के अर्थों के लिए किया जाता है (जैसे XML में)। इसलिए "Y" से शुरू करना पहले से ही बहुत जानकारी (सूचना सिद्धांत के संदर्भ में) बताता है, जबकि "X" से शुरू नहीं होता है।

भाषाई रूप से, इसलिए, संक्षिप्त नाम "XML" में (एक तरह से) केवल दो सूचनात्मक पत्र ("एम" और "एल") हैं। इसके बजाय, "YML" में तीन सूचनात्मक पत्र ("M", "L" और "Y") हैं। दरअसल, वाई के साथ शुरू होने वाले समकितों का मौजूदा सेट बेहद छोटा लगता है। निहितार्थ, यही कारण है कि एक चार पत्र YAML फ़ाइल एक्सटेंशन को बहुत अधिक लगता है।

शायद यही कारण है कि हम व्यवहार में देखते हैं कि "भाषाई" दबाव (प्राकृतिक उपयोग में) चार (4) वर्णों के लिए संक्षिप्त नाम संक्षिप्त करने के लिए है, और "भाषाई" दबाव इस संक्षिप्त नाम को तीन (3) वर्णों को छोटा करने के लिए मजबूत है।

इसके परिणामस्वरूप, शायद, इन कारकों में से (और एक आधिकारिक समर्थन के रूप में नहीं), मैं यह नोट करूंगा कि YAML.org वेबसाइट की नवीनतम समाचार आइटम (नवंबर, 2011 से) सभी जावास्क्रिप्ट, जेएस-यिमल में लिखित एक परियोजना के बारे में है । जो स्वयं, आंतरिक रूप से एक्सटेंशन ".yml" का उपयोग करना पसंद करता है।

उपर्युक्त कारक मुख्य हो सकते हैं; फिर भी, सभी कारकों (ज्ञात या अज्ञात) के परिणामस्वरूप संक्षिप्त, तीन (3) वर्ण विस्तार हो रहा है जो कि YAML के लिए प्रमुख उपयोग में से एक बन गया है - आविष्कारकों की प्राथमिकता के बावजूद।

".YML" को वास्तविक मानक माना जाता है । फिर भी वही आविष्कारक एक मानव-पठनीय डेटा भाषा के लिए दुनिया की आवश्यकता के बारे में अवधारणात्मक और सही थे। और हमें इसे प्रदान करने के लिए उन्हें धन्यवाद देना चाहिए।


1
फ़ाइल एक्सटेंशन का उपयोग करें। YAML के लिए ".yml" जंगली में पाए जाने वाले ".yml" के लिए डिफ़ॉल्ट रूप से कई ठोस उदाहरणों, सिफारिशों और कॉन्फ़िगरेशन सेटिंग्स को सूचीबद्ध करता है।
MarkDBlackwell

1
आप विकिपीडिया की हैं, तो आप बेहतर और अधिक एक छोटे से पढ़ें: YAML के लेख का कहना है फ़ाइल नाम एक्सटेंशन: .yaml,.yml
चार्ल्स Follet

1
@CharlesFollet, जो आपने उद्धृत किया था, वह वास्तव में मेरे कथन का आधार था, "इसका YAML लेख दोनों एक्सटेंशनों को, बिना किसी पूर्वाग्रह के सूचीबद्ध करता है" (अब "वरीयता व्यक्त किए बिना" संपादित किया गया है)। लोग दोनों एक्सटेंशन का उपयोग करते हैं; अभी तक ".yml" प्रमुख है।
MarkDBlackwell

19
हमेशा याद रखें कि विकिपीडिया एक सहयोगी विश्वकोश है। मैं प्रतिबिंबित करने के लिए कि यह सिर्फ "है YML बहुविकल्पी पेज संपादित एक आम विस्तार" के बदले " एक्सटेंशन"।
NiñoScript

2
कई वर्षों के लिए एक डोमेन विशिष्ट भाषा YML (मार्कअप जो XML उत्पन्न करता है) रही है, शायद वह भी लंबे समय तक YAML के रूप में। आपकी Google खोज गणना में YML संदर्भों के साथ-साथ दोषपूर्ण YAML संदर्भों की गणना होने की संभावना नहीं थी। YAML निरीक्षण नहीं है, यह भ्रम को रोकने के लिए उपयुक्त नाम का उपयोग कर रहा है।
एंथन

4

इस बारे में लोगों की टिप्पणियों का एक समूह ऑनलाइन पढ़ने के बाद, मेरी पहली प्रतिक्रिया यह थी कि यह मूल रूप से उन महत्वहीन बहस में से एक है। हालांकि, मेरी प्रारंभिक रुचि सही प्रारूप का पता लगाने की थी, इसलिए मैं अपनी फ़ाइल नामकरण अभ्यास के अनुरूप हो सकता था।

लंबी कहानी छोटी, YAML के निर्माता कह रहे हैं .yaml, लेकिन व्यक्तिगत रूप से मैं कर रहा हूँ .yml। वह सिर्फ मेरे लिए ज्यादा मायने रखता है । इसलिए मैं प्रतिज्ञान खोजने के लिए यात्रा पर गया और जल्द ही, मुझे एहसास हुआ कि .ymlहर जगह docker का उपयोग होता है। मैं यह docker-compose.ymlसब समय पर फाइल लिख रहा हूं , जबकि आप कुबेरनेट की डॉक्स में देखते रहते हैं kubectl apply -f *.yaml...

तो, निष्कर्ष में, दोनों स्वरूपों को स्पष्ट रूप से स्वीकार किया जाता है और यदि आप दूसरे छोर पर हैं, (यानी: लेखन सिस्टम जो इनपुट के रूप में एक YAML फ़ाइल प्राप्त करते हैं) आपको दोनों के लिए अनुमति देनी चाहिए। ऐसा लगता है कि ऊंट मामले बनाम एक और सांप का मामला ...


2
तो क्या अधिक भावना आप के लिए उपयोग करने के लिए के लिए बनाता है YML डोमेन विशिष्ट भाषा (जो YAML के रूप में शायद के रूप में लंबे समय के लिए चारों ओर हो गया है): .yl, .ym, या .mlविस्तार?
एंथन

2

.yamlजाहिरा तौर पर आधिकारिक विस्तार है, क्योंकि कुछ एप्लिकेशन उपयोग करते समय विफल हो जाते हैं .yml। दूसरी ओर मैं किसी भी एप्लिकेशन से परिचित नहीं हूं जो YAML कोड का उपयोग करता है, लेकिन एक .yamlएक्सटेंशन के साथ विफल हो जाता है ।

मैं बस इस पर ठोकर खाई, जैसा कि मुझे .ymlAnsible और Docker Compose में लिखने की आदत थी । आदत से बाहर मैंने .ymlनेटप्लान फाइलें लिखते समय उपयोग किया जो चुपचाप विफल रहा। मैंने आखिरकार अपनी गलती समझ ली। नेटप्लान के लिए एक लोकप्रिय Ansible Galaxy भूमिका के लेखक अपने कोड में समान धारणा बनाते हैं:

- name: Capturing Existing Configurations
  find:
    paths: /etc/netplan
    patterns: "*.yml,*.yaml"
  register: _netplan_configs

फिर भी .ymlएक्सटेंशन वाली कोई भी फाइल नेटप्लेन द्वारा उसी तरह से अनदेखा कर दी जाती है जिस तरह से .bakएक्सटेंशन वाली फाइलें । जैसा कि नेटप्लान बहुत शांत है, और सफलता पर कोई प्रतिक्रिया नहीं देता है, यहां तक ​​कि इसके साथ netplan apply --debug, एक कॉन्फ़िगरेशन जैसे कि 01-netcfg.ymlबिना किसी सार्थक प्रतिक्रिया के चुपचाप विफल हो जाएगा।


0

बस वर्णन करने के लिए ... यमल फ़ाइल स्कीमा / प्रकार है और '.yml' एक्सटेंशन के लिए पाठ फ़ाइल और '.txt' के समान फ़ाइल एक्सटेंशन है।

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