लाइन-लंबाई-सहिष्णु एक्सएमएल अंतर


13

मैंने इस प्रश्न के उत्तर को देखा है , और दुर्भाग्य से उनमें से किसी ने भी अब तक मेरी मदद नहीं की है।

बुश के बारे में हरा नहीं, गहराई में C # का दूसरा संस्करण अब कॉपी एडिट में है। मैं यह देखना चाहता हूं कि कॉपी एडिटर वास्तव में आसानी से क्या कर सकता है, इसलिए मैं उसके बदलावों को अस्वीकार या स्वीकार कर सकता हूं।

हम docbook के संशोधित रूप का उपयोग कर रहे हैं, लेकिन मैं कच्चे XML स्रोत को देखकर काफी खुश हूं। अब तक के सभी ठीक - सिवाय इसके कि जब कॉपी एडिटर कोई बदलाव करता है, तो वह लाइन रैपिंग को बदल सकता है। तो कुछ ऐसा है जो पढ़ता था:

<para>Foo bar baz
 second line</para>

अब पढ़ता है

<para>Foo bar grontle
 baz second line</para>

अब यहाँ वास्तविक परिवर्तन "सरकना" का सम्मिलन है। मुझे परवाह नहीं है कि "बाज" पहली पंक्ति से दूसरी पंक्ति में चला गया है, लेकिन सभी अलग-अलग उपकरण जो मैंने देखा है।

मुझे लगता है कि एक विकल्प पूरे दस्तावेज़ (या संभवतः पूरे पैराग्राफ) को एकल लाइनों में पुन: स्वरूपित करने के लिए होगा ... लेकिन यह वास्तव में पढ़ना मुश्किल है, क्योंकि अलग-अलग उपकरण प्रदर्शित नहीं होने पर लपेटते नहीं हैं।

मुझे यकीन है कि मैं अपने द्वारा प्राप्त किए गए टूल के साथ प्रबंधन कर सकता हूं, लेकिन अगर किसी को कुछ भी बेहतर पता है, तो मुझे इसके बारे में सुनने में खुशी होगी। मुझे संदेह है कि मेरे प्रकाशक भी होंगे।

(मैंने विंडोज टैग को यहां शामिल किया है क्योंकि मुझे वास्तव में विंडोज पर उपलब्ध होने की आवश्यकता है। मैं किसी भी गैर-विंडोज सॉफ्टवेयर के बारे में भी सुनना चाहूंगा , लेकिन केवल तभी जब मैं इसे विंडोज पर बनाने में मदद कर सकता हूं।

जवाबों:


9

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

आपके द्वारा वर्णित भिन्न के लिए नीचे दिया गया नमूना देखें

साधारण अंतर


1
मुझे असली फ़ाइलों के साथ एक त्वरित रूप मिला है, और ऐसा लग रहा है कि यह पूरी तरह से काम करता है। बहुत बहुत धन्यवाद !
जॉन स्कीट

4

मेरा समाधान तुलना से परे है । (बहुत अधिक शक्तिशाली उपकरण)

तो हम समस्या को देखकर शुरू करते हैं।

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

BC की एक विशेष XML पार्सिंग भूमिका है: (इसमें पहले से ही XML भूमिका है, लेकिन पूर्व-विश्लेषण के साथ नहीं - जो क्रमबद्ध और ख़बरदार है )

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

इसलिए हम http://www.scootersoftware.com/download.php?zz=kb_moreformats_alt पर जाते हैं

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

और अब -

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

आशा है कि आप इसे C # के अगले संस्करण के लिए गहराई से उपयोग करेंगे

ps यदि चित्रों में पाठ बहुत छोटा है, तो मूल चित्रों को लोड करने के लिए चित्र पर क्लिक करें।


Btw " Namir.78 " का क्या अर्थ है?
पचेरियर

1

मैं एक XML डिफरेंट टूल (कमर्शियल सॉफ्टवेयर) का लेखक हूं जो काम (और कुछ और फीचर्स) करना चाहिए। यहाँ डाउनलोड करने के लिए एक परीक्षण संस्करण है (जो अधिकतम 100 KB के Xml फ़ाइलों तक सीमित है):

http://xmldifftool.com/download_en.html

एक संक्षिप्त परिचय भी यहाँ उपलब्ध है:

http://xmldifftool.com/xtcmanual_en.html


0

मैं एक ही समस्या पर एक कंपनी में बहुत पहले नहीं था। वे एक सच्चे "एक्सएमएल डिफरेंट" को ढूंढना चाहते थे, और वहां कोई पूर्ण समाधान नहीं दिखता है।

सबसे आसान समाधान एक्सएमएल पर एक सुंदर-प्रिंट स्क्रिप्ट को चलाने के लिए पहले लाइन-एंडिंग और रिक्ति को सामान्य करने के लिए है, और फिर पसंद के अलग उपकरण को चलाने के लिए ( WinMerge विंडोज़ के लिए अच्छा है)। यह बहुत से फ़्लोटसम को ड्राप करता है जो कि अधिकांश स्पेसफुल एक्सएमएल से आप पर फेंक देंगे, और चारों ओर एक स्क्रिप्ट बनाने के लिए वास्तव में आसान है।


मुसीबत यह है कि एक्सएमएल पहले से ही बहुत मुद्रित है, प्रभावी रूप से - यह आवेषण और विलोपन हैं जो बदलते हैं जहां लाइनें लिपटे हैं। मुझे आश्चर्य है कि मैं पुनः स्वरूपित एक शब्द है कि एक और :( में लाइनों के सिरों पर पाए जाते हैं के आधार पर फाइल करने के लिए कुछ चाहिए कि क्या
जॉन स्कीट

0

एसडी स्मार्ट डिफरेंसर वास्तविक लेआउट के विपरीत संरचना के आधार पर दस्तावेजों की तुलना करता है।

एक XML स्मार्ट डिफरेंसर है। एक्सएमएल के लिए, इसका मतलब है कि टैग और सामग्री का मिलान क्रम। यह ध्यान रखना चाहिए कि आपके द्वारा निर्दिष्ट विशिष्ट टुकड़े में पाठ स्ट्रिंग अलग था। (यह वर्तमान में पाठ की XML धारणा को नहीं समझ रहा है जिसमें व्हाट्सएप को सामान्यीकृत बनाम महत्वपूर्ण माना जाता है, लेकिन मुझे संदेह है कि इससे आपको बहुत नुकसान नहीं होगा)।


0

@Jon Skeet: आपने अपने प्रश्न में उल्लेख किया है कि जब वे प्रदर्शित होते हैं तो उपकरण अलग नहीं होते हैं।
vimdiff(विंडोज़ के माध्यम से भी उपलब्ध है gvim) आपको प्रदर्शित xml फ़ाइलों को साथ रखने की अनुमति देता है :window set wrapसंदर्भ लिंक
इसके अलावा आप :diffupdateडिफरेंशियल को रिफ्रेश करने के लिए चला सकते हैं ।

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