मैंने हाल ही में अपने सिस्टम में python-WikEdDiff
पैकेज स्थापित किया है। मैं समझता हूं कि यह मूल जावास्क्रिप्ट WikEdDiff उपकरण का एक अजगर विस्तार है। मैंने इसका इस्तेमाल करने की कोशिश की लेकिन मुझे इसके लिए कोई दस्तावेज नहीं मिला। मैं WikEdDiff.diff()
का उपयोग कर अटक गया हूं। मैं इस तरह के getFragments()
और दूसरों के रूप में इस वर्ग के अन्य कार्यों, उपयोग करना चाहते हैं, लेकिन जाँच पर, यह निम्न त्रुटि दिखाता है:मैं अजगर-विकीडडिफ का उपयोग कैसे करूं?
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/local/lib/python3.4/dist-packages/WikEdDiff/diff.py", line 1123, in detectBlocks
self.getSameBlocks()
File "/usr/local/lib/python3.4/dist-packages/WikEdDiff/diff.py", line 1211, in getSameBlocks
while j is not None and self.oldText.tokens[j].link is None:
IndexError: list index out of range
जाँच पर, मुझे पता चला है कि वस्तु में tokens[]
संरचना जबकि खाली रहता है इसे शुरू किया जाना चाहिए था।
क्या कोई प्रारंभिक कार्य है जिसे मुझे डिफ़ॉल्ट कन्स्ट्रक्टर से अलग करने की आवश्यकता है? या यह 'WikEdDiffConfig' कॉन्फ़िगरेशन संरचना के साथ कुछ करने के लिए है जो मैंने निर्माता को पास किया है?
def diff(self, oldString, newString):
...
# Free memory
self.newText.tokens.clear()
self.oldText.tokens.clear()
# Assemble blocks into fragment table
fragments = self.getDiffFragments()
# Free memory
self.blocks.clear()
self.groups.clear()
self.sections.clear()
...
return fragments
तुम सिर्फ टुकड़े की जरूरत है, इस तरह diff()
की लौटे चर का उपयोग:
यहां एक पायथन 3 उदाहरण है स्रोत-स्रोत: https: //github.com/lahwaacz/python-wikeddiff/blob/master/WikEdDiff/__init__.py –