ईविल में डिफ़ॉल्ट पूर्ववत व्यवहार बहुत मोटे तौर पर दानेदार है क्योंकि यह सम्मिलित मोड में प्रवेश करने और इसे एक एडिट ऑपरेशन के रूप में छोड़ने के बीच कुछ भी लेने पर विचार करता है। जब आप एक सम्मिलित करने के दौरान पाठ का पूरा अनुच्छेद दर्ज करते हैं और फिर पूर्ववत करते हैं, तो पूरा अनुच्छेद हटा दिया जाता है। इसके विपरीत, Vim एक नई पूर्ववत इकाई शुरू करता है, जब भी आप कर्सर को इन्सर्ट मोड में टेक्स्ट दर्ज करने के अलावा अन्य तरीकों से स्थानांतरित करते हैं।
ईविल में एक अनुकूलन चर है जिसे पूर्ववत इतिहास में और अधिक बारीक-बारीक उपयोग में लाया जा सकता है:
(setq evil-want-fine-undo t)
इस सेटिंग के साथ, ईविल एक नई पूर्ववत इकाई शुरू करता है जब कर्सर को इन्सर्ट मोड में ले जाया जाता है, जैसे कि विम करता है। हालाँकि, यह सेटिंग इस बात के साथ भी गड़बड़ाती है कि बदले हुए संचालन को कैसे संभाला जाता है: यदि आप किसी शब्द का उपयोग करके प्रतिस्थापित करते हैं cw
, तो आपको मूल शब्द को पुनर्स्थापित करने के लिए दो बार पूर्ववत करना होगा: एक बार नए शब्द को हटाने के लिए और एक बार मूल शब्द को पुन: स्थापित करने के लिए। यह विम के साथ असंगत है और इसका कोई मतलब नहीं है क्योंकि प्रतिस्थापित परमाणु होना चाहिए।
प्रश्न: विम के पूर्ववत व्यवहार को प्राप्त करने के लिए मैं ईविल और पूर्व-पेड़ को कैसे कॉन्फ़िगर कर सकता हूं?