मैं संघर्ष कर रहा था और विम से Emacs के लिए कदम के बाद से एक ही बात करना चाहता था।
कुछ शोध और प्रयोग करने के बाद, मैं नीचे दिए गए फंक्शन में आया, जिससे आप एविल पैकेज को स्थापित करने या स्पेसमैक्स का उपयोग करने की अनुमति दे सकते हैं।
यह सक्रिय क्षेत्र (या दृश्य चयन में) के साथ भी काम करता है और यह एबीसी-डिफेंस-हाईक जैसे शब्द को बदलने के लिए काफी उपयोगी हो सकता है:
; replace current word or selection using vim style for evil mode
(defun evil-replace-word-selection()
(interactive)
(if (use-region-p)
(let (
(selection (buffer-substring-no-properties (region-beginning) (region-end))))
(if (= (length selection) 0)
(message "empty string")
(evil-ex (concat "'<,'>s/" selection "/"))
))
(evil-ex (concat "%s/" (thing-at-point 'word) "/"))))
फिर अपने init.el में, एक ही कुंजी बाइंडिंग को परिभाषित करें:
(global-set-key (kbd "\C-co") 'evil-replace-word-selection)
कीबाइंडिंग विम स्पेस से थोड़ा अलग है जो "स्पेस जेड" है, लेकिन मैंने यह पता नहीं लगाया है कि ईमैक में मैप कैसे किया जाता है जब बुराई मोड है। एक उपसर्ग आदि की शिकायत करते रहें और मैं अपेक्षाकृत नया हूं। लेकिन अभी भी बहुत बुरा नहीं है और खुद इस समाधान से खुश हैं।